基于网络处理器实现PIM协议及组播数据快速转发

基于网络处理器实现PIM协议及组播数据快速转发

ID:38711913

大小:114.00 KB

页数:7页

时间:2019-06-18

基于网络处理器实现PIM协议及组播数据快速转发_第1页
基于网络处理器实现PIM协议及组播数据快速转发_第2页
基于网络处理器实现PIM协议及组播数据快速转发_第3页
基于网络处理器实现PIM协议及组播数据快速转发_第4页
基于网络处理器实现PIM协议及组播数据快速转发_第5页
资源描述:

《基于网络处理器实现PIM协议及组播数据快速转发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于网络处理器实现PIM协议及组播数据快速转发摘要:本文提出了在网络处理器IntelIXAIXP2XXX中PIM-SM组播路由协议高效实现方法。将PIM-SM协议规范中涉及数据转发的操作加以分解,并将它们分布于转发引擎和主控引擎,微引擎转发数据包仅需一次查表,与控制平面尽量隔离,实现了组播包的高速转发。关键词:PIM-SM;网络处理器;微引擎AchievingPIMandLine-rateForwardAbilitybasedonNP(NetworkProcessor)Abstract:ThispaperpresentsanefficientimplementationofPIM-SM

2、inNetworkProcessorIXP2XXX.ItdecomposesforwardingfunctionsinPIM-SMspecificationanddistributestheminmaincontrollerandforwardingengine.Theforwardinghardware-Microengineonlyneedsonelookuptoforwardpacketandforwardingbehaviorisisolatedwiththecontrolpanel.Theforwardingspeedcangetlinerate.Keywords:PIM-S

3、M;NetworkProcessor;Microengine1引言网络设备的基本功能是实现网络通信业务流的控制和转发,处于网络边缘的设备需要将来自不同物理链路的各种业务流复用到统一的传输链路上,传统的方法是在网络边缘设备上采用通用的处理器来完成协议栈处理、路由选择以及包头的剥离等功能。随着网络规模和性能迅速增长以及新业务接连不断出现,要求网络设备具有线速和智能的处理能力。能否实现线速转发是网络设备组播性能的重要检验指标,也是长期困扰组播应用的一个关键问题。于是用专用芯片完成包的处理成为一种趋势,网络处理器(NP,NetworkProcessor)就是在这样的背景下诞生的。网络处理器是新

4、一代用来执行数据处理和转发的高速可编程处理器,与传统的处理器不同,它的设计采用了全新的理念,使其既有ASIC(ApplicationSpecificIntegratedCircuit,专用集成电路)的高速处理能力,又有完全的可编程特性。网络处理器设计的关键技术主要有快速表查找、提供高容量的存贮器带宽、处理器的可编程性能和软件开发环境,以及如何有效地利用多处理器机制实现并行化处理,这些都为组播的线速转发提供了保证。本文提及的NP采用IntelIXA架构的IXP2XXX系列网络处理器。PIM-SM实现了RFC1112提出的ASM组播服务模型,具有非常强大的分发功能,是目前应用比较广泛的域内

5、组播路由协议。它采用的是由接收者发起的加入模型,通过建立组播转发树实现组播数据的转发。从其协议的实现行为来看,PIM-SM可以分为协议控制引擎和数据转发引擎两大部分。其中控制引擎用来处理相关的协议报文,包括PIM报文、MLD报文、网管命令等,从而对组播树状态信息进行维护和更新,保证协议的正确运行。数据引擎则通过由控制引擎生成的组播转发表项进行组播数据的转发。与一般的单播路由协议有所不同,PIM-SM的控制引擎和数据引擎难以清楚的分离,它的很多协议行为需要靠数据进行驱动,如Assert过程、SPT树切换及KAT定时器等。因此数据引擎还必须对能够驱动协议行为的数据报文进行特别的处理,并通过

6、特殊的方式和控制引擎进行交互,这导致了组播数据转发的复杂和低效。做为IP网络的骨干节点,要求以线速进行包转发,这就势必要求用硬件实现数据转发功能,NP无疑有其不可替代的优势。2方案的提出2.1传统解决方案的缺点协议报文数据报文伪消息更新转发表PIM控制引擎网络通信模块内核模块(转发引擎)路由表MRIB转发数据图1传统PIM-SM组播实现结构框图传统路由器在实现PIM-SM协议时大都采用在实时操作系统内核中嵌入相应转发引擎的方式来实现数据的转发,这种转发引擎大多采用Cache维护包括源地址、组地址、出接口列表等信息的转发表项,数据报文则是通过Socket方式接收到后查询相应的转发表项,如

7、果发现匹配的表项则在该表项中的每一个出接口都转发一次;反之则进一步判断是否是能够驱动协议行为的数据包;如果不是,则丢弃该数据包;如果是,则生成事先约定好的伪消息发送到控制引擎,随后控制引擎对该消息进行相应的处理并对组播路由信息表MRIB进行更新,并通过进程间通信的方式对内核中的转发表项进行修改。其实现结构框图如图1所示。可以看出,在传统的PIM-SM实现机制中,完全依靠软件方式实现数据转发。控制引擎和转发引擎采用进程间通信方式交互效率低下,转发

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。