不知不觉, 不知不觉 ,手机 .pdf
《不知不觉, 不知不觉 ,手机 .pdf》由会员分享,可在线阅读,更多相关《不知不觉, 不知不觉 ,手机 .pdf(1页珍藏版)》请在文库网上搜索。
1、IP 路由器介绍 IP 路由器架构的演变及 IP 路由器中两个重要的算法IP 路由查找及数据包分类。1.1 IP 路由器的一般结构路由器的主要任务是路由控制与数据包转发。左图是 IP 路由器的基本结构,由控制卡(带有 CPU) 、路由器背板和接口卡组成。CPU 执行路由控制,包括可达性传播、路由计算、路由表维护等;接口卡由适配器组成,对进入及离开路由器的包进行转发处理;背板负责在各个卡之间传输数据包。右图为路由器中主要的路由组件,分为路由和转发两个部分。路由部分执行路由消息交换、路由计算和路由表维护;转发部分负责数据包的输入处理、查找路由表和输出数据包。IP 路由器的基本功能IP 路由器中的基
2、本功能可以划分为三类:路由处理,包转发,路由器特殊服务。前两个任务是最关键的,是路由器的核心功能。 路由处理:通过运行路由协议来学习网络的拓扑结构,建立并维护路由表。路由表的更新也可以通过网络管理来实现,如通过手工添加或删除路由。 包转发:典型地包括 IP 包检验(如版本号、头长度、头校验等) 、目的 IP 地址解析及查表、TTL 域修改、头校验生成、IP 包分片等。 特殊服务:不属于核心路由的其它功能,包括数据包转换、封装、流量管理、认证、包过滤等。路由表查找在一段相当长的时间内,IP 路由器的主要性能瓶颈是路由表查找。第一个用于最长前缀匹配查找的方法是二元查找树,根据地址前缀中每一位的值来
3、决定树的分支,查找算法的时间复杂度与地址长度成正比。由于早期的路由器实现无法支持这样的计算复杂度,为提高路由表查找的速度,有些路由器使用路由 cache 技术。即在一个独立的数据库中缓存最近用过的(IP 目的地址,下一跳)信息,当一个数据包到来时首先从路由 cache 中查找转发信息,没有的话再查路由表。路由 cache 通常组织为一个哈希表,使用简单的精确匹配查找方法。使用路由 cache 的前提是,网络流量中存在足够的局部性(去往相同目的地的包间隔不太远) ,使得 cache 的命中率足够高,从而一次路由查找的代价被分摊到随后到来的若干个数据包上。实践发现,路由 cache 在因特网边缘及
4、企业网内部比较有效,但在因特网核心并不奏效。(1) 核心路由器见到的目的地址数量巨大,可导致缓存溢出(命中率降低) ,或者查找缓存的速度很慢(冲突增加,需要多次访问) ,甚至低于查找路由表的速度。(2) 核心路由器中频繁的路由更新使得 cache 中的路由信息很快失效。快速 IP 路由查找在学术界及工业界都是一个非常活跃的研究课题,有不少方法被提出来,包括基于硬件的和基于软件的方法。基于软件的实现强调灵活性,基于硬件的实现一般能够以较低的代价获得较高的性能,但是缺乏灵活性。Slide 7:第一代 IP 路由器是用通用 CPU 上的软件实现的,包括一个通用 CPU 和几块通过共享总线连接起来的网
5、络接口卡,也称软件路由器。到达网络接口的数据包被缓存在一个集中的数据存储区中,CPU 读入包头,确定下一跳地址信息,然后将数据包发送给适当的输出接口。除了数据包转发之外,路由协议、路由表维护、其它控制和管理协议(如 ICMP、SNMP )等也在中央处理器上实现。这个简单的体系结构导致了低性能: 中央处理器必须执行数据面、控制面和管理面的任务,特别是必须处理流经路由器的每个包,导致严重的处理瓶颈。 每个包必须穿过总线两次,数据移动所花的时间常常超过包头的处理时间,从而I/O 总线很快成为限制路由器吞吐量的重要因素。基于总线的路由器的性能严重依赖于共享总线的吞吐量以及中央处理器的转发速度。这种体系
6、结构无法扩展以满足不断增长的吉比特网络接口卡的吞吐量要求。第二代:基于单线和多处理器的架构(1)第二代 IP 路由器通过卸载 CPU 的包转发功能来提高路由器的性能,有两种不同的结构。一种结构是将包处理、路由 cache 以及包缓存分布到各个 NIC 上来减轻 CPU 及系统总线的负担。主 CPU 维护一个主路由表,NIC 上的各个外围处理器维护一个适度大小的路由cache。若所需路由不在本地的路由 cache 中,外围 CPU 向主 CPU 请求路由信息,新的路由信息被添加到路由 cache 中。在这种结构中, 数据包只需穿过总线一次,减少了总线拷贝次数。 包转发由 NIC 完成,减轻了 C
7、PU 的负担。 路由 cache 的使用减少了查找主路由表的次数,加快了包的转发速度。该结构的缺点是: 吞吐量仍然依赖于流量模式,即性能的提高取决于路由 cache 的命中率。 高速情况下,主路由表查找依然是一个瓶颈。 数据包在网络接口间转移仍然要通过总线,共享总线仍然是一个瓶颈。第二代:基于单线和多处理器的架构(2)当路由查找功能下放到网络接口上时,要求每个网络接口都使用 CPU 和 cache。这限制了接口的数量,因为设备成本随接口数量的增加而明显增加,这导致了将转发引擎从线卡中分离出去的设想。在这种结构中, 当数据包到达网络接口模块时,控制电路取下 IP 头,加上一个识别标签,发送给一个
8、转发引擎进行校验和路由,包的剩余部分被存放到本地输入缓冲区中。 每个转发引擎包含一个本地路由 cache,只负责处理包头和解析下一跳信息,必要时访问主路由表。 当转发引擎决定了包的输出链路后,将修改后的报头域及标签信息发送给相应的目的网络接口模块。 包的剩余部分从源接口模块的输入缓冲区拷贝到目的接口模块的输出缓冲区,最终从输出链路上发送出去。这种结构通常有多个转发引擎,这些转发引擎可并行地处理不同的分组头。当网络接口模块的控制电路取下一个包头时,它应当将包头发给哪个转发引擎处理呢?这里主要考虑的两个问题是包序维持和负载均衡。由于有些实时应用要求保证包序,这时可以令每个输入控制电路将包头轮流地发
9、送给各个转发引擎,同时输出控制电路也按照相同的顺序从各转发引擎获得处理好的包头。若考虑到负载均衡,需要使用一个较为智能的输入接口,将每个包分配给负责最轻的转发引擎;这时输出控制接口必须按照相同的顺序选择下一个转发引擎以获得一个处理好的包头。选择这种结构的前提是基于这样一个观察事实,即所有接口不大可能在同一时刻都阻塞,因此共享转发引擎可以提高路由器的端口密度。但这种结构仍未消除共享总线瓶颈。第三代:基于交换的路由器架构第三代路由器主要使用交换结构来代替共享总线,为网络接口间的数据包传输提供足够的带宽,这个改进使得系统的吞吐量提高了好几个数量级。吉比特路由器(multigigabit router
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 不知不觉 手机