Re: SCTP? YES!
Re: SCTP? YES!
- Subject: Re: SCTP? YES!
- From: Andreas Fink <email@hidden>
- Date: Fri, 30 May 2008 08:57:27 +0200
On 30.05.2008, at 07:13, Jens Alfke wrote: On 29 May '08, at 12:22 PM, Andreas Fink wrote: Passing SCTP through "traditional" NAT should be possible if that NAT can deal with SCTP
Well, that's what I'm asking: can most off-the-shelf NATs deal with SCTP? Previous answers on and off this thread indicate "no"; I'm told that most NATs don't have SCTP support and will therefore have problems if more than one host behind the NAT wants to use the protocol. Best way is to avoid NAT and use IPv6 which is supported by the KEXT and the userspace impelmentation.
I can't avoid NAT, unfortunately. I'm writing a P2P app aimed at end-users, and it has to be able to punch through whatever Linksys / Airlink101 / etc. box that the user bought at Fry's (or got from their ISP). I'm lucky that most all of these seem to support UPnP, if shakily, so I can convince them to open TCP or UDP ports for me. I really doubt the droids who write the firmware for those have even heard of SCTP... :-p
1st. companies producing devices have heard of SCTP. Its just that they take time to implement it and of course your customers have to do flash upgrades and the like. On the other hand, those devices are so cheap these days, that spending another 20$ for a "good" router or WLAN access point is not the end of the world neither (if I count how many WLAN routers I have at home, I still wonder how this pile got so big. 802.11b, 802.11a, 802.11g, 802.11n every step asked for new access point). It sounds like SCTP would only be an option for me if it were piggybacked atop UDP (like Bryan Ford's SST protocol is). I saw an IETF document about this, but I don't know if it's implemented.
I don't think running SCTP on top of UDP would be a good idea. Many current implementations don't support it (mainly kernel level ones) and the remote would have to support it as well. So unless your application only talks to your application, it wouldn't much work. For SCTP on UDP, a userspace implementation is probably best to use as you can simply swap IP packets with UDP packets (libsctp.de I think supports UDP)
I think the best approach in fact is to bypass NAT by the use of IPv6 and use SCTP on top of that. That's much more future save and probably can be configured out of the box (I'm not saying its easy though). Or depending on the application, try SCTP and if it fails switch back to UDP or TCP. That would be the application level workaround. You then loose the advantages of SCTP however. But at least you can benefit from SCTP in the case where its possible.
NAT vendors won't add support for SCTP if there's no app's out there asking for it. So you can either stick with the old world (tcp/udp) or move on to new development with the risk of having issues with some NAT vendors.
Andreas Fink
Fink Consulting GmbH Global Networks Schweiz AG BebbiCell AG IceCell ehf
--------------------------------------------------------------- Tel: +41-61-6666330 Fax: +41-61-6666331 Mobile: +41-79-2457333 Address: Clarastrasse 3, 4058 Basel, Switzerland --------------------------------------------------------------- ICQ: 8239353 MSN: email@hidden AIM: smsrelay Skype: andreasfink Yahoo: finkconsulting SMS: +41792457333
|
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Macnetworkprog mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden