- From: Julien Vanegue <jvanegue AT citypassenger.com>
- To: discussion AT sctp.de
- Cc: Michael.Tuexen AT micmac.franken.de
- Subject: [SCTP-Discussion] Using ext_select on a SEQPACKET SCTP client socket
- Date: Mon Oct 18 11:22:01 2004
- List-id: SCTP Discussions <discussion.sctp.de>
- Organization: Citypassenger
Hi everyone and Hi Michael,
Some days ago, I reported a problem with sctplib / socketapi and the use of
ext_select on SEQPACKET SCTP client sockets. The problem has evolved a bit
but the main issue remains the same.
First of all : is there a mailing list dedicated to socketapi ?
Problem:
--------
I need to use ext_select() on a seqpacket sctp socket.
Using sctplib-1.0.1 and socketapi-1.3.1, I am unable to
receive pending data (the remote sctp server socket effectively
send the data, as shown by a running sniffer - tcpdump 3.7.2 using
libpcap 0.7.2 - ).
- All attempt to ext_select() a seqpacket sctp client socket leads
to a blocking select, which does not wake up even if input data
is provided to the sctp client socket.
- An interresting trace of the network traffic is this :
[.....]
11:30:32.459581 192.168.1.99.2222 > demoweb.23190: sctp
1) [SACK] [cum ack 1607778196] [a_rwnd 65535] [#gap acks 0] [#dup
tsns 0]
2) [DATA] (B)(E) [TSN: 1772071492] [SID: 0] [SSEQ 0] [PPID 0x0]
[Payload] (DF) [tos 0x10] (ttl 64, id 0, len 184)
0x0000 4510 00b8 0000 4000 4084 b5f0 c0a8 0163 E.....@.@......c
0x0010 c0a8 010e 08ae 5a96 2abc 4ab5 90f5 f6d1 ......Z.*.J.....
0x0020 0300 0010 5fd4 bf94 0000 ffff 0000 0000 ...._...........
0x0030 0003 0087 699f aa44 0000 0000 0000 0000 ....i..D........
0x0040 3c48 544d 4c3e 0a20 203c 4845 4144 3e3c <HTML>...<HEAD><
0x0050 5449 TI
11:30:32.461552 demoweb.23190 > 192.168.1.99.2222: sctp
1) [SACK] [cum ack 1772071492] [a_rwnd 65416] [#gap acks 0] [#dup
tsns 0] (DF) (ttl 64, id 0, len 48)
0x0000 4500 0030 0000 4000 4084 b688 c0a8 010e E..0..@.@.......
0x0010 c0a8 0163 5a96 08ae 159b ddcc 3c23 7705 ...cZ.......<#w.
0x0020 0300 0010 699f aa44 0000 ff88 0000 0000 ....i..D........
11:31:02.705602 192.168.1.99.2222 > demoweb.23190: sctp
1) [SHUTDOWN] (DF) [tos 0x10] (ttl 64, id 0, len 40)
0x0000 4510 0028 0000 4000 4084 b680 c0a8 0163 E..(..@.@......c
0x0010 c0a8 010e 08ae 5a96 2abc 4ab5 370c 1041 ......Z.*.J.7..A
0x0020 0700 0008 5fd4 bf94 0000 0000 0000 ...._.........
11:31:02.706094 demoweb.23190 > 192.168.1.99.2222: sctp
1) [SHUTDOWN ACK] (DF) (ttl 64, id 0, len 36)
0x0000 4500 0024 0000 4000 4084 b694 c0a8 010e E..$..@.@.......
0x0010 c0a8 0163 5a96 08ae 159b ddcc c92c ebe9 ...cZ........,..
0x0020 0800 0004 ....
11:31:02.706457 192.168.1.99.2222 > demoweb.23190: sctp
1) [SHUTDOWN COMPLETE] (DF) [tos 0x10] (ttl 64, id 0, len 36)
0x0000 4510 0024 0000 4000 4084 b684 c0a8 0163 E..$..@.@......c
0x0010 c0a8 010e 08ae 5a96 2abc 4ab5 14fc 4ec0 ......Z.*.J...N.
0x0020 0e00 0004 0000 0000 0000 0000 0000 ..............
where you can identify the answer packet (the one with html tags in the data)
from the server (bound on machine 192.168.1.99:2222).Note that the request
packet was not included in this dump since the answer is correct, but the
application layer is not informed of the answer.
There is a SHUTDOWN on this log, but I managed to get rid of it, just by
uncommenting the sctp event handling. Yes, it seems that unhandled events
involves associations shutdown, maybe its a normal sctplib behavior, I dont
know. Anyway the problem is not there.
The real question is : Is there any issue with ext_select on seqpacket sctp
socket ? Is it a known bug, or is there another common way to do that
for this kind of socket ? Is there an issue with checksums for dgram sctp
sockets ?
Thanks a lot.
----
Julien Vanegue
Citypassenger - High speed secure wireless telecoms solutions
- [SCTP-Discussion] Using ext_select on a SEQPACKET SCTP client socket, Julien Vanegue, 10/18/2004
Archive powered by MHonArc 2.6.19+.