SCTP : problems in sending ASCONF chunks

Michael Tüxen Michael.Tuexen at lurchi.franken.de
Mon Dec 29 13:09:18 UTC 2008


Hi,

are both machines (T and you PC) running FreeBSD?

Best regards
Michael

On Dec 29, 2008, at 12:33 PM, <ajassal.ext at orange-ftgroup.com> <ajassal.ext at orange-ftgroup.com 
 > 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 (I'll call
> it T to make things simple), and the other two are used as 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 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=1
> # sysctl -w net.inet.sctp.mobility_fasthandoff=1
> # sysctl -w net.inet.sctp.debug=0x00f301f0		(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 useful  
> but
> I'm trying to be thorough. This is the script I use to perform  
> handover
> :
>
> ifconfig rum0 inet6 <my old address> delete
> ifconfig rum0 ssid <the target access point>
> route del -inet6 default <my old gateway>
> 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 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 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 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 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 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"
>



More information about the freebsd-net mailing list