How to determine throughput/bandwidth from a capture (as used in TCP window scaling)

asked 2017-11-23 20:08:07 +0000

Nik108 gravatar image

Guys I need to determine the throughput available between TCP client/server based on a capture. I have a case where TCP window of a server is not scaling and a customer blames bandwidth. I need to prove or disprove this. any help will be really appreciated Nik

edit retag flag offensive close merge delete


Christian_R gravatar imageChristian_R ( 2017-11-23 21:07:41 +0000 )edit

HI. Here it is :

this was captured from closest to server interface

so the TCP window size stays same from packet 301 (4194304) - all the way almost to the end. the customer says it be due to some network bandwidth buffers... how can i refute this based on capture info?

from what i understand, there are only 2 factors - bandwidth and latency to check (i mean besides retransmits - which are not present) latency - RTT 0.076 s how do we check if bandwidth can be the problem here?

Nik108 gravatar imageNik108 ( 2017-11-24 20:10:45 +0000 )edit

maybe i should rephrase my question - what determines the final windows scaling factor? example FTP client initiates a TCP connection and has a 1GIG interface. Window scaling is enabled.

RTT is 76ms in the original SYN packet it had: MSS is 1460 window size value: 65535 window scale: 7 (multiply by 128)

SYN-ACK from opposite side: MSS is 1260 window size value: 8192 window scale: 14 (multiply by 16384)

in final ACK it came to: Window size value: 32768 window size scaling factor: 128 calculated window size: 4194304

(for the rest of FTP transfer it stayed on this value: 4194304)

so question regarding initiating side (FTP client):

1)How at the end the window size reduced to 32768 on the initiating side? 2) Why if the interface is set to GIG - it did not use the 14 as window scale ? but used 7?what could have determined that - is it ...(more)

Nik108 gravatar imageNik108 ( 2017-11-26 01:50:54 +0000 )edit