一、路由器定义
路由器是工作在OSI参考模型第三层--网络层的数据包转发设备。路由器通过转发数据包来实现网络互连。虽然路由器可以支持多种协议(如TCP/IP、IPX/SPX、AppleTalk等协议),但是在我国绝大多数路由器运行TCP/IP协议。路由器通常连接两个或多个由IP子网或点到点协议标识的逻辑端口,至少拥有1个物理端口。路由器根据收到数据包中的网络层地址以及路由器内部维护的路由表决定输出端口以及下一跳地址,并且重写链路层数据包头实现转发数据包。路由器通过动态维护路由表来反映当前的网络拓扑,并通过与网络上其他路由器交换路由和链路信息来维护路由表。
二、路由器分类
当前路由器分类方法各异,各种分类方法有一定的关联,但是并不完全一致。
从结构上分,路由器可分为模块化结构与非模块化结构,通常中高端路由器为模块化结构,低端路由器为非模块化结构。从网络位置划分,路由器可分为核心路由器与接入路由器。核心路由器位于网络中心,通常使用高端路由器,要求快速的包交换能力与高速的网络接口,通常是模块化结构;接入路由器位于网络边缘,通常使用中低端路由器,要求相对低速的端口以及较强的接入控制能力。从功能上划分,路由器可分为通用路由器与专用路由器。一般所说的路由器为通用路由器。专用路由器通常为实现某种特定功能对路由器接口、硬件等作专门优化,例如接入路由器用作接入拨号用户,增强PSTN接口以及信令能力;路由器增强隧道处理能力以及硬件加密;宽带接入路由器强调宽带接口数量及种类。从性能上分,路由器可分为线速路由器以及非线速路由器。通常线速路由器是高端路由器,能以媒体速率转发数据包;中低端路由器是非线速路由器,但是一些新的宽带接入路由器也有线速转发能力。
在标准的制定中,路由器从能力上区分可分为:高端路由器和低端路由器等类别,背板交换能力大于20Gbit/s,包交换能力大于20Mbit/s的路由器称为高端路由器;包交换能力小于1Mbit/s的路由器称为低端路由器。以市场占有率最大的Cisco公司为例,12000系列为高端路由器,7500以下系列路由器为低端路由器。显然上述划分存在空档:包交换能力1Mbit/s以上20Mbit/s以下的路由器没有参照标准。按照标准系列,应当有中档路由器规范。但是由于中档路由器没有特殊性,可以参照低端路由器或高端路由器,所以不再单独另立标准。
三、标准制定依据
路由器标准主要依据RFC文档。由于路由器技术复杂,相关RFC文档较多,大约上百个。除此之外还有大量路由协议、网管协议以及接口标准等文档也是非常重要,这里就不再一一罗列。与路由器相关最紧密的RFC文档是RFC1812,即IPv4路由器技术要求,路由器设备技术规范只要参照RFC1812,同时参照公用电信网络设备标准即可加以增删。
虽然路由器标准主要依据RFC文档,但决不是简单翻译,在性能指标方面主要依据对路由器测试的结果。由于路由器牵涉大量的技术,标准无法包含所有相关协议的内容,所有协议的具体内容参见相关协议标准或RFC文档。但是简单地翻译或罗列相关RFC文档号和协议名称是不恰当的。这是因为:
(1)在协议的要求中有一些比较重要,有一些是任选的;(2)某些要求在路由器的应用中非常关键,对于其他应用或设备或缺无关紧要;(3)某些厂商会因特定原因选择不同的特性。另外,在标准制定中,指定路由器必须实现的协议不会重复应用协议的内容,只规定协议中必须实现的内容、可选的内容、不需实现的内容来对同类协议作选择。路由器标准主要依据当前互联网技术以及当前版本的协议及RFC文档,随着这些技术领域的更新以及相关协议或RFC文档版本的更新,路由器标准应作相应更新或补充。
四、标准范围
路由器可以支持多种协议(如TCP/IP、IPX/SPX、AppleTalk等协议),即使TCP/IP协议也有版本4和版本6之分。但是由于当前TCP/IP已成为事实标准,IPv4在网络中占绝对优势,所以路由器标准着重规范支持IPv4的设备。由于IPv6有其固有的优越性,有可能在将来广泛应用,所以标准中建议路由器支持IPv6,但不作规范。路由器除标准中所描述的路由器外还有内嵌路由器和透明路由器。内嵌路由器指除提供路由功能外还提供操作系统功能的计算机系统。由于其固有的缺陷,在标准中建议不使用。透明路由器又称共享地址路由器,在标准中虽不作规范,但不排斥使用。路由器标准是工作在复杂多样的互联网中的路由器必须遵守的规范。尽管当前路由器不能完全符合标准,但是逐步符合路由器标准是努力的方向。由于互联网的复杂性以及现实情况的多样性,目前的路由器标准应作为建议标准。
五、路由器标准的主要内容
低端路由器标准与高端路由器标准内容有一定差异,差别主要体现在路由器接口类型、性能要求、可靠性要求等方面。一般来说高端路由器对性能要求高,接口速率要求高,可靠性要求高,它主要用作高速转发;低端路由器要求功能较多,除企业网应用外,公网中一般用它来作接入。上述两类路由器在基本功能方面差异不大。所以下文以低端路由器为例介绍路由器标准的主要内容。
标准的第一部分指明标准应用的范围,规定了路由器的技术要求,包括功能、指标、通信接口、通信协议、环境要求等。第二部分罗列出路由器标准所引用的标准与规范。如上文所述,有近百个文档。第三部分列举在标准中使用的所有定义、术语和缩写,主要定义路由器以及低端路由器。第四部分指出路由器的功能划分以及实现方法,他们分别如下。
(1)接口功能:用作将路由器连接到网络。可以分为局域网接口及广域网接口两种。局域网接口主要包括以太网、令牌环、令牌总线、FDDI等网络接口。广域网主要包括E1/T1、E3/T3、DS3、通用串行口(可转换成X.21DTE/DCE、V.35DTE/DCE、RS232DTE/DCE、RS449DTE/DCE、EIA530DTE)等网络接口。(2)通信协议功能:该功能负责处理通信协议,可以包括TCP/IP、PPP、X.25、帧中继等协议。(3)数据包转发功能:该功能主要负责按照路由表内容在各端口(包括逻辑端口)间转发数据包并且改写链路层数据包头信息。(4)路由信息维护功能:该功能负责运行路由协议并维护路由表。路由协议可包括RIP、OSPF、BGP等协议。(5)管理控制功能:路由器管理控制功能包括五个功能,他们是SNMP代理功能、Telnet服务器功能、本地管理、远端监控和RMON功能。通过五种不同的途径对路由器进行控制管理,并且允许纪录日志。(6)安全功能:该功能用于完成数据包过滤、地址转换、访问控制、数据加密、防火墙以及地址分配等。还有在第四部分中指出的路由器必须实现的基本功能。
路由器标准的第五部分规定路由器接口物理层规范,其中包含E1接口、ISDN接口、以太网接口、串行同步口、FDDI接口以及其他接口。上述接口规范都引用现成标准,没有详细描述。第六部分主要通过引用其他标准规范的方式规定路由器接口的链路层规范,包括串行线路链路层协议、帧中继端口链路层协议、X.25链路层协议、ISDN链路层协议等内容。除此之外还包含路由器对链路层的附加要求:地址解析协议-ARP、关于Ethernet与802.3共存、最大传输单元-MTU、点到点协议-PPP以及接口测试等内容。第七部分规定路由器Internet层协议,其中包括IP协议、ICMP协议和IGMP协议。路由器对上述协议的实现并不是简单引用或翻译,而是针对路由器设备对上述3个协议各选项所作的特殊规定,是路由器标准中重要内容之一。第八部分对路由器的基本功能和转发做了规定。其中包转发过程具体规定符合互联网层协议(STD5 RFC791、STD5 RFC950、STD5 RFC792、RFC1016)。
该部分内容主要参照RFC1812,综合上述几个RFC文档对路由器转发做了要求,这是路由器标准中重要内容之一。第九部分规定传输层协议,包括TCP协议与UDP协议。路由器工作在IP层,本来没有必要实现传输层协议,但是由于运行维护需要(Telnet)以及路由协议需要,路由器通常实现上述传输层协议。TCP和UDP协议描述主要简单应用,只对其中少量选项作定义。第十部分通过引用其他协议的方式规定路由器中运行的最复杂的协议:路由协议。其中包含两部分,内部路由与外部路由。内部网关协议用作在AS内部分发路由信息(即AS内部路由)。外部网关协议用作在AS间交换路由信息(即AS间路由)。第十一部分指出路由器网管方面规定。要求路由器必须支持RFC1902至RFC1906中规定的SNMP v2以及相应的标准MIB。第十二部分规定其他应用协议。对路由器实现的所有其它应用层协议,路由器必须符合STD3、RFC1123中相关要求。第十三部分指出路由器运行维护方面的规定。主要制定路由器运行和维护的内容、路由器初始化、运行和维护具体规定、路由器安全性考虑等内容。第十四部分规定路由器主要技术指标。主要包含路由器的丢包率、路由器吞吐量、路由器的时延、路由器认证技术指标、路由表容量、背靠背帧数以及其计费、同步、可靠性指标等内容。最后规定了支持AppleTalk与Novell协议路由器,还规定了路由器环境要求以及电源和接地要求。