CN108718284A - 一种报文处理方法及装置 - Google Patents
一种报文处理方法及装置 Download PDFInfo
- Publication number
- CN108718284A CN108718284A CN201810384737.6A CN201810384737A CN108718284A CN 108718284 A CN108718284 A CN 108718284A CN 201810384737 A CN201810384737 A CN 201810384737A CN 108718284 A CN108718284 A CN 108718284A
- Authority
- CN
- China
- Prior art keywords
- queue
- bgp messages
- bgp
- messages
- sent
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/23—Bit dropping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种报文处理方法及装置,所述方法包括:判断接收到的BGP报文是否为BGP保活报文;若是,则将所述BGP报文添加到第一类型队列;否则,将所述BGP报文添加到第二类型队列;若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。应用本公开实施例可以提高组网的稳定性。
Description
技术领域
本公开涉及网络通信技术领域,尤其涉及一种报文处理方法及装置。
背景技术
BGP(Border Gateway Protocol,边界网关协议)协议是运行于TCP(TransmissionControl Protocol,传输控制协议)协议上的一种AS(Autonomous System,自治系统)的路由协议,其主要功能是在不同的AS之间交换路由信息。
发明内容
本公开提供一种报文处理方法及装置,以解决现有BGP组网中出现硬件通道拥塞时可能会由于BGP保活报文被丢弃而导致拥塞加剧的问题。
根据本公开的第一方面,提供一种报文处理方法,包括:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
根据本公开的第二方面,提供一种报文处理装置,包括:
接收单元,用于接收BGP报文;
判断单元,用于判断所述接收单元接收到的BGP报文是否为BGP保活报文;
队列管理单元,用于若所述BGP报文为BGP保活报文,则将所述BGP报文添加到第一类型队列;若所述BGP报文为非BGP保活报文,则将所述BGP报文添加到第二类型队列;
处理单元,用于若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
根据本公开的第三方面,提供一种报文处理装置,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
根据本公开的第四方面,提供一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
应用本公开,通过在路由设备中设置第一类型队列和第二类型队列,若接收到BGP报文,则判断该BGP报文是否为BGP保活报文;若是,则将该BGP报文添加到第一类型队列;否则,将该BGP报文添加到第二类型队列,进而,若需要进行报文丢弃,则对第二类型队列中的BGP报文进行丢弃处理,避免了由于BGP保活报文被丢弃而导致的拥塞加剧,提高了组网的稳定性。
附图说明
图1是一种BGP组网的示意图;
图2是一种路由设备内部BGP报文处理的流程示意图;
图3是本公开实施例提供的一种报文处理方法的流程示意图;
图4是本公开实施例提供的一种路由设备内部BGP报文处理的流程示意图;
图5是本公开实施例提供的一种BGP报文调度的流程示意图;
图6是本公开实施例提供的一种报文处理装置的结构示意图;
图7是本公开实施例提供的一种报文处理装置的硬件结构示意图。
具体实施方式
以图1所示BGP组网为例,路由设备1和路由设备2构建IBGP(Internal BorderGateway Protocol,内部BGP)邻居,即路由设备1和路由设备2在一个AS域内;路由设备2作为AS域内的边界路由器和其他1000个BGP邻居设备分别构建了1000个EBGP(ExternalBorder Gateway Protocol,外部BGP)邻居关系。在该组网下,对于路由设备1发布过来的路由更新报文或路由撤销报文,路由设备2收到后,均需同步发送一份给路由设备M1到路由设备M1000这1000个邻居。
如图2所示,路由设备2设备内部处理BGP报文的流程主要包括:路由设备2的CPU(Center Process Unit,中央处理单元)收到路由设备1发来的BGP报文,对该BGP报文处理后,将处理后的BGP报文同步到1000个邻居。其中,路由设备2的CPU将这些BGP报文发出时,需要先经过CPU软件队列,再经过硬件通道,发送到交换模块,由交换模块将BGP报文发送给路由设备M1到路由设备M1000。
若路由设备2的CPU接收到路由设备1发来的BGP报文较多且较集中,则会发送大量的BGP报文到CPU软件队列,然后经过硬件通道和LSW发到其他BGP邻居。如果硬件通道出现拥塞,就会给CPU软件队列反压,CPU软件队列就开始丢弃报文,从而可能会导致以下问题:
若某个邻居的BGP Keepalive(保活)报文被连续多次的丢弃,就会引发DUT2认为这个邻居Down(不可用),进而,DUT2需要撤销这个邻居的所有路由,且DUT2需要向其他邻居发送针对该邻居的路由撤销消息,加剧了硬件通道上的拥挤。
为了使本技术领域的人员更好地理解本公开实施例中的技术方案,并使本公开实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本公开实施例中技术方案作进一步详细的说明。
请参见图3,为本公开实施例提供的一种报文处理方法的流程示意图,其中,该报文处理方法可以应用于BGP组网中的路由设备,如路由器、交换机等(下文中简称为路由设备),如图3所示,该报文处理方法可以包括以下步骤:
步骤301、判断接收到的BGP报文是否为BGP保活报文。若是,则转至步骤302;否则,转至步骤303。
本公开实施例中,为了避免硬件通道拥塞时BGP保活报文被丢弃导致硬件通道拥塞加剧,路由设备在进行BGP报文调度时,可以对BGP保活报文和其它类型的BGP报文(如BGPOpen(打开)报文、BGP Update(更新)报文、BGP Notification(通知)报文、或BGP RouterRefresh(路由刷新)报文等)区分处理。
为了实现上述目的,在本公开实施例中,可以在路由设备中设置至少两种类型的CPU软件队列(本文中称为第一类型队列和第二类型队列);其中,第一类型队列用于存放BGP保护报文,第二类型队列用于存放其它类型的BGP报文。
相应地,在本公开实施例中,若路由设备接收到BGP报文,则在将BGP报文添加到CPU软件队列之前,可以先识别该BGP报文的类型,判断该BGP报文是否为BGP保活报文,并根据判断结果进行不同的处理。
需要说明的是,在本公开实施例中,路由设备接收到BGP报文时,在将该BGP报文添加到CPU软件队列之前对该BGP报文的处理可以参见现有BGP组网中路由设备的CPU对接收到的BGP报文的处理,其具体实现在此不做赘述。
此外,在本公开实施例中,第二类型队列的数量可以为一个或多个,例如,可以按照非BGP保活报文的消息类型进一步设置多个第二类型队列,如分别将BGP Open报文、BGPUpdate报文、BGP Notification报文以及BGP Router Refresh报文分别存放在不同的第二类型队列,或者,将BGP Open报文和BGP Notification报文存放在同一个第二类型队列,将BGP Update报文和BGP Router Refresh报文存放在另一个第二类型队列,其具体实现在此不做赘述。
步骤302、将该BGP报文添加到第一类型队列。
本公开实施例中,若路由设备确定接收到的BGP报文为BGP保活报文,则路由设备可以将该BGP报文添加到第一类型队列。
步骤303、将该BGP报文添加到第二类型队列。
本公开实施例中,若路由设备确定接收到的BGP报文为非BGP保活报文,则路由设备可以将该BGP报文添加到第二类型队列。
需要说明的是,在本公开实施例中,路由设备对第一类型队列或/和第二类型队列中各BGP报文进行排序时可以参见现有CPU软件队列中BGP报文的排序方式或按照其它策略进行排序,本公开实施例对此不做限定。
步骤304、若需要进行报文丢弃,则对第二类型队列中的BGP报文进行丢弃处理。
本公开实施例中,若路由设备确定需要进行报文丢弃,则如发生硬件通道拥塞时,路由设备可以对第二类型队列中的BGP报文进行丢弃,而不对第一类型队列中的BGP报文进行丢弃,即不对BGP保活报文进行丢弃,避免了由于BGP保活报文丢弃而导致的拥塞加剧,提高了组网的稳定性。
需要说明的是,在本公开实施例中,若存在多个第二类型队列,则可以分别为该第二类型队列设置不同的优先级,并优先丢弃优先级最低的第二类型队列中的BGP报文;或者,可以随机从第二类型队列中选择BGP报文进行丢弃;或者,可以循环从各第二类型队列中选择BGP报文进行丢弃,其具体实现在此不做赘述。
可见,在图3所示方法流程中,通过对BGP保活报文和非BGP保活报文区别处理,分别存放至不同的CPU软件队列,若需要进行报文丢弃,则从存放非BGP保活报文的CPU软件队列中进行BGP报文丢弃,即对非BGP保活报文进行丢弃,避免了由于BGP保活报文丢弃而导致的拥塞加剧,提高了组网的稳定性。
本公开实施例中,路由设备按照上述方式将接收到的BGP报文添加到第一类型队列或第二类型队列之后,还需要对第一类型队列和第二类型队列中的BGP报文进行调度。
在本公开其中一个实施例中,若第一类型队列中存在BGP报文(即BGP保活报文),则路由设备可以先对第一类型队列中的BGP报文进行调度;若第一类型队列中不存在BGP报文,则对第二类型队列中的BGP报文(非BGP保活报文)进行调度,以避免BGP保活报文长时间得不到调度。
在本公开另一个实施例中,路由设备可以按照预设调度权重对第一类型队列和第二类型队列中的BGP报文进行调度。
在该实施例中,为了保证第一类型队列和第二类型队列均能得到合理的调度,在路由设备中设置第一类型队列和第二类型队列之后,还可以为第一类型队列和第二类型队列设置调度权重,并按照所设置的调度权重(本文中称为预设调度权重)对第一类型队列和第二类型队列中的BGP报文进行调度。
在该实施例的一种实施方式中,上述按照预设调度权重对第一类型队列和第二类型队列中的BGP报文进行调度,可以包括:
若从第一类型队列中发送了第一预设数量的BGP报文,则从第二类型队列中发送第二预设数量的BGP报文。
在该实施方式中,若需要对第一类型队列和第二类型队列中的BGP报文进行调度,则路由设备可以每次从第一类型队列中发送了第一预设数量的BGP报文时,从第二类型队列中发送第二预设数量的BGP报文。
举例来说,假设预设的第一类型队列和第二类型队列的调度权重为M(即第一预设数量为M):N(即第二预设数量为N)(M,N为正整数),则路由设备可以每次从第一类型队列中调度了M个BGP报文之后,从第二类型队列中调度N个BGP报文;然后,再从第一类型队列中调度M个BGP报文之后,再从第二类型队列中调度N个BGP报文,以此类推。
其中,第一预设数量和第二预设数量可以相同也可以不同。
需要说明的是,在本公开实施例中,考虑到第一类型队列中仅存放BGP保活报文,而第二类型队列中则存放BGP保活报文之外的其它所有类型的BGP报文,第二类型队列中BGP报文的数量一般会多于BGP保活报文,因此,在设置第一类型队列和第二类型队列的调度权重时,可以优选地将第二类型队列的权重设置得更高,即第二预设数量大于第一类型数量。
此外,考虑到BGP保活报文具有一定的时效性,即需要保证其在指定时间内发出,以避免BGP邻居由于长时间未接收到BGP保活报文而认为BGP邻居Down,因此,在设置第一类型队列和第二类型队列的调度权重时,还需要考虑第一类型队列中各BGP保活报文的调度时间间隔,避免第一类型队列中BGP保活报文长时间不能得到调度。
其次,在本公开实施例中,路由设备对BGP报文进行调度时,可以先对第一类型队列中的BGP报文进行调度,也可以先对第二类型队列中的BGP报文进行调度。
在一个示例中,上述从第一类型队列中发送了第一预设数量的BGP报文之前,还可以包括:
若从第一类型队列中发送的BGP报文的数量未达到第一预设数量,且第一类型队列中不存在未发送的BGP报文,则从第二类型队列中发送BGP报文;
若从第二类型队列中发送的BGP报文的数量达到第二预设数量,且第一类型队列中不存在未发送的BGP报文,则继续从第二类型队列中发送BGP报文,直至第一类型队列中存在未发送的BGP报文;
若从第二类型队列中发送的BGP报文的数量达到第二预设数量,且第一类型队列中存在未发送的BGP报文,则从第一类型队列中发送BGP报文。
具体地,若路由设备对第一类型队列中的BGP报文进行调度,则如果从第一类型队列中发送的BGP报文的数量未达到第一预设数量,且第一类型队列中不存在未发送的BGP报文,那么路由设备可以不需要等待从第一类型队列中发送的BGP报文的数量达到第一预设数量,而是直接开始对第二类型队列中的BGP报文进行调度,即从第二类型队列中发送BGP报文。
若路由设备从第二类型队列中发送的BGP报文的数量达到第二预设数量,则路由设备可以判断第一类型队列中是否存在未发送的BGP报文,即判断第一类型队列中是否新加入BGP报文。
若不存在,则路由设备可以继续对第二类型队列中的BGP报文进行调度,直至第一类型队列中存在未发送的BGP报文,即第一类型队列中新加入BGP报文。此时,路由设备可以再次从第一类型队列中发送BGP报文,其具体调度策略可以参见上述实施例中描述的方式,本公开实施例在此不再赘述。
若存在,则路由设备可以从第一类型队列中发送BGP报文,其具体调度策略可以参见上述实施例中描述的方式,本公开实施例在此不再赘述。
同理,在另一个示例中,上述从第二类型队列中发送第二预设数量的BGP报文之前,还可以包括:
若从第二类型队列中发送的BGP报文的数量未达到第二预设数量,且第二类型队列中不存在未发送的BGP报文,则从第一类型队列中发送BGP报文;
若从第一类型队列中发送的BGP报文的数量达到第一预设数量,且第二类型队列中不存在未发送的BGP报文,则继续从第一类型队列中发送BGP报文,直至第二类型队列中存在未发送的BGP报文;
若从第一类型队列中发送的BGP报文的数量达到第一预设数量,且第二类型队列中存在未发送的BGP报文,则从第二类型队列中发送BGP报文。
其中,该示例的具体实现可以参见上一示例中的相关描述,本公开实施例在此不做赘述。
为了使本领域技术人员更好地理解本公开实施例提供的技术方案,下面结合具体实例对本公开实施例提供的技术方案进行说明。
请参见图4,为本公开实施例提供的一种路由设备内部处理BGP报文的流程示意图,如图4所示,在该实施例中,路由设备内部设置有两个CPU软件队列(A队列和B队列),其中,A队列用于存放BGP保活报文,B队列用于存放非BGP保活报文。A队列和B队列的调度权重为1:N。
在该实施例中,若路由设备接收到BGP报文,则路由设备可以根据BGP报文的消息类型将其添加至不同的CPU软件队列,其中,对于BGP保活报文,路由设备可以将其加入A队列;对于非BGP保活报文,路由设备可以将其加入B队列。
请参见图5,在该实施例中,路由设备进行BGP报文调度的处理流程可以包括:
步骤501、判断A队列中是否存在BGP报文;若是,则转至步骤502;否则,转至步骤503。
步骤502、从A队列中发送一个BGP报文,并转至步骤503。
步骤503、判断B队列中是否存在BGP报文;若是,则转至步骤504;否则,将从B队列中发送的BGP报文的数量清零,并转至步骤501。
步骤504、从B队列中发送一个BGP报文,并将从B队列中发送的BGP报文的数量+1。
步骤505、判断从B队列中发送的BGP报文的数量是否达到N;若是,则将从B队列中发送的BGP报文的数量清零,并转至步骤501;否则,转至步骤503。
需要说明的是,在该实施例中,若A队列和B队列中均不存在未发送的BGP报文,则路由设备可以暂停BGP报文调度处理;若存在新的BGP报文加入A队列或B队列,则再重新按照步骤501~步骤505中描述的方式进行BGP报文调度。
在该实施例中,若硬件通道拥塞,需要进行报文丢弃,则路由设备可以从B队列中选择BGP报文进行丢弃,其具体丢弃策略在此不做限定。
通过以上描述可以看出,在本公开实施例提供的技术方案中,通过在路由设备中设置第一类型队列和第二类型队列,若接收到BGP报文,则判断该BGP报文是否为BGP保活报文;若是,则将该BGP报文添加到第一类型队列;否则,将该BGP报文添加到第二类型队列,进而,若需要进行报文丢弃,则对第二类型队列中的BGP报文进行丢弃处理,避免了由于BGP保活报文被丢弃而导致的拥塞加剧,提高了组网的稳定性。
请参见图6,为本公开实施例提供的一种报文处理装置的结构示意图,其中,该报文处理装置可以应用于上述方法实施例中的路由设备,如图6所示,该报文处理装置可以包括:
接收单元610,用于接收BGP报文;
判断单元620,用于判断所述接收单元610接收到的BGP报文是否为BGP保活报文;
队列管理单元630,用于若所述BGP报文为BGP保活报文,则将所述BGP报文添加到第一类型队列;若所述BGP报文为非BGP保活报文,则将所述BGP报文添加到第二类型队列;
处理单元640,用于若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
在可选实施例中,所述处理单元640,还用于若所述第一类型队列中存在BGP报文,则对所述第一类型队列中的BGP报文进行调度;若所述第一类型队列中不存在BGP报文,则对所述第二类型队列中的BGP报文进行调度。
在可选实施例中,所述处理单元640,还用于按照预设调度权重对所述第一类型队列和第二类型队列中的BGP报文进行调度;
所述处理单元640,具体用于若从所述第一类型队列中发送了第一预设数量的BGP报文,则从所述第二类型队列中发送第二预设数量的BGP报文。
在可选实施例中,所述处理单元640,还用于若从所述第一类型队列中发送的BGP报文的数量未达到所述第一预设数量,且所述第一类型队列中不存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中不存在未发送的BGP报文,则继续从所述第二类型队列中发送BGP报文,直至所述第一类型队列中存在未发送的BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文。
在可选实施例中,所述处理单元640,还用于若从所述第二类型队列中发送的BGP报文的数量未达到所述第二预设数量,且所述第二类型队列中不存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中不存在未发送的BGP报文,则继续从所述第一类型队列中发送BGP报文,直至所述第二类型队列中存在未发送的BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文。
请参见图7,为本公开实施例提供的一种报文处理装置的硬件结构示意图。该报文处理装置可以包括处理器701、存储有机器可执行指令的机器可读存储介质702。处理器701与机器可读存储介质702可经由系统总线703通信。并且,通过读取并执行机器可读存储介质702中与报文处理逻辑对应的机器可执行指令,处理器701可执行上文描述的报文处理方法。
本文中提到的机器可读存储介质702可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
本公开实施例还提供了一种包括机器可执行指令的机器可读存储介质,例如图7中的机器可读存储介质702,所述机器可执行指令可由报文处理装置中的处理器701执行以实现以上描述的报文处理方法。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过在路由设备中设置第一类型队列和第二类型队列,若接收到BGP报文,则判断该BGP报文是否为BGP保活报文;若是,则将该BGP报文添加到第一类型队列;否则,将该BGP报文添加到第二类型队列,进而,若需要进行报文丢弃,则对第二类型队列中的BGP报文进行丢弃处理,避免了由于BGP保活报文被丢弃而导致的拥塞加剧,提高了组网的稳定性。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (12)
1.一种报文处理方法,其特征在于,包括:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一类型队列中存在BGP报文,则对所述第一类型队列中的BGP报文进行调度;
若所述第一类型队列中不存在BGP报文,则对所述第二类型队列中的BGP报文进行调度。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
按照预设调度权重对所述第一类型队列和第二类型队列中的BGP报文进行调度;
所述按照预设调度权重对所述第一类型队列和第二类型队列中的BGP报文进行调度,包括:
若从所述第一类型队列中发送了第一预设数量的BGP报文,则从所述第二类型队列中发送第二预设数量的BGP报文。
4.根据权利要求3所述的方法,其特征在于,所述从所述第一类型队列中发送了第一预设数量的BGP报文之前,还包括:
若从所述第一类型队列中发送的BGP报文的数量未达到所述第一预设数量,且所述第一类型队列中不存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中不存在未发送的BGP报文,则继续从所述第二类型队列中发送BGP报文,直至所述第一类型队列中存在未发送的BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文。
5.根据权利要求3所述的方法,其特征在于,所述从所述第二类型队列中发送第二预设数量的BGP报文之前,还包括:
若从所述第二类型队列中发送的BGP报文的数量未达到所述第二预设数量,且所述第二类型队列中不存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中不存在未发送的BGP报文,则继续从所述第一类型队列中发送BGP报文,直至所述第二类型队列中存在未发送的BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文。
6.一种报文处理装置,其特征在于,包括:
接收单元,用于接收BGP报文;
判断单元,用于判断所述接收单元接收到的BGP报文是否为BGP保活报文;
队列管理单元,用于若所述BGP报文为BGP保活报文,则将所述BGP报文添加到第一类型队列;若所述BGP报文为非BGP保活报文,则将所述BGP报文添加到第二类型队列;
处理单元,用于若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
7.根据权利要求6所述的装置,其特征在于,
所述处理单元,还用于若所述第一类型队列中存在BGP报文,则对所述第一类型队列中的BGP报文进行调度;若所述第一类型队列中不存在BGP报文,则对所述第二类型队列中的BGP报文进行调度。
8.根据权利要求6所述的装置,其特征在于,
所述处理单元,还用于按照预设调度权重对所述第一类型队列和第二类型队列中的BGP报文进行调度;
所述处理单元,具体用于若从所述第一类型队列中发送了第一预设数量的BGP报文,则从所述第二类型队列中发送第二预设数量的BGP报文。
9.根据权利要求8所述的装置,其特征在于,
所述处理单元,还用于若从所述第一类型队列中发送的BGP报文的数量未达到所述第一预设数量,且所述第一类型队列中不存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中不存在未发送的BGP报文,则继续从所述第二类型队列中发送BGP报文,直至所述第一类型队列中存在未发送的BGP报文;
若从所述第二类型队列中发送的BGP报文的数量达到所述第二预设数量,且所述第一类型队列中存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文。
10.根据权利要求8所述的装置,其特征在于,
所述处理单元,还用于若从所述第二类型队列中发送的BGP报文的数量未达到所述第二预设数量,且所述第二类型队列中不存在未发送的BGP报文,则从所述第一类型队列中发送BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中不存在未发送的BGP报文,则继续从所述第一类型队列中发送BGP报文,直至所述第二类型队列中存在未发送的BGP报文;
若从所述第一类型队列中发送的BGP报文的数量达到所述第一预设数量,且所述第二类型队列中存在未发送的BGP报文,则从所述第二类型队列中发送BGP报文。
11.一种报文处理装置,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
12.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:
判断接收到的BGP报文是否为BGP保活报文;
若是,则将所述BGP报文添加到第一类型队列;
否则,将所述BGP报文添加到第二类型队列;
若需要进行报文丢弃,则对所述第二类型队列中的BGP报文进行丢弃处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810384737.6A CN108718284A (zh) | 2018-04-26 | 2018-04-26 | 一种报文处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810384737.6A CN108718284A (zh) | 2018-04-26 | 2018-04-26 | 一种报文处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108718284A true CN108718284A (zh) | 2018-10-30 |
Family
ID=63899222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810384737.6A Pending CN108718284A (zh) | 2018-04-26 | 2018-04-26 | 一种报文处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108718284A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025639A (zh) * | 2010-12-23 | 2011-04-20 | 北京星网锐捷网络技术有限公司 | 队列调度方法及系统 |
CN103188171A (zh) * | 2013-04-08 | 2013-07-03 | 杭州华三通信技术有限公司 | 一种报文调度方法和设备 |
CN106656857A (zh) * | 2016-12-29 | 2017-05-10 | 杭州迪普科技股份有限公司 | 一种报文限速的方法和装置 |
CN107959636A (zh) * | 2016-10-17 | 2018-04-24 | 新华三技术有限公司 | Bgp消息的发送方法及装置 |
-
2018
- 2018-04-26 CN CN201810384737.6A patent/CN108718284A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025639A (zh) * | 2010-12-23 | 2011-04-20 | 北京星网锐捷网络技术有限公司 | 队列调度方法及系统 |
CN103188171A (zh) * | 2013-04-08 | 2013-07-03 | 杭州华三通信技术有限公司 | 一种报文调度方法和设备 |
CN107959636A (zh) * | 2016-10-17 | 2018-04-24 | 新华三技术有限公司 | Bgp消息的发送方法及装置 |
CN106656857A (zh) * | 2016-12-29 | 2017-05-10 | 杭州迪普科技股份有限公司 | 一种报文限速的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3515023B1 (en) | Bgp message transmission method | |
US7720047B1 (en) | Managing periodic communications | |
US9667524B2 (en) | Method to check health of automatically discovered controllers in software defined networks (SDNs) | |
US8806032B2 (en) | Methods and apparatus to migrate border gateway protocol sessions between routers | |
US7486621B2 (en) | Method and apparatus for load sharing and overload control for packet media gateways under control of a single media gateway controller | |
JP5978313B2 (ja) | エネルギー効率の良い分散型でエラスティックなロードバランシングのための方法および装置 | |
EP3042476B1 (en) | Buffer-less virtual routing | |
US7739404B2 (en) | Scalable methods for distributing routing information to border gateway protocol (BGP) devices | |
CN110313163A (zh) | 分布式计算系统中的负载平衡 | |
CA3090903C (en) | Packet sending method and related device | |
CN101155118A (zh) | Bgp路由处理方法及装置 | |
US20120113807A1 (en) | Affecting Node Association Through Load Partitioning | |
CN105791175A (zh) | 软件定义网络中控制传输资源的方法及设备 | |
US9407454B2 (en) | Anti-starvation and bounce-reduction mechanism for a two-dimensional bufferless interconnect | |
US20080298397A1 (en) | Communication fabric bandwidth management | |
JPWO2005081473A1 (ja) | 通信処理システム、パケット処理負荷分散装置及びそれに用いるパケット処理負荷分散方法 | |
CN106201356A (zh) | 一种基于链路可用带宽状态的动态数据调度方法 | |
US20130287020A1 (en) | Switch module | |
Cui et al. | DiFS: Distributed Flow Scheduling for adaptive switching in FatTree data center networks | |
EP3474504B1 (en) | Leaf-to-spine uplink bandwidth advertisement to leaf-connected servers | |
CN102223311A (zh) | 一种队列调度方法及装置 | |
CN108718284A (zh) | 一种报文处理方法及装置 | |
CN102480471A (zh) | 实现监控RRPP环中QoS处理的方法和网络节点 | |
Montazerolghaem | Optimizing VoIP server resources using linear programming model and autoscaling technique: An SDN approach | |
US11496559B1 (en) | Regulating enqueueing and dequeuing border gateway protocol (BGP) update messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181030 |