<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><o:SmartTagType
namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="PersonName"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Totally agree that TCP isn’t the
final word. Just suggesting that using or replicating it is the fastest way to
create an application that is generally friendly to other TCP streams, and is generally
good at doing congestion control over the real-world internet.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>-david<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>
<div>
<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>
<hr size=2 width="100%" align=center tabindex=-1>
</span></font></div>
<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>
p2p-hackers-bounces@zgp.org [mailto:p2p-hackers-bounces@zgp.org] <b><span
style='font-weight:bold'>On Behalf Of </span></b>Bob Harris<br>
<b><span style='font-weight:bold'>Sent:</span></b> Saturday, April 01, 2006
3:55 PM<br>
<b><span style='font-weight:bold'>To:</span></b> <st1:PersonName w:st="on">Peer-to-peer
development.</st1:PersonName><br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: [p2p-hackers] Hard
question....</span></font><o:p></o:p></p>
</div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>
<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>David, Matthew and Daniel, <br>
<br>
While I agree that TCP flow control is good and all, I worry a bit about<br>
the TCP
high-horse and the many newbies who misunderstand it.
Without<br>
implicating anyone, it's worth pointing out that
TCP is not sacrosanct, it <br>
does not provide immunity from congestion, and it does not guarantee<br>
fair bandwidth sharing at the host level. <br>
<br>
I can create hundreds of TCP (or TCP-like) flows in parallel, easily
consume more<br>
than my fair share of bandwidth, and easily create congestion at the routers by
<br>
closing and creating TCP connections (slow start, anyone?). Many p2p apps
do<br>
exactly that: open many connections to many other hosts.<br>
<br>
In fact, I'm cranky at the moment because some
idiot's p2p download is consuming <br>
all the bandwidth at my current wireless hotspot. Maybe what we need is to
extend the TCP<br>
ideas from the flow level to the host-level (and either embed them deep into
the OS <br>
or enforce them via traffic shaping). <br>
<br>
That said,
it's better to use a protocol with built-in congestion control than without, and
<br>
it's better to adopt TCP's flow control than either nothing or something untested
at large.<br>
<br>
Bob.<o:p></o:p></span></font></p>
</div>
</div>
</body>
</html>