[发明专利]一种多线程边界网关协议并行处理方法有效
| 申请号: | 201110310369.9 | 申请日: | 2011-10-13 |
| 公开(公告)号: | CN102394809A | 公开(公告)日: | 2012-03-28 |
| 发明(设计)人: | 赖明澈;高蕾;王志英;肖侬;陆洪毅;马胜;任珊珊 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
| 主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
| 代理公司: | 国防科技大学专利服务中心 43202 | 代理人: | 郭敏 |
| 地址: | 410073 湖*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 多线程 边界 网关 协议 并行 处理 方法 | ||
技术领域
本发明属于路由协议系统结构领域,尤其涉及高性能路由器边界网关协议BGP(Border Gateway Protocol)的线程级并行处理方法。
背景技术
自上世纪90年代以来,Internet经历了飞速发展的过程,已经从一个简单的实验性网络演变成为一个巨大的商业网络。路由器作为构建整个Internet核心网络的重要设施,其体系结构经历了从集中式路由器、分布式路由器到集群路由器的发展过程,然而路由器软件技术的发展则相对比较滞后,协议性能提升受限使其难以满足下一代Internet发展的需求。特别是,随着Internet规模的快速增长以及各种网络应用的大量涌现,运行BGP的路由器需要处理的路由更新报文数量迅猛增长,对路由器的协议处理速度提出了更高要求。多核处理器的应用为提高BGP协议处理速度提供了重要手段。一方面,相对于单核处理器,多核处理器拥有丰富的计算资源,具有更高的工作频率、低功耗和易扩展等特点,克服了单核处理器的计算瓶颈,并且可以支持线程级并行来帮助改善应用程序性能。另一方面,相对于集群结构,它具有分布式计算资源与共享存储结构优势,提供了更快的同步操作与更高的核间通信带宽,能够有效降低路由节点之间的通信同步开销。因此,设计一种基于多核处理器的BGP多线程并行处理方法,通过有效利用多核多线程计算资源来提高BGP处理海量路由更新报文的计算速度,从而降低路由更新报文处理延迟及提高网络收敛时间,具有重要实践意义。
现有专利(公开号为CN101741705A)公开了一种BGP多线程结构来实现并行处理路由更新报文的方法,它采用分层处理方式,通过划分多线程,使BGP软件在多核环境下多线程并行处理路由更新报文,其典型过程(如图1)主要包含以下步骤:
1、类别项预计算:BGP按照路由地址前缀分布将全部路由信息分类计算为p个类别项,p为可变的自然数,将不同前缀范围的路由信息放进不同的类别项,类别项可以为散列表的表项、树结构中的子树等数据结构,不同类别项内部的地址前缀之间没有交叉,且所有类别项的地址前缀集合为所有目标地址总和。
2、构建BGP多线程结构:它由一个邻居管理和前处理前缀分类线程与多个选路线程组成。其中,邻居管理与前处理前缀分类线程由多个邻居管理单元与一个前处理前缀分类单元组成。邻居管理与前处理前缀分类线程将BGP邻居划分为多个子集,这些子集分别称为“邻居束1”、“邻居束2”、…、“邻居束p”。选路线程根据类别项划分为n个,n为可变自然数,它需要根据处理器核的数量与p进行调整,以达到软件最优性能。例如,假设核的数量为4,p、n可以调成4,如果处理的报文较多,也可以将p、n调成8。
3、解析报文:邻居管理单元i(i为自然数且1≤i≤p)用于处理与邻居束i的会话关系,处理过程中仅使用本邻居束中的邻居信息、路由信息及出口策略信息。邻居管理单元i从邻居束i的一个邻居接收到路由更新报文以后,解析出路由更新报文中的目的地址和路由属性,并封装成消息发送给前处理前缀分类单元。
4、查找类别项:前处理前缀分类单元获得解析出的目的地址和路由属性组成的消息,根据目的地址查找类别项,按照查找到的类别项,向与该类别项对应的选路线程j(j为自然数且1≤j≤n)发送携带目的地址和路由属性的消息。
5、选路计算:选路线程j根据消息中网络地址和路由属性在类别项中选择最优路径,计算最优路径需要根据预定标准进行衡量,例如:路径长度、可靠性、延迟、带宽、负载、通信代价等权值,继而将最优路径发送给邻居管理与前处理前缀分类线程中所有p个邻居管理单元。
6、路由更新播报:所有p个邻居管理单元接收到选路线程j发送的最优路径后,每个邻居管理单元都会对本单元负责的邻居束中的每个邻居,对发送来的最优路径进行该邻居的出口策略过滤,将经过过滤的路由打包发送给该邻居。
7、当有新的路由更新报文达到,转步骤3。
上述方法实现了BGP在多核处理器上多个线程并行处理路由更新报文,提高了工作效率,但该方法仍存在一些不足:
(1)由于该方法将对单个路由更新报文的解析与封装、选路计算过程分布在两个线程上并行执行,导致线程之间需要进行频繁通信,降低了工作效率;
(2)该方法将全局路由信息预先划分为固定的类别项,无法反映选路线程访问类别项的真实情况,极易出现多个选路线程同时访问同一类别项而产生大量访存竞争,使得选路线程之间无法真正并行工作,限制了BGP处理路由更新报文处理速度的继续提升。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110310369.9/2.html,转载请声明来源钻瓜专利网。





