CN111030943A - 一种报文的处理方法、装置、转发设备及存储介质 - Google Patents
一种报文的处理方法、装置、转发设备及存储介质 Download PDFInfo
- Publication number
- CN111030943A CN111030943A CN201911279615.1A CN201911279615A CN111030943A CN 111030943 A CN111030943 A CN 111030943A CN 201911279615 A CN201911279615 A CN 201911279615A CN 111030943 A CN111030943 A CN 111030943A
- Authority
- CN
- China
- Prior art keywords
- message
- processed
- forwarding
- packet
- protocol
- 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
Images
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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种报文的处理方法、装置、转发设备及存储介质。通过为处理器协议报文添加协议报文的转发优先级,且协议报文的转发优先级高于非协议报文的转发优先级。一方面,在报文中添加转发优先级的方式几乎不用消耗处理器的资源;另一方面,无论交换芯片的端口是否阻塞,通过处理器将添加了转发优先级的协议报文发送给交换芯片后,交换芯片都可以基于该转发优先级优先转发协议报文,从而实现在不过多消耗设备性能的情况下,确保协议报文的正常转发,避免协议报文丢包。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种报文的处理方法、装置、转发设备及存储介质。
背景技术
在各种转发设备中,由于转发设备自身处理器上的网络端口的数量有限,无法满足实际的业务需求。针对这种情况,通常需要在转发设备中安装与处理器连接的交换芯片,以通过交换芯片来扩展出更多的网络端口,从而满足转发设备的业务需求。
在这种处理器与交换芯片连接的结构中,处理器与交换芯片之间连接的端口称之为处理器的内部口,而通过交换芯片扩展出来的用于与外部设备连接的网络端口则称之为外部口。通常情况下,单个内部口的物理带宽通常会大于单个外部口物理带宽,在数据流量比较大情况下,内部口由于其物理带宽相对较大故可以保持畅通,但外部口由于其物理带宽相对较小则可能出现拥塞。
在外部口拥塞的情况下,经该外部口转发的下行协议报文可能会丢失,从而造成网络故障。因此,为避免因外部口拥塞而导致经该外部口转发的下行协议报文丢失,目前可以通过配置Qos(Quality of Service,服务质量)限速或者流量整形策略来解决此问题。但采用Qos限速或者流量整形需要通过软件实时的计算当前实际流量带宽,这种方式非常消耗处理器的资源,会大大降低转发设备的整体性能,甚至会导致整体性能降低到一个不可接受的程度。
发明内容
本申请实施例的目的在于提供一种报文的处理方法、装置、转发设备及存储介质,用以实现在不过多消耗设备性能的情况下,确保协议报文的正常转发。
第一方面,本申请实施例提供了一种报文的处理方法,应用于转发设备中的处理器,所述处理器还与所述转发设备中的交换芯片连接,所述方法包括:
接收所述交换芯片发送的待处理报文;若所述待处理报文为协议报文,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,其中,所述协议报文的转发优先级高于非协议报文的转发优先级;将所述处理后的报文发送至所述交换芯片,以使所述交换芯片按所述协议报文的转发优先级优先转发所述处理后的报文。
在本申请实施例中,通过为处理器协议报文添加协议报文的转发优先级,且协议报文的转发优先级高于非协议报文的转发优先级。一方面,在报文中添加转发优先级的方式几乎不用消耗处理器的资源;另一方面,无论交换芯片的端口是否阻塞,通过处理器将添加了转发优先级的协议报文发送给交换芯片后,交换芯片都可以基于该转发优先级优先转发协议报文,从而实现在不过多消耗设备性能的情况下,确保协议报文的正常转发,避免协议报文丢包。
结合第一方面,在第一种可能的实现方式中,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,包括:
在所述待处理报文中添加携带有所述协议报文的转发优先级的头部,获得所述处理后的报文,其中,所述头部为所述交换芯片可以识别的协议的头部。
在本申请实施例中,在待处理报文中添加携带有协议报文的转发优先级的头部,可以使得交换芯片在对协议报文解封装的过程中快速获取到协议报文的转发优先级。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器包括第一核和第二核,确定所述待处理报文为所述协议报文的步骤,包括:
所述第一核确定所述待处理报文为所述协议报文,将所述待处理报文添加到用于向所述第二核转发报文的队列中;
对应的,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,包括:
所述第二核通过所述队列获取所述待处理报文,并在所述待处理报文中添加所述协议报文的转发优先级,获得所述处理后的报文。
在本申请实施例中,通过配置第二核来专门处理协议报文,可以使得协议报文能够更加高效的被处理。
结合第一方面、第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述交换芯片上设有多个转发端口,在所述待处理报文中添加携带有所述协议报文的转发优先级的头部,获得所述处理后的报文,包括:
在所述待处理报文中添加包括所述协议报文的转发优先级以及端口标识的头部,其中,所述端口标识为所述多个转发端口中接收所述待处理报文的端口的唯一标识,所述端口标识用于指示所述交换芯片通过接收所述待处理报文的端口转发所述处理后的报文。
在本申请实施例中,在待处理报文添加的头部中携带端口标识,可以确保该处理后的报文能够被交换芯片正确转发。
结合第一方面的第三种可能的实现方式中,在第四种可能的实现方式中,每个所述转发端口的唯一标识为该转发端口所属的一个VLAN的值。
在本申请实施例中,通过将转发端口的唯一标识设置为VLAN的值,以将交换芯片的各转发端口各自分配到对应的一个局域网中,在无需其他硬件或软件情况下,便捷且低成本的实现将处理后的报文按端口正确转发。
第二方面,本申请实施例提供了一种报文的处理方法,应用于转发设备中的交换芯片,所述交换芯片还与所述转发设备中的处理器连接,所述方法包括:
接收网络中其它设备发送的待处理报文;将所述待处理报文转发给处理器;接收所述处理器发送的所述处理后的报文,其中,所述处理后的报文为在所述待处理报文为中添加所述协议报文的转发优先级而获得,所述转发优先级高于非协议报文的转发优先级;按所述协议报文的转发优先级优先转发所述处理后的报文。
第三方面,本申请实施例提供了一种报文的处理装置,应用于转发设备中的处理器,所述处理器还与所述转发设备中的交换芯片连接,所述装置包括:
数据收发模块,用于接收所述交换芯片发送的待处理报文;
数据处理模块,用于若所述待处理报文为协议报文,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,其中,所述协议报文的转发优先级高于非协议报文的转发优先级;
所述数据收发模块,还用于将所述处理后的报文发送至所述交换芯片,以使所述交换芯片按所述协议报文的转发优先级优先转发所述处理后的报文。
结合第三方面,在第一种可能的实现方式中,
所述数据处理模块,用于在所述待处理报文中添加携带有所述协议报文的转发优先级的头部,获得所述处理后的报文,其中,所述头部为所述交换芯片可以识别的协议的头部。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器包括第一核和第二核,
所述数据处理模块,用于所述第一核确定所述待处理报文为所述协议报文,将所述待处理报文添加到用于向所述第二核转发报文的队列中;
对应的,所述数据处理模块,用于所述第二核通过所述队列获取所述待处理报文,并在所述待处理报文中添加所述协议报文的转发优先级,获得所述处理后的报文。
结合第三方面、第三方面的第一种可能的实现方式或第三方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述交换芯片上设有多个转发端口,
所述数据处理模块,用于在所述待处理报文中添加包括所述协议报文的转发优先级以及端口标识的头部,其中,所述端口标识为所述多个转发端口中接收所述待处理报文的端口的唯一标识,所述端口标识用于指示所述交换芯片通过接收所述待处理报文的端口转发所述处理后的报文。
结合第三方面的第三种可能的实现方式中,在第四种可能的实现方式中,每个所述转发端口的唯一标识为该转发端口所属的一个VLAN的值。
第四方面,本申请实施例提供了一种报文的处理装置,应用于转发设备中的交换芯片,所述交换芯片还与所述转发设备中的处理器连接,所述装置包括:
数据接收模块,用于接收网络中其它设备发送的待处理报文;
数据转发模块,用于将所述待处理报文转发给处理器;
所述数据接收模块,还用于接收所述处理器发送的所述处理后的报文,其中,所述处理后的报文为在所述待处理报文为中添加所述协议报文的转发优先级而获得,所述转发优先级高于非协议报文的转发优先级;
所述数据转发模块,还用于按所述协议报文的转发优先级优先转发所述处理后的报文。
第五方面,本申请实施例提供了一种转发设备,所述包括:处理器、以及与所述处理器连接的交换芯片;
所述处理器,用于执行如第一方面或者第一方面的任一种可能的实现方式所述的报文的处理方法;
所述交换芯片,用于执行如第二方面所述的报文的处理方法。
第六方面,本申请实施例提供了一种具有计算机可执行的非易失程序代码的计算机可读存储介质,所述程序代码使所述计算机执行如第一方面或者第一方面的任一种可能的实现方式所述的报文的处理方法或者执行如第二方面所述的报文的处理方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种转发设备的第一结构框图;
图2为本申请实施例提供的一种报文的处理方法的流程图;
图3为本申请实施例提供的一种转发设备的第二结构框图;
图4为本申请实施例提供的一种转发设备的第三结构框图;
图5为本申请实施例提供的一种报文的处理装置的第一结构框图;
图6为本申请实施例提供的一种报文的处理装置的第二结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
请参阅图1,本申请实施例提供了一种转发设备10,该转发设备10可以是部署在通信网络中的设备例如交换机、路由器、网关等。转发设备10可以包括:处理器11、以及与处理器11连接的交换芯片12。
本实施例中,处理器11的类型可以是CPU(Central Processing Unit,中央处理器)、MCU(Microcontroller Unit,微控制单元)或者具备处理器功能的其他逻辑芯片。处理器11的构架可以是单核芯片或者也可以是多核芯片。
交换芯片12可以是市面上常规型号的芯片,例如交换芯片12可以是任何交换芯片厂商的交换芯片。交换芯片12上的内部口与处理器11上的内部口连接,而交换芯片12上外部口则用于与外部通信网络中的设备连接。
本实施例中,交换芯片12可以通过外部口获取或接收到通信网络中的待处理报文,并通过内部口将该待处理报文转发给处理器11处理。处理器11可以分析该待处理报文的类型是协议报文还是非协议报文。若确定该待处理报文的类型是协议报文,那么处理器11可以在该待处理报文中添加协议报文的转发优先级,获得处理后的报文;若确定该待处理报文的类型是非协议报文,那么处理器11则可以在该待处理报文中添加非协议报文的转发优先级,也获得处理后的报文,其中,协议报文的转发优先级可以高于非协议报文的转发优先级。处理器11也通过内部口将该处理后的报文发送至交换芯片12,交换芯片12则可以基于该处理后的报文中的转发优先级,通过外部口将该处理后的报文转发到通信网络中,其中,由于转发优先级越高,该处理后的报文越优先被交换芯片12转发,这样便实现协议报文先于非协议报文被优先转发。
下面将通过方法实施例,从处理器11和交换芯片12的角度来详细说明处理器11与交换芯片12如何配合处理接收到的报文,从而实现协议报文的优先转发。
请参阅图2,本申请实施例提供了一种报文的处理方法,该报文的处理方法可以由交换芯片12与处理器11配合执行,该报文的处理方法可以包括:
步骤S100:交换芯片接收网络中其它设备发送的待处理报文。
步骤S200:交换芯片将该待处理报文转发给处理器。
步骤S300:处理器接收交换芯片发送的待处理报文。
步骤S400:若待处理报文为协议报文,处理器在待处理报文中添加协议报文的转发优先级,获得处理后的报文;若待处理报文为非协议报文,处理器在待处理报文中添加非协议报文的转发优先级,获得处理后的报文;其中,协议报文的转发优先级高于非协议报文的转发优先级。
步骤S500:处理器将处理后的报文发送至交换芯片。
步骤S600:交换芯片接收处理器发送的该处理后的报文。
步骤S700:交换芯片按该协议报文的转发优先级优先转发该处理后的报文。
下面将结合示例对上述流程进行详细说明。
步骤S100:交换芯片接收网络中其它设备发送的待处理报文。
交换芯片12的外部口可以有多个(为便于描述的统一,后文将交换芯片12上的外部口统称为交换芯片12上的转发端口),每个转发端口可以与通信设备所在网络中的其它设备连接。这样,多个转发端口中的任一个转发端口都可以获取或者接收到网络中的其它设备发送的待处理报文。
可以理解到,为确保在对接收到的待处理报文处理获得处理后的报文后还能够正确的转发该处理后的报文,在发送该处理后的报文时,需要利用接收该待处理报文的转发端口继续转发该处理后的报文。
本实施例中,为实现利用接收该待处理报文的转发端口转发该处理后的报文,交换芯片12需要对多个转发端口进行区分,以便在接收到待处理报文时,交换芯片12能够获知该待处理报文是通过哪一个转发端口接收。由于获知到待处理报文是通过哪一个转发端口接收,那么在转发时,交换芯片12便能够继续利用该转发端口转发处理后的报文。
作为对多个转发端口进行区分的示例性方式,交换芯片12可以将多个转发端口各自部署到对应的一个VLAN(Virtual Local Area Network,虚拟局域网)中,即建立每个转发端口与对应的一个VLAN的映射关系,且任意两个转发端口对应的VLAN不同,以通过将多个转发端口相互隔离来实现对多个转发端口进行区分。
如图3所示,假设交换芯片12上有4个转发端口,分别是转发端口ge0、转发端口ge1、转发端口ge2、以及转发端口ge3。那么交换芯片12可以将转发端口ge0部署到VLAN1中、将转发端口ge1部署到VLAN2中、将转发端口ge2部署到VLAN3中、以及将转发端口ge3部署到VLAN4中。
基于对多个转发端口进行的区分,交换芯片12的某一个转发端口接收或者获取到网络中其它设备发送的待处理报文后,交换芯片12通过该转发端口的映射关系确定出该转发端口对应的VLAN,并利用该转发端口对应的VLAN对该待处理报文添加该转发端口的唯一端口标识。由于处理器11在处理该添加了唯一的端口标识的待处理报文后,获得的处理后的报文还可以继续携带该唯一的端口标识,交换芯片12根据该唯一的端口标识,便可以利用接收该待处理报文的转发端口继续转发该处理后的报文。
本实施例中,作为添加该转发端口的唯一端口标识的示例性方式,利用基于VLAN的协议如802.1Q,交换芯片12可以在待处理报文中添加满足该协议且与该转发端口对应的VLAN的值,例如在待处理报文中添加携带有与该转发端口对应的VLAN的值,该转发端口对应的VLAN的值放入802.1Q的头部中,且任意两个VLAN各自对应的802.1Q的头部不同。
需要说明的是,由于VLAN是非常成熟的技术,故利用VLAN可以在不调整现有逻辑架构且无需其他硬件或软件辅助的基础上,实现各转发端口的区分,以及实现对各转发端口进行标识。但采用VLAN实现仅为本实施例的一种示例方式,其并不作为本实施例的限定。例如,运维人员也可以跳过VLAN,自定义各转发端口各自的唯一端口标识,并直接建立各转发端口与各自的唯一端口标识之间的映射关系。
步骤S200:交换芯片将该待处理报文转发给处理器。
在待处理报文中添加唯一的端口标识后,交换芯片12便可以通过与处理器11连接的内部口,将该添加了唯一的端口标识的待处理报文转发给处理器11。
步骤S300:处理器接收交换芯片发送的待处理报文。
对应的,处理器11也通过自身的内部口接收到该添加了唯一的端口标识的待处理报文。
步骤S400:若待处理报文为协议报文,处理器在待处理报文中添加协议报文的转发优先级,获得处理后的报文;若待处理报文为非协议报文,处理器在待处理报文中添加非协议报文的转发优先级,获得处理后的报文;其中,协议报文的转发优先级高于非协议报文的转发优先级。
本实施例中,处理器11的构架为单核芯片,以及处理器11的构架为多核芯片,其对待处理报文的处理流程会有所不同,下面将分别予以说明。
在处理器11的构架为单核芯片时,处理器11在接收到该添加了唯一的端口标识的待处理报文后(下文将“添加了唯一的端口标识的待处理报文”简称为“待处理报文”),处理器11可以通过解封装该待处理报文,以确定待处理报文是协议报文还是非协议报文。
若确定该待处理报文是非协议报文,处理器11便可以将预先配置非协议报文的转发优先级添加到该解封装的待处理报文中,以及将解封装过程中获得的携带在该待处理报文中唯一端口标识也再次添加到解封装的待处理报文中;例如可以在封装该解封装的待处理报文的过程中,在解封装的待处理报文中添加包括非协议报文的转发优先级以及该唯一端口标识的头部,且该头部为交换芯片12可以识别的协议的头部,从而获得处理后的报文(为便于理解,后文将非协议报文经处理获得的处理后的报文称之为“处理后的非协议报文”)。
若确定该待处理报文是协议报文,处理器11便可以将预先配置协议报文的转发优先级添加到该解封装的待处理报文中,以及将解封装过程中获得的携带在该待处理报文中唯一端口标识也再次添加到解封装的待处理报文中,例如也可以在封装该解封装的待处理报文的过程中,在解封装的待处理报文中添加包括有协议报文的转发优先级以及该唯一端口标识的头部,且该头部也为交换芯片12可以识别的协议的头部,从而也获得处理后的报文(为便于理解,后文将协议报文经处理获得的处理后的报文称之为“处理后的协议报文”)。
值得注意的是,为便于处理后的协议报文要先与处理后的非协议报文优先转发,在处理器11预设的转发优先级中,协议报文的转发优先级需要高于非协议报文的转发优先级。此外,为便于交换芯片能够快速便捷的识别出转发优先级,协议报文的转发优先级和非协议报文的转发优先级均可以采用在交换芯片能够快速识别协议的头部字段,例如采用Cos字段表示,其中,Cos字段的值越大表示其转发优先级越高,例如,协议报文的转发优先级可以设置为数值为7的Cos字段,而非协议报文的转发优先级可以设置为数值为0的Cos字段。
在处理器11的构架为多核处理器时,为实现对待处理报文的高效处理,在多核芯片中可以选择一个核并将其配置成仅处理协议报文,以及将除了该核以外的其它核其配置成仅处理非协议报文。可以理解到,采用这种配置的原因是在于协议报文的数量少于非协议报文,故选择一个核来处理协议报文已经足够;但在实际中,若协议报文的数量比较多,也可以配置不止一个核来处理协议报文。
如图4所示,为便于说明,本实施例以处理器11包括处理非协议报文的第一核111和处理协议报文的第二核112为例进行说明。
具体的,第一核111可以分别与交换芯片12和第二核112连接,这样,第一核111可以接收到交换芯片12发送的待处理报文。第一核111可以通过解封装该待处理报文,以确定待处理报文是协议报文还是非协议报文。
若确定该待处理报文是非协议报文,第一核111便可以按照前述流程,将预先配置非协议报文的转发优先级添加到该解封装的待处理报文中,以及将解封装过程中获得的携带在该待处理报文中唯一端口标识也再次添加到解封装的待处理报文中,获得处理后的非协议报文。
若确定该待处理报文是协议报文,第一核111便可以将该解封装的待处理报文再次封装,并在封装后将其发送给第二核112处理,例如将待处理报文添加到用于向第二核112转发报文的队列中。第二核112通过处理该队列,便可以获取到该待处理报文。第二核112也可以解封装该待处理报文,并按照前述流程,将预先配置协议报文的转发优先级添加到该解封装的待处理报文中,以及将解封装过程中获得的携带在该待处理报文中唯一端口标识也再次添加到解封装的待处理报文中,获得处理后的协议报文。最后,第二核112再将处理后的协议报文发送给第一核111。
当然,上述的第一核111分别与交换芯片12和第二核112连接仅为本实施例的一种示例性方式,并不作为限定,例如还可以采用第二核112分别与交换芯片12和第一核111连接。在第二核112分别与交换芯片12和第一核111连接时,与前述流程的不同之处在于,可以由第二核112来判断待处理报文是协议报文还是非协议报文,并由第二核112将非协议报文发送给第一核111处理。
步骤S500:处理器将处理后的报文发送至交换芯片。
在获得处理后的协议报文或者获得处理后的非协议报文,处理器11再通过内部口将该处理后的协议报文或者处理后的非协议报文发送。
步骤S600:交换芯片接收处理器发送的该处理后的报文。
对应的,交换芯片12则通过内部口接收到该处理后的协议报文或者处理后的非协议报文。
步骤S700:交换芯片按该协议报文的转发优先级优先转发该处理后的报文。
本实施例中,若获取到处理后的非协议报文,交换芯片12可以解封装该处理后的非协议报文,以获取到该处理后的非协议报文携带的转发优先级以及唯一的端口标识。这样,交换芯片12便可以按照非协议报文的转发优先级,将该处理后的非协议报文从唯一的端口标识对应的转发端口转发。
若获取到处理后的协议报文,交换芯片12可以解封装该处理后的协议报文,以获取到该处理后的协议报文携带的转发优先级以及唯一的端口标识。这样,交换芯片12便可以按照协议报文的转发优先级,将该处理后的协议报文从唯一的端口标识对应的转发端口先于其它非协议报文转发。
请参阅图5,基于同一发明构思,本申请实施例中还提供一种报文的处理装置100,应用于转发设备10中的处理器11,该报文的处理装置100包括:
数据收发模块110,用于接收所述交换芯片发送的待处理报文。
数据处理模块120,用于若所述待处理报文为协议报文,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,其中,所述协议报文的转发优先级高于非协议报文的转发优先级。
所述数据收发模块110,还用于将所述处理后的报文发送至所述交换芯片,以使所述交换芯片按所述协议报文的转发优先级优先转发所述处理后的报文。
请参阅图6,基于同一发明构思,本申请实施例中还提供一种报文的处理装置200,应用于转发设备10中的交换芯片12,该报文的处理装置200包括:
数据接收模块210,用于接收网络中其它设备发送的待处理报文。
数据转发模块220,用于将所述待处理报文转发给处理器。
所述数据接收模块210,还用于接收所述处理器发送的所述处理后的报文,其中,所述处理后的报文为在所述待处理报文为中添加所述协议报文的转发优先级而获得,所述转发优先级高于非协议报文的转发优先级。
所述数据转发模块220,还用于按所述协议报文的转发优先级优先转发所述处理后的报文。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请一些实施例还提供了一种计算机可执行的非易失的程序代码的计算机可读储存介质,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该计算机可读存储介质上存储有程序代码,该程序代码被计算机运行时执行上述任一实施方式的报文的处理方法的步骤。
本申请实施例所提供的报文的处理方法的程序代码产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
综上所述,本申请实施例提供了一种报文的处理方法、装置、转发设备及存储介质。通过为处理器协议报文添加协议报文的转发优先级,且协议报文的转发优先级高于非协议报文的转发优先级。一方面,在报文中添加转发优先级的方式几乎不用消耗处理器的资源;另一方面,无论交换芯片的端口是否阻塞,通过处理器将添加了转发优先级的协议报文发送给交换芯片后,交换芯片都可以基于该转发优先级优先转发协议报文,从而实现在不过多消耗设备性能的情况下,确保协议报文的正常转发,避免协议报文丢包。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种报文的处理方法,其特征在于,应用于转发设备中的处理器,所述处理器还与所述转发设备中的交换芯片连接,所述方法包括:
接收所述交换芯片发送的待处理报文;
若所述待处理报文为协议报文,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,其中,所述协议报文的转发优先级高于非协议报文的转发优先级;
将所述处理后的报文发送至所述交换芯片,以使所述交换芯片按所述协议报文的转发优先级优先转发所述处理后的报文。
2.根据权利要求1所述报文的处理方法,其特征在于,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,包括:
在所述待处理报文中添加携带有所述协议报文的转发优先级的头部,获得所述处理后的报文,其中,所述头部为所述交换芯片可以识别的协议的头部。
3.根据权利要求2所述报文的处理方法,其特征在于,所述处理器包括第一核和第二核,确定所述待处理报文为所述协议报文的步骤,包括:
所述第一核确定所述待处理报文为所述协议报文,将所述待处理报文添加到用于向所述第二核转发报文的队列中;
对应的,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,包括:
所述第二核通过所述队列获取所述待处理报文,并在所述待处理报文中添加所述协议报文的转发优先级,获得所述处理后的报文。
4.根据权利要求1-3任一权项所述报文的处理方法,其特征在于,所述交换芯片上设有多个转发端口,在所述待处理报文中添加携带有所述协议报文的转发优先级的头部,获得所述处理后的报文,包括:
在所述待处理报文中添加包括所述协议报文的转发优先级以及端口标识的头部,其中,所述端口标识为所述多个转发端口中接收所述待处理报文的端口的唯一标识,所述端口标识用于指示所述交换芯片通过接收所述待处理报文的端口转发所述处理后的报文。
5.根据权利要求4所述报文的处理方法,其特征在于,每个所述转发端口的唯一标识为该转发端口所属的VLAN的值。
6.一种报文的处理方法,其特征在于,应用于转发设备中的交换芯片,所述交换芯片还与所述转发设备中的处理器连接,所述方法包括:
接收网络中其它设备发送的待处理报文;
将所述待处理报文转发给处理器;
接收所述处理器发送的所述处理后的报文,其中,所述处理后的报文为在所述待处理报文为中添加所述协议报文的转发优先级而获得,所述转发优先级高于非协议报文的转发优先级;
按所述协议报文的转发优先级优先转发所述处理后的报文。
7.一种报文的处理装置,其特征在于,应用于转发设备中的处理器,所述处理器还与所述转发设备中的交换芯片连接,所述装置包括:
数据收发模块,用于接收所述交换芯片发送的待处理报文;
数据处理模块,用于若所述待处理报文为协议报文,在所述待处理报文中添加所述协议报文的转发优先级,获得处理后的报文,其中,所述协议报文的转发优先级高于非协议报文的转发优先级;
所述数据收发模块,还用于将所述处理后的报文发送至所述交换芯片,以使所述交换芯片按所述协议报文的转发优先级优先转发所述处理后的报文。
8.一种报文的处理装置,其特征在于,应用于转发设备中的交换芯片,所述交换芯片还与所述转发设备中的处理器连接,所述装置包括:
数据接收模块,用于接收网络中其它设备发送的待处理报文;
数据转发模块,用于将所述待处理报文转发给处理器;
所述数据接收模块,还用于接收所述处理器发送的所述处理后的报文,其中,所述处理后的报文为在所述待处理报文为中添加所述协议报文的转发优先级而获得,所述转发优先级高于非协议报文的转发优先级;
所述数据转发模块,还用于按所述协议报文的转发优先级优先转发所述处理后的报文。
9.一种转发设备,其特征在于,所述包括:处理器以及与所述处理器连接的交换芯片;
所述处理器,用于执行如权利要求1-5任一权项所述的报文的处理方法;
所述交换芯片,用于执行如权利要求6所述的报文的处理方法。
10.一种计算机存储介质,所述程序代码使所述计算机执行如权利要求1-5任一权项所述的报文的处理方法或者执行如权利要求6所述的报文的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911279615.1A CN111030943A (zh) | 2019-12-13 | 2019-12-13 | 一种报文的处理方法、装置、转发设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911279615.1A CN111030943A (zh) | 2019-12-13 | 2019-12-13 | 一种报文的处理方法、装置、转发设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111030943A true CN111030943A (zh) | 2020-04-17 |
Family
ID=70208605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911279615.1A Pending CN111030943A (zh) | 2019-12-13 | 2019-12-13 | 一种报文的处理方法、装置、转发设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111030943A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112714054A (zh) * | 2020-12-25 | 2021-04-27 | 北京天融信网络安全技术有限公司 | 报文发送方法、装置及存储介质 |
Citations (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1104967A2 (en) * | 1999-12-02 | 2001-06-06 | Nortel Networks Corporation | Priority forwarding in a communication system |
CN1474563A (zh) * | 2002-08-06 | 2004-02-11 | ��Ϊ��������˾ | 网络通信中组播报文的转发方法 |
CN1607772A (zh) * | 2003-10-14 | 2005-04-20 | 华为技术有限公司 | 一种通过地址解析协议报文实现数据转发备份的方法 |
CN1913486A (zh) * | 2005-08-10 | 2007-02-14 | 中兴通讯股份有限公司 | 一种增强协议报文安全的方法和装置 |
CN101035077A (zh) * | 2007-04-11 | 2007-09-12 | 华为技术有限公司 | 维持网络通信的方法及网元设备 |
CN101106532A (zh) * | 2007-07-10 | 2008-01-16 | 中兴通讯股份有限公司 | 实现交换芯片与网络处理器混合转发的方法 |
CN101115006A (zh) * | 2007-08-21 | 2008-01-30 | 杭州华三通信技术有限公司 | 三层报文转发方法及路由设备和二层交换模块 |
WO2011012023A1 (zh) * | 2009-07-31 | 2011-02-03 | 中兴通讯股份有限公司 | 一种网络处理器输出端口队列的管理方法及*** |
CN102158414A (zh) * | 2011-04-12 | 2011-08-17 | 中兴通讯股份有限公司 | 中间设备的协议处理方法及装置 |
CN102209035A (zh) * | 2011-05-25 | 2011-10-05 | 杭州华三通信技术有限公司 | 流量转发方法及转发设备 |
CN103281257A (zh) * | 2013-06-05 | 2013-09-04 | 杭州华三通信技术有限公司 | 一种协议报文处理方法和设备 |
CN103338157A (zh) * | 2013-07-01 | 2013-10-02 | 杭州华三通信技术有限公司 | 一种多核***核间数据报文缓存方法及设备 |
US20140036694A1 (en) * | 2011-04-29 | 2014-02-06 | Cooper Technologies Company | Multi-path radio transmission input/output devices, network, systems and methods with on demand, prioritized routing protocol |
WO2014040268A1 (zh) * | 2012-09-14 | 2014-03-20 | 华为技术有限公司 | 一种传输方法、***和终端 |
CN104394098A (zh) * | 2014-11-20 | 2015-03-04 | 迈普通信技术股份有限公司 | 一种报文处理方法和装置 |
CN105282041A (zh) * | 2014-07-18 | 2016-01-27 | 中兴通讯股份有限公司 | 基于isis的洪泛方法及装置 |
WO2016033050A1 (en) * | 2014-08-26 | 2016-03-03 | Brocade Communications Systems, Inc. | Enrichment of upper layer protocol content in tcp based session |
CN105897365A (zh) * | 2016-03-23 | 2016-08-24 | 京信通信技术(广州)有限公司 | 一种处理器的防冲击处理方法及装置 |
CN106789640A (zh) * | 2016-11-10 | 2017-05-31 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的优先级分类方法、装置和*** |
CN107070797A (zh) * | 2017-03-13 | 2017-08-18 | 杭州迪普科技股份有限公司 | 一种报文转发的方法及*** |
CN107547388A (zh) * | 2017-08-24 | 2018-01-05 | 新华三技术有限公司 | 一种报文发送方法及装置 |
CN108965148A (zh) * | 2018-06-27 | 2018-12-07 | 新华三信息安全技术有限公司 | 一种处理器及报文处理方法 |
CN109510780A (zh) * | 2018-12-12 | 2019-03-22 | 锐捷网络股份有限公司 | 流控方法、交换芯片及网络设备 |
CN110138610A (zh) * | 2019-05-10 | 2019-08-16 | 新华三信息安全技术有限公司 | 一种业务报文的发送方法及装置 |
-
2019
- 2019-12-13 CN CN201911279615.1A patent/CN111030943A/zh active Pending
Patent Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1104967A2 (en) * | 1999-12-02 | 2001-06-06 | Nortel Networks Corporation | Priority forwarding in a communication system |
US6987777B1 (en) * | 1999-12-02 | 2006-01-17 | Nortel Networks Ltd | Priority forwarding in a communication system |
CN1474563A (zh) * | 2002-08-06 | 2004-02-11 | ��Ϊ��������˾ | 网络通信中组播报文的转发方法 |
CN1607772A (zh) * | 2003-10-14 | 2005-04-20 | 华为技术有限公司 | 一种通过地址解析协议报文实现数据转发备份的方法 |
CN1913486A (zh) * | 2005-08-10 | 2007-02-14 | 中兴通讯股份有限公司 | 一种增强协议报文安全的方法和装置 |
CN101035077A (zh) * | 2007-04-11 | 2007-09-12 | 华为技术有限公司 | 维持网络通信的方法及网元设备 |
CN101106532A (zh) * | 2007-07-10 | 2008-01-16 | 中兴通讯股份有限公司 | 实现交换芯片与网络处理器混合转发的方法 |
CN101115006A (zh) * | 2007-08-21 | 2008-01-30 | 杭州华三通信技术有限公司 | 三层报文转发方法及路由设备和二层交换模块 |
WO2011012023A1 (zh) * | 2009-07-31 | 2011-02-03 | 中兴通讯股份有限公司 | 一种网络处理器输出端口队列的管理方法及*** |
CN102158414A (zh) * | 2011-04-12 | 2011-08-17 | 中兴通讯股份有限公司 | 中间设备的协议处理方法及装置 |
US20140036694A1 (en) * | 2011-04-29 | 2014-02-06 | Cooper Technologies Company | Multi-path radio transmission input/output devices, network, systems and methods with on demand, prioritized routing protocol |
CN102209035A (zh) * | 2011-05-25 | 2011-10-05 | 杭州华三通信技术有限公司 | 流量转发方法及转发设备 |
WO2014040268A1 (zh) * | 2012-09-14 | 2014-03-20 | 华为技术有限公司 | 一种传输方法、***和终端 |
CN103281257A (zh) * | 2013-06-05 | 2013-09-04 | 杭州华三通信技术有限公司 | 一种协议报文处理方法和设备 |
CN103338157A (zh) * | 2013-07-01 | 2013-10-02 | 杭州华三通信技术有限公司 | 一种多核***核间数据报文缓存方法及设备 |
CN105282041A (zh) * | 2014-07-18 | 2016-01-27 | 中兴通讯股份有限公司 | 基于isis的洪泛方法及装置 |
WO2016033050A1 (en) * | 2014-08-26 | 2016-03-03 | Brocade Communications Systems, Inc. | Enrichment of upper layer protocol content in tcp based session |
CN104394098A (zh) * | 2014-11-20 | 2015-03-04 | 迈普通信技术股份有限公司 | 一种报文处理方法和装置 |
CN105897365A (zh) * | 2016-03-23 | 2016-08-24 | 京信通信技术(广州)有限公司 | 一种处理器的防冲击处理方法及装置 |
CN106789640A (zh) * | 2016-11-10 | 2017-05-31 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的优先级分类方法、装置和*** |
CN107070797A (zh) * | 2017-03-13 | 2017-08-18 | 杭州迪普科技股份有限公司 | 一种报文转发的方法及*** |
CN107547388A (zh) * | 2017-08-24 | 2018-01-05 | 新华三技术有限公司 | 一种报文发送方法及装置 |
CN108965148A (zh) * | 2018-06-27 | 2018-12-07 | 新华三信息安全技术有限公司 | 一种处理器及报文处理方法 |
CN109510780A (zh) * | 2018-12-12 | 2019-03-22 | 锐捷网络股份有限公司 | 流控方法、交换芯片及网络设备 |
CN110138610A (zh) * | 2019-05-10 | 2019-08-16 | 新华三信息安全技术有限公司 | 一种业务报文的发送方法及装置 |
Non-Patent Citations (3)
Title |
---|
THOMAS M.THOMASⅡ等: "《DCN 设计Cisco网络》", 30 September 2001, 机械工业出版社, pages: 18 - 20 * |
刘素芹等: "《TCP/IP协议分析》", 31 May 2012, 中国石油大学出版社, pages: 1 - 11 * |
胡霞等: "《EPON技术及应用 高职》", 31 July 2017, 西安电子科技大学出版社, pages: 50 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112714054A (zh) * | 2020-12-25 | 2021-04-27 | 北京天融信网络安全技术有限公司 | 报文发送方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9665530B2 (en) | Method and system for implementing elastic network interface and interconnection | |
JP6014279B2 (ja) | ネットワーク仮想化のデータ伝送のための方法、デバイス、及びルーティングシステム | |
US11134029B2 (en) | Communication method, communications device, and storage medium | |
RU2651149C2 (ru) | Sdn-контроллер, система центра обработки данных и способ маршрутизируемого соединения | |
KR102342286B1 (ko) | Dcn 메시지 처리 방법, 네트워크 디바이스, 및 네트워크 시스템 | |
EP2846498B1 (en) | Label distribution method and device | |
EP3171545A1 (en) | Data mirroring | |
CN112584520A (zh) | 用于通过隧道组传输和接收数据的方法和*** | |
CN105577540B (zh) | 一种业务链路的建立方法、装置及*** | |
EP3534571A1 (en) | Service packet transmission method, and node apparatus | |
US9667482B2 (en) | Communication apparatus and communication method | |
CN105490937B (zh) | 以太虚拟网络网关切换方法和服务商边缘节点设备 | |
US20230156828A1 (en) | Session establishment method and apparatus, system, and computer storage medium | |
WO2019033964A1 (zh) | 一种传输报文的方法、转发设备、控制器及*** | |
US20070217438A1 (en) | Ring node device and method of connecting terminal to ring node device | |
EP2677702A2 (en) | A method and apparatus for load balance | |
US7170892B2 (en) | Network element, and associated method, for facilitating communication of data between elemental devices | |
US9641355B2 (en) | Communication device, communication method, and program | |
EP3713184A1 (en) | Data transmission method and related device | |
CN105704068B (zh) | 一种业务混合集中处理方法和装置 | |
CN111030943A (zh) | 一种报文的处理方法、装置、转发设备及存储介质 | |
EP3232617B1 (en) | Protection switching method and system, and nodes | |
US20220158919A1 (en) | Information Sharing Method and Apparatus in Redundancy Network, and Computer Storage Medium | |
CN117014384A (zh) | 一种报文传输方法以及报文转发设备 | |
CN102104529B (zh) | 一种pbt网络中实现报文传输的方法和设备 |
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 |
Application publication date: 20200417 |
|
RJ01 | Rejection of invention patent application after publication |