预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

VxWorks上支持MPLS的路由转发平台设计与实现 VxWorks是一种实时操作系统(RTOS),是嵌入式系统开发常用的操作系统。在嵌入式领域中,路由器和交换机是需要使用RTOS的最常见的设备。这些设备需要高效地进行包转发和路由,并具有高可靠性和稳定性。在现代路由器中,多协议标签交换(MPLS)已经成为一种主流技术来优化数据流量路由和负载均衡。 本文将讨论如何在VxWorks操作系统上实现MPLS路由转发系统。它包括MPLS基础知识、路由器和交换机架构设计、核心转发引擎、MPLS协议栈实现和控制平面的实现。 MPLS基础知识 MPLS是一种基于标记的数据传输技术,在数据包传输时添加一个标记来指示数据包的转发路径。MPLS使用标签交换路由(LabelSwitchingRouter,LSR)来实现数据的转发。标签是一个短的固定长度的二进制序列,通常由路由器附加到数据包的头部。LSR可以基于标签来执行数据包的转发和路由。 一个MPLS网络由多个LSR组成。根据网络结构,可以将LSR分为入口LSR、中间LSR和出口LSR。入口LSR将标签添加到数据包,中间LSR根据标签转发数据包,出口LSR从数据包中删除标签并将其直接发送到目标终端。 路由器和交换机架构设计 在使用VxWorks进行MPLS路由器和交换机设计时,在软件和硬件的协同作用下,需要设计合适的体系结构以提高数据包的处理效率。为此,需要使用分层方法设计路由器构架,应该分为控制平面和数据平面。 控制平面是路由器中进行路由算法和路由策略编写的部分。在VxWorks中,可以使用路由协议如OSPF、BGP等算法,以实现路由表的生成和维护。此外,控制平面还负责针对不同L2协议的交叉连接配置和跨拓扑标记交换地址的配置。 数据平面负责包最终的转发。数据平面分为输入引擎和输出引擎,输入引擎负责对数据包进行分析,去除数据包的封装头,识别标签,以及对一个数据包的任意标签进行查找,寻找匹配情况。输出引擎则负责将数据包重新封装并转发至合适的出口口。 核心转发引擎 核心转发引擎是MPLS路由器和交换机中的核心处理单元,掌握了核心的数据平面功能。在VxWorks中,可以使用SMP(SymmetricMultiprocessor)或AMP(AsymmetricMultiProcessor)对核心转发引擎进行处理,以提高整体性能。 核心转发引擎的主要任务是对输入包进行处理。当输入包到达时,核心转发引擎将充分利用缓存技术和分片处理技术以提高转发效率。桶式缓存池技术可以有效地减少缓存的丢失率。输入包首先通过MPLS标识符查找进入流目的地。然后它将被定向到正确的物理端口,然后被路由器转发。 根据整个MPLS标准,实现MPLS协议栈功能的开发工作将包括MPLS标识符的识别和翻译、MPLS标记的添加和删除以及MPLS激活/去激活操作。 MPLS协议栈实现 MPLS协议栈实现负责从输入引擎中获取标签信息,对数据包进行处理,并根据输出引擎的需求对数据包进行重组。MPLS协议栈需要支持不同的标签格式、头文件格式和路由器和交换机共同使用的端口负载均衡服务器。 MPLS协议栈实现需要满足多个方面的要求,例如,需要对不同的MPLS标准进行支持。此外,MPLS协议栈还需要支持LDP协议、BGP-VPN和RSVP等协议。在VxWorks操作系统下,协议栈实现可以使用C或汇编等语言进行编写。 控制平面的实现 控制平面的实现负责对路由表进行更新和维护。在MPLS路由器中,需要使用动态路由协议来实现路由表的自动更新。例如,OpenShortestPathFirst(OSPF)是一种常见的路由协议,它可以在路由器之间交换路由信息,以实现最短路径的选择。 控制平面还需要实现不同的策略和路由选择算法,以确保MPLS网络的高性能和稳定性。 结论 对于MPLS路由转发平台的设计与实现,需要使用VxWorks操作系统和相应的软、硬件平台。这种设计包括MPLS基础知识、路由器和交换机架构设计、核心转发引擎、MPLS协议栈实现以及控制平面的实现。控制平面负责路由信息和策略的更新和维护,核心转发引擎负责数据报文的流量控制和转移,MPLS协议栈实现具有处理标签信息、重组和转移报文的功能。这种设计可以实现路由效率和可靠性的高性能、高性能MPLS路由器和交换机系统。