[p2p-hackers] Hard question...

Matthew Kaufman matthew at matthew.at
Mon Apr 3 19:06:57 UTC 2006

David Barrett:
> The challenge with this strategy (as I see it) is resolving 
> the "shared LAN"
> problem: how does client A measure bottleneck utilization if 
> client B is also behind the same bottleneck?

The related challenge (which I alluded to in my last email) is that you have
often have NO IDEA where the actual bottleneck is, much less what is behind
the bottleneck with you. In that case of a 6 Mbps DSL connection, a likely
bottleneck is the first ATM hop upstream of the DSLAM, which includes all
the other people who have "6 Mbps connections" attached to your DSLAM or
cluster of DSLAMs at a given CO, and the other likely bottleneck is the
final ATM link into the access router... what you see as the first IP hop
when you traceroute, which includes hundreds to tens of thousands of

Neither one of those is the "6 Mbps" connection to your house, which is much
less likely to be the actual bottleneck encountered by incoming IP traffic.
For that matter, in most P2P cases with asymmetric connectivity, the real
bottleneck is the sum of the upstream bandwidth available to the senders.

At the IP layer, the best you could do is try to measure the instantaneously
available bandwidth between you and the first IP hop (likely to be several
ATM hops and maybe some MPLS too, these days) outside your LAN, but that
depends on being able to get the access router (which is often heavily
loaded) to respond in such a way that is useful (remembering that ICMP
responses will take a lower priority path than actual traffic would inside
that router), and would still require that you briefly saturate the
connection in order to see what happens. And then even that measurement is
already one RTT old by the time you have the data.

Remember: just because something is easy to measure (bandwidth utilization
on your downlink in the single host on a DSL line case, for instance)
doesn't mean that the measurement has any value.

Perhaps this is a case where a statement of the actual problem that one is
trying to solve would be helpful.

Matthew Kaufman
matthew at matthew.at

More information about the P2p-hackers mailing list