From owner-freebsd-net@FreeBSD.ORG Sun Jan 25 19:03:02 2009 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0C89C1065677 for ; Sun, 25 Jan 2009 19:03:02 +0000 (UTC) (envelope-from sazzad@ou.edu) Received: from et2.ou.edu (et2.ou.edu [129.15.0.235]) by mx1.freebsd.org (Postfix) with ESMTP id C59568FC13 for ; Sun, 25 Jan 2009 19:03:01 +0000 (UTC) (envelope-from sazzad@ou.edu) Received: from IT-TIGER.sooner.net.ou.edu (10.254.255.10) by it-sugarbowl.sooner.net.ou.edu (10.254.255.16) with Microsoft SMTP Server (TLS) id 8.1.336.0; Sun, 25 Jan 2009 13:00:05 -0600 Received: from XMAIL5.sooner.net.ou.edu ([10.254.254.57]) by IT-TIGER.sooner.net.ou.edu ([10.254.254.41]) with mapi; Sun, 25 Jan 2009 13:03:00 -0600 From: "Rahman, Md Sazzadur" To: =?iso-8859-1?Q?Michael_T=FCxen?= Date: Sun, 25 Jan 2009 13:02:58 -0600 Thread-Topic: A query regarding SCTP congestion control Thread-Index: Acl+3hR9f92B+hyQTricJFdLlItiTQAP7nQQ Message-ID: <7059EA19D7837E44A3BA7DAB464944B39BA45E041A@XMAIL5.sooner.net.ou.edu> References: <7059EA19D7837E44A3BA7DAB464944B37FDA715193@XMAIL5.sooner.net.ou.edu> <48060748.1090807@cisco.com> <82bdb5ec0807021137m7819153rbc0631ab6f310d0e@mail.gmail.com> <0ED8CE06-588C-4A04-BE8D-CCD8DA2C945D@lakerest.net> <7059EA19D7837E44A3BA7DAB464944B39BA45E03AB@XMAIL5.sooner.net.ou.edu> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: freebsd-net , "Atiquzzaman, Mohammed" , Randy Stewart Subject: RE: A query regarding SCTP congestion control X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 25 Jan 2009 19:03:02 -0000 Hi Michael, Thanks for your reply. From the log, I found that the values of from field = of sctp_cwnd_log are:=20 /* 32 */ "No Cwnd advance from CA", /* 61 */ "Log from a Send", /* 64 */ "Log from SACK", /* 68 */ "chunk output completes", /* 69 */ "fill_out_queue_called", I have only tried to investigate the cwnd value when the from field value i= s:=20 /* 61 */ "Log from a Send" and found that tsn never changes :( although cwn= d and flight size values change over time. Please let me know if you have any hint to resolve this problem. Thanks, Sazzad. -----Original Message----- From: Michael T=FCxen [mailto:Michael.Tuexen@lurchi.franken.de]=20 Sent: Sunday, January 25, 2009 5:14 AM To: Rahman, Md Sazzadur Cc: Randy Stewart; freebsd-net; Atiquzzaman, Mohammed Subject: Re: A query regarding SCTP congestion control Hi Sazzad, what is the value of the from field i the structure sctp_cwnd_log? Best reards Michael On Jan 23, 2009, at 1:16 AM, Rahman, Md Sazzadur wrote: > Hi Randall, > > Thanks for your suggestions. I could collect congestion window data =20 > from SCTP sender using SCTP_LOCAL_TRACE_BUF on FreeBSD7.1 kernel =20 > using the tools you provided (dump_apple_log.c, prtcwndlog.c etc.). =20 > Now, in the log, I found that tsn (Transmission Sequence Number) =20 > never changes and remains fixed which is not supposed to happen, I =20 > believe. Do you have any idea what could go wrong? > > > For example, in the log below, tsn is always 28170ae0. > > //-From Log------------------------------- > 2.162922 1543161849724545 Network:0xc463aaf0 cwnd:13063 flight:=20 > 12762 pq:f4f72484 Log from a Send tsn:28170ae0 (sendcnt:191,strcnt:=20 > 191) > 2.200947 1543161849753090 Network:0xc463aaf0 cwnd:13063 flight:=20 > 14180 pq:f4f72484 Log from a Send tsn:28170ae0 (sendcnt:191,strcnt:=20 > 191) > .............. > ............. > 2592.987776 1543168861292865 Network:0xc463aaf0 cwnd:13063 flight:=20 > 14180 pq:f4f72484 Log from a Send tsn:28170ae0 (sendcnt:191,strcnt:=20 > 191) > > //---------------------------------------------- > > Steps I have followed: > > //---------------------------------------------- > 1. Recompiled FreeBSD7.1 kernel by enabling SCTP_LOCAL_TRACE_BUF > #define SCTP_LOCAL_TRACE_BUF 1 > > 2. Enalble desired loging using sysctl; > Sysctl -w "net.inet.sctp.log_level=3D0x00000004 > > 3. Run application that sends SCTP data to the network > > 4. ./Dump_apple_log > data.txt > > 5. ./Prtcwdlog -l data.txt> cwnd.txt > //---------------------------------------------- > > I have attached the log file herewith this mail. > > It would be great if you can give me any hint to resolve this issue. > > > > Thanks, > Sazzad > > -----Original Message----- > From: Randy Stewart [mailto:randall@lakerest.net] > Sent: Thursday, August 28, 2008 6:39 AM > To: sazzadur rahman > Cc: freebsd-net; Atiquzzaman, Mohammed; Rahman, Md Sazzadur > Subject: Re: A query regarding SCTP congestion control > > 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 =20 >> 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=3D65536 >> >> options KTR_MASK=3DKTR_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=3D0x00000004" >> >> 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 >> 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 =20 >>>> API >>>> exist in SCTP for that? Do I need to dig the SCTP code in kernel =20 >>>> 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 =20 >>> 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@freebsd.or= gmailing >>>> list >>>> http://lists.freebsd.org/mailman/listinfo/freebsd-net To >>>> unsubscribe, >>>> send any mail to "freebsd-net-unsubscribe@freebsd.org" >>>> >>>> >>> >>> -- >>> Randall Stewart >>> NSSTG - Cisco Systems Inc. >>> 803-345-0369 803-317-4952 (cell) >>> >>> _______________________________________________ >>> freebsd-net@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-net >>> To unsubscribe, send any mail to "freebsd-net- >>> unsubscribe@freebsd.org" >>> >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-=20 >> unsubscribe@freebsd.org" > > ----- > Randall Stewart > randall@lakerest.net > > > > > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"