CN105207908B - 一种报文处理方法及*** - Google Patents
一种报文处理方法及*** Download PDFInfo
- Publication number
- CN105207908B CN105207908B CN201510640502.5A CN201510640502A CN105207908B CN 105207908 B CN105207908 B CN 105207908B CN 201510640502 A CN201510640502 A CN 201510640502A CN 105207908 B CN105207908 B CN 105207908B
- Authority
- CN
- China
- Prior art keywords
- message
- network
- path
- management system
- network equipment
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 claims description 26
- 230000001360 synchronised effect Effects 0.000 claims description 12
- 230000000875 corresponding effect Effects 0.000 description 56
- 230000008859 change Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000016571 aggressive behavior Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 239000006185 dispersion Substances 0.000 description 3
- 230000009931 harmful effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种报文处理方法及***,该***包括网络设备、网络设备管理***及SDN控制器,SDN控制器分别与M个网络设备管理***连接,每个网络设备管理***分别与N个网络设备连接,M和N均为正整数;报文处理方法应用于报文处理***,包括:网络设备接收报文,当报文为数据报文首包时,将其发送至对应网络设备管理***;网络设备管理***接收由对应网络设备发送的数据报文首包,并通过查找本地路径数据库确定其转发路径,将数据报文首包按照转发路径进行转发;本地路径数据库中存储有由SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径。由此,降低了SDN控制器的性能消耗,有利于提高其控制的网络规模。
Description
技术领域
本发明涉及SDN技术领域,更具体地说,涉及一种报文处理方法及***。
背景技术
随着SDN技术的发展,如何提高SDN控制器控制的网络规模变得越来越重要;而当前影响SDN控制器控制网络规模的能力的首要因素是报文的处理,特别是需要SDN控制器给出转发路径的数据报文的首包(简称数据报文首包)的处理。
而现有技术中,对于数据报文首包的处理,通常是由SDN控制器计算出与之对应的转发路径,并按照转发路径对其进行转发。但是,发明人发现,这种方式对于SDN控制器的性能消耗较大,不利于提高SDN控制器控制的网络规模。
综上所述,现有技术中存在SDN控制器的性能消耗较大,不利于提高SDN控制器控制的网络规模的问题。
发明内容
本发明的目的是提供一种报文处理方法及***,以解决现有技术中存在的SDN控制器的性能消耗较大,不利于提高SDN控制器控制的网络规模的问题。
为了实现上述目的,本发明提供如下技术方案:
一种报文处理方法,应用于报文处理***,该报文处理***包括网络设备、网络设备管理***及SDN控制器,所述SDN控制器分别与M个所述网络设备管理***连接,每个所述网络设备管理***分别与N个网络设备连接,M和N均为正整数;所述报文处理方法包括:
所述网络设备接收报文,并当判断出所述报文的类型为数据报文首包时,将所述报文发送至对应的网络设备管理***,其中,所述数据报文首包为所述网络设备未知其转发路径的数据报文;
所述网络设备管理***接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定所述数据报文首包的转发路径,将所述数据报文首包按照所述转发路径进行转发;所述本地路径数据库中存储有由所述SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径。
优选的,所述方法还包括:
当所述网络设备判断出所述报文的类型为不需所述SDN控制器参与处理的报文时,所述网络设备将所述报文丢弃。
优选的,所述方法还包括:
当所述网络设备判断出所述报文的类型为需要所述SDN控制器进行处理的协议报文时,所述网络设备通过对应的网络设备管理***将所述协议报文发送至所述SDN控制器,由所述SDN控制器对所述协议报文进行处理。
优选的,所述网络设备将所述协议报文发送至对应的网络设备管理***之后,还包括:
接收到所述协议报文的网络设备管理***对所述协议报文进行过滤,得到合法的协议报文。
优选的,所述方法还包括:
当所述网络设备接收到的报文包括数据报文及协议报文时,按照预先确定的优先级,按照优先级由高到低的顺序将对应的报文发送至对应的网络设备管理***。
优选的,所述网络设备接收报文,包括:
所述网络设备按照预先设定的带宽接收预设量的报文。
优选的,所述网络设备管理***将所述数据报文首包按照所述转发路径进行转发,包括:
所述网络设备管理***通过对应的网络设备将所述数据报文首包按照所述转发路径进行转发;
所述网络设备将所述数据报文首包对应的数据报文的指定属性及所述转发路径以转发表项的方式进行存储。
优选的,所述方法还包括:
当所述网络设备判断出所述报文的类型为数据报文且并不是数据报文首包时,按照自身存储的转发表项对所述数据报文进行转发。
优选的,所述方法还包括:
按照预设规则对所述网络设备存储的转发表项进行清除。
优选的,所述按照预设规则对所述网络设备存储的转发表项进行清除,包括:
确定第一预设时间段内未被使用的转发表项,将其进行清除;
或者,每隔第二预设时间段则对所述转发表项中的预设概率的转发表项进行清除。
优选的,所述每隔第二预设时间段则对所述转发表项中的预设概率的转发表项进行清除,包括:
每隔第二预设时间段则对所述转发表项中的N分之一的转发表项进行清除,N为大于1的整数。
优选的,所述SDN控制器预先计算并发送对应虚拟网络中虚拟机之间的路径,包括:
当有新的虚拟机加入所述虚拟网络时,确定该新的虚拟机为目标虚拟机;
所述SDN控制器通过与所述虚拟网络对应的服务编排器获知所述目标虚拟机的mac地址,通过所述目标虚拟机发送的ARP报文获知所述目标虚拟机的ip地址;
根据所述目标虚拟机的mac地址及ip地址,计算出该虚拟网络中其他虚拟机到所述目标虚拟机的路径;
将计算出的该虚拟网络中其他虚拟机到所述目标虚拟机的路径同步给与该路径对应的网络设备管理***的本地路径数据库。
优选的,所述方法还包括:
所述SDN控制器将计算出的对应虚拟网络中虚拟机之间的路径进行存储,并且每隔第三预设时间段,则将自身存储的路径同步给对应的网络设备管理***。
一种报文处理***,包括网络设备、网络设备管理***及SDN控制器,其中,SDN控制器分别与M个所述网络设备管理***连接,每个所述网络设备管理***分别与N个网络设备连接,M和N均为正整数;
所述网络设备,用于接收报文,并当所述报文的类型为数据报文首包时,将所述报文发送至对应的网络设备管理***;
所述网络设备管理***,用于接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定所述数据报文首包的转发路径,将所述数据报文首包按照所述转发路径进行转发;
所述SDN控制器,用于预先计算对应的虚拟网络中的虚拟机之间的路径,并将所述路径发送至所述网络设备管理***的本地路径数据库。
本发明提供的一种报文处理方法及***,其中,报文处理方法,应用于报文处理***,该报文处理***包括网络设备、网络设备管理***及SDN控制器,所述SDN控制器分别与M个所述网络设备管理***连接,每个所述网络设备管理***分别与N个网络设备连接,M和N均为正整数;所述报文处理方法包括:所述网络设备接收报文,并当判断出所述报文的类型为数据报文首包时,将所述报文发送至对应的网络设备管理***;所述网络设备管理***接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定所述数据报文首包的转发路径,将所述数据报文首包按照所述转发路径进行转发;所述本地路径数据库中存储有由所述SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径。与现有技术相比,本发明提供的报文处理方法及报文处理***中,对于报文数据首包采用由SDN控制器提前计算出对应虚拟网络中虚拟机之间的路径,而由网络设备管理***由路径中确定出接收到的数据报文首包的转发路径,进而对其进行转发,由此,通过SDN控制器对路径的提前计算及将对报文数据首包的响应分配至网络设备管理***,即通过提前计算路径及分散响应报文的方式,大幅度降低了上送至SDN控制器的报文数量,降低了SDN控制器的性能消耗,有利于提高SDN控制器控制的网络规模。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种报文处理方法的流程图;
图2为本发明实施例提供的一种报文处理方法中SDN控制器预先计算并发送对应虚拟网络中虚拟机之间的路径的流程图;
图3为本发明实施例提供的一种报文处理***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种报文处理方法的流程图,报文处理方法应用于报文处理***,该报文处理***包括网络设备、网络设备管理***及SDN控制器,SDN控制器分别与M个网络设备管理***连接,每个网络设备管理***分别与N个网络设备连接,M和N均为正整数;报文处理方法包括:
S11:网络设备接收报文,并当判断出报文的类型为数据报文首包时,将报文发送至对应的网络设备管理***,其中,数据报文首包为网络设备未知其转发路径的数据报文。
数据报文是一个数据块,包括需要传送的数据,也包括必要的附加信息(如源地址,源端口,数据长度,所用协议,加密等),而数据报文首包可以为网络设备接收到的同一类型的数据报文中的第一个数据报文,也可以为虚拟网络中虚拟机之间的路径变化后,且该路径变化涉及到网络设备时,该网络设备接收到的同一类型的数据报文中的第一个数据报文,而这两种数据报文均是网络设备未知其转发路径的数据报文。其中,同一类型的报文包括发送报文的设备相同及报文的相关属性相同等特征。简而言之,数据报文首包为网络设备未知其转发路径而无法将其进行转发的数据报文,因此,需要将数据报文首包上传至网络设备管理***,由网络设备管理***及SDN控制器来完成对于数据报文首包的转发。
S12:网络设备管理***接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定数据报文首包的转发路径,将数据报文首包按照转发路径进行转发;本地路径数据库中存储有由SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径。
其中,SDN控制器预先计算出对应虚拟网络中虚拟机之间的路径,并将其发送至网络设备管理***,网络设备管理***将上述虚拟机之间的路径存储至本地路径数据库中,由此,可以在本地路径数据库中查找与数据报文首包对应的转发路径,或者说转发规则,进而按照该转发路径将数据报文首包进行转发。
本发明实施例提供的一种报文处理方法中,对于报文数据首包采用由SDN控制器提前计算出对应虚拟网络中虚拟机之间的路径,而由网络设备管理***由路径中确定出接收到的数据报文首包的转发路径,进而对其进行转发,由此,通过SDN控制器对路径的提前计算及将对报文数据首包的响应分配至网络设备管理***,即通过提前计算路径及分散响应报文的方式,大幅度降低了上送至SDN控制器的报文数量,降低了SDN控制器的性能消耗,有利于提高SDN控制器控制的网络规模。
需要说明的是,SDN(Software Defined Network,,软件定义网络)是一种新型网络创新架构,是网络虚拟化的一种实现方式,其核心技术,即SDN技术通过将网络设备控制面与数据面分离开来,从而控制权的管理无需依赖底层网络设备,屏蔽了来自底层网络设备的差异,而用户可以自定义任何希望实现的网络路由和传输规则策略,从而更加灵活和智能。SDN控制器即为与SDN技术相对应的控制器,其可以是一台物理服务器或者是一个虚拟机或者是一组虚拟机的集群或者是一组物理服务器的集群等。而网络设备可以是交换机或者网卡等,如果网络设备是交换机,那么网络设备管理***则是交换机上的管理CPU、内存及硬盘组成的交换机管理***;如果网络设备是网卡,那么网络设备管理***就是能配置网卡的CPU、内存及硬盘组成的服务器操作***。另外,SDN控制器可以控制成千上万的网络设备。
上述实施例提供的一种报文处理方法,还可以包括:
当网络设备判断出报文的类型为不需SDN控制器参与处理的报文时,网络设备将报文丢弃。
需要说明的是,对于不需SDN控制器参与处理的报文即使将其发送至SDN控制器,也会被SDN控制器丢弃,因此,在硬件层面,即网络设备上直接将其丢弃,能够减少上送至SDN控制器的报文数量,进一步降低了SDN控制器的性能消耗,有利于提高SDN控制器控制的网络规模。
另外,上述实施例提供的一种报文处理方法,还可以包括:
当网络设备判断出报文的类型为需要SDN控制器进行处理的协议报文时,网络设备通过对应的网络设备管理***将协议报文发送至SDN控制器,由SDN控制器对协议报文进行处理。
其中,协议报文即各种网络协议报文,对于需要SDN控制器进行处理的协议报文,则由网络设备通过网络设备管理***将其传送至SDN控制器,以供SDN控制器对其进行处理。
结合上述技术特征可见,本发明的一个具体实施方式可以将网络设备接收到的报文分为三个层次进行处理:对于不需要SDN控制器参与处理的报文直接在硬件层次,即网络设备上丢弃;对于数据报文首包,由网络设备管理***根据SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径确定其转发路径,进而对其进行转发;对于需要SDN控制器处理的协议报文,则由网络设备将其通过网络设备管理***传送至SDN控制器,以供SDN控制器进行处理。由此,分级分类的处理报文,大幅降低了上送给SDN控制器的报文数量,进而大幅提高了SDN控制器的报文处理能力,大幅提高SDN控制器控制的网络规模。
上述实施例提供的一种报文处理方法中,网络设备将协议报文发送至对应的网络设备管理***之后,还可以包括:
接收到协议报文的网络设备管理***对协议报文进行过滤,得到合法的协议报文。
因为网络设备不具备对协议报文的合法性进行分析的能力,因此,需要网络设备管理***对于协议报文的合法性进行分析,而协议报文的合法性的具体标准可以根据实际需要进行确定,如判断报文是否完整,如果完整则为合法报文,否则,则为不合法报文,又如确定报文的某一类型为不合法的报文,其他则为合法报文,等。通过过滤掉不合法的报文,能够避免非法报文对于SDN控制器造成不良影响,进一步减少了上送至SDN控制器的报文数量,有利于提高SDN控制器控制的网络规模。
另外,上述实施例提供的一种报文处理方法,还可以包括:
当网络设备接收到的报文包括数据报文及协议报文时,按照预先确定的优先级,按照优先级由高到低的顺序将对应的报文发送至对应的网络设备管理***。
对于不同类型的报文的优先级的设定可以根据实际需要进行设定,通常将协议报文的优先级设置成高于数据报文的优先级,通过对于不同报文类型优先级的设定,能够优先处理优先级较高的报文,符合实际需要,保证了对于报文处理的顺利实现。
并且,网络设备接收报文,具体可以为网络设备按照预先设定的带宽接收预设量的报文。对于带宽的具体设定可以根据实际需要进行确定。限制网络设备接收报文的带宽主要是为了防止报文攻击造成的不良影响。其中,报文攻击分为IP地址攻击及IP报文可选段攻击:1、IP地址攻击,攻击报文拥有与正常报文相同的源IP地址和目的IP地址,它能迷惑受害主机操作***,并使其消耗大量的处理能力;2、IP报文可选段攻击,攻击报文随机选取IP报文的可选段并将其所有的服务比特值设为1,因此,受害***不得不花费额外的处理时间来分析资料包,当发动攻击的代理足够多时,受害***将失去处理能力。可见,报文攻击造成最主要的影响就是消耗SDN控制器的性能及浪费时间,甚至是使得报文处理***无法正常工作,因此,设置网络设备可接收报文的带宽,能够减小报文攻击造成的不良影响。如网络设备实际可接收报文的带宽为a,而预先设定的带宽为b,b小于a,这样不管带宽b内接收的报文是否构成报文攻击,还留有a-b的部分带宽用于处理正常报文,避免架构的瘫痪。
而网络设备管理***将数据报文首包按照转发路径进行转发,可以包括:
网络设备管理***通过对应的网络设备将数据报文首包按照转发路径进行转发;
网络设备将数据报文首包对应的数据报文的指定属性及转发路径以转发表项的方式进行存储。
其中,指定属性可以根据实际需要进行确定。
通过网络设备将数据报文首包进行转发,并由网络设备将数据报文首包对应的同一类型的数据报文的指定属性及转发路径以转发表项的方式进行存储,由此,在之后接收到的与数据报文首包同一类型的数据报文时,则无需再将其发送至网络设备管理***,而是由网络设备根据转发表项直接对数据报文进行转发。即,当网络设备判断出报文的类型为数据报文且并不是数据报文首包时,按照自身存储的转发表项对数据报文进行转发。由此,省掉了将数据报文上送至网络设备管理***的步骤,能够使得对于报文的处理速度更快,更降低了对于整个报文处理***的性能。
需要说明的是,为了避免网络设备中的转发表项超过网络设备的存储空间,即网络设备无法再提供存储空间以存储新的转发表项时,需要按照预设规则对网络设备存储的转发表项进行清除。而预设原则的设定可以根据实际需要进行确定,可以是采用硬件老化的机制清除短时间内不使用的表项,具体可以为:确定第一预设时间段内未被使用的转发表项,将其进行清除;其中,第一预设时间段可以根据实际需要进行确定。也可以是定期按序清除其部分转发表项,具体可以为:每隔第二预设时间段则对转发表项中的预设概率的转发表项进行清除。其中,预设概率可以根据实际需要进行确定,具体可以是N分之一,N为大于1的正整数,即,每隔第二预设时间段则对转发表项中的预设概率的转发表项进行清除,包括:每隔第二预设时间段则对转发表项中的N分之一的转发表项进行清除,N为大于1的整数。而具体清除哪部分,可以按照先入先出原则清除最早存储至网络设备的预设概率的转发表项,也可以按照其他根据实际需要设定的原则。如果被清除的转发表项正在使用,那么继续按照上述实施例中公开的处理数据报文首包的方式对报文进行处理,此时对应的转发表项会被回填回去,如果被清除的转发表项未被使用,则将该转发表项资源释放出去。具体可以通过设置定时器来完成,即,通过设置定时器,使得每经过第一预设时间段或者第二预设时间段则完成相应动作,其中,第一预设时间段和第二预设时间段可以相同,也可以不同。
通过定时清除网络设备中存储的转发表项,能够保证在有新的转发表项需要存储时有足够的存储空间,避免了不被使用的转发表项对于存储空间的占用造成的浪费,增强了整个报文处理***的健壮性。
本发明实施例提供的一种报文处理方法中,所述SDN控制器预先计算并发送对应虚拟网络中虚拟机之间的路径,包括在刚形成虚拟网络时计算并发送虚拟网络中虚拟机之间的路径,也包括每次虚拟网络中有新加入的虚拟机或者有退出的虚拟机时对于虚拟网络内虚拟机之间的路径。其中,如图2所示,每次虚拟网络内有新加入的虚拟机时,SDN控制器预先计算并发送对应虚拟网络中虚拟机之间的路径,包括:
S21:当有新的虚拟机加入虚拟网络时,确定该新的虚拟机为目标虚拟机。
S22:SDN控制器通过与虚拟网络对应的服务编排器获知目标虚拟机的mac地址,通过目标虚拟机发送的ARP报文获知目标虚拟机的ip地址。
当有新的虚拟机加入虚拟网络时,服务编排器通知SDN控制器目标虚拟机加入虚拟网络,SDN控制器由此获得目标虚拟机的mac地址、位置信息、所在虚拟网络信息等。而且,每个新加入的虚拟机,会主动发送ARP报文至SDN控制器,由此,SDN控制器能够通过ARP报文获知目标虚拟机的ip地址。其中,ARP(Address Resolution Protocol,地址解析协议),是根据IP地址获取物理地址的一个TCP/IP协议,而ARP报文则是与该协议对应的报文。
S23:根据目标虚拟机的mac地址及ip地址,计算出该虚拟网络中其他虚拟机到目标虚拟机的路径。
其中,计算其他虚拟机到目标虚拟机的路径时,其他虚拟机的范围还可以是同一租户下的虚拟网络内的其他虚拟机,同一租户下的虚拟网络内的虚拟机均可以互相访问,而不同租户下的虚拟网络内的虚拟机则不能互相访问。
S24:将计算出的该虚拟网络中其他虚拟机到目标虚拟机的路径同步给与该路径对应的网络设备管理***的本地路径数据库。
需要说明的是,SDN控制器可以将计算出的虚拟网络中虚拟机之间的路径存储至全局数据库中,由此,当每次虚拟网络内有虚拟机退出该虚拟网络时,需要将全局数据库中与退出的虚拟机对应的路径进行清除,并将全部数据库中的路径同步给本地路径数据库。
由此,每次有新的虚拟机加入对应虚拟网络,均由SDN控制器计算出其他虚拟机到目标虚拟机之间的路径,并将该路径同步给本地路径数据库,每次有虚拟机提出对应虚拟网络,则将与虚拟机对应的路径进行清除,并同步给本地路径数据库中。避免了网络设备管理***将已经不存在的路径作为数据报文首包的转发路径,导致其转发失败的情况的发生,保证了网络设备管理***通过本地路径数据库确定数据报文首包的转发路径时的准确性,提高了整个数据处理***的健壮性。
另外,每次有虚拟机加入或者退出对应虚拟网络时,SDN控制器还可以确定发生变更的网络设备之间的路径,进而确定与变更的路径相关联的网络芯片管理***,进一步将变更的路径同步给与变更的路径相关联的网络芯片管理***,避免了大量数据同步造成的资源浪费,而只需将特定路径同步给特定网络设备管理***即可。
并且,SDN控制器还可以将计算出的对应虚拟网络中虚拟机之间的路径进行存储之后,每隔第三预设时间段,则将自身存储的路径同步给对应的网络设备管理***。
其中,第三预设时间段可以根据实际需要进行确定,能够通过设定一个定时器来实现。而定期将SDN控制器中存储的路径同步给对应的网络设备管理***,进一步保证了SDN控制器中存储的路径与网络设备管理***中存储的路径的一致性,避免其他异常影响到SDN控制器中存储的路径使之发生改变时而网络设备管理***中的路径未随之改变的情况发生,进一步保证了网络设备管理***通过本地路径数据库确定数据报文首包的转发路径时的准确性,提高了整个数据处理***的健壮性。
与上述报文处理方法相对应,本发明实施例还提供了一种报文处理***,可以包括网络设备、网络设备管理***及SDN控制器,其中,SDN控制器分别与M个网络设备管理***连接,每个网络设备管理***分别与N个网络设备连接,M和N均为正整数;
网络设备,用于接收报文,并当报文的类型为数据报文首包时,将报文发送至对应的网络设备管理***;
网络设备管理***,用于接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定数据报文首包的转发路径,将数据报文首包按照转发路径进行转发;
SDN控制器,用于预先计算对应的虚拟网络中的虚拟机之间的路径,并将路径发送至网络设备管理***的本地路径数据库。
其中,M和N的具体数值可以根据实际需要进行确定,当M和N均为1时,本发明实施例提供的一种报文处理***的结构示意图如图3所示,包括网络设备11、网络设备管理***12及SDN控制器13。
本发明实施例提供的一种报文处理架构中,对于报文数据首包采用由SDN控制器提前计算出对应虚拟网络中虚拟机之间的路径,而由网络设备管理***由路径中确定出接收到的数据报文首包的转发路径,进而对其进行转发,由此,通过SDN控制器对路径的提前计算及将对报文数据首包的响应分配至网络设备管理***,即通过提前计算路径及分散响应报文的方式,大幅度降低了上送至SDN控制器的报文数量,降低了SDN控制器的性能消耗,有利于提高SDN控制器控制的网络规模。
需要说明的是,对于上述方法实施例中公开的全部技术特征均可以通过在报文处理***中的网络设备、网络设备管理***及SDN控制器中设置相应的规则或者相应的模块进行实现,而设置相应规则或者相应模块可以在初始化时进行。即,该报文处理***可以在初始化时通过在网络设备、网络设备管理***及SDN控制器中设置相应的规则或者相应的模块实现上述方法实施例中公开的全部技术特征。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种报文处理方法,其特征在于,应用于报文处理***,该报文处理***包括网络设备、网络设备管理***及SDN控制器,所述SDN控制器分别与M个所述网络设备管理***连接,每个所述网络设备管理***分别与N个网络设备连接,M和N均为正整数;所述报文处理方法包括:
所述网络设备接收报文,并当判断出所述报文的类型为数据报文首包时,将所述报文发送至对应的网络设备管理***,其中,所述数据报文首包为所述网络设备未知其转发路径的数据报文;
所述网络设备管理***接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定所述数据报文首包的转发路径,将所述数据报文首包按照所述转发路径进行转发;所述本地路径数据库中存储有由所述SDN控制器预先计算并发送的对应虚拟网络中虚拟机之间的路径;
所述方法还包括:
当所述网络设备判断出所述报文的类型为数据报文且并不是数据报文首包时,按照自身存储的转发表项对所述数据报文进行转发。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述网络设备判断出所述报文的类型为不需所述SDN控制器参与处理的报文时,所述网络设备将所述报文丢弃。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述网络设备判断出所述报文的类型为需要所述SDN控制器进行处理的协议报文时,所述网络设备通过对应的网络设备管理***将所述协议报文发送至所述SDN控制器,由所述SDN控制器对所述协议报文进行处理。
4.根据权利要求3所述的方法,其特征在于,所述网络设备将所述协议报文发送至对应的网络设备管理***之后,还包括:
接收到所述协议报文的网络设备管理***对所述协议报文进行过滤,得到合法的协议报文。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述网络设备接收到的报文包括数据报文及协议报文时,按照预先确定的优先级,按照优先级由高到低的顺序将对应的报文发送至对应的网络设备管理***。
6.根据权利要求1所述的方法,其特征在于,所述网络设备接收报文,包括:
所述网络设备按照预先设定的带宽接收预设量的报文。
7.根据权利要求1所述的方法,其特征在于,所述网络设备管理***将所述数据报文首包按照所述转发路径进行转发,包括:
所述网络设备管理***通过对应的网络设备将所述数据报文首包按照所述转发路径进行转发;
所述网络设备将所述数据报文首包对应的数据报文的指定属性及所述转发路径以转发表项的方式进行存储。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
按照预设规则对所述网络设备存储的转发表项进行清除。
9.根据权利要求8所述的方法,其特征在于,所述按照预设规则对所述网络设备存储的转发表项进行清除,包括:
确定第一预设时间段内未被使用的转发表项,将其进行清除;
或者,每隔第二预设时间段则对所述转发表项中的预设概率的转发表项进行清除。
10.根据权利要求9所述的方法,其特征在于,所述每隔第二预设时间段则对所述转发表项中的预设概率的转发表项进行清除,包括:
每隔第二预设时间段则对所述转发表项中的N分之一的转发表项进行清除,N为大于1的整数。
11.根据权利要求1至10任一项所述的方法,其特征在于,所述SDN控制器预先计算并发送对应虚拟网络中虚拟机之间的路径,包括:
当有新的虚拟机加入所述虚拟网络时,确定该新的虚拟机为目标虚拟机;
所述SDN控制器通过与所述虚拟网络对应的服务编排器获知所述目标虚拟机的mac地址,通过所述目标虚拟机发送的ARP报文获知所述目标虚拟机的ip地址;
根据所述目标虚拟机的mac地址及ip地址,计算出该虚拟网络中其他虚拟机到所述目标虚拟机的路径;
将计算出的该虚拟网络中其他虚拟机到所述目标虚拟机的路径同步给与该路径对应的网络设备管理***的本地路径数据库。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
所述SDN控制器将计算出的对应虚拟网络中虚拟机之间的路径进行存储,并且每隔第三预设时间段,则将自身存储的路径同步给对应的网络设备管理***。
13.一种报文处理***,其特征在于,包括网络设备、网络设备管理***及SDN控制器,其中,SDN控制器分别与M个所述网络设备管理***连接,每个所述网络设备管理***分别与N个网络设备连接,M和N均为正整数;
所述网络设备,用于接收报文,并当所述报文的类型为数据报文首包时,将所述报文发送至对应的网络设备管理***,当所述报文的类型为数据报文且并不是数据报文首包时,按照自身存储的转发表项对所述数据报文进行转发;
所述网络设备管理***,用于接收由对应的网络设备发送的数据报文首包,并通过查找本地路径数据库确定所述数据报文首包的转发路径,将所述数据报文首包按照所述转发路径进行转发;
所述SDN控制器,用于预先计算对应的虚拟网络中的虚拟机之间的路径,并将所述路径发送至所述网络设备管理***的本地路径数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510640502.5A CN105207908B (zh) | 2015-09-30 | 2015-09-30 | 一种报文处理方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510640502.5A CN105207908B (zh) | 2015-09-30 | 2015-09-30 | 一种报文处理方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105207908A CN105207908A (zh) | 2015-12-30 |
CN105207908B true CN105207908B (zh) | 2018-09-18 |
Family
ID=54955351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510640502.5A Active CN105207908B (zh) | 2015-09-30 | 2015-09-30 | 一种报文处理方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105207908B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107800628B (zh) * | 2016-09-07 | 2020-12-01 | 华为技术有限公司 | 用在软件定义网络中的数据转发装置及数据转发方法 |
CN106559323A (zh) * | 2016-10-28 | 2017-04-05 | 上海斐讯数据通信技术有限公司 | 一种sdn设备首包上送的方法和装置 |
CN107196798A (zh) * | 2017-05-26 | 2017-09-22 | 烽火通信科技股份有限公司 | 电信管理网中的网络设备管理***及其方法 |
CN109257222B (zh) * | 2018-09-27 | 2019-11-15 | 中国联合网络通信有限公司广东省分公司 | 一种基于业务编排器的城域网网络架构 |
CN111030931B (zh) * | 2019-12-17 | 2021-07-20 | 苏州浪潮智能科技有限公司 | 一种跨网段转发优先级标签的方法和设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067295A (zh) * | 2013-01-04 | 2013-04-24 | 华为技术有限公司 | 业务传输的方法、装置与*** |
CN103209121A (zh) * | 2013-03-15 | 2013-07-17 | 中兴通讯股份有限公司 | 基于开放流协议的控制面设备的发现处理方法及装置 |
CN103650435A (zh) * | 2013-08-14 | 2014-03-19 | 华为技术有限公司 | 路由流量调整方法、装置及控制器 |
CN104836753A (zh) * | 2015-03-27 | 2015-08-12 | 清华大学 | Sdn数据平面带状态交换设备、***及转发处理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8942226B2 (en) * | 2012-10-05 | 2015-01-27 | Ciena Corporation | Software defined networking systems and methods via a path computation and control element |
-
2015
- 2015-09-30 CN CN201510640502.5A patent/CN105207908B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067295A (zh) * | 2013-01-04 | 2013-04-24 | 华为技术有限公司 | 业务传输的方法、装置与*** |
CN103209121A (zh) * | 2013-03-15 | 2013-07-17 | 中兴通讯股份有限公司 | 基于开放流协议的控制面设备的发现处理方法及装置 |
CN103650435A (zh) * | 2013-08-14 | 2014-03-19 | 华为技术有限公司 | 路由流量调整方法、装置及控制器 |
CN104836753A (zh) * | 2015-03-27 | 2015-08-12 | 清华大学 | Sdn数据平面带状态交换设备、***及转发处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105207908A (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105207908B (zh) | 一种报文处理方法及*** | |
CN101316236B (zh) | Vrrp备份组负载分担方法及路由器 | |
CN102047619B (zh) | 用于对异常分组的慢路径处理进行动态速率限制的方法、***和计算机可读介质 | |
JP2011170656A (ja) | 中継装置、仮想マシンシステム及び中継方法 | |
CN105556916B (zh) | 网络流的信息统计方法和装置 | |
CN104219069B (zh) | 访问频率控制方法、装置及控制*** | |
CN101616083A (zh) | 一种报文转发方法和装置 | |
US9954771B1 (en) | Packet distribution with prefetch in a parallel processing network device | |
CN113364809B (zh) | 分流网络数据以执行负载平衡 | |
CN109905251A (zh) | 网络管理方法、装置、电子设备和存储介质 | |
CN104580107B (zh) | 恶意攻击检测方法及控制器 | |
JP5800032B2 (ja) | 計算機システム,通信制御装置及び計算機システムの制御方法 | |
CN111901236B (zh) | 一种利用动态路由优化openstack云网络的方法及*** | |
JP5754267B2 (ja) | 中継装置及び中継制御方法 | |
Li et al. | Towards the tradeoffs in designing data center network architectures | |
CN110798412A (zh) | 组播业务处理方法、装置、云平台、设备及可读存储介质 | |
CN107948157A (zh) | 一种报文处理方法及装置 | |
EP3266172A1 (en) | Application of network flow rule action based on packet counter | |
CN105700940A (zh) | 一种调度器及调度器的动态复用方法 | |
CN110012076B (zh) | 一种连接建立方法及装置 | |
CN111092819B (zh) | 一种收发组播业务报文的方法及设备 | |
JP2010098360A (ja) | ループバック装置及びミラーリング方法 | |
JP5251716B2 (ja) | パケット中継装置 | |
CN106453367A (zh) | 一种基于sdn的防地址扫描攻击的方法及*** | |
JP2006100906A (ja) | ネットワークシステムの運用管理方法及びストレージ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |