Re: Gap is only retransmitted once

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Mingyuan Zhu wrote, at 02/18/2011 10:04 PM:
> Is it probably a lksctp usage issue or kinda bug of lksctp?
> I read some source code of lksctp-test and didn't find related test
> cases. Did someone test this scenaria before?

I have just tested it like following:
H2 is the tested Linux with latest kernel 2.6.37.
and it can retransmit again and again.

H1                 H2(2.6.37kernel)
     
   <--------------- D1
   <--------------- D2
   <--------------- D3
   <--------------- D4

  SACK(ACK=D1,gap_start=2,gap_end=2)
  --------------->

  <--------------- D5
  
  SACK(ACK=D1,gap_start=2,gap_end=3)
  --------------->

  <--------------- D2(retransmitted!!)

  SACK(ACK=D1,gap_start=2,gap_end=4)
  --------------->

  <--------------- D2(retransmitted Again!)

  SACK(ACK=D1,gap_start=2,gap_end=4)
  --------------->

  <--------------- D2(retransmitted Again!!)


> 
> Great appreciate if you could provide some information.
> 
> 2011/2/17 Mingyuan Zhu <liyha.zhu@xxxxxxxxx>:
>> Please see the result below. Can you give any suggestion from below information?
>>
>> #cat /proc/net/sctp/assocs
>>  ASSOC     SOCK   STY SST ST HBKT ASSOC-ID TX_QUEUE RX_QUEUE UID INODE
>> LPORT RPORT LADDRS <-> RADDRS HBINT INS OUTS MAXRT T1X T2X RTXC
>> ffff880206882000 ffff8801f36be0c0 2   1   4  37699    1     2710
>>  0       0 580897 2944   4944  *169.254.64.6 <-> *192.168.4.103
>>   2500     4     4   10    0    0        0
>>
>> #cat /proc/net/sctp/remaddr
>> ADDR ASSOC_ID HB_ACT RTO MAX_PATH_RTX REM_ADDR_RTX  START
>> 192.168.4.103  1 1 750 5 0 0
>>
>> #sysctl -a | grep max_retrans
>> net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300
>> net.netfilter.nf_conntrack_tcp_max_retrans = 3
>> net.sctp.association_max_retrans = 10
>> net.sctp.path_max_retrans = 5
>>
>>
>> 2011/2/16 Mingyuan Zhu <liyha.zhu@xxxxxxxxx>:
>>> I will rerun the test case to get the other two info:
>>> # cat /proc/net/sctp/assocs
>>> # cat /proc/net/sctp/remaddr
>>>
>>>
>>> msw12:~ # sysctl -a | grep max_retrans
>>> net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300
>>> net.netfilter.nf_conntrack_tcp_max_retrans = 3
>>> net.sctp.association_max_retrans = 10
>>> net.sctp.path_max_retrans = 5
>>>
>>>
>>> 2011/2/16 Vasil Velichkov <vasil.velichkov@xxxxxxxxxxxx>:
>>>> On 15.02.2011 15:58, Mingyuan Zhu wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>>
>>>>>
>>>>> I have observed a problem while doing load testing on SCTP. The tested
>>>>> equipment is an open suse linux box with 2.6.34 kernel. The
>>>>> application of the equipment will send/receive messages through linux
>>>>> kernel sctp. The peer is an equipment using Aricent sctp stack.
>>>>>
>>>>> During the load testing, the peer equipment drops sctp chunks and
>>>>> reports gaps through SACK to the tested equipment.
>>>>>
>>>>> The tested equipment (Linux box) retransmitts the missing chunks. But
>>>>> it always retransmit the same #TSN only once even it receives more
>>>>> SACKs with the reporting gap.
>>>>>
>>>>>  From the ethereal captures:
>>>>>
>>>>> - TSN 2254147468 is not received by the peer equipment, so it reports
>>>>> the gap by SACK.
>>>>>
>>>>> - Linux box retransmit TSN 2254147468.
>>>>>
>>>>> - The peer still does not get it. It reports the gap by SACK again and
>>>>> again.
>>>>>
>>>>> - Linux box never retransmit the missing chunk again.
>>>>>
>>>>> - Finally, neither linux box nor the peer can send/receive any more
>>>>> chunks.
>>>>>
>>>>>
>>>>>
>>>>> Could someone help to look at the problem? Any help would be highly
>>>>> appreciated!
>>>>> --
>>>>> To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
>>>>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>>>
>>>>>
>>>>
>>>> Hi Mingyuan Zhu,
>>>>
>>>> On the Linux box, check whether net.sctp.path_max_retrans(MAX_PATH_RTX) or
>>>> net.sctp.association_max_retrans(MAXRT) parameters are set to 1.
>>>>
>>>> # cat /proc/net/sctp/assocs
>>>>  ASSOC     SOCK   STY SST ST HBKT ASSOC-ID TX_QUEUE RX_QUEUE UID INODE LPORT
>>>> RPORT LADDRS <-> RADDRS HBINT INS OUTS MAXRT T1X T2X RTXC
>>>> f2876000 f35ee1c0 2   1   4  38050    1        0        0       0 6429275
>>>> 2975   2985  *127.0.0.1 <-> *127.0.0.1            5000    32    32    5    0
>>>>    0        0
>>>> f444c800 e8407c00 2   1   4  41620    2        0        0     500 6429276
>>>> 2985   2975  *127.0.0.1 <-> *127.0.0.1            5000    32    32    5    0
>>>>    0        0
>>>>
>>>> # cat /proc/net/sctp/remaddr
>>>> ADDR ASSOC_ID HB_ACT RTO MAX_PATH_RTX REM_ADDR_RTX  START
>>>> 127.0.0.1  1 1 1000 5 0 0
>>>> 127.0.0.1  2 1 1000 5 0 0
>>>>
>>>> # sysctl -a | grep max_retrans
>>>> net.sctp.association_max_retrans = 10
>>>> net.sctp.path_max_retrans = 5
>>>>
>>>> BR
>>>> Vasil Velichkov
>>>>
>>>
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


-- 

Best Regards
-----
Shan Wei
--
To unsubscribe from this list: send the line "unsubscribe linux-sctp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Networking Development]     [Linux OMAP]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux