SCTP Discussions

Text archives Help


[SCTP-Discussion] se_deliver_unreliably() issues


Chronological Thread 
  • From: "Oleg Levy" <buskila AT gmail.com>
  • To: discussion AT sctp.de
  • Subject: [SCTP-Discussion] se_deliver_unreliably() issues
  • Date: Mon, 19 Nov 2007 18:49:08 +0200
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type; b=HoGjK8T/tw5TDlApzF1NWTsPFOsM/M3A2zTsC/MxplC5ZVh8W4Y/RfYKl6MjGtpT2t6uamuhQrHwNMftpumRUrINeMipWOWUMiZdEgm+8AyBIM3jvvcor3PlsvS+vL6/mXwonJpf8TcL+WAclBhe6/RDFUzvxwpegbuyddO1oOg=
  • List-archive: <http://lists.franken.de/pipermail/sctp-discussion>
  • List-id: SCTP Discussions <sctp-discussion.sctp.de>

Hello,
I think that there are two issues with the function (in sctplib-1.0.7) in the following while loop: "while((tmp != NULL) && (((delivery_data*)(tmp->data))->tsn <= up_to_tsn))"
1) "g_list_remove (se->List, d_chunk);" should probably be "se->List = g_list_remove (se->List, d_chunk);"
2) In addition, after removal of the chunk from the list,se->queuedBytes should be decreased by the size of the chunk removed ("se->queuedBytes -= d_chunk->data_length;")

If queuedBytes is not decreased, the RWND returned by the receiver of FORWARD_TSN to the sender is constantly decreasing until the sender refuses to send more data and at that point the connection is stuck as all outgoing data is queued by the stack in the sender.

Thanks
--oleg




Archive powered by MHonArc 2.6.19+.

Top of page