timeout - Understanding TCP dynamics -
what experiencing: have app server connects rabbitmq server. time goes on, number of established connections looking rabbitmq server goes up, count app server remains constant.
i run on both:
root@app01:~# netstat -ant | grep est | grep 5672 | grep 172.25.12.48 tcp 0 0 172.25.12.48:50587 10.48.64.230:5672 established tcp 0 0 172.25.12.48:50588 10.48.64.230:5672 established root@rabbit01:~# netstat -ant | grep est | grep 5672 | grep 172.25.12.48 tcp6 0 0 10.48.64.230:5672 172.25.12.48:38408 established tcp6 0 0 10.48.64.230:5672 172.25.12.48:50588 established tcp6 0 0 10.48.64.230:5672 172.25.12.48:33491 established tcp6 0 0 10.48.64.230:5672 172.25.12.48:50587 established tcp6 0 0 10.48.64.230:5672 172.25.12.48:34541 established
example results give 6 on app server , 15 (even high 46) on rabbitmq server. restart rabbitmq server , normal, 2 connections each side.
i assuming either switch times out connection or application terminates process uncleanly. looking this, understand tcp behaviour better.
current settings on rabbitmq server:
tcp_retries1 set 3
tcp_retries2 set 15
so have expected see 'invalid' connections drop after around 13-30 minutes if understand forums correctly.
yet, looking @ tcp keepalive values:
tcp_keepalive_time set 7200 (so after 2h send first keepalive probe.)
tcp_keepalive_intvl 75 (so 75 seconds after first one, resend probe.)
tcp_keepalive_probes 9 (so send 9 probes in total)
so keepalive process take 7200+(9*75)=7875, or 2 hours 11 minutes before closing.
due connection (presumably) disappearing, leads 2 questions.
1. correct?
2. missing option apart switch or app terminating abnormally cause these invalid connections?
source: https://www.frozentux.net/ipsysctl-tutorial/chunkyhtml/tcpvariables.html
our f5's reason this. seems after idle timeout, f5 drops entry tables. app servers, connection invalid, , tcp closes them. rabbitmq server though, somehow connections remains valid connections. although don't understand why switch has ability keep connection state valid - but, reason.
Comments
Post a Comment