Skip to content

Commit

Permalink
test client for DSS option
Browse files Browse the repository at this point in the history
this exploits a "feature" in current MPTCP code, i.e. client will ack
packets at TCP level but DACK will be increased only after data are read.
This increased DACK will not reach the MPTCP endpoint unless "something"
(e.g. a write() or a close()) is done at MPTCP socket level.

Related-to: issue #3

Signed-off-by: Davide Caratti <[email protected]>
  • Loading branch information
dcaratti committed Feb 12, 2020
1 parent 533a1d2 commit 0bab8d2
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions gtests/net/mptcp/dss/dss_ssn_specified_client.pkt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// connect() function, connection initiated by the kernel
--tolerance_usecs=100000
`../common/defaults.sh`


0.0 socket(..., SOCK_STREAM, IPPROTO_MPTCP) = 3
+0.0 fcntl(3, F_GETFL) = 0x2 (flags O_RDWR)
+0.0 fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0

// Establish connection and verify that there was no error.

+0.0 connect(3, ..., ...) = -1 EINPROGRESS (Operation now in progress)
+0.0 > S 0:0(0) <mss 1460,sackOK,TS val 100 ecr 0,nop,wscale 8,mpcapable v1 flags[flag_h] nokey>
+0.0 < S. 0:0(0) ack 1 win 65535 <mss 1460,sackOK,TS val 700 ecr 100,nop,wscale 8,mpcapable v1 flags[flag_h] key[skey=2] >
+0.0 > . 1:1(0) ack 1 win 256 <nop, nop, TS val 100 ecr 700,mpcapable v1 flags[flag_h] key[ckey,skey]>
0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking
+0.1 < P. 1:1001(1000) ack 1 win 450 <nop, nop, dss dack8=1 dsn8=1 ssn=1 dll=1000 nocs>
+0.0 > . 1:1(0) ack 1001 win 264 <nop, nop, TS val 100 ecr 700,dss dack8=1 ssn=1 dll=0 nocs>
0.3 read(3, ..., 1000) = 1000
+0.0 write(3,..., 100) = 100
+0.0 > P. 1:101(100) ack 1001 win 264 <nop, nop, TS val 100 ecr 700, dss dack8=1001 dsn8=1 ssn=1 dll=100 nocs, nop, nop>
0.4 close(3) = 0
// SSN should be 0 for DATA-FIN packets carrying no data at all
+0.0 > F. 101:101(0) ack 1001 win 264 <nop, nop,TS val 100 ecr 700,dss dack8=1001 dsn8=101 ssn=0 dll=1 nocs fin, nop, nop>

0 comments on commit 0bab8d2

Please sign in to comment.