您的位置 首页 电路

一种分布式的高性能PIM-SM组播实坝计划

本文提出了一种分布式的PlM—SM组播实现方案。

在宽带网络的建造和运营中,事务是先导和中心。其间组播事务作为最具潜力的未来事务之一,现已得到了史无前例的注重。IP组播技能具有共同的优越性:在组播网络中,即便用户数量成倍增长,骨干带宽也不需求随之添加。跟着宽带技能的不断打开,FTP、HTTP、SMTP等传统的数据事务已无法满意人们对信息的需求,而视频点播、远程教学、新闻发布、网络电视等将成为各大运营商争相打开的新式事务,这些事务都能够运用组播完结,使得IP组播技能成为当时网络技能中的研讨热门之一。为此,人们开发了多种组播路由协议来支撑组播的运用,而HM-SM是现在运用最广泛、功用最强壮的一种,合适广域网环境下用户比较涣散的组播事务的打开。美国UC-Berkeley最早于1990年头开端在MBone上研讨依据组播的协同环境,国内也于20世纪90年代后期开端研讨和运用组播视频会议。2004年4月,在CE]RNET骨干网络8个城市10个区域主节点之间成功装备了全程组播(Native multicast)。2003年SARS之后,开端向38个省级主节点扩展,其间首要完结了依据PIM-SM的组播视频会议事务。完结高功用PIM-SM组播将会对未来完结大规模组播运用发生深远而重要的影响。

PIM-SM组播一般选用纯软件或许运用ASIC、NP等硬件方法转发。纯软件方法常用于中低端路由器,在转发功用七难以满意中心路由器的要求;由于PIM-SM协议还未彻底定型,ASIC转发方法难以更新晋级,并且开发周期长不合适在研制阶段选用;而NP方法尽管开发效率高但技能成熟度低。为此,本文提出了一种PIM-SM分布式完结计划。该计划以笔者研制的T比特级路由器为渠道,将PIM-SM操控平面与数据平面别离,操控平面在路由器的主控上运用软件方法完结,而数据平面运用TCAM+FPGA的方法在路由器的转发子体系上完结。考虑到路由查表的特性,将转宣布寄存在商用TCAM芯片中,能够充分运用TCAM的要害字查找优势,运用FPCA程序完结转发处理逻辑。这样的规划方法开发简略,本钱较低,灵活性强。其完结模型如图1所示。

1 完结难点剖析

调查近几年的路由器技能打开,单播路由协议选用硬件转发、软件保护现已不是新的计划。这是由于单播路由表类型比较单一,寄存的是下一跳、网络衡量、出接口等固定长度的信息,并且协议操控平面与数据平面功用区分明晰。数据平面只用来转发而不影响协议机制的运转,它运用的转宣布只需求简略的意图地址和出接口信息(只需一个),其作业便是对到来的数据包进行意图地址的匹配,然后依据匹配成果直接转发即可。因而,单播协议的转发功用选用硬件方法完结较简略,只需简略的硬件转宣布和断定逻辑对数据进行处理,然后交给调度模块直接输出即可。

PIM-SM完结计划的规划能够学习单播路由协议的硬件转发方法。可是,它完结硬件转发比单播协议硬件转发困难得多。其首要困难如下:

(1)组播转发进程较为杂乱,输入输出项多且输出项不定长。PIM-SM组播路由协议的路由表项类型不单一.多达四种且有匹配优先次序,数据包的匹配查找逻辑适当杂乱。

(2)组播转宣布容量巨大,表项宽。受器材水平的约束,硬件完结计划中或许依据可用器材的状况规划多级转宣布,而多级查表又约束了硬件完结计划速度优势的发挥。

(3)与单播转发比较,数据包需求硬件仿制和交流转发。组播转发不只大大添加了路由器转发模块的杂乱度,并且还添加丁调度模块和接口模块的杂乱度。

(4)一些运用软件简略处理的问题,或许运用硬件完结就比较困难,例如转发查表、RPF查看、数据驱动报文处理等。

(5)组播路由协议尚不完善,组播运用还未遍及,能够预见在未来的几年中,跟着组播运用的打开,IPv4组播路由协议还要不断改进和完善。现在IPv6组播路由协议还未有规范,可是转发规划有必要考虑依据IPv6的宴现方法。

这些由协议特性形成的与单播路由协议硬件转发的不同之处,也是PIM-SM完结硬件转发的杂乱之处。这种杂乱性在详细规划和完结时尽管在必定程度上会添加硬件转发规划的杂乱度,可是只需合理规划,选用正确的技能手段和战略,硬件转发的功用优势是很明显的。

2 计划规划

通过剖析,不难得出关于。PIM-SM分布式完结计划的大致概括。计划整体上能够分为数据平面转发规划、操控平面完结方法规划和平面问通讯方法规划三个部分。其间,数据平面转发部分的规划是整个计划的要害和难点,影响着PIM-SM组播的转发功用,其首要难点是转宣布格局和转发逻辑的规划,在T比特路由器的转发子体系上完结。协议软件部分担任操控平面的协议行为,应该在T比特路由器的主控子体系上完结,首要作业是保护协泌状态机的运转,与其他模块进行交互,以及对路由表项的更新办理。平面问通讯部分包含两方面的作业:路由表下发和数据驱动报文上报。这两部分包含断定、封装、上报和处理等操作,涉及到主控和转发两方面的作业,也是比较杂乱的一部分,需求通过高速内部网络进行通讯。考虑到在T比特路由器上的完结,PIM-SM完结计划的整体框图如图2所示。

图2中只描绘了一个转发的框图,关于多个转发的状况能够类推。

协议操控平面以及路由表办理部分在主控板上以软件方法完结,数据平面部分在T比特路由器的转发板上运用硬件完结,数据报文经查表后直接转发。主控与转发之间通过高速网络互联,数据驱动报文在转发生成后通过该网络上报给主控的协议软件处理。

值得注意的是,协议报文有必要上交给主控进行处理。因而,为削减转发逻辑的杂乱度能够将协议报文在线路接口部分判断后直接通过内部网络上交给主控协议栈处理。这样既可削减了硬件转发部分的担负,叉使协议报文的处理不会与数据报文的处理相混杂。

前面现已提到过,影响数据高速转发的要害要素是转宣布格局和查表转发算法的规划。因而,有必要从确保协议一致性的视点动身考虑哪些功用能够用硬件完结,哪些需求经软件核算后下发。这部分规划的正确与否不只会影响协议一致性,并且会对转发功用发生影响。通过对协议转发规矩的详尽剖析以及针对本路由器体系结构特色,提出了以下HM-SM转宣布格局,如表1所示。该格局支撑PIM-SM三种转发项。

查表转发算法包含三部分:查表、成果判别和转发上报。查表部分担任数据包转宣布项的匹配,方法是针对数据包运用TCAM中寄存的转宣布进行要害字匹配,输出查表成果,假如失利则丢掉数据包;成果判别部分包含RPF查看、数据驱动报文断定、查表胜败断定等逻辑,依据查表成果信息进行断定;转发上报部分包含正常数据包的转发和数据驱动报文封装上报等操作。其间查表部分相对杂乱,时刻消耗较多,运用FPGA程序完结时需求考虑怎么进行功用优化,不然简略导致数据不能及时查表转发,达不到线速转发的要求。数据驱动报文的封装上报等操作能够选用硬件或许软件完结。在路由器中硬件对组播的支撑包含两个方面:一是完结硬件查表转发,二是在硬件上支撑组播仿制。在组播仿制的硬件完结中,将组播仿制功用放到调度模块完结。调度模块收到转发送来的组播报文后,依据转发所贴标签标识的意图端口号及仿制数目进行相应的仿制,并直接送到相应端口的FIFO。

3 线速转发可行性剖析

该分布式规划计划的意图是完结高速数据转发,方针是到达10G接口的线速转发。依据以上规划需求预算一下能否到达线速转发才干和首要约束要素。考虑到查表进程的时刻消耗对转发功用的影响最大,从这方面打开对线速转发约束要素的剖析。

3.1 线速转发条件

线速转发要求数据包的吞吐率在到达线路接口的最高值时不会丢包,即有必要能及时处理一切的数据包,那么衡量的规范为查表的时刻应低于单个数据包的线速转发时刻。数据包越长,对应的查表时刻就越长。因而对短数据包的要求更为严苛。要在数据速率高达10Gbps的条件下,完结常见最短组播数据包(长度为40字节)的线速转发,则转发处理一个数据包的最长时刻为:

(IP报文长度)40×8bit/(端口速率)10Gbps=32ns。

表2给出了不同长度数据包的转发最长时刻。

假定商用TCAM芯片的时钟为100MHz,每个时钟周期长10ns,也便是说有必要在4个时钟周期内完结查表转发,才干完结最短数据包的线速转发。依据转宣布格局的规划,源地址和意图地址作为查表要害字寄存于TCAM中,针对IPv4要害字长64bit,IPv6要害字长256bit,运用的TCAM为Netlogic公司的NSE5512,其容量为512kx72bit(即:若表项宽度为72位,则该容量(包含掩码)为512k×72bit,事实上表项为256k条)。该器材的表项宽度可装备为72位、144位、288位和576位,表项装备为144位时,容量为128k条;装备为288位时,容量即为64k条。依据笔者规划的转宣布格局,组播表的查表要害字设为288位宽。

运用TCAM完结查表所需的总时刻T可分为两部分。一部分为查表要害字的输入时刻T1,例如对数据总线为72位的TCAM而言,288位查表要害字的输入时刻需求4个FPGA时钟周期;另一部分为查表要害字查找TCAM内部表项然后得出查表成果所需的时刻,也能够称之为查表成果等待时刻T2,现在业界比较先进的TCAM的等待时刻一般为10个FPGA时钟周期。因而,有:T=T1+T2=14。这阐明,选用一般的查表计划在4个时钟周期内无法处理完最短包,10G接口的线速转发无法得到。

3.2 优化查表战略

为了完结10G接口的线速转发,有必要设法使得转发查表能在4个时钟周期内完结。而朴实的TCAM查表不能在4个时钟周期内完结,这就要求有必要选用流水查表技能对查表完结计划进行优化。这样,一种由TCAM和SRAM共同完结的路由查表流水线计划在此处能够得到运用。该流水查表计划中,TCAM表项仅存储查表要害字,查表成果则存储在相应地址的SRAM中。组播查表进程被分化成为三级流水级。其间,一级要害字是组播查表要害字,该要害宇格局应为(S,G),一级要害字的查表运用TCAM完结;二级要害字是TCAM中表项最低匹配地址,二级要害字的查表运用SRAM完结;二级要害字查表成果为终究成果,即出接口等信息。则查表流水线如图3所示。

流水线的功用段完结该段使命所需的时刻即为功用段推迟时刻,表3列出了IPv4/IPv6组播数据包查表时各功用段的时刻推迟。由该表可知,该查表流水线中推迟时刻最长的段为“TCAM查表要害字输入”,需求4个FPGA时钟周期。

现在,在FPGA和TCAM、SRAM器材答应的条件下,该查表流水线结构能够支撑OC-192接口40字节组播包线速查表。该流水线现已在T比特路由器上得到运用,其详细规划计划不是本文评论的问题,只用来阐明选用TCAM+FPGA方法能够完结10G接口线速转发,这一点将由实践测验得到证明。

关于硬件转发功用的测验,RFC主张以最短报文来测验路由器的吞吐量。在相同端口速率下转发小包是对路由器包转发才干最大的检测。笔者进行了测验,测验端口包含10G wAN/LAN和10G POS,运用Spirent通讯公司的AX/4000测验仪对该路由器按照RFC2544规则进行转发功用测验。成果10G WAN/LAN接口40字节以上组播数据包均可到达线速转发,10G POS接口70字节以上可到达线速转发。只需FPGA程序进一步优化能够完结恣意包长的线速转发。本次测验的丢包率为0。64字节的包推迟仅为12.35μs。证明组播数据包能够完结10G线速转发,推迟很小,合适组播运用。

本文结合国家863项目“可扩展到T比特的高功用IPv4/v6路由器根底渠道及试验体系”的要求,提出了一种可运用于T比特路由器渠道的分布式PIM-SM组播完结计划,选用TCAM+FPGA方法完结了高速数据转发,并研讨规划了转宣布格局和查表转发算法,剖析了该方法下线速转发的可行性,并终究得到实践功用的验证。总归,本文提出了一种完结相对简略、高效可行的PIM-SM组播完结计划。它具有较强的立异性,该计划的规划思维不只能够运用于T比特路由器,相同也适用于其他具有分布式结构的高端路由器。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/dianlu/225103.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部