CN101741705A - 一种并行处理路由更新报文的方法及装置 - Google Patents

一种并行处理路由更新报文的方法及装置 Download PDF

Info

Publication number
CN101741705A
CN101741705A CN200810181193A CN200810181193A CN101741705A CN 101741705 A CN101741705 A CN 101741705A CN 200810181193 A CN200810181193 A CN 200810181193A CN 200810181193 A CN200810181193 A CN 200810181193A CN 101741705 A CN101741705 A CN 101741705A
Authority
CN
China
Prior art keywords
routing
neighbours
thread
iinformation
routing iinformation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200810181193A
Other languages
English (en)
Inventor
刘淑英
郭志强
涂伯颜
熊怡
张文勇
高雪松
刘江一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN200810181193A priority Critical patent/CN101741705A/zh
Publication of CN101741705A publication Critical patent/CN101741705A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种并行处理路由更新报文的方法及装置,属于通信技术领域。所述方法包括:将路由信息分为至少两个类别项;解析多个路由更新报文的路由地址和路由属性;查找对应的类别项;在找到的类别项中计算出符合预定标准的路由信息。所述装置包括:分类模块、解析模块、查找模块和计算模块;或包括:通信模块、解析模块、选择模块;或包括:解析模块、计算模块和选择模块。本发明通过对BGP协议进行灵活的补充,对BGP软件进行多线程改造,并相应地改造数据结构,具有使BGP程序能够以多个线程的方式,并行地运行在多核处理器的多个核上,并行处理数据,提高工作效率的效果。

Description

一种并行处理路由更新报文的方法及装置
技术领域
本发明涉及通信技术领域,特别涉及一种并行处理路由更新报文的方法及装置。
背景技术
为了便于管理,计算机网络被划分成多个AS(Autonomous System,称自治系统或自治域),各个AS的边界路由器之间通过域间路由协议来交换路由信息,目前主要使用的域间路由协议是边际网关协议BGP-4(Border Gateway Protocol,边际网关协议)。交换域间路由信息的路由器称做BGP“发言者”,两个建立BGP会话的发言者互为对方的“邻居”,它们之间的关系称做“邻居关系”。
由于涉及的网络规模巨大,变化频繁,运行BGP的路由器需要处理的路由信息数量是巨大的,对路由器性能的要求日益提高。多核处理器为提高计算机的性能提供了契机。在具有多核处理器的计算机上,不同的任务可以同时运行在不同的核上,具有提高计算效率的极大潜力。将BGP软件进行适当的改造,使之能够以多个线程的形式运行在多核处理器上,不仅可以使程序并行运行,利用多核资源提高工作效率,还可以省掉大量的通讯报文。
现有技术一中公开了一种集中式BGP的实现方式,集中式BGP只有一个进程,一个线程,运行在单个处理器上。它可以不划分功能模块,但目前的大多数实现中都会划分出多个功能模块,各个模块有任务的时候,将任务排队,交错执行。
现有技术二中公开了一种分布式BGP的实现方式,分布式BGP是分成多个部分,各个部分同时运行在多个路由器上,可以同时运行,各个节点在维护内部分布式BGP邻居关系的同时,分别维护各自在外部的BGP邻居集合,处理各自邻居集合的报文和路由信息,选出本节点的局部符合预定标准路由之后发送给其它节点,进行路由同步计算,选出全局符合预定标准路由,再将全局符合预定标准路由通告给邻居。
在对现有技术进行研究后,本发明人发现:现有技术一中的集中式BGP,在路由信息量大、更新频繁的情况下,集中式BGP的工作效率低。使用多核处理器时,集中式BGP在同一时间只能运行在一个核上,和使用单核处理器相比,没有提高效率的潜力。而现有技术二中分布式BGP需要多个路由器和高速通讯网络,成本较高。由于各个路由器是独立的,分布式BGP的各部分之间需要进行大量的通讯,占用了BGP的资源、工作时间和网络带宽,有的分布式BGP需要进行路由同步计算,这些因素都限制了分布式BGP的效率提升。
发明内容
为了使多核环境下更能高效的实现处理路由更新报文,能够充分利用多核处理器的优势,提高处理路由更新报文的工作效率,本发明实施例提供了一种并行处理路由更新报文的方法及装置。所述技术方案如下:
一方面,提供了一种并行处理路由更新报文的方法,所述方法包括:
按照路由地址前缀对路由信息进行分类,得到至少两个类别项;
当接收到多个路由更新报文后,对所述多个路由更新报文分别进行解析,解析出多个路由地址和多个路由属性;
根据所述多个路由地址的路由地址前缀在所述类别项中分别查找每个路由地址前缀对应的类别项;
在查找到的类别项中,根据所述路由属性选出符合预定标准的路由信息。
提供了一种并行处理路由更新报文的方法,所述方法包括:
接收多个路由更新报文;
对所述多个路由更新报文进行解析,解析出路由更新报文中的路由信息,所述路由信息包括:路由地址和路由属性,并选择携带下一跳可达的路由信息;
在下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息。
提供了一种并行处理路由更新报文的方法,所述方法包括:
接收到多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述路由信息包括:路由地址和路由属性;
根据所述多个路由地址前缀和路由属性进行选路计算,计算出多个局部符合预定标准的路由信息;
在所述多个局部符合预定标准的路由信息和已有的路由信息中进行选择,进一步选择出全局符合预定标准的路由信息。
还提供了一种并行处理路由更新报文的装置,所述装置包括:
分类模块,用于按照路由地址前缀对路由信息进行分类,得到至少两个类别项;
解析模块,用于对接收到的多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和多个路由属性;
查找模块,用于根据所述解析模块得到的多个路由地址的路由地址前缀在所述多个类别项中分别查找每个路由地址前缀对应的类别项;
计算模块,用于在查找到的类别项中进行选路计算。
提供了一种并行处理路由更新报文的装置,所述装置包括:
通信模块,用于接收多个路由更新报文,并发送所述多个路由更新报文;
解析模块,用于解析出多个路由更新报文中的多个路由信息,所述多个路由信息包括:多个路由地址和路由属性,并选择下一跳可达的路由信息;
选择模块,用于在所述下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息。
提供了一种并行处理路由更新报文的装置,所述装置包括:
解析模块,用于接收多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和路由属性;
计算模块,用于根据所述多个路由地址的路由地址前缀和路由属性进行选路计算,计算出多个局部符合预定标准的路由信息;
选择模块,用于在计算出的多个局部符合预定标准的路由信息和已有的路由信息中选择出全局符合预定标准的路由信息。
本发明实施例提供的技术方案的有益效果是:
通过对BGP协议进行灵活的补充,对BGP软件进行多线程改造,并相应地改造数据结构,使BGP程序能够以多个线程的方式,并行地运行在多核处理器的多个核上,可以充分利用多核处理器带来的优势,提高工作效率,增强BGP程序的实时性。并且线程数目可以调节,具有较强的适应环境的能力。
附图说明
图1是本发明实施例1提供的处理路由更新报文的方法流程图;
图2是本发明实施例1提供的处理路由更新报文的方法中数据存储示意图;
图3是本发明实施例2提供的处理路由更新报文的方法流程图;
图4是本发明实施例2提供的处理路由更新报文的方法中数据存储示意图;
图5是本发明实施例3提供的处理路由更新报文的方法流程图;
图6是本发明实施例3提供的处理路由更新报文的方法中数据存储示意图;
图7是本发明实施例4提供的处理路由更新报文的方法流程图;
图8是本发明实施例4提供的处理路由更新报文的方法中数据存储示意图;
图9是本发明实施例5提供的处理路由更新报文的装置结构图;
图10是本发明实施例5提供的处理路由更新报文的另一种装置结构图;
图11是本发明实施例6提供的处理路由更新报文的装置结构图;
图12是本发明实施例6提供的处理路由更新报文的另一种装置结构图;
图13是本发明实施例7提供的处理路由更新报文的装置结构图;
图14是本发明实施例7提供的处理路由更新报文的另一种装置结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。其中,附图2、4、6、8中涉及到的所有实心箭头均代表消息队列,空心双箭头均代表数据访存,双箭头均代表下一跳查询,在此说明,以下描述中不再赘述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种并行处理路由更新报文的方法,对BGP软件进行了多线程改造,使BGP程序能够以多个线程的方式,并行地运行在多核处理器的多个核上,提高了处理路由更新报文的效率。
实施例1
本发明实施例提供了一种并行处理路由更新报文的方法,所述方法包括:按照路由地址前缀对路由信息进行分类,得到至少两个类别项;当接收到多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由地址和路由属性;根据所述多个路由地址前缀在所述类别项中分别查找对应的类别项;在查找到的类别项中,根据所述路由属性选出符合预定标准的路由信息。参见图1,所述方法具体包括:
101:按照路由地址前缀对全部路由信息进行分类计算,将不同前缀范围的路由信息放进不同的类别项(可以是散列表的表项、树结构中的“子树”等任何可以划分的数据结构)。同一个地址前缀只能放进一个类别项中;每个类别项包含的地址前缀与别的类别项没有交叉;而所有类别项的地址前缀的集合,是所有目的地址列表。
102:将BGP核心功能划分为多个邻居管理和前处理前缀分类线程、多个选路线程。其中,多个邻居管理和前处理前缀分类线程包括多个邻居管理单元和一个前处理前缀分类单元。
上述邻居管理和前处理前缀分类线程是根据邻居关系划分的,BGP全部邻居关系划分成多个子集,这些子集分别称作“邻居束1”、“邻居束2”、……“邻居束m”,每个邻居管理单元负责维护BGP全部邻居关系的一个子集,邻居管理单元可以是m个;
上述选路线程是根据类别项划分的,与类别项是有对应关系的,可以是n个,其中,m和n是可变的自然数,以达到软件的最优性能为目的,可以根据实际情况,对m和n进行调节,例如,根据核的数量,假设核的数量为6,可以将m和n调成6,但如果处理的报文比较多,也可以将m和n调成12,或,将m调成6,将n调成12。
103:邻居管理单元i负责维护邻居束i的邻居关系,从邻居束i的一个邻居收到路由更新报文以后,邻居管理单元i解析路由更新报文中的网络目的地址和路由属性,并将解析出的网络目的地址和路由属性封装成消息,放入消息队列,发送给前处理前缀分类单元,其中0<i<m。
104:前处理前缀分类单元从邻居管理单元i的消息队列中取出消息后,根据网络目的地址前缀查找类别项,按照查找到的类别项,将携带网络目的地址前缀和路由属性的消息发送给与该类别项对应的选路线程j,其中0<j<n。
105:选路线程j收到前处理前缀分类线程的消息后,根据消息中网络目的地址前缀和路由属性在类别项中进行选路计算,计算出符合预定标准的路由信息,并将计算出的路由信息的路由地址前缀和路由属性封装成消息,发送给所有的m个邻居管理单元。
其中,预定标准,有不同的衡量权值,例如:路径长度、可靠性、延迟、带宽、负载、通信代价等达到预定的权值,本发明实施例中,预定标准等同,在以下内容中提到时,不再赘述。
106:所有的m个邻居管理单元收到选路线程j的消息后,其中每个邻居管理单元对本线程负责的邻居束中的每个邻居,将消息中携带的符合预定标准的路由信息过该邻居的出口策略,并将过策略后的路由信息通告给该邻居管理单元负责维护的邻居。
进一步地,上述方法中的路由信息和邻居信息可以存储在已有数据库中,也可以建立一个新的数据库,用来存储路由信息和邻居信息。为了具体地体现出数据存储,参见图2,上述方法可以具体如下:
按照路由地址前缀进行分类计算,将不同前缀范围的路由信息放进不同的类别项,类别项存储在全局路由分类库201中。
局部邻居信息库i202存储邻居管理线程i203的所有邻居的信息,邻居管理单元i203收到邻居发来的路由更新报文以后,解析路由更新报文中的目的地址和路由属性,并将解析出的目的地址和路由属性封装成消息发送给前处理前缀分类单元204。
前处理前缀分类单元204收到消息后,根据消息中的目的地址前缀在全局路由分类库201中查找类别项,如果配置了策略,则将接收到的目的地址和路由属性等路由信息过入口策略库205,将过策略后新生成的路由属性维护到全局路由属性库206,按照查找到的类别项,将目的地址前缀和路由属性发送给与该类别项对应的选路线程j207。
选路线程j207收到前处理前缀分类线程204的消息后,根据目的地址前缀和路由属性进行选路计算。将计算出的符合预定标准的路由信息,记录在全局路由分类库201中,并将计算出的路由的地址前缀和属性封装成消息,发送给所有的m个邻居管理单元。
所有的m个邻居管理单元接收到选路线程的消息后,每个邻居管理单元,例如邻居管理单元i203,对本线程的邻居束中的每个邻居,将该符合预定标准的路由信息过该邻居的局部出口策略库i208,将过策略后的路由信息保存在局部路由信息库i209中,并根据策略,将该符合预定标准的路由信息通告给该线程负责的邻居。
本实施例通过划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文;按照路由地址前缀进行分类计算,得到多个类别项,前处理前缀分类线程根据路由地址前缀查找类别项,选路线程在查找到的类别项内部进行选路计算,使得不同类别项内部的选路过程可以并行进行,提高了工作效率;将邻居信息和路由信息分别存储在对应的数据库中,不仅使多个线程能够共享和处理数据,并大大减少了访存冲突,提高了程序的并行性。
实施例2
本发明实施例提供了一种并行处理路由更新报文的方法,所述方法包括:按照路由地址前缀对路由信息进行分类,得到至少两个类别项;当接收到多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由地址和路由属性;根据所述多个路由地址前缀在所述类别项中分别查找对应的类别项;在查找到的类别项中,根据所述路由属性选出符合预定标准的路由信息。参见图3,所述方法具体包括:
301:按照路由地址前缀进行分类计算,将不同前缀范围的路由信息放进不同的类别项(可以是散列表的表项、树结构中的“子树”等任何可以划分的数据结构)。同一个地址前缀只能放进一个类别项中;每个类别项包含的地址前缀与别的类别项没有交叉;而所有类别项的地址前缀的集合,是所有目的地址列表。
302:将BGP核心功能划分为多个邻居管理和前处理前缀分类线程和多个选路线程。
邻居管理和前处理前缀分类线程是根据邻居关系划分的,BGP全部邻居关系划分成多个子集,这些子集分别称作“邻居束1”、“邻居束2”、……“邻居束m”,每个邻居管理和前处理前缀分类线程负责维护BGP全部邻居关系的一个子集,邻居管理和前处理前缀分类线程可以是m个;
选路线程是根据类别项划分的,与类别项是有对应关系的,可以是n个,其中m和n是可变的自然数,根据核的数量进行调节。
303:邻居管理和前处理前缀分类线程i负责维护邻居束i的邻居关系,从邻居束i的一个邻居收到路由更新报文以后,邻居管理和前处理前缀分类线程i解析路由更新报文的报文头,其中0<i<m。
304:邻居管理和前处理前缀分类线程i解析路由更新报文中的网络目的地址和路由属性,根据网络目的地址前缀查找类别项,按照查找到的类别项,将携带网络目的地址前缀和路由属性的消息发送给与该类别项对应的选路线程j,其中0<j<n。
305:选路线程j收到邻居管理和前处理前缀分类线程的消息后,根据消息中的网络目的地址前缀和路由属性在类别项中进行选路计算,计算出符合预定标准的路由信息,并将计算出的符合预定标准的路由信息的路由地址前缀和路由属性封装成消息,发送给所有的m个邻居管理和前处理前缀分类线程。
306:所有的m个邻居管理和前处理前缀分类线程收到选路线程j的消息后,其中每个邻居管理和前处理前缀分类线程对本线程负责的邻居束中的每个邻居,将消息中携带的路由信息过该邻居的出口策略库,并根据策略,将该符合预定标准的路由信息通告给该邻居管理和前处理前缀分类线程负责的邻居。
进一步地,在上述方法中还可以进行数据存储,如将路由信息和邻居信息存储在数据库中,参见图4,上述方法可以具体如下:
按照路由地址前缀进行分类计算,将不同前缀范围的路由信息放进不同的类别项,类别项存储在全局路由分类库401中。
局部邻居信息库i402存储邻居管理和前处理前缀分类线程i403的所有邻居的信息,邻居管理和前处理前缀分类线程i403收到一个邻居发来的路由更新报文以后,邻居管理和前处理前缀分类线程i403解析报文头,解析报文中的网络目的地址和路由属性,将路由属性维护到全局路由属性库404中;如果对该邻居配置了策略,则将路由信息过局部策略库i405,将过策略后新生成的属性维护到全局路由属性库404;根据路由地址前缀在全局路由分类库401中查找类别,按照查找到的类别项,将携带路由地址前缀和路由属性的消息对应地发送给与该类别项对应的选路线程j406。
选路线程j406收到邻居管理和前处理前缀分类线程i403的消息后,根据路由的地址前缀和属性进行选路计算。将计算出的符合预定标准的路由信息,记录在全局路由分类库401中,并将计算出的路由的地址前缀和属性封装成消息,发送给所有的邻居管理和前处理前缀分类线程。
所有邻居管理和前处理前缀分类线程,例如邻居管理和前处理前缀分类线程i403,收到选路线程j406的消息后,对本线程的邻居束中的每个邻居,将该符合预定标准的路由信息过该邻居的局部策略库i405,将过策略后的路由信息保存在局部路由信息库i407中,并根据策略,将该路由信息通告给该线程负责的邻居。
本实施例通过划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文;按照路由地址前缀进行分类计算,得到多个类别项,邻居管理和前处理前缀分类线程根据路由地址前缀进行查找类别项,选路库线程在查找到的类别项内部进行选路,使得不同类别项内部的选路过程可以并行进行,提高了工作效率;将邻居信息和路由信息分别存储在对应的数据库中,不仅使多个线程能够共享和处理数据,并大大减少了访存冲突,提高了程序的并行性。
实施例3
本发明实施例提供了一种并行处理路由更新报文的方法,所述方法包括:接收多个路由更新报文;对所述多个路由更新报文进行解析,解析出路由更新报文中的路由信息,所述路由信息包括:路由地址和路由属性,并选择携带下一跳可达的路由信息;在下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息。参见图5,所述方法具体包括:
501:将BGP核心功能划分为邻居管理线程、第一阶段选路线程、第二阶段选路线程、第三阶段选路线程。其中,所述第二阶段选路线程包括了与路由器的全局路由表管理模块(Routing Table Management,RTM)进行交互的模块,该模块也可以独立出来成为一个RTM交互线程。
502:邻居管理线程收到邻居发来的路由更新报文,邻居管理线程将路由更新报文发送给第一阶段选路线程。
503:第一阶段选路线程解析路由更新报文的内容,解析出的地址前缀和路由属性等信息。向RTM交互模块查询,确定路由的下一跳可达后,第一阶段选路线程将下一跳可达的路由信息发送给第二阶段选路线程。
504:第二阶段选路线程从消息队列中取出下一跳可达的路由信息后,并在该下一跳可达的路由信息和已有的路由信息中选择到达同一目的地址前缀的符合预定标准的路由信息,下发给RTM交互模块,并将选出的符合预定标准的路由信息封装成消息发送给第三阶段选路线程。
505:第三阶段选路线程将消息中的符合预定标准的路由信息过每个邻居的出口策略,生成新的路由信息。并第三阶段选路线程将新的路由信息封装成消息发送给邻居管理线程。
506:邻居管理线程将第三阶段选路线程发来的新的路由信息封装成路由更新报文,发送给该线程负责的邻居。
进一步地,在上述方法中还可以进行数据存储,如将路由信息和邻居信息存储在数据库中,参见图6,上述方法可以具体如下:
邻居信息库601存储所有邻居的信息,邻居管理线程602收到邻居发来的路由更新报文,发送给第一阶段选路线程603。
第一阶段选路线程603解析路由更新报文的内容,将地址前缀和路由属性等信息维护到路由信息库604。调用路由策略库605中的入口策略,对路由过策略,生成的新属性维护进路由信息库604,路由信息库604向RTM交互模块606查询,确定路由的下一跳可达后,第一阶段选路线程603将下一跳可达的路由信息封装成消息发送给第二阶段选路线程607。
第二阶段选路线程607从消息队列中取出下一跳可达的路由信息,在下一跳可达的路由信息和已有的路由信息中选择到达同一目的地址前缀的符合预定标准的路由信息,下发给RTM交互模块606,第二阶段选路线程607将选出的符合预定标准的路由信息封装成消息发送给第三阶段选路线程608。
第三阶段选路线程608将消息中的符合预定标准的路由信息过每个邻居的出口策略,生成新的路由信息维护到路由信息库604。第三阶段选路线程608将新的路由信息封装成消息发送给邻居管理线程602。
邻居管理线程602将第三阶段选路线程608发来的新的路由信息封装成路由更新报文,发送给该线程负责的邻居。
本实施例通过划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文,提高了工作效率;将邻居信息和路由信息分别存储在对应的数据库中,不仅使多个线程能够共享和处理数据,并大大减少了访存冲突,提高了程序的并行性。
实施例4
本发明实施例提供了一种并行处理路由更新报文的方法,所述方法包括:接收到多个路由更新报文后,同时对所述多个路由更新报文进行解析,解析出多个路由信息,所述路由信息包括:路由地址和路由属性;根据所述多个路由地址前缀和路由属性进行选路计算,计算出多个局部符合预定标准的路由信息;在所述多个局部符合预定标准的路由信息和已有的路由信息中进行选择,进一步选择出全局符合预定标准的路由信息。参见图7,所述方法具体包括:
701:将BGP核心功能划分为多个邻居管理和路由处理线程和一个路由同步线程。其中,每个邻居管理和路由处理线程包括邻居管理单元和路由处理单元。
邻居管理和路由处理线程是根据邻居关系划分的,BGP全部邻居关系划分成多个子集,这些子集分别称作“邻居束1”、“邻居束2”、……“邻居束m”,每个邻居管理单元负责维护BGP全部邻居关系的一个子集,邻居管理单元可以是m个,m是可变的自然数,可以根据核的数量进行调节。
702:邻居管理和路由处理线程中的邻居管理单元i负责维护邻居束i的邻居关系,从邻居束i的一个邻居收到来自其它邻居的路由更新报文以后,邻居管理单元i解析路由更新报文的报文头,将解析出的路由地址前缀和属性发送给路由处理单元i,其中0<i<m。
703:路由处理单元i根据接收到的路由地址前缀和路由属性在本单元内部进行选路计算,计算出局部符合预定标准的路由信息,并将计算出的局部符合预定标准的路由信息发送给路由同步线程。
704:路由同步线程根据收到的局部符合预定标准的路由信息和已有的路由信息,选出全局符合预定标准的路由信息,发送给各邻居管理和路由同步线程的邻居管理单元。
705:邻居管理和路由同步线程中的各邻居管理单元收到全局符合预定标准的路由信息后,对本线程负责的邻居束中的每个邻居,将该全局符合预定标准的路由信息过该邻居的出口策略,并根据策略,将过策略后的全局符合预定标准的路由信息通告给该邻居管理单元负责的邻居。
进一步地,在上述方法中还可以进行数据存储,如将路由信息和邻居信息存储在数据库中,参见图8,上述方法可以具体如下:
局部邻居信息库i801存储邻居管理和路由同步线程i802的所有邻居的信息。邻居管理和路由同步线程i802中的邻居管理单元i8021从邻居收到路由更新报文以后,邻居管理单元i8021解析报文头,解析报文中的网络目的地址和路由属性,如果对该邻居配置了策略,则将路由信息过局部策略库i803中的入口策略,将过策略后新生成的属性维护到全局路由信息库804中;邻居管理和路由同步线程i802中的路由处理单元i8022根据路由的地址前缀和属性在本单元内部进行选路计算,计算出局部符合预定标准的路由信息,记录在局部路由信息库i805中,并将计算出的局部符合预定标准的路由信息的路由地址前缀和属性发送给路由同步线程806。
路由同步线程806根据全局路由信息库804中的信息,选出全局符合预定标准的路由信息,发送给RTM交互线程807、邻居管理和路由同步线程i802中的邻居管理单元i8021。
邻居管理单元i8021收到全局符合预定标准的路由信息后,对本单元的邻居束中的每个邻居,将该全局符合预定标准的路由信息过该邻居的局部策略库i803中的出口策略(过策略后可能生成新的属性),将过策略后的全局符合预定标准的路由信息保存在全局路由信息库804中,并根据策略,邻居管理单元i8021可能将该全局符合预定标准的路由信息通告给该单元所属的邻居管理和路由处理线程i802负责维护的邻居(也可能不通告)。至此核心工作流程结束。
本实施例通过划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文;通过多线程间路由同步计算,提高了工作效率;将邻居信息和路由信息分别存储在对应的数据库中,不仅使多个线程能够共享和处理数据,并大大减少了访存冲突,提高了程序的并行性。
实施例5
本发明实施例提供了一种并行处理路由更新报文的装置,参见图9,该装置包括:
分类模块901,用于按照路由地址前缀对路由信息进行分类,得到多个类别项;
解析模块902,用于对接收到的多个路由更新报文进行解析,解析出多个路由地址和多个路由属性;
查找模块903,用于根据解析模块902解析出的多个路由地址的路由地址前缀在多个类别项中分别查找每个路由地址前缀对应的类别项;
计算模块904,用于在查找模块903查找到的类别项中进行选路计算。
参见图10,上述装置还包括:划分模块905,用于根据邻居关系划分多个邻居管理和前处理前缀分类线程,根据多个类别项划分多个选路线程;
相应地,解析模块902包括:
多个邻居管理和前处理前缀分类线程,用于维护邻居关系和互相通告新的路由信息,还用于将符合预定标准的路由信息过邻居的出口策略;当每个邻居管理和前处理前缀分类线程接收到邻居发来的路由更新报文后,解析出路由地址和路由属性;
查找模块903包括:
多个邻居管理和前处理前缀分类线程,每个邻居管理和前处理前缀分类线程对解析出路由地址和路由属性的路由信息过入口策略,将解析出的路由地址前缀经过分类算法,在多个类别项中查找对应的类别项,并按照查找到的类别项发送路由地址和路由属性;
计算模块904具体包括:
多个选路线程,用于接收多个邻居管理和前处理前缀分类线程发送的多个路由地址和路由属性,根据路由地址和路由属性在对应的类别项中进行选路计算,计算出符合预定标准的路由信息,并将符合预定标准的路由信息发送给划分模块中的所有邻居管理和前处理前缀分类线程;
划分模块905中的每个邻居管理和前处理前缀分类线程,还用于将接收到的符合预定标准的路由信息过邻居的出口策略,生成新的路由信息,并将新的路由信息通告给邻居。
上述划分模块905划分的多个邻居管理和前处理前缀分类线程包括:多个邻居管理单元和一个前处理前缀分类单元;
上述解析模块902具体包括:多个邻居管理单元,用于维护邻居关系;当每个邻居管理单元接收到邻居发来的路由更新报文后,解析出路由地址和路由属性,并发送解析出路由地址和路由属性的路由信息;
查找模块903具体包括:一个前处理前缀分类单元,用于接收到多个邻居管理单元发送的多个路由信息后,将多个路由信息过入口策略,将过策略后的多个路由信息中路由地址前缀经过分类算法,在多个类别项中分别查找对应的类别项,并按照查找到的类别项发送路由地址和路由属性。
本实施例通过划分模块划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文;分类模块按照路由地址前缀进行分类计算,得到多个类别项,查找模块根据路由地址前缀在多个类别项中查找对应的类别项,计算模块根据路由地址前缀和路由属性在查找到的类别项内部进行选路计算,使得不同类别项内部的选路过程可以并行进行,提高了工作效率。
实施例6
本发明实施例提供了一种并行处理路由更新报文的装置,参见图11,该装置具体包括:
通信模块1101,用于接收邻居发送的多个路由更新报文,并将多个路由更新报文发送;
解析模块1102,用于接收通信模块1101发送的多个路由更新报文,并对多个路由更新报文进行解析,解析出路由更新报文中的路由地址和路由属性,并选择携带下一跳可达的路由信息;
选择模块1103,用于在下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息;
参见图12,装置还包括:
过策略模块1104,用于将符合预定标准的路由信息过出口策略,生成新的路由信息。
划分模块1105,用于划分邻居管理线程、第一阶段选路线程、第二阶段选路线程和第三阶段选路线程;
相应地,通信模块1101具体包括:
邻居管理线程,用于维护邻居关系,接收邻居发来的路由更新报文,对路由更新报文进行初步解析,并发送经初步解析的路由更新报文;
解析模块1102具体包括:
第一阶段选路线程,用于解析邻居管理线程发送的经初步解析的路由更新报文,将解析的路由信息过入口策略,并查询下一跳可达的路由信息,发送下一跳可达的路由信息;
选择模块1103具体包括:
第二阶段选路线程,用于接收第一阶段选路线程发送的下一跳可达的路由信息,并在下一跳可达的路由信息和已有的路由信息中,选择到达同一目的地址前缀的符合预定标准的路由信息,发送符合预定标准的路由信息;
过策略模块1104具体包括:
第三阶段选路线程,用于接收符合预定标准的路由信息,将符合预定标准的路由信息过出口策略,生成新的路由信息,并将新的路由信息发送给接收模块中的邻居管理线程;
接收模块中的邻居管理线程,还用于将接收到的新的路由信息通告给邻居。
本实施例通过划分模块划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文,提高了工作效率。
实施例7
本发明实施例提供了一种并行处理路由更新报文的装置,参见图13,该装置包括:
解析模块1301,用于接收到邻居发来的多个路由更新报文后进行解析,解析出多个路由地址和多个路由属性;
计算模块1302,用于根据由解析模块1301解析出的路由地址的路由地址前缀和路由属性在本模块内进行选路计算,计算出局部符合预定标准的路由信息;
选择模块1303,用于在计算模块1302计算出的局部符合预定标准的路由信息和已有的路由信息中选择出全局符合预定标准的路由信息。
参见图14,装置还包括:
划分模块1304,用于划分多个邻居管理和路由处理线程和一个路由同步线程;多个邻居管理和路由处理线程具体包括:多个邻居管理单元和多个路由处理单元;
相应地,解析模块1301具体包括:
多个邻居管理单元,用于维护邻居关系,每个邻居管理单元接收到邻居发来的路由更新报文后进行解析,并发送解析出的路由地址和路由属性;
计算模块1302具体包括:
多个路由处理单元,每个路由处理单元接收到对应的邻居管理单元发送的路由地址前缀和路由属性后,将路由信息过入口策略,在单元内部进行选路计算,计算出局部符合预定标准的路由信息,并发送局部符合预定标准的路由信息;
选择模块1303具体包括:
一个路由同步线程,用于接收多个路由处理单元发送的到多个局部符合预定标准的路由信息后,在多个局部符合预定标准的路由信息和已有的路由信息中选择出全局符合预定标准的路由信息,并将全局符合预定标准的路由信息发送给解析模块中的所有邻居管理单元;
解析模块1301中的每个邻居管理单元,还用于将接收到的全局符合预定标准的路由信息过出口策略,生成新的路由信息,并将新的路由信息通告给邻居。
本实施例通过划分模块划分多个线程,使BGP软件在多核环境下实现在多个线程中并行处理路由更新报文;通过路由同步线程进行路由同步计算,提高了工作效率。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的介质中,存储介质例如,计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (18)

1.一种并行处理路由更新报文的方法,其特征在于,所述方法包括:
按照路由地址前缀对路由信息进行分类,得到至少两个类别项;
当接收到多个路由更新报文后,对所述多个路由更新报文分别进行解析,解析出多个路由地址和多个路由属性;
根据所述多个路由地址的路由地址前缀在所述类别项中分别查找每个路由地址前缀对应的类别项;
在查找到的类别项中,根据所述路由属性选出符合预定标准的路由信息。
2.根据权利要求1所述的并行处理路由更新报文的方法,其特征在于,所述方法具体包括:
按照路由地址前缀对路由信息进行分类,得到至少两个类别项;
划分多个负责维护邻居关系的邻居管理和前处理前缀分类线程和多个选路线程,所述多个邻居管理和前处理前缀分类线程是根据邻居关系划分的,所述多个选路线程是根据所述多个类别项划分的;
当所述多个邻居管理和前处理前缀分类线程接收到邻居发来的多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和多个路由属性,根据解析出的路由地址的路由地址前缀,在所述类别项中查找对应的类别项,按照查找到的类别项,将所述多个路由地址前缀和路由属性发送给与该类别项对应的选路线程;
所述多个选路线程中的每个选路线程收到所述路由的地址前缀和路由属性后,查询转发表确定收到的路由属性携带的下一跳可达后,根据所述路由的地址前缀和路由属性在对应的类别项中,进行属性比较,选出符合预定标准的路由信息,并将所述符合预定标准的路由信息发送给所有的邻居管理线程。
3.根据权利要求2所述的并行处理路由更新报文的方法,其特征在于,
所述得到至少两个类别项之后,还包括:将所述类别项存储在全局路由分类库中;
所述划分线程之后,还包括:将每个邻居管理和前处理前缀分类线程负责的所有邻居的信息存储到该线程的局部邻居信息库中;
所述解析报文中的路由地址和路由属性之后,还包括:将解析出的路由属性维护到全局路由属性库中;如果配置了策略,则将解析出的路由信息过局部策略库,将过策略后新生成的路由属性维护到所述全局路由属性库;
所述选出符合预定标准的路由信息之后,还包括:将所述符合预定标准的路由信息记录在全局路由分类库中,并将所述符合预定标准的路由信息发送给所述多个邻居管理和前处理前缀分类线程;
所述多个邻居管理和前处理前缀分类线程收到所述符合预定标准的路由信息之后,还包括:对本线程的邻居束中的每个邻居,将该符合预定标准的路由信息过该邻居的局部策略库,将过策略后的路由信息保存在局部路由信息库中,并将过策略后的路由信息通告给邻居。
4.根据权利要求2所述的并行处理路由更新报文的方法,其特征在于,所述多个邻居管理和前处理前缀分类线程包括多个邻居管理单元和一个前处理前缀分类单元;
所述当所述多个邻居管理和前处理前缀分类线程接收到邻居发来的多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和多个路由属性,根据解析出的路由地址前缀,在所述多个类别项中查找对应的类别项,按照查找到的类别项,将所述多个路由地址前缀和路由属性发送给与该类别项对应的选路线程,具体包括:
当所述多个邻居管理单元接收到邻居发来的多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息中包括:多个路由地址和多个路由属性,将所述多个路由地址和多个路由属性发送给所述前处理前缀分类单元;
所述前处理前缀分类单元接收到多个邻居管理单元发送的所述多个路由地址和路由属性后,根据所述多个路由地址的路由地址前缀,在所述多个类别项中为每个路由地址前缀查找对应的类别项,按照查找到的类别项,将所述多个路由地址前缀和路由属性分别发送给与该类别项对应的选路线程。
5.根据权利要求4所述的并行处理路由更新报文的方法,其特征在于,
所述得到至少两个类别项之后,还包括:将所述类别项存储在全局路由分类库中;
所述划分线程之后,还包括:将每个邻居管理单元负责的所有邻居的信息存储到该邻居管理线程的局部邻居信息库中;
所述查找类别项之后,还包括:如果配置了策略,则将所述路由信息过入口策略,将过策略后新生成的路由属性维护到全局路由属性库;
所述选出符合预定标准的路由信息之后,还包括:将选出的符合预定标准的路由信息记录在所述全局路由分类库中,并将所述符合预定标准的路由信息发送给所述多个邻居管理单元;
所述多个邻居管理单元中的每个邻居管理单元收到所述符合预定标准的路由信息之后,还包括:对本线程的邻居束中的每个邻居,将该符合预定标准的路由信息过该邻居的局部出口策略库,将过策略后的路由信息保存在局部路由信息库中,并将过策略后的路由信息通告给邻居。
6.一种并行处理路由更新报文的方法,其特征在于,所述方法包括:
接收多个路由更新报文;
对所述多个路由更新报文进行解析,解析出路由更新报文中的路由信息,所述路由信息包括:路由地址和路由属性,并选择携带下一跳可达的路由信息;
在下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息。
7.根据权利要求6所述的并行处理路由更新报文的方法,其特征在于,所述方法还包括:
划分邻居管理线程、第一阶段选路线程、第二阶段选路线程和第三阶段选路线程;
相应地,所述方法具体包括:
当所述邻居管理线程接收到邻居发来的路由更新报文后,将所述路由更新报文发送给所述第一阶段选路线程;
所述第一阶段选路线程收到所述路由更新报文后,解析出路由地址和路由属性,查询转发表确定收到的路由信息携带的下一跳可达,并将所述下一跳可达的路由信息发送给所述第二阶段选路线程;
所述第二阶段选路线程接收到所述下一跳可达的路由信息后,在所述下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息,并将所述符合预定标准的路由信息发送给所述第三阶段选路线程;
所述第三阶段选路线程接收到所述符合预定标准的路由信息后,将所述符合预定标准的路由信息过出口策略,生成新的路由信息,并将所述新的路由信息发送给邻居管理线程。
8.根据权利要求7所述的并行处理路由更新报文的方法,其特征在于,
所述划分线程之后,还包括:将所述邻居管理线程负责的所有邻居的信息存储到邻居信息库中;
所述第一阶段选路线程解析路由更新报文的内容之后,还包括:将地址前缀和路由属性维护到路由信息库;调用路由策略库中的入口策略,对路由信息过入口策略;
所述第三阶段选路线程将第二阶段选路线程发送的符合预定标准的路由信息过每个邻居的出口策略,生成新的路由属性维护到路由信息库;并将所述第三阶段选路线程将过策略后的路由信息封装成消息发送给所述邻居管理线程,所述邻居管理线程将过策略后的路由信息通告给邻居。
9.一种并行处理路由更新报文的方法,其特征在于,所述方法包括:
接收到多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述路由信息包括:路由地址和路由属性;
根据所述多个路由地址前缀和路由属性进行选路计算,计算出多个局部符合预定标准的路由信息;
在所述多个局部符合预定标准的路由信息和已有的路由信息中进行选择,进一步选择出全局符合预定标准的路由信息。
10.根据权利要求9所述的并行处理路由更新报文的方法,其特征在于,所述方法还包括:
划分多个邻居管理和路由处理线程和一个路由同步线程,所述多个邻居管理和路由处理线程是根据邻居关系划分的,每个邻居管理和路由处理线程包括邻居管理单元和路由处理单元;
相应地,所述方法具体包括:
所述多个邻居管理单元接收到邻居发来的多个路由更新报文后,对所述多个路由更新报文进行解析,将解析出的多个路由地址和路由属性发送给对应的所述路由处理单元;
所述多个路由处理单元分别接收到对应的所述邻居管理单元发送的所述路由地址前缀和路由属性后,均在本单元内进行选路计算,计算出局部符合预定标准的路由信息,将所述局部符合预定标准的路由信息发送给所述路由同步线程;
所述路由同步线程接收到所述多个路由处理单元发送的多个局部符合预定标准的路由信息后,在所述多个局部符合预定标准的路由信息和已有的路由信息中进行选择,进一步选择出全局符合预定标准的路由信息,并将所述全局符合预定标准的路由信息发送给所述所有的邻居管理单元。
11.根据权利要求10所述的并行处理路由更新报文的方法,其特征在于,所述方法还包括:
所述划分多个邻居管理和路由处理线程和一个路由同步线程之后,还包括:将每个邻居管理和路由同步线程负责的所有邻居的信息存储在对应的局部邻居信息库中;
所述邻居管理单元将解析出的路由地址和路由属性发送给所述路由处理单元之后,还包括:如果对该邻居配置了策略,则将路由信息过局部策略库中的入口策略,将过策略后新生成的属性维护到全局路由信息库中的全局路由属性库;
所述路由处理单元接收到所述路由地址前缀和路由属性进行选路计算之后,还包括:计算出的局部符合预定标准的路由信息记录在局部路由信息库中;并将局部符合预定标准路由的地址前缀和属性发送给路由同步线程;
所述路由同步线程根据全局路由信息库中的信息,在已有的路由信息和接收到的局部符合预定标准的路由信息中选出全局符合预定标准的路由信息,并将选出的全局符合预定标准的路由信息发送给各线程的邻居管理单元;
所述邻居管理单元收到全局符合预定标准的路由信息之后,还包括:对本线程的邻居束中的每个邻居,将所述全局符合预定标准的路由信息过该邻居的局部策略库中的出口策略,生成新的路由信息,将所述新的路由信息保存在全局路由信息库中,或局部路由信息库中,并将新的路由信息通告给邻居。
12.一种并行处理路由更新报文的装置,其特征在于,所述装置包括:
分类模块,用于按照路由地址前缀对路由信息进行分类,得到多个类别项;
解析模块,用于对接收到的多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和多个路由属性;
查找模块,用于根据所述解析模块得到的多个路由地址的路由地址前缀在所述多个类别项中分别查找每个路由地址前缀对应的类别项;
计算模块,用于在查找到的类别项中进行选路计算。
13.根据权利要求12所述的并行处理路由更新报文的装置,其特征在于,
所述装置包括:划分模块,用于根据邻居关系划分多个邻居管理和前处理前缀分类线程,根据多个类别项划分多个选路线程;
所述解析模块包括:多个邻居管理和前处理前缀分类线程,用于维护邻居关系和互相通告新的路由信息,还用于将符合预定标准的路由信息过邻居的出口策略;当每个邻居管理和前处理前缀分类线程接收到邻居发来的路由更新报文后,解析出路由地址和路由属性;
所述查找模块包括:多个邻居管理和前处理前缀分类线程,每个邻居管理和前处理前缀分类线程对所述解析出路由地址和路由属性的路由信息过入口策略,将所述解析出的路由地址前缀经过分类算法,在多个类别项中查找对应的类别项,并按照查找到的类别项发送所述路由地址和路由属性;
所述计算模块具体包括:多个选路线程,用于接收所述多个邻居管理和前处理前缀分类线程发送的所述多个路由地址和路由属性,根据所述路由地址和路由属性在对应的类别项中进行选路计算,计算出符合预定标准的路由信息,并将所述符合预定标准的路由信息发送给所述划分模块中的所有邻居管理和前处理前缀分类线程;
所述划分模块中的每个邻居管理和前处理前缀分类线程,还用于将接收到的所述符合预定标准的路由信息过邻居的出口策略,生成新的路由信息,并将所述新的路由信息通告给邻居。
14.根据权利要求13所述的并行处理路由更新报文的装置,其特征在于,
所述划分模块划分的所述多个邻居管理和前处理前缀分类线程包括:多个邻居管理单元和一个前处理前缀分类单元;
所述解析模块具体包括:多个邻居管理单元,用于维护邻居关系;当每个邻居管理单元接收到邻居发来的路由更新报文后,解析出路由地址和路由属性,并发送所述解析出路由地址和路由属性的路由信息;
所述查找模块具体包括:一个前处理前缀分类单元,用于接收到所述多个邻居管理单元发送的多个路由信息后,将所述多个路由信息过入口策略,将过策略后的所述多个路由信息中路由地址前缀经过分类算法,在多个类别项中分别查找对应的类别项,并按照查找到的类别项发送所述路由地址和路由属性。
15.一种并行处理路由更新报文的装置,其特征在于,所述装置包括:
通信模块,用于接收多个路由更新报文,并发送所述多个路由更新报文;
解析模块,用于解析出多个路由更新报文中的多个路由信息,所述多个路由信息包括:多个路由地址和路由属性,并选择下一跳可达的路由信息;
选择模块,用于在所述下一跳可达的路由信息和已有的路由信息中选择到达同一地址前缀的符合预定标准的路由信息。
16.根据权利要求15所述的并行处理路由更新报文的装置,其特征在于,所述装置还包括:
划分模块,用于划分邻居管理线程、第一阶段选路线程、第二阶段选路线程和第三阶段选路线程;
所述通信模块具体包括:邻居管理线程,用于维护邻居关系,接收邻居发来的路由更新报文,对所述路由更新报文进行初步解析,并发送所述经初步解析的路由更新报文;
所述解析模块具体包括:第一阶段选路线程,用于解析邻居管理线程发送的所述经初步解析的路由更新报文,将解析的路由信息过入口策略,并查询下一跳可达的路由信息,发送所述下一跳可达的路由信息;
所述选择模块具体包括:第二阶段选路线程,用于接收所述第一阶段选路线程发送的所述下一跳可达的路由信息,并在所述下一跳可达的路由信息和已有的路由信息中,选择到达同一目的地址前缀的符合预定标准的路由信息,发送所述符合预定标准的路由信息;
所述装置还包括:过策略模块,所述过策略模块具体包括:第三阶段选路线程,用于接收符合预定标准的路由信息,将所述符合预定标准的路由信息过出口策略,生成新的路由信息,并将所述新的路由信息发送给所述接收模块中的邻居管理线程;
所述接收模块中的邻居管理线程,还用于将接收到的所述新的路由信息通告给邻居。
17.一种并行处理路由更新报文的装置,其特征在于,所述装置包括:
解析模块,用于接收多个路由更新报文后,对所述多个路由更新报文进行解析,解析出多个路由信息,所述多个路由信息包括:多个路由地址和路由属性;
计算模块,用于根据所述多个路由地址的路由地址前缀和路由属性进行选路计算,计算出多个局部符合预定标准的路由信息;
选择模块,用于在计算出的多个局部符合预定标准的路由信息和已有的路由信息中选择出全局符合预定标准的路由信息。
18.根据权利要求17所述的并行处理路由更新报文的装置,其特征在于,
所述装置还包括:划分模块,用于划分多个邻居管理和路由处理线程和一个路由同步线程;
所述多个邻居管理和路由处理线程具体包括:多个邻居管理单元和多个路由处理单元;
所述解析模块具体包括:多个邻居管理单元,用于维护邻居关系,每个邻居管理单元对接收到的路由更新报文进行解析,并发送所述解析出的路由地址和路由属性;
所述计算模块具体包括:多个路由处理单元,所述每个路由处理单元接收到对应的所述邻居管理单元发送的路由地址前缀和路由属性后,将路由信息过入口策略,在单元内部进行选路计算,计算出局部符合预定标准的路由信息,并发送所述局部符合预定标准的路由信息;
所述选择模块具体包括:一个路由同步线程,用于接收多个路由处理单元发送的到所述多个局部符合预定标准的路由信息后,在所述多个局部符合预定标准的路由信息和已有的路由信息中选择出全局符合预定标准的路由信息,并将所述全局符合预定标准的路由信息发送给所述解析模块中的所有邻居管理单元;
所述解析模块中的每个邻居管理单元,还用于将所述接收到的全局符合预定标准的路由信息过出口策略,生成新的路由信息,并将所述新的路由信息通告给邻居。
CN200810181193A 2008-11-27 2008-11-27 一种并行处理路由更新报文的方法及装置 Pending CN101741705A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810181193A CN101741705A (zh) 2008-11-27 2008-11-27 一种并行处理路由更新报文的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810181193A CN101741705A (zh) 2008-11-27 2008-11-27 一种并行处理路由更新报文的方法及装置

Publications (1)

Publication Number Publication Date
CN101741705A true CN101741705A (zh) 2010-06-16

Family

ID=42464622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810181193A Pending CN101741705A (zh) 2008-11-27 2008-11-27 一种并行处理路由更新报文的方法及装置

Country Status (1)

Country Link
CN (1) CN101741705A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102394809A (zh) * 2011-10-13 2012-03-28 中国人民解放军国防科学技术大学 一种多线程边界网关协议并行处理方法
WO2012083704A1 (zh) * 2010-12-20 2012-06-28 华为技术有限公司 一种边界网关协议路由更新方法和系统
CN103944822A (zh) * 2013-01-21 2014-07-23 杭州华三通信技术有限公司 Bgp路由通告方法和装置及bgp路由维护方法和装置
CN104065578A (zh) * 2014-06-30 2014-09-24 中国人民解放军国防科学技术大学 一种基于ason光网络的ip路由处理方法和装置
CN107888489A (zh) * 2017-12-28 2018-04-06 新华三技术有限公司 路由通告方法及装置
EP3499812A1 (en) * 2017-12-13 2019-06-19 Juniper Networks, Inc. Multi-threaded route processing
CN110515373A (zh) * 2019-09-29 2019-11-29 潍柴动力股份有限公司 Ecu数据刷写的方法及装置
WO2020088683A1 (zh) * 2018-11-02 2020-05-07 华为技术有限公司 处理路由事件记录表项的方法、网络设备和控制设备
CN111741007A (zh) * 2020-07-06 2020-10-02 桦蓥(上海)信息科技有限责任公司 一种基于网络层报文解析的金融业务实时监控系统及方法
US11356369B1 (en) 2020-03-31 2022-06-07 Juniper Networks, Inc. Border gateway protocol update packing for a distributed routing information base
CN115250257A (zh) * 2022-04-16 2022-10-28 深圳星云智联科技有限公司 应用于dpu的以太报文处理方法及装置
US11502946B2 (en) 2020-03-10 2022-11-15 Juniper Networks, Inc. Distributed label assignment for labeled routing protocol routes
US11561823B1 (en) 2020-05-12 2023-01-24 Juniper Networks, Inc. Lockless management of immutable objects by multi-threaded processes using multiple counters
US11762710B2 (en) 2020-06-23 2023-09-19 Juniper Networks, Inc. Multithreaded route processing for routing information display

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012083704A1 (zh) * 2010-12-20 2012-06-28 华为技术有限公司 一种边界网关协议路由更新方法和系统
CN102394809A (zh) * 2011-10-13 2012-03-28 中国人民解放军国防科学技术大学 一种多线程边界网关协议并行处理方法
CN102394809B (zh) * 2011-10-13 2014-04-16 中国人民解放军国防科学技术大学 一种多线程边界网关协议并行处理方法
CN103944822A (zh) * 2013-01-21 2014-07-23 杭州华三通信技术有限公司 Bgp路由通告方法和装置及bgp路由维护方法和装置
WO2014110997A1 (en) * 2013-01-21 2014-07-24 Hangzhou H3C Technologies Co., Ltd. Border gateway protocol (bgp) routes advertisement
CN104065578B (zh) * 2014-06-30 2017-04-19 中国人民解放军国防科学技术大学 一种基于ason光网络的ip路由处理方法和装置
CN104065578A (zh) * 2014-06-30 2014-09-24 中国人民解放军国防科学技术大学 一种基于ason光网络的ip路由处理方法和装置
EP3499812A1 (en) * 2017-12-13 2019-06-19 Juniper Networks, Inc. Multi-threaded route processing
CN109921990A (zh) * 2017-12-13 2019-06-21 丛林网络公司 多线程路由处理
CN109921990B (zh) * 2017-12-13 2021-08-20 瞻博网络公司 多线程路由处理
US10642650B2 (en) * 2017-12-13 2020-05-05 Juniper Networks, Inc. Multi-threaded route processing
CN107888489B (zh) * 2017-12-28 2020-08-11 新华三技术有限公司 路由通告方法及装置
CN107888489A (zh) * 2017-12-28 2018-04-06 新华三技术有限公司 路由通告方法及装置
WO2020088683A1 (zh) * 2018-11-02 2020-05-07 华为技术有限公司 处理路由事件记录表项的方法、网络设备和控制设备
US11882037B2 (en) 2018-11-02 2024-01-23 Huawei Technologies Co., Ltd. Entry processing method, network device, and control device
CN110515373A (zh) * 2019-09-29 2019-11-29 潍柴动力股份有限公司 Ecu数据刷写的方法及装置
US11502946B2 (en) 2020-03-10 2022-11-15 Juniper Networks, Inc. Distributed label assignment for labeled routing protocol routes
US11909632B2 (en) 2020-03-10 2024-02-20 Juniper Networks, Inc. Distributed label assignment for labeled routing protocol routes
US11356369B1 (en) 2020-03-31 2022-06-07 Juniper Networks, Inc. Border gateway protocol update packing for a distributed routing information base
US11561823B1 (en) 2020-05-12 2023-01-24 Juniper Networks, Inc. Lockless management of immutable objects by multi-threaded processes using multiple counters
US11762710B2 (en) 2020-06-23 2023-09-19 Juniper Networks, Inc. Multithreaded route processing for routing information display
CN111741007A (zh) * 2020-07-06 2020-10-02 桦蓥(上海)信息科技有限责任公司 一种基于网络层报文解析的金融业务实时监控系统及方法
CN115250257A (zh) * 2022-04-16 2022-10-28 深圳星云智联科技有限公司 应用于dpu的以太报文处理方法及装置
CN115250257B (zh) * 2022-04-16 2024-01-05 深圳星云智联科技有限公司 应用于dpu的以太报文处理方法及装置

Similar Documents

Publication Publication Date Title
CN101741705A (zh) 一种并行处理路由更新报文的方法及装置
CN104050041B (zh) 用于在处理器中调度规则匹配的调度方法和装置
Sheu et al. Wildcard rules caching and cache replacement algorithms in software-defined networking
Zhang et al. Virtual network embedding with opportunistic resource sharing
Li et al. Efficient multi-tenant virtual machine allocation in cloud data centers
Ghaznavi et al. Service function chaining simplified
Fang et al. Parallel stream processing against workload skewness and variance
CN100583812C (zh) 使用最具体的过滤器匹配和传输层共享进行两级分组分类的方法和装置
CN102282810B (zh) 负载平衡
CN104820717B (zh) 一种海量小文件存储及管理方法和系统
Huang et al. Green datapath for TCAM-based software-defined networks
CN103825837A (zh) 一种节点负载的分布式cdn全局调度的方法
Delling et al. Faster customization of road networks
Qu et al. Particle swarm optimization for the Steiner tree in graph and delay-constrained multicast routing problems
CN103354522A (zh) 一种多级流表查找方法和装置
CN110572274A (zh) 一种优化边缘计算节点部署和管理的命名数据网络方法
CN108710629B (zh) 基于命名数据网络的Top-k查询方法及系统
US20160274951A1 (en) Virtual middle box management system, virtual middle box management method, and virtual middle box management program
US9794138B2 (en) Computer system, method, and program
Nguyen et al. An intelligent parallel algorithm for online virtual network embedding
Zheng et al. Link mapping-oriented ant colony system for virtual network embedding
CN104125146B (zh) 一种业务处理方法及装置
CN108737455B (zh) 网络业务识别装置及方法
Wan et al. Adaptive batch update in TCAM: How collective optimization beats individual ones
Ren et al. On efficient delay-aware multisource multicasting in NFV-Enabled softwarized networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20100616