路由器为什么需要200ms报文缓存能力.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
路由器为什么需要200ms报文缓存能力

WHY 200ms? 前言 一般情况下互联网上RTT时间为200ms,如果路由器不能缓存200ms的报文,则容易引起丢包,从而引起TCP重传,再加上TCP的窗口机制,会导致TCP连接效率大幅度下降。因此,200ms缓存能力是高端路由器的最基本要求。 业界高端路由器都宣称支持200ms的报文缓存能力,如: Cisco 7600/12000的高级板卡SIP400/600和ES20(其它类型板卡不支持) Juniper M/T系列路由器全系列单板 Alcatel 7750路由器全系列单板 华为NE40E/NE80E的高级板卡A类单板(NE40/NE80全系列和B类单板不支持) H3C SR8800路由器全系列单板 200ms报文缓存已经成为高端路由器必须具备的能力,本文从网络应用的角度来阐述为什么要求200ms报文缓存。 网络基本模型与基本原则 我们首先看一个通常的IP端到端简化模型,如下图。 IP端到端简化模型 C1是本地局域网到路由器的带宽,C是广域网出口带宽,很明显,C1的带宽远远大于C,出口带宽C上会存在拥塞的可能。广域网带宽是很昂贵的,因为费用问题,我们租用的出口线路带宽总是不够。因此,无论从用户使用还是网络设计角度,我们需要做的事情就是最大限度使得出口带宽保持100%的利用,这是我们考虑问题的基本原则。毫无疑问,此时通信性能和效率可以达到最高,也就是使得出口线路上不出现空闲的情况,使得用户花的每一分钱都物有所值。 缓存的主要目的使出端口足够繁忙,带宽得到100%的利用 要做到这一点,就要求中间的路由器出口上具有一定的缓存能力,这就是那个著名的计算公式: Buffer=RTT×BW(RTT为报文往返时间,BW即带宽C) 即:线卡缓存等于带宽乘以报文在网络上的往返时间。 另外,IP流量具有瞬间流量突发特点,也容易导致出口拥塞,为保证QoS和减少出口拥塞丢包,也需要线卡有足够的缓存用于队列和调度: 保证高优先级流量先通过,不丢包,降低时延和抖动 缓存低优先级报文,保证少丢包 缓存减少了报文的丢失 目前,互联网上RTT一般是200ms左右,这要求高端路由器的线卡至少能够缓存200ms的报文,保证QoS,避免端口拥塞,确保出口链路100%的利用率,发挥网络最高性能。 TCP的几个典型阶段与概念 据统计,目前网络上的流量主要是TCP流量。因此,为了深入了解缓存对于路由器设备的重要性,我们必须充分理解TCP的基本原理。 TCP与它的姊妹协议UDP不同,TCP是基于连接的,需要维持连接状态和控制数据传输速率以最大程度发挥传输链路上的会话性能。 TCP通信有以下几个典型阶段: 1.慢启动阶段 原有的TCP协议在启动一个连接时会向网络发送许多数据包,由于一些路由器必须对数据包进行排队,因此有可能耗尽存储空间,从而导致TCP连接的吞吐量(throughput)急剧下降,避免这种情况发生的算法就是慢启动。当建立新的TCP连接时,TCP发送窗口被初始化为一个数据包大小(一个数据包缺省值为536或512byte)。源端按窗口大小发送数据,每收到一个ACK确认,发送窗口就成倍增加数据包发送量。显然,窗口大小的增长将随RTT呈指数级增长:1个、2个、4个、8个……,源端向网络中发送的数据量将急剧增加。 2.拥塞避免阶段 当发现超时或收到3个相同的ACK确认帧时,网络即发生拥塞(这一假定是基于由传输引起的数据包损坏和丢失的概率小于1%)。此时,就进入拥塞避免阶段,慢启动阈值被设置为当前发送窗口的一半,发送窗口被置为1。如果发送窗口≤慢启动阈值,则TCP重新进入慢启动过程;如果发送窗口>慢启动阈值,则TCP执行拥塞避免算法,发送窗口在每次收到一个ACK时只增加1个数据包(这里将数据包大小假定为1)。 3.快速重传和恢复阶段 进入慢启动会导致过大地减小发送窗口尺寸,降低TCP连接的吞吐量。因此,快速重传和恢复就是在源端收到3个或3个以上重复ACK时,就断定数据包已经被丢失,并重传数据包,同时将慢启动阈值设置为当前发送窗口的一半,而不必等到RTO超时。 TCP这种拥塞控制算法使得网络上的通信流量呈现典型的锯齿波形。 TCP锯齿流量波形示意 TCP拥塞控制机制使得TCP流量趋向于尽量占用最大的带宽,这是通过调节发送端口来实现的。如果报文被丢弃,TCP发送窗口会减少,所以发送速率会降低,以适配端到端会话可用的链路带宽,通过慢启动机制恢复会话吞吐量。为了在突发流量情况下发生拥塞时,最大程度发挥链路传输效率,路由器就必须具备缓存足够的流量能力。因此,相当于有效RTT实际上被延长到了包即将丢弃的最合适时间。 当TCP达到它的最大窗口,这是源于可用带宽乘以RTT得到的反馈(BW×RTT),这个值决定了源需要多长的时间从接收端收到ACK响应,

文档评论(0)

juhui05 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档