From owner-freebsd-net@FreeBSD.ORG Wed Dec 31 20:16:54 2008 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 3ED4F1065678 for ; Wed, 31 Dec 2008 20:16:54 +0000 (UTC) (envelope-from rrs@lakerest.net) Received: from lakerest.net (unknown [IPv6:2001:240:585:2:203:6dff:fe1a:4ddc]) by mx1.freebsd.org (Postfix) with ESMTP id BC4E78FC13 for ; Wed, 31 Dec 2008 20:16:53 +0000 (UTC) (envelope-from rrs@lakerest.net) Received: from [10.1.1.54] ([10.1.1.54]) (authenticated bits=0) by lakerest.net (8.14.1/8.14.1) with ESMTP id mBVKGoUf010200 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT); Wed, 31 Dec 2008 15:16:50 -0500 (EST) (envelope-from rrs@lakerest.net) Message-Id: From: Randall Stewart To: "" In-Reply-To: <3418F3471F1CA4409901547349FFAE2E09106883@ftrdmel2> Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Apple Message framework v930.3) Date: Wed, 31 Dec 2008 15:16:50 -0500 References: <3418F3471F1CA4409901547349FFAE2E0910679F@ftrdmel2> <2C67145C-C26B-4666-B7A5-6EC1C4ABA1E5@lurchi.franken.de> <3418F3471F1CA4409901547349FFAE2E091067B8@ftrdmel2> <2C477D99-DB2F-4EDB-950F-23856B58ACAB@lurchi.franken.de> <3418F3471F1CA4409901547349FFAE2E091067E9@ftrdmel2> <835C2156-9DE3-4C96-94F0-C7E3AF63A1BD@lurchi.franken.de> <3418F3471F1CA4409901547349FFAE2E09106883@ftrdmel2> X-Mailer: Apple Mail (2.930.3) Cc: Vlad Yasevich , Michael Tuexen , khadija.daoud@orange-ftgroup.com, freebsd-net Subject: Re: SCTP : problems in sending ASCONF chunks 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: Wed, 31 Dec 2008 20:16:55 -0000 Aman: You may also want to contact Vlad (copied above) who is responsible for the lk-sctp implementation.. he may be able to direct you to the one that will have all his latest fixes.. Regards R On Dec 30, 2008, at 10:59 AM, = wrote: > > Hello M.T=FCxen, > > Today I switched T (the machine I use for testing, and that sends =20 > data to my PC) to FreeBSD 7.0. And I was very glad to see that my =20 > SCTP hard handover tests went through successfully :-) > > I am very grateful to you, for pointing out that I should check the =20= > INIT - INIT-ACK exchange, because so far I really didn't understand =20= > why my tests failed all the time. > > About lksctp : up until now, my problems were due to the fact that =20 > the CN was running under Linux, with the lksctp implementation, and =20= > that it didn't indicate in the INIT-ACK that it supports ASCONF, =20 > ASCONF-ACK and AUTH chunks at least, even if we have set the =20 > parameter net.sctp.addip_enable to 1. These are required for Dynamic =20= > Address Reconfiguration according to the RFC and very likely in =20 > FreeBSD implementation for sending ASCONF. > > I will perform tests between my PC running under FreeBSD and T =20 > running on Fedora Core 9 to see if I have better results than what =20 > I've had so far (since I was using Fedora Core 7). I will keep you =20 > updated :-) > > Again, thanks a LOT for the help you provided, I'm truly thankful =20 > for this. > > > Aman Jassal > > > > -----Message d'origine----- > De : Michael T=FCxen [mailto:Michael.Tuexen@lurchi.franken.de] > Envoy=E9 : lundi 29 d=E9cembre 2008 19:00 > =C0 : zze-Abac JASSAL A ext RD-RESA-ISS > Cc : freebsd-net@freebsd.org; DAOUD TRIKI Khadija RD-RESA-ISS > Objet : Re: SCTP : problems in sending ASCONF chunks > > Hi Aman, > > comments in-line. > > Best regards > Michael > > On Dec 29, 2008, at 6:12 PM, = > wrote: > >> >> Hello M.T=FCxen, >> >> I performed a quick test and at the INIT/INIT-ACK exchange, I noticed >> the following : >> >> - In the INIT chunk, the Supported Extensions Parameter field >> indicates that ASCONF, ASCONF-ACK, FORWARD-TSN, PKTDROP, STREAM_RESET >> and AUTH are supported > OK. That is the FreeBSD box. >> >> - In the INIT-ACK chunk, there is no field indicating that any of >> the chunks listed above are supported... > So it does not support ASCONF and AUTH. > At least on a Fedora 9 box you need to enable ADD-IP by setting the > sysctl variable > net.sctp.addip_enable > to 1. > To enable SCTP-AUTH you need to set the sysctl variable > net.sctp.auth_enable > to 1. > I'm not sure whether the Linux box support SCTP-AUTH or not... So the > second step might not work. If this is the case you can disable the > AUTH requirement for ASCONF chunks by setting on the FreeBSD box the > sysctl > variable > net.inet.sctp.asconf_auth_nochk > to 1 > > Let me know if this works... >> >> >> I didn't think about looking in this before >_< >> >> Since there is no indication given to my PC, perhaps my PC assumes >> that T doesn't support ASCONF, ASCONF-ACK, FORWARD-TSN, PKTDROP, >> STREAM_RESET and AUTH. > Correct. At least some of the extension are not enabled. >> >> >> Could it be that, because it doesn't see any Supported Extensions >> Parameter field in the INIT-ACK, my PC doesn't try to send any >> ASCONF chunk ?? Do we absolutely need to have the ASCONF, ASCONF-ACK >> and AUTH parameters in the Supported Extensions Parameter, in both >> the INIT and the INIT-ACK chunks, to have the possibility of sending >> an ASCONF chunk ? > In principle, yes! You can work around the AUTH chunks as indicated > above, but this > violates the specification and is only supported to interwork with > legacy implementations. >> >> >> >> Kind regards >> >> >> Aman Jassal >> >> >> -----Message d'origine----- >> De : Michael T=FCxen [mailto:Michael.Tuexen@lurchi.franken.de] >> Envoy=E9 : lundi 29 d=E9cembre 2008 16:49 >> =C0 : zze-Abac JASSAL A ext RD-RESA-ISS >> Cc : freebsd-net@freebsd.org; DAOUD TRIKI Khadija RD-RESA-ISS >> Objet : Re: SCTP : problems in sending ASCONF chunks >> >> Hi Aman, >> >> I'm not that familiar with the Linux box configuration. If you look >> at the INIT/INIT-ACK exchange, does the Linux box support ASCONF and >> the SCTP-AUTH extension? Both are required... >> >> Best regards >> Michael >> On Dec 29, 2008, at 2:36 PM, = >> wrote: >> >>> >>> Hello M.T=FCxen, >>> >>> No, only the PC is running under FreeBSD 7.0. T is running under >>> Linux >>> (kernel version is 2.6.21 and the distribution used is Fedora Core >>> 7). >>> SCTP is running on T thanks to the lksctp implementation, we loaded >>> the sctp module on it and made the necessary configurations so that >>> it >>> is loaded at boot time. >>> >>> Also, I enable net.sctp.addip_enable=3D1 on T, just in case, I'm not >>> exactly sure if it has an effect on my tests. >>> >>> Kind regards >>> >>> >>> Aman Jassal >>> >>> -----Message d'origine----- >>> De : Michael T=FCxen [mailto:Michael.Tuexen@lurchi.franken.de] >>> Envoy=E9 : lundi 29 d=E9cembre 2008 14:09 >>> =C0 : zze-Abac JASSAL A ext RD-RESA-ISS >>> Cc : freebsd-net@freebsd.org; DAOUD TRIKI Khadija RD-RESA-ISS =20 >>> Objet : >>> Re: SCTP : problems in sending ASCONF chunks >>> >>> Hi, >>> >>> are both machines (T and you PC) running FreeBSD? >>> >>> Best regards >>> Michael >>> >>> On Dec 29, 2008, at 12:33 PM, = >>> wrote: >>> >>>> Hi all, >>>> >>>> I have been working with SCTP and more specifically with the >>>> mobility >>>> features of SCTP at my work. Basically, I have been trying to use >>>> SCTP to perform handover tests between 2 separate Wifi networks. I >>>> use >>>> IPv6 >>>> for all my tests. >>>> >>>> I have a local LAN (wired-network), on which I have 3 machines, one >>>> of them is the machine I use to communicate with for the tests =20 >>>> (I'll >>>> call it T to make things simple), and the other two are used as =20 >>>> Wifi >>>> Access Points (say Wifi1 and Wifi2 respectively). Since I work with >>>> IPv6, I set up both Access Points to send Router Advertisement >>>> messages periodically (minimum of 3 seconds, maximum of 4 seconds). >>>> That way I can have automatic address reconfiguration when I =20 >>>> connect >>>> to either of the access points. >>>> >>>> The aim of my tests is to use a PC, connect to Wifi1 (for example), >>>> launch an SCTP association with T (T sends data to my PC), and then >>>> perform a handover on Wifi2. I do make address reconfiguration >>>> during >>>> the handover process. The important point is that I work with only >>>> ONE address on my network interface. Before I start my tests, I set >>>> the following sysctl parameters : >>>> >>>> # sysctl -w net.inet.sctp.mobility_base=3D1 # sysctl -w >>>> net.inet.sctp.mobility_fasthandoff=3D1 >>>> # sysctl -w net.inet.sctp.debug=3D0x00f301f0 (that is = to dump >>>> messages in /var/log/messages) >>>> >>>> net.inet.sctp.auto_asconf is set to 1 by default. >>>> >>>> I use FreeBSD 7.0 on my PC, I don't know if that is extremely =20 >>>> useful >>>> but I'm trying to be thorough. This is the script I use to perform >>>> handover >>>> : >>>> >>>> ifconfig rum0 inet6 delete ifconfig rum0 ssid >>> target access point> route del -inet6 default =20 >>>> rtsol >>>> rum0 >>>> >>>> If I'm not mistaken, the PC should have sent an ASCONF chunk to >>>> perform dynamic address reconfiguration. However what I observed is >>>> that nothing happens. No ASCONF chunks are sent, and therefore, T >>>> doesn't ever know that it should send data on the PC's newly >>>> acquired >>>> address. >>>> >>>> I tried to investigate the problem myself, by adding some debug =20 >>>> logs >>>> in the sctp source code (to see which functions are called during >>>> the >>>> handover process), and it seems as if the kernel doesn't ever add =20= >>>> an >>>> ASCONF chunk to send in its queue... But that's just my >>>> understanding >>>> of the problem... >>>> >>>> I looked up in the CVS repository for answers, and to see the >>>> various >>>> changes that were gradually brought on the code. There, I noticed >>>> that on the revision dating 24th July 2007, changes were made for >>>> dynamic address reconfiguration : "Change behaviour so that when =20= >>>> the >>>> last address is deleted (auto-asconf on a boudall endpoint) no >>>> action >>>> is taken until an address is added ; at that time an ASCONF >>>> add+delete is sent (if the asoc is still up)" >>>> >>>> In my humble opinion, this is exactly the case that corresponds to >>>> my >>>> handover scenario. But I just haven't been able to successfully >>>> perform it because I don't seem to send any ASCONF chunk. I'm >>>> struggling to understand why I do not see any ASCONF chunk sent. >>>> >>>> If it can help, I'm also attaching links to the kind of debug =20 >>>> logs I >>>> got when performing a handover test. This is the kind of debug logs >>>> that I got : >>>> >>>> http://www.divshare.com/download/6200509-560 >>>> >>>> This is another debug logfile, but with my own debug logs added in >>>> the sctp source code : >>>> >>>> http://www.divshare.com/download/6200504-2e9 >>>> >>>> >>>> Many thanks for your work, and I hope someone will be able to help >>>> and shed some light on this problem :-) >>>> >>>> >>>> Aman Jassal >>>> >>>> _______________________________________________ >>>> 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-unsubscribe@freebsd.org" > ------------------------------ Randall Stewart 803-317-4952 (cell) 803-345-0391(direct)