IP路由器的主要功能(上)
发布时间:2006-10-14 4:06:40   收集提供:gaoqian
IP路由器的主要功能(上)(唐健、邬江兴) 摘要:IP路由器是互联网的关键设备,其功能随着实践的发展而被不断完善。本文把IP路由 器 的主要功能分为IP数据包的转发、路由的计算和更新、ICMP消息的处理、网络管理以及安全服务 五 个方面,分别介绍相应的协议、工作方式、实现要求以及存在的问题。 关键词:互联网 IP路由器 路由协议 网络管理 安全性 一、引言 互联网作为最大、最有影响力的信息交换平台,正在迅猛发展。作为发展中国家的中国也不 甘 落后,今天,中国互联网用户已突破800万,专家预测,“中国有望成为互联网经济的主要国 家”。 互联网即网间网,它把许多自治域通过IP(InternetProtocol)协议互联在一起,这些自治 域 由具有不同网络地址的网络经IP协议互联在一起,而这些网络又可能由具有不同子网掩码的子网组 成。出入一个自治域/网络/子网的数据都要经路由器转发,路由器决定数据是否需要转发、能否 转发、如何转发、转发得怎样,是自治域/网络/子网相交汇的节点。根据公开发表的研究报告, 从源IP地址出发到宿IP地址的用户数据中,80%以上沿途必须经过路由器,20%以下局限在子网 内 流动。可以说,没有路由器就没有互联网。没有高性能的路由器就没有高性能的互联网,因此,路 由器在互联网中具有极其重要的地位和作用,是互联网中的关键设备。按照在互联网中的地位和作 用,路由器可分为分支路由器、边缘路由器、核心路由器。 路由器究竟必须具备哪些功能呢?是不是象人们通常认为的那样仅仅工作在OSI模型的第三 层, 即网络层呢?转发用户数据,只是路由器的一个最基本的功能,事实上,IP路由器的功能随着实践 的发展而不断被完善。比如,路由器最初主要采用静态路由配置,计算和更新路由的功能没有被明 确要求,但现在,这个功能成为必备。又比如,路由器曾对用户数据和协议数据的安全性考虑甚 少, 现在安全服务却显得很紧迫。下文把IP路由器的主要功能分为五个方面,分别予以介绍。 二、IP数据包的转发 这是路由器最基本的功能。当一个IP数据包到达路由器时,路由器根据IP协议对其报头进行 处 理,然后根据处理结果对该数据包进行转发、本地处理、或者丢弃。目前常用的是IP协议第4版 IPv4。 IPv4数据包的报头包含如下内容:版本、头标长、服务类型、总长、标识、标志、片偏移、生存 时 间、协议、头标校验和、源IP地址、宿IP地址、选项。 为便于按照相应规定对报头进行分析,首先路由器要确定报头的格式,查看IP协议的“版 本” (IPv4的“版本”是4);次之,路由器必须知道报头的长度和正确性,按照“头标长”截获报 头, 用“头校验和”加以校验。为避免数据包因寻径错误而在互联网中无休止地流动、占用宝贵的网络 资源,有必要限制数据包的转发次数。路由器检查“生存时间”,目的在于此。路由器还需要根据 “宿IP地址”或“选项”中的源路径直找路由转发表。如果“宿IP地址”正好与自己吻合,需参 考 “源IP地址”和“协议”,决定该数据包是否有权限访问路由器。如果有,就要根据“协议”在本 地作进一步的高层处理,不过在此之前有必要根据“标识”、“标志”和“片偏移”来重组数据 包。 “协议”标明了数据区的协议类型,如89代表OSPF等,路由器根据“协议”规定的数据区格式分 析 数据,从而可以进一步处理其中相应的协议消息。 如果“宿IP地址”尚未到达,须参考“源IP地址”和“协议”,决定该数据包是否被允许转 发, 如果允许,路由器根据“宿IP地址”或“选项”中的源路径、“服务类型”在路由转发表中查找相 应的输出端口,并把数据包交换到该输出瑞口的某队列中,解析下一跳IP地址对应的物理地址(比 如以太网的MAC地址),把数据包封装在物理帧中传输。不过,如果一个物理帧装不下完整的数据 包,还须把数据包分片,在“标识”、“标志”和“片偏移”中加以指示。“服务类型”包含优先 级、时延、吞吐率和可靠性,目的是要映射到相应的路由选择、排队优先级、带宽分配上。不过, 映射不是强制性的,即使映射也并非所有的要求都能被满足。在不久的将来,“服务类型”有可能 被“区分服务”替代。 上述任何一个环节没通过,IP数据包就要被丢弃,与此同时,路由器可能产生ICMP数据包, 报 告相应的差错。 具有高速接口、线速要求的大容量核心路由器将面临两个最大的挑战:一个是路由查表技 术。 比如,交换式千兆以太网接口最短的物理帧长度是64字节,线速要求的路由查表时间不能超过 512ns; 2.5GbPs的STM-16/OC-48接口最短的HDLC帧仅包含HDLC帧开销和IP数据包头,侦长度为28字 节, 线速要求.的路由查表时间不能超过92ns,与此同时,路由表转发表项越来越多,在世界上成功 商 用化的核心路由器中已超过1M,因此,传统的软件查表技术花费时间较长,已不再适用,必须发展 硬件查表技术。目前,基于硬件技术的查表算法委么要求硬件性能非常高、价格昂贵;要么局限在 某种条件下使用、适用范围小,都不是万全之策。将来,随着接口速度、路由转发表项继续成倍增 长,硬件查表技术终究也会难以应付,会需要把输出端口查找与IP数据包转发分离,输出瑞口的查 找依然采用IP协议,而数据包转发则采用新的协议,如MPLS,这正是MPLS成为世界上一个研究热 点 的原因。另一个挑战是数据包交换技术,传统的电总线共享技术再也不适用了,一是因为硬件技术 原因,电总统无法达到很高的带宽,目前最高水平是20Gbps;二是因为共享方式固有的发送冲 突, 导致数据包较大的等待时延和较高的丢失率,影响业务质量。月前,世界上知名的核心路由器采用 的是电交换网络、共享存储器乃至光交换技术。 三、路由的计算和更新 最初的路由器主要采用静态路由配置。随着网络规模迅速扩大和网络拓扑结构频繁变动,静 态 路由暴露出配置麻烦、滞后等问题。因此,依据路由协议自动实时地计算和更新路由,逐渐成为路 由器主要功能之一。当然,静态路由还可以与动态路由配合使用。 路由协议是路由计算和更新的依据,根据路由器寻径的范围不同而不同。如果在自治域/网 络 内部寻径,路由器使用内部网关协议;如果是在自治域之间寻径,路由器使用外部网关协议。当 然, 自治域边缘的路由器可能同时使用内部网关协议和外部网关协议。 路由协议不是唯一的,而且一直在发展变化着。内部网关协议目前用得较多的有RIP (Routing Information Protocol)、OSPF(Open Shortest PathFirst)。外部网关协议现在主要用BGP (Bo rderGateway Protocol)。 RIP适用于小型、路径不多的同构网络。它使用路由跳数来决定最佳路径,算法很简单,但网 络 直径受限(跳数<16),并且路径选择忽略了连接速度问题,在路径较多时收敛速度慢,用来判断 路径不可到达的时间长(≥3分钟),广播路由信息占用的带宽资源较多。 RIP在1988年被标准化 在 RFC1058中,现在第2版最新的内容是1998年的RFC2453。RIP消息由瑞口号为520的UDP进行传 输。 OSPF能适应大规模异构网络的互连。它根据网络中路由器物理连接的状态与速度来进行路由 选 择,克服了RIP的缺点,但计算SPF树比较复杂,需要占用路由器中更多CPU资源。OSPF在1989年 被正 式发布在RFC1131中,现在最新的第2版是1997年的 RFC2328。 OSPF消息直接封装在协议域为89 的IP 数据包中。 外部网关协议BGP在1989年被正式发布在RFC1105中,现在最新的第4版是1997年的 RFC2328。BGP 消息由端口号为179的TCP进行连接和传输。 有的路由器还具有组播(multicast)寻径能力。生机欲加入一个组播组,就用IGMP (Internet Group Manasement Protocol)与网络上具有组播能力的路由器交换信息,并可以利用组播路由 协议 DVMRP或MOSPF建立自治域内的组播传输路径、利用MOSPF建立自治域之间的组播传输路径。IGMP 消息 直接封装在协议域为2的IP数据包中。 对核心路由器来说,路由协议的软硬件实现是最繁重的工作,也是最重要的工作。路由协议 的 配置和协调、路由协议消息的缓冲和处理、路由的计算、数据库的维护和管理、路由转发表的更新 和分发,每一个环节都很重要,影响着网络的稳定性。根据数据统计,目前互联网的不稳定性大部 分来自核心路由器中路由协议的软硬件实现。例如,路由协议的配置不当可致使路由器之间不能互 操作,缓冲区较小可致使路由协议消息丢失,处理器速度较低可增加路由协议消息时延,缺乏有效 的鉴别和过滤机制可造成路由“黑洞”,数据库的维护和管理不及时会计算出过时的路由,路由转 发表的更新和分发太慢会使IP数据包寻径出错。 (待续) 摘自《数据通信》
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50