[Standards] Coping with low bandwidth channels in Jingle
dave at cridland.net
Wed Feb 13 14:08:37 UTC 2008
On Wed Feb 13 13:13:26 2008, Lauri Kaila wrote:
> If I understood you, a client should know its network capacity. Then
> it tells that infromation to the other end so they can agree on the
> best media fromat that doesn't exceed the limit. But isn't it almost
> impossible to know actual end-to-end bandwidth beforehand unless
> kind of QoS is present?
Sometimes the user knows the bandwidth of the immediate upstream
link. Often, though, they don't - people usually know the advertized
maximum downlink bandwidth, but usually don't know either the
upstream, nor the actual bandwidth of either direction.
The actual device may know it's immediate link rate. Sometimes, at
least - often actual link rates are deeply buried inside weird APIs,
and finding overhead, latency, and other somewhat related link
characteristics isn't usually possible.
But there is indeed no practical way to know the end to end bandwidth
short of measuring it, and that measurement is quite tricky. There's
a very interesting paper on the subject of intermediate link
measurement by van Jacobson, actually. People interested in this sort
of thing can probably find it with a Google for pathchar, or download
pchar (an open source implementation). You'll note it takes several
minutes for each hop, and uses quite a bit of traffic to do so.
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at jabber.org
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade
More information about the Standards