网络处理器概述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章网络处理器概述
因特网的迅速发展和推广应用使人们对它提出不断增长带宽和复杂服务的需求。未来的网络不仅需要更大的带宽,还要求它能不断增加新的服务。各个企业和事业团体不断地更新它们的网络,在它们的网络中增加专门的服务功能以及带宽管理功能。这种复杂服务功能的例子包括数据包调度以提供IP上的区分服务质量(QoS),在公共网络上提供安全通信,在多个服务器之间平衡传输流量负载,测量数据流量以确定网络流量模式及网络攻击行为(入侵检测),以及音频视频数据流的多点传送和交互式视频会议等。总之,这些增值服务要求整个网络基础设施具有更强的智能,以支持基本的交换和路由。对于某些应用,更新的周期似乎永无止境。例如在入侵检测领域,危及计算机网络安全的方法不断变换,要求采取的对策也不断改进,为此需要对网络系统的软件进行不断地更新。目前,基于IPv4的网络向着IPv6的发展也将是一个逐渐过渡的过程,需要逐步更新协议软件。随着因特网的发展,对网络系统也提出了不断增加功能的要求。如何实现这些新的功能,以及如何适应不断增加的网络业务类型增长的需求是对网络系统厂商提出的挑战之一。
为适应这种不断发展的网络技术,出现了网络处理器这种新的微处理器。网络处理器是一种专用于网络系统的微处理器,它使得网络系统能够具备高性能和灵活性。网络处理器的出现为网络系统构建了一个硬件平台,能够通过软件的升级以适合不断增长的功能需求,为网络技术的发展提供了开放的舞台,因而具有十分重要的意义。Intel公司是生产网络处理器的主要厂商之一,其网络处理器产品具有良好的可编程性和应用适应性。本章首先介绍网络系统的基本构成及各种网络新技术的发展,然后介绍Intel公司的网络处理器产品,以及采用Intel网络处理器构成网络系统的方法。
1.1 网络系统的构成
因特网是由路由器构成的网络。路由器系统是一种网络系统。基本的路由器主要实现分组的转发功能和路由信息的交换和更新功能。随着网络技术的发展,网络系统的功能在不断地增加,网络系统的构成方式也因之发生变化,形成各种支持新型业务类型的网络系统。
1.1.1 基本的网络系统
因特网的网络工程是研究网络建设的宏观领域的工程技术,如网络的拓扑结构和网络
Intel 网络处理器及其应用开发
2
2 带宽的配置。因特网的网络系统工程则是研究网络建设的微观领域的工程技术,即路由器、网桥等系统的设计和开发。网络系统是应用于网络领域的数字计算机系统,路由器是最主要的网络系统,它运行网络协议软件并实现网络中的分组路由和转发。网络系统工程作为一项工程技术,研究如何根据网络标准开发网络设备,即网络协议的实现。网络系统的开发要保证它在网络上的互操作性,即能够与网络中的其他网络系统正确地相互操作,实现网络通信的目的。为此,网络系统的开发需要遵循网络协议标准。而网络协议的制定则需要经过精心的设计、充分的实验以及开发者之间的广泛协调。
路由器是工作在OSI 参考模型第三层(网络层)的数据分组转发设备。它通过转发数据分组来实现网络互联互通。因特网上的路由器运行TCP/IP 、UDP 、ICMP 等协议,连接到两个或多个数据分组交换的网络。路由器由多个接口构成,每个接口连接一个子网或者另外一个路由器。IP 分组从一个接口到达,并从另一个接口离开。路由器根据收到数据分组中的网络层地址(IP 地址)以及路由器内部维护的路由表决定输出接口以及下一个结点(下一跳)地址,并且修改数据分组头以实现数据分组的转发。路由器通常动态维护路由表来反映当前的网络拓扑结构,并通过与网络上其他路由器交换路由和链路信息来维护路由表。
根据在网络中所处的位置,路由器可分为核心路由器和接入路由器。核心路由器位于网络中心,连接其他的路由器,通常是使用高端路由器产品。核心路由器要求具备快速的分组交换能力与高速的网络接口,通常是模块化结构,可根据需求改变系统中的模块数量。接入路由器位于网络边缘,又称为边缘路由器,连接各种子网。这种路由器通常使用中低端路由器产品。接入路由器需要能够连接各种标准的网络,需要能够支持多种不同的网络协议。接入路由器用不同的接口连接到不同的网络,这些接口可以分为局域网接口和广域网接口两种。局域网接口主要包括各种速率的以太网(10Mb/s 、100Mb/s 和1000Mb/s 以太网)、令牌环网、FDDI 等网络接口。广域网主要包括E1/T1、E3/T3、DS3、通用串行口、ATM 接口、ISDN 接口等网络接口。其中,通用串行口可转换成X.21 DTE/DCE 、V.35 DTE/DCE 、RS 232 DTE/DCE 、RS 449 DTE/DCE 、EIA530 DTE 等接口。
从功能的类型来分,路由器可分为通用路由器与专用路由器。一般所说的路由器为通用路由器。专用路由器通常为实现某种特定功能而设计,对路由器的接口、硬件等做了专门优化。例如拨号接入路由器用于接入拨号用户,增强了PSTN 接口以及信令能力。
从性能上的差别来分,路由器可分为线速路由器以及非线速路由器。通常线速路由器是高端路由器,能以线路传输媒体的速率转发数据分组;非线速路由器不能达到线路的最大传输速率,会因速度跟不上而丢弃分组,是中低端的路由器。
通用路由器的基本功能包括:
(1)将IP 数据分组封装到链路层帧或从链路层帧中取出IP 数据分组。路由器能够从接收的链路层数据帧中提取出IP 分组,在发送IP 分组时有将其封装成输出端的链路层封装格式。对于以太网的情况,通常一个IP 分组可以从一个数据帧中取出,对于ATM 等接口,则需要从多个信元中组装形成一个IP 分组。
(2)按照该网络所支持的最大数据单元(MTU )大小发送或接收IP 数据分组。网络
第1章网络处理器概述 3
的MTU是链路层协议所规定的能够承载的最大IP分组的长度。网络中不同的网段可能有不同的MTU值。当接收到的IP分组大于输出网段的MTU时,路由器需要将IP分组分割成更小的分片。
(3)将IP地址与相应网络的链路层地址相互转换。例如根据分组目标IP地址构成相应的下一跳以太网MAC地址。这种转换通过查找转发表来实现。
(4)实现网络协议所支持的流量控制和差错指示。路由器要能够辨认出分组中出现的差错,并产生必要的ICMP差错消息。
(5)在接收及转发数据分组的过程中实现分组的缓冲区管理、拥塞控制以及公平性处理。路由器需要缓存接收到的分组,在分组出现拥塞情况时需要根据协议对分组进行处理,在进行这种处理需要考虑到对各个业务流的公平性。
(6)丢弃生存时间(TTL)字段为0的数据分组。路由器要将每一个接收到的IP分组的TTL字段的值减1,当TTL值减到0时将其丢弃,以防止分组在网络中无穷地循环。
(7)按照路由表信息,为每个IP数据分组选择下一跳目的地。对于每个接收到的分组,查找路由表,以确定将分组从哪一个接口发送出去。
(8)支持至少一种内部网关协议(IGP)与其他同一自治系统中的路由器交换路由信息及可达性信息。内部网关协议是同一个自治系统(AS)范围内的路由器之间交换网路可达性信息的协议。
(9)支持外部网关协议(Exterior Gateway Protocol,EGP)与其他自治域交换拓扑信息。外部网关协议是不同自治域的路由器之间交换网路可达性信息的协议。
(10)提供网络管理和系统支持机制,包括存储/上载配置、诊断、升级、状态报告、异常情况报告及控制等。
路由器中的路由表中的信息用于指示路由器将接收的分组从哪一个接口发送出去。在路由器中,路由表的查找是一个比较慢的操作,需要多次访问存储器才能完成。导致路由表查找速度慢的原因一方面是IP地址有32位,如果根据IP地址直接查找路由表,需要建立起包含232个表项的表格,这样的表格将占用太大的存储器空间,维护十分复杂,是不现实、不经济的。另一个原因是路由表的查找采用最长前缀匹配的算法,需要在有多个匹配的前提下,找出地址前缀最长的匹配项,这使得查找的算法变得复杂。寻找一种经济有效的路由表查表方法仍然是人们研究的一个课题。
路由表中的信息根据内部网关协议以及外部网关协议计算得到,这种计算路由的算法称为路由选择算法。路由选择算法分为两大类:非自适应的和自适应的。非自适应算法不能根据网络当前实际传输流量和拓扑变化来做路由选择,而是按原先设计好的路径传送,路径的设计是静态的,路径的修改是手工的。自适应算法是根据当前网络流量和拓扑结构动态进行的,能较好地适应网络的需求。目前常用的自适应路由算法有向量距离法和链路状态法。
根据路由算法,路由器的自适应路由算法分为基于距离向量的路由算法和基于链路状态的路由算法。基于距离向量的路由算法通常利用跳数来作为计量标准。每个路由器向其他路由器通报其到达各子网的距离信息,并根据其他路由器通报的路由距离信息建立起各