总结:TCP/IP 详解(卷1: 协议)--第十六章 TCP拥塞控制

第十六章  TCP拥塞控制

        TCP 被设计为互联网中主要的可靠传输协议。虽然其最初的设计包含了流量控制功能,能够在接收方无法跟上时降低发送方的速度,但是最初并没有提供方法从防止发送方淹没双方之间的网络。在20世纪80年代末期,为了控制发送方的攻击性行为,TCP 开发了慢启动与拥塞避免算法,从而避免了因网络拥塞而造成的丢包问题。这些算法都依赖于使用一个隐含的信号、数据包丢失以及拥塞的指示。当检测到丢包时就会触发这些算法,无论是通过快速重传算法还是超时重传。

        慢启动与拥塞避免通过在发送方设置一个拥塞窗口来实现对其操作的控制。该拥塞窗口将与传统的窗口一起使用。一个标准的 TCP 会将其窗口的最小值限定为2。随着时间的增长慢启动要求拥塞窗口的数值指数地增加,而拥塞避免则会随着时间的推移而线性增长。在任何时刻都只能选择两种算法中的一种运行,而做出这一选择则需要比较拥塞窗口当前的数值与慢启动的阈值,那么采用拥塞避免;否则使用慢启动。慢启动起初只在建立 TCP 连接以及因超时而重新启动后使用。它也适用于连接长时间处于空闲状态的情况。在整个连接的过程中,慢启动的阈值会动态地进行调整。

        随着显式拥塞通知规范的提出,TCP 与互联网路由器的运营做出了一个重大改变,即在出现丢包之前允许 TCP 检测是否开始发生拥塞。虽然模拟与研究的结果表明它是可取的,但它需要适度地调整 TCP 的实现,并使互联网路由器的操作方式发生重要改变。这种能力将部署到何种程度还有待观察。

        虽然 TCP 提供了最广泛使用的互联网可靠数据传输方法,但是它并没有以自身的安全方式实现。一般来说,它非常容易受到伪造数据包攻击,从而导致连接中断;攻击者只需要猜出一个可行的序列号就能够发起上述攻击。此外,没有任何完全可行的方法能够阻止一个过分积极的发送者仅仅违反所有的拥塞控制规则。

        将所有为 TCP 而开发的算法和技术都结合到一个 TCP 实现中并非易事,而分析真实世界中 TCP 活动的纪录需要耗费时间。诸如 tcpdump、Wireshark 以及 tcptrace 这样的工具使这项工作变得相对容易。由于动态地适应网络性能,使用基于时间序列图的可视化技术能够更容易理解 TCP 的行为。

        希望我的总结可以帮助大家,感谢阅读我的博客!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值