Dear Sir !
I have some query on SCTP. Please help me regarding
this issue .
I gone through RFC#2960 for implementing SCTP stack
and found some problem related to Gap-Ack-Ack . I am
writing details of the problem below here and please
reply me back .
Accoridng to RFC:::
3.3.4 Selective Acknowledgement (SACK) (3):
Gap Ack Block Start: 16 bits (unsigned integer)
Indicates the Start offset TSN for this Gap Ack
Block. To
calculate the actual TSN number the Cumulative
TSN Ack is added to
this offset number. This calculated TSN
identifies the first TSN
in this Gap Ack Block that has been received.
Gap Ack Block End: 16 bits (unsigned integer)
Indicates the End offset TSN for this Gap Ack
Block. To calculate the actual TSN number the
Cumulative TSN Ack is added to this offset number.
This calculated TSN identifies the TSN of the last
DATA chunk received in this Gap Ack Block.
Scenario-1>>>>>>>>
------------------
----------
| TSN=17 |
----------
| | <- still missing
----------
| TSN=15 |
----------
| TSN=14 |
----------
| | <- still missing
----------
| TSN=12 |
----------
| TSN=11 |
----------
| TSN=10 |
----------
then, the parameter part of the SACK MUST be
constructed as follows (assuming the new a_rwnd is set
to 4660 by the sender):
+--------------------------------+
| Cumulative TSN Ack = 12 |
+--------------------------------+
| a_rwnd = 4660 |
+----------------+---------------+
| num of block=2 | num of dup=0 |
+----------------+---------------+
|block #1 strt=2 |block #1 end=3 |
+----------------+---------------+
|block #2 strt=5 |block #2 end=5 |
+----------------+---------------+
Here the actual TSN number should calculated by :::
actual_tsn = cumulative_tsn + offset_number ;
If this is correct then for the above scenario result
will be :::
+--------------------------------+This is wrong.
| Cumulative TSN Ack = 12 |
+--------------------------------+
| a_rwnd = 4660 |
+----------------+---------------+
| num of block=2 | num of dup=0 |
+----------------+---------------+
|block #1 strt=1 |block #1 end=1 |
+----------------+---------------+
|block #2 strt=4 |block #2 end=4 |
+----------------+---------------+
It is wrong.
Scenario-2>>>>>>>>
------------------
If the scenario looks::::::::::::::
----------
| TSN=17 |
----------
| | <- still missing
----------
| TSN=15 |
----------
| |
----------
| | <- still missing
----------
| TSN=12 |
----------
| TSN=11 |
----------
If this is correct then for the above scenario result
will be :::
+--------------------------------+correct would be:
| Cumulative TSN Ack = 12 |
+--------------------------------+
| a_rwnd = 4660 |
+----------------+---------------+
| num of block=2 | num of dup=0 |
+----------------+---------------+
|block #1 strt=1 |block #1 end=2 |
+----------------+---------------+
|block #2 strt=4 |block #2 end=4 |
+----------------+---------------+
I hope this helps.
Is it correct or I need to folow some other algorithm
to calculate the gaps ??
Regards ,Michael.Tuexen AT micmac.franken.de
Dillip
=====
regards ,
DP
Alliance Computer Telephony Inc .
Tel +91 6784 30418 (O)
+91 6782 365252 (R)
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
_______________________________________________
discussion mailing list
discussion AT sctp.de
http://www.sctp.de/mailman/listinfo/discussion
Archive powered by MHonArc 2.6.19+.