On Thu, Oct 15, 2015 at 10:50 PM, Dennis Li <
denni...@gmail.com> wrote:
> Hi all,
>
> I just tried to install packetdrill in CentOS 7, which kernel version is
> 3.10.0-229.14.1.el7.x86_64.
> After successfully compling the tool, I picked up
> <packetdrill>/tests/linux/connect/http-get-nonblocking-ts.pkt as my first
> try.
> I setup a server on one host by "./packetdrill --wire_server", then
> switch to another machine to execute "./packetdrill --wire_client
> --wire_server_ip=<server_ip>
> ./tests/linux/connect/http-get-nonblocking-ts.pkt".
> Then I got this error on both client and server side:
> ./tests/linux/connect/http-get-nonblocking-ts.pkt:11: error handling
> packet: bad outbound TCP options
> script packet: 0.100000 S 0:0(0) <mss 1460,sackOK,TS val 100 ecr
> 0,nop,wscale 6>
> actual packet: 0.100429 S 0:0(0) win 14600 <mss 1460,sackOK,TS val 100
> ecr 0,nop,wscale 7>
>
> What does that mean? Why actual packet is different with script packet?
> Does script continues executing to the end? Does the error represent this
> test fail?
That means that the script expected the TCP options on the output
packet to look like the "script packet" line, and the actual TCP
options the network stack sent looked like the "actual packet" line.
So the test failed, and stopped at that line.
In this case the only difference I see is that the script expected
"wscale 6", but the actual option was "wscale 7".
In Linux the value of wscale tends to be a function of the max value
from the net.ipv4.tcp_rmem sysctl. So different systems will see
different behavior, depending on their configuration (and also
depending on the kernel version). So you may want to adjust the test
for your system.
Hope that helps,
neal