Edit

一本正经的胡说八道TCP/IP协议族—数据流协议TCP协议

TCP协议

TCP提供一种面向连接的、可靠地字节流服务
TCP通过下列方式来提供可靠性

  • 应用数据被分割成TCP认为最适合发送的数据块
  • 自适应的超时及重传
  • 当TCP收到发自TCP连接另一端的数据,它将发送一个确认
  • TCP将保持它首部和数据的检验和
  • TCP报文传输到达可能会失序。如果必要TCP将对收到的数据进行重新排序
  • 接收端丢弃重复的数据
  • 提供流量控制和拥塞控制

TCP首部数据格式

1518704378633.png

  • 16位源端口号 寄件地址:16位的源端口中包含初始化通信的端口。
  • 16位目的端口号 收件地址:16位的目的端口域定义传输的目的。
  • 32位序号 包裹随机序号:当SYN置位,序列码实际上是初始序列码(Initial Sequence Number,ISN),而第一个数据字节是ISN+1。这个序列号(序列码)可用来补偿传输中的不一致。

  • 32位确认序号 包裹确认序号:如果设置了ACK控制位,这个值表示一个准备接收的包的序列码。

  • 4位首部长度:4位包括TCP头大小,指示何处数据开始。

  • 保留(6位):6位值域,这些位必须是0。为了将来定义新的用途而保留。

  • 标志:6位标志域。表示为:紧急标志、有意义的应答标志、推、重置连接标志、同步序列号标志、完成发送数据标志。按照顺序排列是:URG、ACK、PSH、RST、SYN、FIN。
    1. URG:紧急标志。紧急标志为”1”表明该位有效。
    2. ACK:确认标志。表明确认编号栏有效。TCP报头内的确认编号栏内包含的确认编号(w+1)为下一个预期的序列编号,同时提示远端系统已经成功接收所有数据。
    3. PSH:推标志。该标志置位时,接收端不将该数据进行队列处理,而是尽可能快地将数据转由应用处理。在处理Telnet或rlogin等交互模式的连接时,该标志总是置位的。
    4. RST:复位标志。用于复位相应的TCP连接。
    5. SYN:同步标志。表明同步序列编号栏有效。该标志仅在三次握手建立TCP连接时有效。它提示TCP连接的服务端检查序列编号,该序列编号为TCP连接初始端(一般是客户端)的初始序列编号。
    6. FIN:结束标志。

  • 16位窗口大小:用来表示想收到的每个TCP数据段的大小。TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端正期望接收的字节。窗口大小是一个16字节字段,因而窗口大小最大为65535字节。

  • 16位校验和:1收信息机要与源机器数值 结果完全一样,从而证明数据的有效性。

  • 16位紧急指针:指向后面是优先数据的字节,在URG标志设置了时才有效。如果URG标志没有被设置,紧急域作为填充。加快处理标示为紧急的数据段。
  • 选项:长度不定,但长度必须为1个字节。
  • 数据:该TCP协议包负载的数据。

TCP三次握手

所谓三次握手(Three-Way Handshake)即建立TCP连接,这个过程隐喻成买家和卖家的发货前旺旺交谈。

1518764632861.png

  • 第一次握手 卖家(client):付款没?(SYN=1,seq=J(随机值) )
  • 第二次握手 买家(server):付款了(SYN=1 ACK=1,(确认序号)ack=J+1,seq=K(随机值))
  • 第三次握手 卖家(client):好的准备发货 (ACK=1,(确认序号)ack=K+1)

连接建立成功,卖家(client)买家(server)进入ESTABLISHED状态,
完成三次握手,随后卖家(client)买家(server)之间可以开始发货了。当然卖家和买家在淘宝中只能单方发送而在网络中则是相互发送的。

1544177959597.png

TCP四次挥手

所谓四次挥手(Four-Way Wavehand)即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。这个也就是淘宝中常见确认收货的场景,由于TCP连接时全双工的,因此,每个方向都必须要单独进行关闭。

  • 第一次挥手 卖家(client):收到货没?(FIN=1, seq=J(随机值) )
  • 第二次挥手 买家(server):收到了(ACK=1, (确认序号)ack=J+1,seq=K(随机值))
  • 第三次挥手 买家(client):确认付款了(FIN=1, seq=K(随机值) )
  • 第四次挥手 买家(server):看到了(ACK=1, (确认序号)ack=K+1,seq=N(随机值))

第一 二次挥手是卖家的收货确认关闭, 第三 四次挥手是卖家的收货确认关闭。卖家买家两边其实是没有先后顺序,谁先谁后都行。当然收不收到货其实不重要,这个挥手只是为了关闭连接。

1544178184655.png

TCP协议的流量控制和拥塞控制

之前一直讲的是传输的开始和传输的结束,那传输过程是一个怎样的过程。这里流量控制与拥塞控制可是TCP快递公司的两大特点,这两者是有一定关联的。流量控制就是对于包裹的发送控制,拥塞控制则是防止网络拥塞控制

流量控制——滑动窗口

TCP快递公司,准备发送一批包裹到收件方时候,要考虑收件方的这边物流站处理能力,当处理能力不行包裹太多,物流站处理不过来,所以需要合理控制,这时滑动窗口诞生了。这个滑动窗口由双方共同协商
收件物流站可根据自己的资源情况,随时动态地调整对方的发送窗口上限值(可增大或减小)。
窗口

  • 接收端窗口 rwnd,接收端缓冲区大小。接收端将此窗口值放在 TCP 报文的首部中的窗口字段,传送给发送端。
  • 拥塞窗口 cwnd (congestion window) ,发送端缓冲区大小
  • 发送窗口swnd,发送窗口的上限值 = Min [rwnd, cwnd]

发送端已发送了 400 字节的数据,但只收到对前 200 字节数据的确认,同时窗口大小不变。还可发送 300 字节。

1518768007893.png

拥塞控制

滑动窗口是流量的控制,只关注收件物流站和发件物流站的处理能力,没有考虑整个网络(交通),当交通堵塞时候,就需要拥塞控制来基于整个网络考虑调整收发状态了。TCP快递公司引入了拥塞控制策略。拥塞策略算法主要包括:慢启动,拥塞避免,拥塞发生,快速恢复

1519728596375.png

  • y轴包裹到达量
  • x轴包裹到达收件物流站时间
    由上图可知,当交通正常时候,到达的包裹量不断增加,但是到达物流站时间仍然比较低。但是当交通到达负载量时候,包到达时间越来越长,包裹到达量也趋近饱和,到达了knee点,但是还是不断的发送包裹,于是终于塞车了,包裹无法到达。于是到达Cliff点,到达包裹量急剧下降。
      拥塞控制机制实际上包含两种策略。
  • 拥塞避免(congestion avoidance)目的是使网络运行在Knee四周,避免拥塞的发生,是一种“预防”措施维持网络的高吞吐量、低延迟状态,避免进入拥塞
  • 拥塞控制(congestion control)使得网络运行在Cliff的左侧区域,一种“恢复”措施,使网络从拥塞中恢复过来,进入正常的运行状态。
  拥塞发生的主要原因在于网络能够提供的资源不足以满足用户的需求,这些资源包括缓存空间、链路带宽容量和中间节点的处理能力。由于互联网的设计机制导致其缺乏“接纳控制”能力,因此在网络资源不足时不能限制用户数量,而只能靠降低服务质量来继续为用户服务,也就是“尽力而为”的服务。
  单纯地增加网络资源之所以不能解决拥塞问题,是因为拥塞本身是一个动态问题,它不可能只靠静态的方案来解决,而需要协议能够在网络出现拥塞时保护网络的正常运行。目前对互联网进行的拥塞控制主要是依靠在源端执行的基于窗口的TCP拥塞控制机制。网络本身对拥塞控制所起的作用较小。

上面提到拥塞控制主要是四个算法:

  1. 慢启动
  2. 拥塞避免
  3. 拥塞发生
  4. 快速恢复
慢启动算法(Slow Start)

  TCP拥塞控制所使用的一种算法称为慢性启动(slow start),这种算法是基于这样的想法,它在开始时设置拥塞窗口大小(cwnd)
为一个最长段长度(MSS),每次接到一个确认时,窗口的大小就增加一个MSS值。窗口是慢速启动的,但是按指数规则增长。

  开始     —> cwnd = 1
  经过1个确认后 —> cwnd = 2*1 = 2
  经过2个确认后 —> cwnd = 2*2= 4
  经过3个确认后 —> cwnd = 4*2 = 8

如果带宽为W,那么经过确认次数*log2W时间就可以占满带宽。

1519712980206.png

当传输的滑动窗口到达到达一个阈值ssthresh(慢速启动阈值,默认65536)变量,慢启动阶段结束进入下一个阶段

拥塞避免:加法增加

由于指数增长过快会导致拥塞,为了避免拥塞,所以到达阈值后慢启动结束,进入拥塞避免阶段。
  拥塞避免的主要思想是加法增大,也就是cwnd的值不再指数级往上升,开始加法增加。

当窗口中所有的报文段都被确认时,cwnd的大小加1

cwnd的值就随着确认数量增加开始线性增加,这样就可以避免增长过快导致网络拥塞,慢慢的增加调整到网络的最佳值。

拥塞发生算法:乘性减少

当拥塞发生时候怎么办?,怎么调整滑动窗口cwnd值

1519730377611.png

 当发生包裹无法到达之后只能重传,重传是在两种情况下发生:

  • 如果RTO超时,那么存在非常严重的拥塞的可能性;包可能已在网络中丢失。 在这种情况下,TCP快递公司做出反应。
      a.设置阈值ssthresh为cwnd的一半。
      b.重新设置cwnd为1。
      c.启动慢速启动阶段。
  • 当收到3个重复ACK时,进入快速恢复阶段。
快速恢复
当TCP接收端收到一个失序的报文时,会立即产生一个ACK(一个重复的ack,即并不是对这个失序报文的确认,而是上一个已确认的报文的ACK),这个ack不应该被延迟。这个ack的目的是让发送方知道接收方真正希望接收的报文。

  当收到3个重复ACK时,进入快速恢复阶段。快速重传和快速恢复算法一般同时使用。快速恢复的思想是“数据包守恒”原则,即同一个时刻在网络中的数据包数量是恒定的,只有当“老”数据包离开了网络后,才能向网络中发送一个“新”的数据包,如果发送方收到一个重复的ACK,表明有一个数据包离开了网络。
  具体来说快速恢复的主要步骤是:
  1.当收到3个重复ACK时,把ssthresh设置为cwnd的一半,把cwnd设置为cwnd的一半再加3(加3的原因是因为收到3个重复的ACK,表明有3个“老”的数据包离开了网络),然后重传丢失的报文段,。
  2.再收到重复的ACK时,拥塞窗口增加1。
  3.当收到新的数据包的ACK时,把cwnd设置为第一步中的ssthresh的值。原因是因为该ACK确认了新的数据,说明从重复ACK时的数据都已收到,该恢复过程已经结束,可以回到恢复之前的状态了,也即再次进入拥塞避免状态。注意,如果在此过程出现超时,则重新进入慢启动阶段。

%u4E00%u672C%u6B63%u7ECF%u7684%u80E1%u8BF4%u516B%u9053TCP/IP%u534F%u8BAE%u65CF---%u6570%u636E%u6D41%u534F%u8BAETCP%u534F%u8BAE%0A%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%23%23%23%20TCP%u534F%u8BAE%0A%0A@%28%u7F51%u7EDC%u534F%u8BAE%29%5Bnoteton%5D%0A%0A**TCP%u63D0%u4F9B%u4E00%u79CD%u9762%u5411%u8FDE%u63A5%u7684%u3001%u53EF%u9760%u5730%u5B57%u8282%u6D41%u670D%u52A1**%0ATCP%u901A%u8FC7%u4E0B%u5217%u65B9%u5F0F%u6765%u63D0%u4F9B%u53EF%u9760%u6027%0A-%20%u5E94%u7528%u6570%u636E%u88AB%u5206%u5272%u6210TCP%u8BA4%u4E3A%u6700%u9002%u5408%u53D1%u9001%u7684%u6570%u636E%u5757%0A-%20%u81EA%u9002%u5E94%u7684%u8D85%u65F6%u53CA%u91CD%u4F20%0A-%20%u5F53TCP%u6536%u5230%u53D1%u81EATCP%u8FDE%u63A5%u53E6%u4E00%u7AEF%u7684%u6570%u636E%uFF0C%u5B83%u5C06%u53D1%u9001%u4E00%u4E2A%u786E%u8BA4%0A-%20TCP%u5C06%u4FDD%u6301%u5B83%u9996%u90E8%u548C%u6570%u636E%u7684%u68C0%u9A8C%u548C%0A-%20TCP%u62A5%u6587%u4F20%u8F93%u5230%u8FBE%u53EF%u80FD%u4F1A%u5931%u5E8F%u3002%u5982%u679C%u5FC5%u8981TCP%u5C06%u5BF9%u6536%u5230%u7684%u6570%u636E%u8FDB%u884C%u91CD%u65B0%u6392%u5E8F%0A-%20%u63A5%u6536%u7AEF%u4E22%u5F03%u91CD%u590D%u7684%u6570%u636E%0A-%20%u63D0%u4F9B%u6D41%u91CF%u63A7%u5236%u548C%u62E5%u585E%u63A7%u5236%0A%0A%23%23%23%20TCP%u9996%u90E8%u6570%u636E%u683C%u5F0F%0A%21%5BAlt%20text%7Ccenter%5D%28./1518704378633.png%29%0A%0A-%20**16%u4F4D%u6E90%u7AEF%u53E3%u53F7%20%u5BC4%u4EF6%u5730%u5740**%uFF1A16%u4F4D%u7684%u6E90%u7AEF%u53E3%u4E2D%u5305%u542B%u521D%u59CB%u5316%u901A%u4FE1%u7684%u7AEF%u53E3%u3002%0A-%20**16%u4F4D%u76EE%u7684%u7AEF%u53E3%u53F7%20%u6536%u4EF6%u5730%u5740**%uFF1A16%u4F4D%u7684%u76EE%u7684%u7AEF%u53E3%u57DF%u5B9A%u4E49%u4F20%u8F93%u7684%u76EE%u7684%u3002%0A-%20**32%u4F4D%u5E8F%u53F7%20%u5305%u88F9%u968F%u673A%u5E8F%u53F7**%uFF1A%u5F53SYN%u7F6E%u4F4D%uFF0C%u5E8F%u5217%u7801%u5B9E%u9645%u4E0A%u662F%u521D%u59CB%u5E8F%u5217%u7801%uFF08Initial%20Sequence%20Number%uFF0CISN%uFF09%uFF0C%u800C%u7B2C%u4E00%u4E2A%u6570%u636E%u5B57%u8282%u662FISN+1%u3002%u8FD9%u4E2A%u5E8F%u5217%u53F7%uFF08%u5E8F%u5217%u7801%uFF09%u53EF%u7528%u6765%u8865%u507F%u4F20%u8F93%u4E2D%u7684%u4E0D%u4E00%u81F4%u3002%0A%0A-%20**32%u4F4D%u786E%u8BA4%u5E8F%u53F7%20%u5305%u88F9%u786E%u8BA4%u5E8F%u53F7**%uFF1A%u5982%u679C%u8BBE%u7F6E%u4E86ACK%u63A7%u5236%u4F4D%uFF0C%u8FD9%u4E2A%u503C%u8868%u793A%u4E00%u4E2A%u51C6%u5907%u63A5%u6536%u7684%u5305%u7684%u5E8F%u5217%u7801%u3002%0A%0A-%20**4%u4F4D%u9996%u90E8%u957F%u5EA6**%uFF1A4%u4F4D%u5305%u62ECTCP%u5934%u5927%u5C0F%uFF0C%u6307%u793A%u4F55%u5904%u6570%u636E%u5F00%u59CB%u3002%0A%0A-%20**%u4FDD%u7559%uFF086%u4F4D%uFF09**%uFF1A6%u4F4D%u503C%u57DF%uFF0C%u8FD9%u4E9B%u4F4D%u5FC5%u987B%u662F0%u3002%u4E3A%u4E86%u5C06%u6765%u5B9A%u4E49%u65B0%u7684%u7528%u9014%u800C%u4FDD%u7559%u3002%0A%0A-%20**%u6807%u5FD7**%uFF1A6%u4F4D%u6807%u5FD7%u57DF%u3002%u8868%u793A%u4E3A%uFF1A%u7D27%u6025%u6807%u5FD7%u3001%u6709%u610F%u4E49%u7684%u5E94%u7B54%u6807%u5FD7%u3001%u63A8%u3001%u91CD%u7F6E%u8FDE%u63A5%u6807%u5FD7%u3001%u540C%u6B65%u5E8F%u5217%u53F7%u6807%u5FD7%u3001%u5B8C%u6210%u53D1%u9001%u6570%u636E%u6807%u5FD7%u3002%u6309%u7167%u987A%u5E8F%u6392%u5217%u662F%uFF1AURG%u3001ACK%u3001PSH%u3001RST%u3001SYN%u3001FIN%u3002%0A%09%09**1.%20URG**%uFF1A%u7D27%u6025%u6807%u5FD7%u3002%u7D27%u6025%u6807%u5FD7%u4E3A%221%22%u8868%u660E%u8BE5%u4F4D%u6709%u6548%u3002%0A%09%09**2.%20ACK**%uFF1A%u786E%u8BA4%u6807%u5FD7%u3002%u8868%u660E%u786E%u8BA4%u7F16%u53F7%u680F%u6709%u6548%u3002TCP%u62A5%u5934%u5185%u7684%u786E%u8BA4%u7F16%u53F7%u680F%u5185%u5305%u542B%u7684%u786E%u8BA4%u7F16%u53F7%uFF08w+1%uFF09%u4E3A%u4E0B%u4E00%u4E2A%u9884%u671F%u7684%u5E8F%u5217%u7F16%u53F7%uFF0C%u540C%u65F6%u63D0%u793A%u8FDC%u7AEF%u7CFB%u7EDF%u5DF2%u7ECF%u6210%u529F%u63A5%u6536%u6240%u6709%u6570%u636E%u3002%0A%09%09**3.%20PSH**%uFF1A%u63A8%u6807%u5FD7%u3002%u8BE5%u6807%u5FD7%u7F6E%u4F4D%u65F6%uFF0C%u63A5%u6536%u7AEF%u4E0D%u5C06%u8BE5%u6570%u636E%u8FDB%u884C%u961F%u5217%u5904%u7406%uFF0C%u800C%u662F%u5C3D%u53EF%u80FD%u5FEB%u5730%u5C06%u6570%u636E%u8F6C%u7531%u5E94%u7528%u5904%u7406%u3002%u5728%u5904%u7406Telnet%u6216rlogin%u7B49%u4EA4%u4E92%u6A21%u5F0F%u7684%u8FDE%u63A5%u65F6%uFF0C%u8BE5%u6807%u5FD7%u603B%u662F%u7F6E%u4F4D%u7684%u3002%0A%09%09**4.%20RST**%uFF1A%u590D%u4F4D%u6807%u5FD7%u3002%u7528%u4E8E%u590D%u4F4D%u76F8%u5E94%u7684TCP%u8FDE%u63A5%u3002%0A%09%09**5.%20SYN**%uFF1A%u540C%u6B65%u6807%u5FD7%u3002%u8868%u660E%u540C%u6B65%u5E8F%u5217%u7F16%u53F7%u680F%u6709%u6548%u3002%u8BE5%u6807%u5FD7%u4EC5%u5728%u4E09%u6B21%u63E1%u624B%u5EFA%u7ACBTCP%u8FDE%u63A5%u65F6%u6709%u6548%u3002%u5B83%u63D0%u793ATCP%u8FDE%u63A5%u7684%u670D%u52A1%u7AEF%u68C0%u67E5%u5E8F%u5217%u7F16%u53F7%uFF0C%u8BE5%u5E8F%u5217%u7F16%u53F7%u4E3ATCP%u8FDE%u63A5%u521D%u59CB%u7AEF%uFF08%u4E00%u822C%u662F%u5BA2%u6237%u7AEF%uFF09%u7684%u521D%u59CB%u5E8F%u5217%u7F16%u53F7%u3002%0A%09%09**6.%20FIN**%uFF1A%u7ED3%u675F%u6807%u5FD7%u3002%0A%0A-%20**16%u4F4D%u7A97%u53E3%u5927%u5C0F**%uFF1A%u7528%u6765%u8868%u793A%u60F3%u6536%u5230%u7684%u6BCF%u4E2ATCP%u6570%u636E%u6BB5%u7684%u5927%u5C0F%u3002TCP%u7684%u6D41%u91CF%u63A7%u5236%u7531%u8FDE%u63A5%u7684%u6BCF%u4E00%u7AEF%u901A%u8FC7%u58F0%u660E%u7684%u7A97%u53E3%u5927%u5C0F%u6765%u63D0%u4F9B%u3002%u7A97%u53E3%u5927%u5C0F%u4E3A%u5B57%u8282%u6570%uFF0C%u8D77%u59CB%u4E8E%u786E%u8BA4%u5E8F%u53F7%u5B57%u6BB5%u6307%u660E%u7684%u503C%uFF0C%u8FD9%u4E2A%u503C%u662F%u63A5%u6536%u7AEF%u6B63%u671F%u671B%u63A5%u6536%u7684%u5B57%u8282%u3002%u7A97%u53E3%u5927%u5C0F%u662F%u4E00%u4E2A16%u5B57%u8282%u5B57%u6BB5%uFF0C%u56E0%u800C%u7A97%u53E3%u5927%u5C0F%u6700%u5927%u4E3A65535%u5B57%u8282%u3002%0A%0A-%20**16%u4F4D%u6821%u9A8C%u548C**%uFF1A1%u6536%u4FE1%u606F%u673A%u8981%u4E0E%u6E90%u673A%u5668%u6570%u503C%20%u7ED3%u679C%u5B8C%u5168%u4E00%u6837%uFF0C%u4ECE%u800C%u8BC1%u660E%u6570%u636E%u7684%u6709%u6548%u6027%u3002%0A-%20**16%u4F4D%u7D27%u6025%u6307%u9488**%uFF1A%u6307%u5411%u540E%u9762%u662F%u4F18%u5148%u6570%u636E%u7684%u5B57%u8282%uFF0C%u5728URG%u6807%u5FD7%u8BBE%u7F6E%u4E86%u65F6%u624D%u6709%u6548%u3002%u5982%u679CURG%u6807%u5FD7%u6CA1%u6709%u88AB%u8BBE%u7F6E%uFF0C%u7D27%u6025%u57DF%u4F5C%u4E3A%u586B%u5145%u3002%u52A0%u5FEB%u5904%u7406%u6807%u793A%u4E3A%u7D27%u6025%u7684%u6570%u636E%u6BB5%u3002%0A-%20**%u9009%u9879**%uFF1A%u957F%u5EA6%u4E0D%u5B9A%uFF0C%u4F46%u957F%u5EA6%u5FC5%u987B%u4E3A1%u4E2A%u5B57%u8282%u3002%0A-%20**%u6570%u636E**%uFF1A%u8BE5TCP%u534F%u8BAE%u5305%u8D1F%u8F7D%u7684%u6570%u636E%u3002%0A%0A%23%23%23%20TCP%u4E09%u6B21%u63E1%u624B%0A%u6240%u8C13%u4E09%u6B21%u63E1%u624B%uFF08Three-Way%20Handshake%uFF09%u5373%u5EFA%u7ACBTCP%u8FDE%u63A5%uFF0C%u8FD9%u4E2A%u8FC7%u7A0B%u9690%u55BB%u6210%u4E70%u5BB6%u548C%u5356%u5BB6%u7684%u53D1%u8D27%u524D%u65FA%u65FA%u4EA4%u8C08%u3002%0A%21%5BAlt%20text%7Ccenter%5D%28./1518764632861.png%29%0A%0A-%20**%u7B2C%u4E00%u6B21%u63E1%u624B%20%u5356%u5BB6%uFF08client%uFF09%3A%u4ED8%u6B3E%u6CA1%uFF1F**%uFF08SYN%3D1%uFF0Cseq%3DJ%28%u968F%u673A%u503C%29%20%uFF09%0A-%20**%u7B2C%u4E8C%u6B21%u63E1%u624B%20%u4E70%u5BB6%uFF08server%uFF09%3A%u4ED8%u6B3E%u4E86**%uFF08SYN%3D1%20%20ACK%3D1%uFF0C%uFF08%u786E%u8BA4%u5E8F%u53F7%uFF09ack%3DJ+1%uFF0Cseq%3DK%28%u968F%u673A%u503C%29%uFF09%0A-%20**%u7B2C%u4E09%u6B21%u63E1%u624B%20%u5356%u5BB6%uFF08client%uFF09%3A%u597D%u7684%u51C6%u5907%u53D1%u8D27%20**%uFF08ACK%3D1%uFF0C%uFF08%u786E%u8BA4%u5E8F%u53F7%uFF09ack%3DK+1%uFF09%0A%0A%u8FDE%u63A5%u5EFA%u7ACB%u6210%u529F%uFF0C**%u5356%u5BB6%uFF08client%uFF09**%u548C**%u4E70%u5BB6%uFF08server%uFF09**%u8FDB%u5165ESTABLISHED%u72B6%u6001%uFF0C%0A%u5B8C%u6210%u4E09%u6B21%u63E1%u624B%uFF0C%u968F%u540E**%u5356%u5BB6%uFF08client%uFF09**%u4E0E**%u4E70%u5BB6%uFF08server%uFF09**%u4E4B%u95F4%u53EF%u4EE5%u5F00%u59CB%u53D1%u8D27%u4E86%u3002%u5F53%u7136%u5356%u5BB6%u548C%u4E70%u5BB6%u5728%u6DD8%u5B9D%u4E2D%u53EA%u80FD%u5355%u65B9%u53D1%u9001%u800C%u5728%u7F51%u7EDC%u4E2D%u5219%u662F%u76F8%u4E92%u53D1%u9001%u7684%u3002%0A%21%5BAlt%20text%7Ccenter%5D%28./1544177959597.png%29%0A%0A%23%23%23%20TCP%u56DB%u6B21%u6325%u624B%0A%u6240%u8C13%u56DB%u6B21%u6325%u624B%uFF08Four-Way%20Wavehand%uFF09%u5373%u7EC8%u6B62TCP%u8FDE%u63A5%uFF0C%u5C31%u662F%u6307%u65AD%u5F00%u4E00%u4E2ATCP%u8FDE%u63A5%u65F6%uFF0C%u9700%u8981%u5BA2%u6237%u7AEF%u548C%u670D%u52A1%u7AEF%u603B%u5171%u53D1%u90014%u4E2A%u5305%u4EE5%u786E%u8BA4%u8FDE%u63A5%u7684%u65AD%u5F00%u3002%u8FD9%u4E2A%u4E5F%u5C31%u662F%u6DD8%u5B9D%u4E2D%u5E38%u89C1%u786E%u8BA4%u6536%u8D27%u7684%u573A%u666F%uFF0C%u7531%u4E8ETCP%u8FDE%u63A5%u65F6%u5168%u53CC%u5DE5%u7684%uFF0C%u56E0%u6B64%uFF0C%u6BCF%u4E2A%u65B9%u5411%u90FD%u5FC5%u987B%u8981%u5355%u72EC%u8FDB%u884C%u5173%u95ED%u3002%0A%0A%0A%0A-%20**%u7B2C%u4E00%u6B21%u6325%u624B%20%u5356%u5BB6%uFF08client%uFF09%3A%u6536%u5230%u8D27%u6CA1%uFF1F**%uFF08FIN%3D1%2C%20seq%3DJ%28%u968F%u673A%u503C%29%20%uFF09%0A-%20**%u7B2C%u4E8C%u6B21%u6325%u624B%20%u4E70%u5BB6%uFF08server%uFF09%3A%u6536%u5230%u4E86**%uFF08ACK%3D1%2C%20%uFF08%u786E%u8BA4%u5E8F%u53F7%uFF09ack%3DJ+1%uFF0Cseq%3DK%28%u968F%u673A%u503C%29%uFF09%0A-%20**%u7B2C%u4E09%u6B21%u6325%u624B%20%u4E70%u5BB6%uFF08client%uFF09%3A%u786E%u8BA4%u4ED8%u6B3E%u4E86**%uFF08FIN%3D1%2C%20seq%3DK%28%u968F%u673A%u503C%29%20%uFF09%0A-%20**%u7B2C%u56DB%u6B21%u6325%u624B%20%u4E70%u5BB6%uFF08server%uFF09%3A%u770B%u5230%u4E86**%uFF08ACK%3D1%2C%20%uFF08%u786E%u8BA4%u5E8F%u53F7%uFF09ack%3DK+1%uFF0Cseq%3DN%28%u968F%u673A%u503C%29%uFF09%0A%0A%u7B2C%u4E00%20%u4E8C%u6B21%u6325%u624B%u662F%u5356%u5BB6%u7684%u6536%u8D27%u786E%u8BA4%u5173%u95ED%uFF0C%20%u7B2C%u4E09%20%u56DB%u6B21%u6325%u624B%u662F%u5356%u5BB6%u7684%u6536%u8D27%u786E%u8BA4%u5173%u95ED%u3002%u5356%u5BB6%u4E70%u5BB6%u4E24%u8FB9%u5176%u5B9E%u662F%u6CA1%u6709%u5148%u540E%u987A%u5E8F%uFF0C%u8C01%u5148%u8C01%u540E%u90FD%u884C%u3002%u5F53%u7136%u6536%u4E0D%u6536%u5230%u8D27%u5176%u5B9E%u4E0D%u91CD%u8981%uFF0C%u8FD9%u4E2A%u6325%u624B%u53EA%u662F%u4E3A%u4E86%u5173%u95ED%u8FDE%u63A5%u3002%0A%0A%21%5BAlt%20text%7Ccenter%5D%28./1544178184655.png%29%0A%0A%0A%23%23%23%20TCP%u534F%u8BAE%u7684%u6D41%u91CF%u63A7%u5236%u548C%u62E5%u585E%u63A7%u5236%0A%0A%u4E4B%u524D%u4E00%u76F4%u8BB2%u7684%u662F%u4F20%u8F93%u7684%u5F00%u59CB%u548C%u4F20%u8F93%u7684%u7ED3%u675F%uFF0C%u90A3%u4F20%u8F93%u8FC7%u7A0B%u662F%u4E00%u4E2A%u600E%u6837%u7684%u8FC7%u7A0B%u3002%u8FD9%u91CC%u6D41%u91CF%u63A7%u5236%u4E0E%u62E5%u585E%u63A7%u5236%u53EF%u662FTCP%u5FEB%u9012%u516C%u53F8%u7684%u4E24%u5927%u7279%u70B9%uFF0C%u8FD9%u4E24%u8005%u662F%u6709%u4E00%u5B9A%u5173%u8054%u7684%u3002%u6D41%u91CF%u63A7%u5236%u5C31%u662F%u5BF9%u4E8E%u5305%u88F9%u7684%u53D1%u9001%u63A7%u5236%uFF0C%u62E5%u585E%u63A7%u5236%u5219%u662F%u9632%u6B62%u7F51%u7EDC%u62E5%u585E%u63A7%u5236%0A%23%23%23%23%23%u6D41%u91CF%u63A7%u5236%u2014%u2014%u6ED1%u52A8%u7A97%u53E3%0ATCP%u5FEB%u9012%u516C%u53F8%uFF0C%u51C6%u5907%u53D1%u9001%u4E00%u6279%u5305%u88F9%u5230%u6536%u4EF6%u65B9%u65F6%u5019%uFF0C%u8981%u8003%u8651%u6536%u4EF6%u65B9%u7684%u8FD9%u8FB9%u7269%u6D41%u7AD9%u5904%u7406%u80FD%u529B%uFF0C%u5F53%u5904%u7406%u80FD%u529B%u4E0D%u884C%u5305%u88F9%u592A%u591A%uFF0C%u7269%u6D41%u7AD9%u5904%u7406%u4E0D%u8FC7%u6765%uFF0C%u6240%u4EE5%u9700%u8981%u5408%u7406%u63A7%u5236%uFF0C%u8FD9%u65F6%u6ED1%u52A8%u7A97%u53E3%u8BDE%u751F%u4E86%u3002%u8FD9%u4E2A%u6ED1%u52A8%u7A97%u53E3%u7531%u53CC%u65B9%u5171%u540C%u534F%u5546%0A%u6536%u4EF6%u7269%u6D41%u7AD9%u53EF%u6839%u636E%u81EA%u5DF1%u7684%u8D44%u6E90%u60C5%u51B5%uFF0C%u968F%u65F6%u52A8%u6001%u5730%u8C03%u6574%u5BF9%u65B9%u7684%u53D1%u9001%u7A97%u53E3%u4E0A%u9650%u503C%28%u53EF%u589E%u5927%u6216%u51CF%u5C0F%29%u3002%0A%20**%u7A97%u53E3**%0A-%20**%u63A5%u6536%u7AEF%u7A97%u53E3%20rwnd**%uFF0C%u63A5%u6536%u7AEF%u7F13%u51B2%u533A%u5927%u5C0F%u3002%u63A5%u6536%u7AEF%u5C06%u6B64%u7A97%u53E3%u503C%u653E%u5728%20TCP%20%u62A5%u6587%u7684%u9996%u90E8%u4E2D%u7684%u7A97%u53E3%u5B57%u6BB5%uFF0C%u4F20%u9001%u7ED9%u53D1%u9001%u7AEF%u3002%0A-%20**%u62E5%u585E%u7A97%u53E3%20cwnd%20%28congestion%20window%29**%20%uFF0C%u53D1%u9001%u7AEF%u7F13%u51B2%u533A%u5927%u5C0F%0A-%20**%u53D1%u9001%u7A97%u53E3swnd**%uFF0C%u53D1%u9001%u7A97%u53E3%u7684%u4E0A%u9650%u503C%20%3D%20Min%20%5Brwnd%2C%20cwnd%5D%0A%0A%u53D1%u9001%u7AEF%u5DF2%u53D1%u9001%u4E86%20400%20%u5B57%u8282%u7684%u6570%u636E%uFF0C%u4F46%u53EA%u6536%u5230%u5BF9%u524D%20200%20%u5B57%u8282%u6570%u636E%u7684%u786E%u8BA4%uFF0C%u540C%u65F6%u7A97%u53E3%u5927%u5C0F%u4E0D%u53D8%u3002%u8FD8%u53EF%u53D1%u9001%20300%20%u5B57%u8282%u3002%0A%20%0A%21%5BAlt%20text%7Ccenter%5D%28./1518768007893.png%29%0A%0A%23%23%23%23%23%u62E5%u585E%u63A7%u5236%20%0A%u6ED1%u52A8%u7A97%u53E3%u662F%u6D41%u91CF%u7684%u63A7%u5236%uFF0C%u53EA%u5173%u6CE8%u6536%u4EF6%u7269%u6D41%u7AD9%u548C%u53D1%u4EF6%u7269%u6D41%u7AD9%u7684%u5904%u7406%u80FD%u529B%uFF0C%u6CA1%u6709%u8003%u8651%u6574%u4E2A%u7F51%u7EDC%uFF08%u4EA4%u901A%uFF09%uFF0C%u5F53%u4EA4%u901A%u5835%u585E%u65F6%u5019%uFF0C%u5C31%u9700%u8981%u62E5%u585E%u63A7%u5236%u6765%u57FA%u4E8E%u6574%u4E2A%u7F51%u7EDC%u8003%u8651%u8C03%u6574%u6536%u53D1%u72B6%u6001%u4E86%u3002TCP%u5FEB%u9012%u516C%u53F8%u5F15%u5165%u4E86%u62E5%u585E%u63A7%u5236%u7B56%u7565%u3002**%u62E5%u585E%u7B56%u7565%u7B97%u6CD5%u4E3B%u8981%u5305%u62EC%uFF1A%u6162%u542F%u52A8%uFF0C%u62E5%u585E%u907F%u514D%uFF0C%u62E5%u585E%u53D1%u751F%uFF0C%u5FEB%u901F%u6062%u590D**%u3002%0A%21%5BAlt%20text%7Ccenter%5D%28./1519728596375.png%29%0A-%20y%u8F74%u5305%u88F9%u5230%u8FBE%u91CF%0A-%20x%u8F74%u5305%u88F9%u5230%u8FBE%u6536%u4EF6%u7269%u6D41%u7AD9%u65F6%u95F4%0A%u7531%u4E0A%u56FE%u53EF%u77E5%uFF0C%u5F53%u4EA4%u901A%u6B63%u5E38%u65F6%u5019%uFF0C%u5230%u8FBE%u7684%u5305%u88F9%u91CF%u4E0D%u65AD%u589E%u52A0%uFF0C%u4F46%u662F%u5230%u8FBE%u7269%u6D41%u7AD9%u65F6%u95F4%u4ECD%u7136%u6BD4%u8F83%u4F4E%u3002%u4F46%u662F%u5F53%u4EA4%u901A%u5230%u8FBE%u8D1F%u8F7D%u91CF%u65F6%u5019%uFF0C%u5305%u5230%u8FBE%u65F6%u95F4%u8D8A%u6765%u8D8A%u957F%uFF0C%u5305%u88F9%u5230%u8FBE%u91CF%u4E5F%u8D8B%u8FD1%u9971%u548C%uFF0C%u5230%u8FBE%u4E86**knee%u70B9**%uFF0C%u4F46%u662F%u8FD8%u662F%u4E0D%u65AD%u7684%u53D1%u9001%u5305%u88F9%uFF0C%u4E8E%u662F%u7EC8%u4E8E%u585E%u8F66%u4E86%uFF0C%u5305%u88F9%u65E0%u6CD5%u5230%u8FBE%u3002%u4E8E%u662F%u5230%u8FBE**Cliff%u70B9**%uFF0C%u5230%u8FBE%u5305%u88F9%u91CF%u6025%u5267%u4E0B%u964D%u3002%20%0A%u3000%u3000%u62E5%u585E%u63A7%u5236%u673A%u5236%u5B9E%u9645%u4E0A%u5305%u542B%u4E24%u79CD%u7B56%u7565%u3002%0A-%20**%u62E5%u585E%u907F%u514D%uFF08congestion%20avoidance%uFF09**%u76EE%u7684%u662F%u4F7F%u7F51%u7EDC%u8FD0%u884C%u5728**Knee**%u56DB%u5468%uFF0C%u907F%u514D%u62E5%u585E%u7684%u53D1%u751F%uFF0C%u662F%u4E00%u79CD%u201C%u9884%u9632%u201D%u63AA%u65BD%u7EF4%u6301%u7F51%u7EDC%u7684%u9AD8%u541E%u5410%u91CF%u3001%u4F4E%u5EF6%u8FDF%u72B6%u6001%uFF0C%u907F%u514D%u8FDB%u5165%u62E5%u585E%0A-%20**%u62E5%u585E%u63A7%u5236%uFF08congestion%20control%uFF09**%u4F7F%u5F97%u7F51%u7EDC%u8FD0%u884C%u5728**Cliff**%u7684%u5DE6%u4FA7%u533A%u57DF%uFF0C%u4E00%u79CD%u201C%u6062%u590D%u201D%u63AA%u65BD%uFF0C%u4F7F%u7F51%u7EDC%u4ECE%u62E5%u585E%u4E2D%u6062%u590D%u8FC7%u6765%uFF0C%u8FDB%u5165%u6B63%u5E38%u7684%u8FD0%u884C%u72B6%u6001%u3002%0A%0A%09%u3000%u3000%u62E5%u585E%u53D1%u751F%u7684%u4E3B%u8981%u539F%u56E0%u5728%u4E8E%u7F51%u7EDC%u80FD%u591F%u63D0%u4F9B%u7684%u8D44%u6E90%u4E0D%u8DB3%u4EE5%u6EE1%u8DB3%u7528%u6237%u7684%u9700%u6C42%uFF0C%u8FD9%u4E9B%u8D44%u6E90%u5305%u62EC%u7F13%u5B58%u7A7A%u95F4%u3001%u94FE%u8DEF%u5E26%u5BBD%u5BB9%u91CF%u548C%u4E2D%u95F4%u8282%u70B9%u7684%u5904%u7406%u80FD%u529B%u3002%u7531%u4E8E%u4E92%u8054%u7F51%u7684%u8BBE%u8BA1%u673A%u5236%u5BFC%u81F4%u5176%u7F3A%u4E4F%u201C%u63A5%u7EB3%u63A7%u5236%u201D%u80FD%u529B%uFF0C%u56E0%u6B64%u5728%u7F51%u7EDC%u8D44%u6E90%u4E0D%u8DB3%u65F6%u4E0D%u80FD%u9650%u5236%u7528%u6237%u6570%u91CF%uFF0C%u800C%u53EA%u80FD%u9760%u964D%u4F4E%u670D%u52A1%u8D28%u91CF%u6765%u7EE7%u7EED%u4E3A%u7528%u6237%u670D%u52A1%uFF0C%u4E5F%u5C31%u662F%u201C%u5C3D%u529B%u800C%u4E3A%u201D%u7684%u670D%u52A1%u3002%20%20%0A%09%u3000%u3000%u5355%u7EAF%u5730%u589E%u52A0%u7F51%u7EDC%u8D44%u6E90%u4E4B%u6240%u4EE5%u4E0D%u80FD%u89E3%u51B3%u62E5%u585E%u95EE%u9898%uFF0C%u662F%u56E0%u4E3A%u62E5%u585E%u672C%u8EAB%u662F%u4E00%u4E2A%u52A8%u6001%u95EE%u9898%uFF0C%u5B83%u4E0D%u53EF%u80FD%u53EA%u9760%u9759%u6001%u7684%u65B9%u6848%u6765%u89E3%u51B3%uFF0C%u800C%u9700%u8981%u534F%u8BAE%u80FD%u591F%u5728%u7F51%u7EDC%u51FA%u73B0%u62E5%u585E%u65F6%u4FDD%u62A4%u7F51%u7EDC%u7684%u6B63%u5E38%u8FD0%u884C%u3002%u76EE%u524D%u5BF9%u4E92%u8054%u7F51%u8FDB%u884C%u7684%u62E5%u585E%u63A7%u5236%u4E3B%u8981%u662F%u4F9D%u9760%u5728%u6E90%u7AEF%u6267%u884C%u7684%u57FA%u4E8E%u7A97%u53E3%u7684TCP%u62E5%u585E%u63A7%u5236%u673A%u5236%u3002%u7F51%u7EDC%u672C%u8EAB%u5BF9%u62E5%u585E%u63A7%u5236%u6240%u8D77%u7684%u4F5C%u7528%u8F83%u5C0F%u3002%0A%0A**%u4E0A%u9762%u63D0%u5230%u62E5%u585E%u63A7%u5236%u4E3B%u8981%u662F%u56DB%u4E2A%u7B97%u6CD5%uFF1A**%0A1.%20**%u6162%u542F%u52A8**%0A2.%20**%u62E5%u585E%u907F%u514D**%0A3.%20**%u62E5%u585E%u53D1%u751F**%0A4.%20**%u5FEB%u901F%u6062%u590D**%20%0A%0A%23%23%23%23%23%23%u6162%u542F%u52A8%u7B97%u6CD5%uFF08Slow%20Start%uFF09%20%0A%u3000%u3000TCP%u62E5%u585E%u63A7%u5236%u6240%u4F7F%u7528%u7684%u4E00%u79CD%u7B97%u6CD5%u79F0%u4E3A%u6162%u6027%u542F%u52A8%uFF08slow%20start%uFF09%uFF0C%u8FD9%u79CD%u7B97%u6CD5%u662F%u57FA%u4E8E%u8FD9%u6837%u7684%u60F3%u6CD5%uFF0C%u5B83%u5728%u5F00%u59CB%u65F6%u8BBE%u7F6E%u62E5%u585E%u7A97%u53E3%u5927%u5C0F%uFF08cwnd%uFF09%20%0A%u4E3A%u4E00%u4E2A%u6700%u957F%u6BB5%u957F%u5EA6%uFF08MSS%uFF09%uFF0C%u6BCF%u6B21%u63A5%u5230%u4E00%u4E2A%u786E%u8BA4%u65F6%uFF0C%u7A97%u53E3%u7684%u5927%u5C0F%u5C31%u589E%u52A0%u4E00%u4E2AMSS%u503C%u3002%u7A97%u53E3%u662F%u6162%u901F%u542F%u52A8%u7684%uFF0C%u4F46%u662F%u6309%u6307%u6570%u89C4%u5219%u589E%u957F%u3002%0A%60%60%60C%20%0A%u3000%u3000%u5F00%u59CB%u3000%u3000%u3000%u3000%u3000%u2014%3E%20cwnd%20%3D%201%20%0A%u3000%u3000%u7ECF%u8FC71%u4E2A%u786E%u8BA4%u540E%20%u2014%3E%20cwnd%20%3D%202*1%20%3D%202%20%0A%u3000%u3000%u7ECF%u8FC72%u4E2A%u786E%u8BA4%u540E%20%u2014%3E%20cwnd%20%3D%202*2%3D%204%20%0A%u3000%u3000%u7ECF%u8FC73%u4E2A%u786E%u8BA4%u540E%20%u2014%3E%20cwnd%20%3D%204*2%20%3D%208%20%0A%60%60%60%0A%u5982%u679C%u5E26%u5BBD%u4E3AW%uFF0C%u90A3%u4E48%u7ECF%u8FC7**%u786E%u8BA4%u6B21%u6570*log2W**%u65F6%u95F4%u5C31%u53EF%u4EE5%u5360%u6EE1%u5E26%u5BBD%u3002%0A%21%5BAlt%20text%7Ccenter%5D%28./1519712980206.png%29%0A%0A%u5F53%u4F20%u8F93%u7684%u6ED1%u52A8%u7A97%u53E3%u5230%u8FBE%u5230%u8FBE%u4E00%u4E2A%u9608%u503C**ssthresh%uFF08%u6162%u901F%u542F%u52A8%u9608%u503C%uFF0C%u9ED8%u8BA465536%uFF09%u53D8%u91CF**%uFF0C%u6162%u542F%u52A8%u9636%u6BB5%u7ED3%u675F%u8FDB%u5165%u4E0B%u4E00%u4E2A%u9636%u6BB5%0A%0A%0A%23%23%23%23%23%23%u62E5%u585E%u907F%u514D%uFF1A%u52A0%u6CD5%u589E%u52A0%20%0A%u7531%u4E8E%u6307%u6570%u589E%u957F%u8FC7%u5FEB%u4F1A%u5BFC%u81F4%u62E5%u585E%uFF0C%u4E3A%u4E86%u907F%u514D%u62E5%u585E%uFF0C%u6240%u4EE5%u5230%u8FBE%u9608%u503C%u540E%u6162%u542F%u52A8%u7ED3%u675F%uFF0C%u8FDB%u5165%u62E5%u585E%u907F%u514D%u9636%u6BB5%u3002%0A%u3000%u3000%u62E5%u585E%u907F%u514D%u7684%u4E3B%u8981%u601D%u60F3%u662F%u52A0%u6CD5%u589E%u5927%uFF0C%u4E5F%u5C31%u662Fcwnd%u7684%u503C%u4E0D%u518D%u6307%u6570%u7EA7%u5F80%u4E0A%u5347%uFF0C%u5F00%u59CB%u52A0%u6CD5%u589E%u52A0%u3002%0A%0A%3E%20**%u5F53%u7A97%u53E3%u4E2D%u6240%u6709%u7684%u62A5%u6587%u6BB5%u90FD%u88AB%u786E%u8BA4%u65F6%uFF0Ccwnd%u7684%u5927%u5C0F%u52A01**%0A%0Acwnd%u7684%u503C%u5C31%u968F%u7740%u786E%u8BA4%u6570%u91CF%u589E%u52A0%u5F00%u59CB%u7EBF%u6027%u589E%u52A0%uFF0C%u8FD9%u6837%u5C31%u53EF%u4EE5%u907F%u514D%u589E%u957F%u8FC7%u5FEB%u5BFC%u81F4%u7F51%u7EDC%u62E5%u585E%uFF0C%u6162%u6162%u7684%u589E%u52A0%u8C03%u6574%u5230%u7F51%u7EDC%u7684%u6700%u4F73%u503C%u3002%0A%0A%23%23%23%23%23%23%u62E5%u585E%u53D1%u751F%u7B97%u6CD5%uFF1A%u4E58%u6027%u51CF%u5C11%20%0A**%u5F53%u62E5%u585E%u53D1%u751F%u65F6%u5019%u600E%u4E48%u529E%uFF1F%uFF0C%u600E%u4E48%u8C03%u6574%u6ED1%u52A8%u7A97%u53E3cwnd%u503C**%0A%0A%21%5BAlt%20text%7Ccenter%5D%28./1519730377611.png%29%0A%0A%0A%u3000**%u5F53%u53D1%u751F%u5305%u88F9%u65E0%u6CD5%u5230%u8FBE%u4E4B%u540E%u53EA%u80FD%u91CD%u4F20%uFF0C%u91CD%u4F20%u662F%u5728%u4E24%u79CD%u60C5%u51B5%u4E0B%u53D1%u751F%uFF1A**%20%0A-%20%u5982%u679CRTO%u8D85%u65F6%uFF0C%u90A3%u4E48%u5B58%u5728%u975E%u5E38%u4E25%u91CD%u7684%u62E5%u585E%u7684%u53EF%u80FD%u6027%uFF1B%u5305%u53EF%u80FD%u5DF2%u5728%u7F51%u7EDC%u4E2D%u4E22%u5931%u3002%20%u5728%u8FD9%u79CD%u60C5%u51B5%u4E0B%uFF0CTCP%u5FEB%u9012%u516C%u53F8%u505A%u51FA%u53CD%u5E94%u3002%20%0A%u3000%u3000**a.%u8BBE%u7F6E%u9608%u503Cssthresh%u4E3Acwnd%u7684%u4E00%u534A%u3002**%20%0A%u3000%u3000**b.%u91CD%u65B0%u8BBE%u7F6Ecwnd%u4E3A1%u3002**%20%0A%u3000%u3000**c.%u542F%u52A8%u6162%u901F%u542F%u52A8%u9636%u6BB5%u3002**%0A-%20%u5F53%u6536%u52303%u4E2A%u91CD%u590DACK%u65F6%uFF0C%u8FDB%u5165%u5FEB%u901F%u6062%u590D%u9636%u6BB5%u3002%0A%23%23%23%23%23%23%u5FEB%u901F%u6062%u590D%20%0A%09%09%u5F53TCP%u63A5%u6536%u7AEF%u6536%u5230%u4E00%u4E2A%u5931%u5E8F%u7684%u62A5%u6587%u65F6%uFF0C%u4F1A%u7ACB%u5373%u4EA7%u751F%u4E00%u4E2AACK%uFF08%u4E00%u4E2A%u91CD%u590D%u7684ack%uFF0C%u5373%u5E76%u4E0D%u662F%u5BF9%u8FD9%u4E2A%u5931%u5E8F%u62A5%u6587%u7684%u786E%u8BA4%uFF0C%u800C%u662F%u4E0A%u4E00%u4E2A%u5DF2%u786E%u8BA4%u7684%u62A5%u6587%u7684ACK%uFF09%uFF0C%u8FD9%u4E2Aack%u4E0D%u5E94%u8BE5%u88AB%u5EF6%u8FDF%u3002%u8FD9%u4E2Aack%u7684%u76EE%u7684%u662F%u8BA9%u53D1%u9001%u65B9%u77E5%u9053%u63A5%u6536%u65B9%u771F%u6B63%u5E0C%u671B%u63A5%u6536%u7684%u62A5%u6587%u3002%0A%u3000%u3000%u5F53%u6536%u52303%u4E2A%u91CD%u590DACK%u65F6%uFF0C%u8FDB%u5165%u5FEB%u901F%u6062%u590D%u9636%u6BB5%u3002%u5FEB%u901F%u91CD%u4F20%u548C%u5FEB%u901F%u6062%u590D%u7B97%u6CD5%u4E00%u822C%u540C%u65F6%u4F7F%u7528%u3002**%u5FEB%u901F%u6062%u590D%u7684%u601D%u60F3%u662F%u201C%u6570%u636E%u5305%u5B88%u6052%u201D%u539F%u5219%uFF0C%u5373%u540C%u4E00%u4E2A%u65F6%u523B%u5728%u7F51%u7EDC%u4E2D%u7684%u6570%u636E%u5305%u6570%u91CF%u662F%u6052%u5B9A%u7684%uFF0C%u53EA%u6709%u5F53%u201C%u8001%u201D%u6570%u636E%u5305%u79BB%u5F00%u4E86%u7F51%u7EDC%u540E%uFF0C%u624D%u80FD%u5411%u7F51%u7EDC%u4E2D%u53D1%u9001%u4E00%u4E2A%u201C%u65B0%u201D%u7684%u6570%u636E%u5305**%uFF0C%u5982%u679C%u53D1%u9001%u65B9%u6536%u5230%u4E00%u4E2A%u91CD%u590D%u7684ACK%uFF0C%u8868%u660E%u6709%u4E00%u4E2A%u6570%u636E%u5305%u79BB%u5F00%u4E86%u7F51%u7EDC%u3002%0A%u3000%u3000%u5177%u4F53%u6765%u8BF4%u5FEB%u901F%u6062%u590D%u7684%u4E3B%u8981%u6B65%u9AA4%u662F%uFF1A%20%0A%u3000%u30001.%u5F53%u6536%u52303%u4E2A%u91CD%u590DACK%u65F6%uFF0C%u628Assthresh%u8BBE%u7F6E%u4E3Acwnd%u7684%u4E00%u534A%uFF0C%u628Acwnd%u8BBE%u7F6E%u4E3Acwnd%u7684%u4E00%u534A%u518D%u52A03%uFF08%u52A03%u7684%u539F%u56E0%u662F%u56E0%u4E3A%u6536%u52303%u4E2A%u91CD%u590D%u7684ACK%uFF0C%u8868%u660E%u67093%u4E2A%u201C%u8001%u201D%u7684%u6570%u636E%u5305%u79BB%u5F00%u4E86%u7F51%u7EDC%uFF09%uFF0C%u7136%u540E%u91CD%u4F20%u4E22%u5931%u7684%u62A5%u6587%u6BB5%uFF0C%u3002%20%0A%u3000%u30002.%u518D%u6536%u5230%u91CD%u590D%u7684ACK%u65F6%uFF0C%u62E5%u585E%u7A97%u53E3%u589E%u52A01%u3002%20%0A%u3000%u30003.%u5F53%u6536%u5230%u65B0%u7684%u6570%u636E%u5305%u7684ACK%u65F6%uFF0C%u628Acwnd%u8BBE%u7F6E%u4E3A%u7B2C%u4E00%u6B65%u4E2D%u7684ssthresh%u7684%u503C%u3002%u539F%u56E0%u662F%u56E0%u4E3A%u8BE5ACK%u786E%u8BA4%u4E86%u65B0%u7684%u6570%u636E%uFF0C%u8BF4%u660E%u4ECE%u91CD%u590DACK%u65F6%u7684%u6570%u636E%u90FD%u5DF2%u6536%u5230%uFF0C%u8BE5%u6062%u590D%u8FC7%u7A0B%u5DF2%u7ECF%u7ED3%u675F%uFF0C%u53EF%u4EE5%u56DE%u5230%u6062%u590D%u4E4B%u524D%u7684%u72B6%u6001%u4E86%uFF0C%u4E5F%u5373%u518D%u6B21%u8FDB%u5165%u62E5%u585E%u907F%u514D%u72B6%u6001%u3002%u6CE8%u610F%uFF0C%u5982%u679C%u5728%u6B64%u8FC7%u7A0B%u51FA%u73B0%u8D85%u65F6%uFF0C%u5219%u91CD%u65B0%u8FDB%u5165%u6162%u542F%u52A8%u9636%u6BB5%u3002%0A