On 5/08/2008, at 11:45 AM, Shane Alcock wrote:
As Richard mentioned earlier, WAND has recently done some work on behalf of Alcatel looking at the viability of SP-NAT. In particular, I've been investigating the number of incoming connections to DSL customers for a NZ ISP - how many customers are accepting connections and how many connections are they accepting?
Long story short, over 40% of observed customer addresses accepted at least one incoming TCP connection over the time period we looked (around 4 consecutive days, including a weekend). This ratio grows to be more than 60% when UDP is also considered, although the counts for UDP aren't as reliable. Most of the incoming connections are on either well-known p2p ports or high-number ports, suggesting a lot of customers doing some form of p2p.
More detailed results (plus pretty graphs!) can be found at http://www.wand.net.nz/~spa1/someisp/flow_counting/result_page.html#inbound
In addition, WAND also looked into the average number of outbound sessions that those same DSL customers were using. The main aim there was to determine how many customers it would be feasible to place behind a single SP-NAT device. The results of that can be found on the same web-page (just scroll up a bit).
Note that all these results are for a single ISP during a particular time period. It is very likely that other ISPs would see significantly different numbers depending on the profiles of the customers they tend to attract - warez monkeys vs Grandma, for instance.
Awesome, that saves me some effort. Can you reveal what the profile of this particular ISP is? My main interest, is exploring the relationship between end users doing peer-to-peer on IPv4, and end users who have IPv6 (Teredo, 6to4). Do you have any numbers around that, or is it very hard to extract some? I would say, looking out for IP protocol 41, and UDP port 3544 would do the trick. Teredo of course uses non-standard ports for peer-to-peer, but that doesn't matter so much as it's always sending bubble packets to the server to keep NAT state open. Your document talks about ports per session, do you have any data around ports per byte? I expect one would find that port 445 etc. drops down quite significantly in cases like that. What about session length, in seconds? I'm hoping to prove that with a bit of movement from a couple of application vendors (Skype, etc.) we can start doing SP-NAT and preserve end-to-end, but over IPv6 instead of IPv4. Azureus is already doing IPv6 over IPv6, uTorrent has it coming in 1.8. Ideally, I'd like to get some numbers around this IPv4 p2p / IPv6 p2p relationship regularly updated, as I suspect as more and more applications become IPv6 aware the numbers will change quite significantly. Next big thing to watch out for is uTorrent 1.8 - by default it turns on IPv6(Teredo,6to4,etc.) in Windows when it is installed. Azureus only uses IPv6 if it's enabled already. -- Nathan Ward