A query regarding SCTP congestion control

Randy Stewart randall at lakerest.net
Thu Aug 28 11:39:00 UTC 2008


Remember a lot has changed between the book and now.

1) The initial window is now different
2) labc variable may influence how the cwnd responds

are just 2 off the top of my head.

You also may want to use a local trace buffer (as I mentioned earlier)  
since
turning KTR on really really skew's things time wise.. its a resource  
pig.

We added the local trace buffer for this very reason.

Contact me directly if you need guidance on this. Also you may want
to pick up the latest update that I just put up on www.sctp.org

It gets the 7.0 stack current to 8.0's code.. .and there have
been at least 1 CC fix in the last few months..

R
On Jul 2, 2008, at 2:37 PM, sazzadur rahman wrote:

> Hello,
> I need to get SCTP congestion window data for research purpose. I  
> collected
> cwnd data from SCTP sender running on FreeBSD 7.0 machine by using KTR
> kernel log. After that, I tried to plot cwnd vs. time and generated  
> graph.
> But I am unable to explain the graph and it is very different  
> compared to
> the graph as shown in the book "Stream Control Transmission Protocol
> (SCTP)", a reference guide by Randall R. Stewart, page 187 and TCP
> congestion window. An typical entry from the log looks like:
>
> 749199232185105 Net:0xc7703000 at cwnd_event (SACK) cwnd:25140  
> flight:0 pq:0
> atpc:72 needpc:235 (tsn:0,sendcnt:191,strcnt:191)
>
> I have used 749199232185105 in x axis as time and cwnd:25140 in y  
> axis. I
> have attached the image file of the graph herewith this mail.
>
>> From the log, I found that cwnd varies very frequently accross  
>> time. Does
> anyone have any idea regarding this issue?
> Please let me know if you have any questions further.
>
> Thanks in advance.
>
> Best regards,
> Md Sazzadur Rahman
> Graduate Student,
> School of Computer Science,
> University of Oklahoma,
> Norman, Oklahoma, USA
>
> Steps for getting kernel log
>
> ------------------------------------------
>
> 1. Add options:
>
>    options KTR
>
>    options KTR_ENTRIES=65536
>
>    options KTR_MASK=KTR_SUBSYS
>
>
> 2. Recompile kernel
>
>    config CUSTOM_KERNEL_9_6
>
>    cd ../compile/ CUSTOM_KERNEL_9_6
>
>    make cleandepend;make depend;
>
>    make all install
>
> 3. Tried to enable trace point by:
>
>      Sysctl -w "net.inet.sctp.log_level=0x00000004"
>
> 4. run SCTP sender.
>
> 5. pull out data:
>
>    Ktrdump –q –t –o file_name
>
>    Prtcwndlog –l filename > cwnd.txt
>
> ---------------------------------------------------
>
>
>
> On Wed, Apr 16, 2008 at 9:03 AM, Randall Stewart <rrs at cisco.com>  
> wrote:
>
>> Rahman, Md Sazzadur wrote:
>>
>>> Hi, I would like to get the values of SCTP congestion control
>>> algorithm variables  (cwnd, ssthresh, flightsize and pba) from any
>>> SCTP based application in runtime for research purpose. Does any API
>>> exist in SCTP for that?  Do I need to dig the SCTP code in kernel to
>>> get the values?
>>>
>>
>> There is a socket option to get the cwnd.
>>
>> However, I think what you really want is some of the researchish
>> tracing stuff that SCTP provides.
>>
>> You can actually get a real time trace of the cwnd/flight etc via the
>> various logging functions.
>>
>> You basically must compile this as an option.. have to go look
>> at the options..
>>
>> And then you can either use ktrace (which I don't recommend since
>> it turns on to much overhead in the kernel) or you can
>> use SCTP_LOCAL_TRACE_BUF
>>
>> This will put it into a piece of memory only for SCTP and
>> not turn on all the other ktrace points.
>>
>> After you enable the logging in your compile you must turn
>> on the logging level..
>>
>> SCTP_CWND_LOGGING_ENABLE
>>
>> woudl be my recommendation.
>>
>> It gives you a real time up/down growth of the cwnd/flight/rwnd
>>
>> I think I wrote a "how to" somewhere.. let me go look..
>>
>> R
>>
>>
>>
>>> I will appreciate any help in this regard.
>>>
>>> Best Regards, Md Sazzadur Rahman Graduate Student, School of  
>>> Computer
>>> Science, University of Oklahoma, Norman, Oklahoma, USA
>>>
>>> _______________________________________________ freebsd-net at freebsd.orgmailing 
>>>  list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-net To  
>>> unsubscribe,
>>> send any mail to "freebsd-net-unsubscribe at freebsd.org"
>>>
>>>
>>
>> --
>> Randall Stewart
>> NSSTG - Cisco Systems Inc.
>> 803-345-0369 <or> 803-317-4952 (cell)
>>
>> _______________________________________________
>> freebsd-net at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-net
>> To unsubscribe, send any mail to "freebsd-net- 
>> unsubscribe at freebsd.org"
>>
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"

-----
Randall Stewart
randall at lakerest.net






More information about the freebsd-net mailing list