CN102104548B - Method and device for receiving and processing data packets - Google Patents
Method and device for receiving and processing data packets Download PDFInfo
- Publication number
- CN102104548B CN102104548B CN201110050489.XA CN201110050489A CN102104548B CN 102104548 B CN102104548 B CN 102104548B CN 201110050489 A CN201110050489 A CN 201110050489A CN 102104548 B CN102104548 B CN 102104548B
- Authority
- CN
- China
- Prior art keywords
- packet
- information
- data
- traffic classification
- data packet
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种数据包接收处理方法,包括:接收数据包,在接收数据包的过程中,提取流分类操作信息,按预设大小对数据包进行切片得到数据切片,每接收到一个数据切片则存储到该数据包对应的存储空间;当所述数据包接收完毕后,根据所述流分类操作信息对所述数据包进行流分类操作,得到流分类操作结果后,提取相关信息发起后续操作。本发明还提供一种数据包接收处理装置。采用本发明所述的方法,能够显著减少长包的处理的时间,降低系统的延时。
The present invention provides a data packet receiving and processing method, comprising: receiving a data packet, extracting stream classification operation information during the process of receiving the data packet, and slicing the data packet according to a preset size to obtain a data slice, and each time a data slice is received Then store it in the storage space corresponding to the data packet; when the data packet is received, perform a flow classification operation on the data packet according to the flow classification operation information, and after obtaining the flow classification operation result, extract relevant information to initiate a follow-up operation . The invention also provides a device for receiving and processing data packets. By adopting the method of the invention, the processing time of long packets can be significantly reduced, and the delay of the system can be reduced.
Description
技术领域 technical field
本发明涉及到数据通信领域。具体而言,是一种数据包接收处理方法和装置。The present invention relates to the field of data communication. Specifically, it is a method and device for receiving and processing data packets.
背景技术 Background technique
高速数据业务要求系统的处理时延越小越好。当数据包进入数据业务系统时,一般需要经过接收、流分类和存储三个操作。在此过程中,数据包的接收和存储操作所花费的时间和存储空间资源都与数据包的长度成正比关系。按照传统的方法,每一步操作的开始需要等待上一步操作的完成,对于长度很长的数据包,如9600byte,在时间上和器件片内RAM资源上都是很大的开销,甚至成为系统的瓶颈。High-speed data services require that the processing delay of the system be as small as possible. When a data packet enters the data service system, it generally needs to go through three operations: reception, flow classification and storage. During this process, the time spent on receiving and storing the data packet and the storage space resources are proportional to the length of the data packet. According to the traditional method, the start of each step of operation needs to wait for the completion of the previous step. For a data packet with a long length, such as 9600byte, it is very expensive in terms of time and on-chip RAM resources of the device, and even becomes a problem for the system. bottleneck.
当系统采用传统的处理方式时,一个数据包的接收过程所花费的时间为数据包接收的时间t1,数据包流分类操作的时间t2,和数据包存入缓存的时间t3三者之和,其中:When the system adopts the traditional processing method, the time spent on receiving a data packet is the sum of the time t1 for receiving the data packet, the time t2 for the flow classification operation of the data packet, and the time t3 for storing the data packet in the cache. in:
数据包接收的时间t1:t1=len/v1,其中,len为数据包的包长,v1为该数据包的输入端口速率;The time t1 of data packet reception: t1=len/v1, wherein, len is the packet length of data packet, and v1 is the input port rate of this data packet;
数据包流分类操作的时间t2可以看作与数据包的长度无关,为一个固定值;The time t2 of the data packet flow classification operation can be regarded as a fixed value regardless of the length of the data packet;
数据包存入缓存的时间t3:t3=len/v2,其中,len为数据包的包长,v2为系统缓存的存储速率。The time t3 at which the data packet is stored in the cache: t3=len/v2, where len is the packet length of the data packet, and v2 is the storage rate of the system cache.
因此整个过程所耗费的时间为t1+t2+t3=len/v1+t2+len/v2。对于一个固定的系统来说,v1,v2为固定值,所以决定整个过程所耗费时间是数据包的长度len。Therefore, the time consumed by the whole process is t1+t2+t3=len/v1+t2+len/v2. For a fixed system, v1 and v2 are fixed values, so the time taken to determine the entire process is the length len of the data packet.
当系统支持的最大包长为9600byte,数据包输入端口为1Gbps,系统缓存的存储速率为20Gbps时,从开始接收到缓存完毕的最大时延为:9600×8/(109)+9600×8/(2×1010)+t2,即8.064×10-5+t2(s)。When the maximum packet length supported by the system is 9600byte, the data packet input port is 1Gbps, and the storage rate of the system cache is 20Gbps, the maximum delay from the beginning to the end of the cache is: 9600×8/(10 9 )+9600×8 /(2×10 10 )+t2, that is, 8.064×10 -5 +t2(s).
另外,对于数据包的接收,数据端口需要的器件片内RAM资源,应该至少支持两个最大包长的数据整包的空间,即9600×8×2=153.6kb,如果系统输入的端口数目不止一个的情况下,随着端口的数目的增加,这个资源的开销会逐渐变得不可接受。In addition, for the reception of data packets, the on-chip RAM resources of the device required by the data port should at least support the space of two full packets of data with the largest packet length, that is, 9600×8×2=153.6kb. If the number of ports input by the system is more than In the case of one, as the number of ports increases, the overhead of this resource becomes progressively unacceptable.
发明内容 Contents of the invention
本发明要解决的技术问题是提供一种数据包接收处理方法和装置,减小数据处理时延。The technical problem to be solved by the present invention is to provide a data packet receiving and processing method and device to reduce data processing delay.
为了解决上述问题,本发明提供了一种数据包接收处理装置,包括输入控制模块、报文处理模块和包管理模块,其中:In order to solve the above problems, the present invention provides a device for receiving and processing data packets, including an input control module, a message processing module and a packet management module, wherein:
所述输入控制模块用于:接收数据包,在接收数据包的过程中,提取流分类操作信息,按预设大小对数据包进行切片,每接收到一个数据切片将其发送给所述包管理模块,当数据包接收完毕后,将所述流分类操作信息发送给所述报文处理模块;以及,接收所述数据包的流分类操作结果,将所述流分类操作结果发送给包管理模块;The input control module is used to: receive data packets, extract stream classification operation information during the process of receiving data packets, slice data packets according to preset sizes, and send each data slice to the packet management module, after receiving the data packet, sending the flow classification operation information to the packet processing module; and receiving the flow classification operation result of the data packet, and sending the flow classification operation result to the packet management module ;
所述报文处理模块用于:根据所述流分类操作信息对所述数据包进行流分类操作,将得到的流分类操作结果发送给所述输入控制模块;The packet processing module is configured to: perform a flow classification operation on the data packet according to the flow classification operation information, and send the obtained flow classification operation result to the input control module;
所述包管理模块用于:接收到所述输入控制模块发送的所述数据包的数据切片时,存储到该数据包对应的存储空间;以及,接收到所述数据包的流分类操作结果后,提取相关信息发起后续操作。The packet management module is configured to: when receiving the data slice of the data packet sent by the input control module, store it in the storage space corresponding to the data packet; and, after receiving the flow classification operation result of the data packet , to extract relevant information and initiate follow-up operations.
进一步的,上述装置还可具有以下特点,所述预设大小为系统缓存操作的最小单元或最小单元的倍数。Further, the above device may also have the following feature, the preset size is the smallest unit or a multiple of the smallest unit for system cache operation.
进一步的,上述装置还可具有以下特点,所述输入控制模块还用于:将所述数据切片发送给所述包管理模块,和,将所述流分类操作信息发送给所述报文处理模块,和,将所述流分类操作结果发送给包管理模块时,携带所述数据包的输入端口的端口标识信息;Further, the above-mentioned device may also have the following features, the input control module is further configured to: send the data slice to the packet management module, and send the flow classification operation information to the packet processing module , and, when sending the flow classification operation result to the packet management module, carry the port identification information of the input port of the data packet;
所述报文处理模块还用于,接收所述流分类操作信息和端口标识信息时,保存所述端口标识信息,发送所述流分类操作结果给所述输入控制模块时,携带所述端口标识信息;The message processing module is further configured to save the port identification information when receiving the flow classification operation information and port identification information, and carry the port identification information when sending the flow classification operation result to the input control module information;
所述包管理模块还用于:接收到所述数据切片及端口标识信息,或接收到所述流分类操作结果及端口标识信息时,根据所述端口标识信息将所述数据切片或流分类操作结果发送到对应的数据端口处理。The packet management module is further configured to: when receiving the data slice and port identification information, or receive the flow classification operation result and port identification information, perform the data slice or flow classification operation according to the port identification information The result is sent to the corresponding data port for processing.
进一步的,上述装置还可具有以下特点,所述流分类操作结果包括报文修改信息和报文描述符信息;Further, the above device may also have the following features, the flow classification operation result includes packet modification information and packet descriptor information;
所述包管理模块还用于:将所述数据包的报文修改信息存储在所述数据包对应的存储空间,所述提取相关信息包括提取所述数据包的报文描述符信息。The package management module is further configured to: store the message modification information of the data package in the storage space corresponding to the data package, and the extracting related information includes extracting the message descriptor information of the data package.
进一步的,上述装置还可具有以下特点,所述输入控制模块还用于:在接收数据包的过程中,保存所述数据包前N字节数据,从所述数据包的N个字节之后开始进行切片,所述N为所述预设大小与所述报文修改信息差值;在收到所述数据包的流分类操作结果后,将所述前N字节数据与所述数据包的报文修改信息组成包首切片发送给所述包管理模块;Further, the above-mentioned device can also have the following features, the input control module is also used for: in the process of receiving the data packet, save the data of the first N bytes of the data packet, from the N bytes after the data packet Start slicing, and the N is the difference between the preset size and the message modification information; after receiving the flow classification operation result of the data packet, combine the first N bytes of data with the data packet The message modification information of the packet is composed of a packet header slice and sent to the packet management module;
所述包管理模块还用于:将所述数据包的数据切片进行存储时,保留所述数据包对应的存储空间的首个存储块;以及,接收到所述数据包的包首切片时,将其存储在所述数据包对应的存储空间的首个存储块。The packet management module is further configured to: when storing the data slice of the data packet, reserve the first storage block of the storage space corresponding to the data packet; and, when receiving the packet header slice of the data packet, Store it in the first storage block of the storage space corresponding to the data packet.
进一步的,上述装置还可具有以下特点,所述输入控制模块还用于:在接收完一个数据包后,等待并接收所述数据包的流分类操作结果过程中,进行下一数据包的接收操作,并发送所述下一数据包的数据切片至包管理模块;Further, the above-mentioned device can also have the following features, the input control module is also used for: after receiving a data packet, receive the next data packet during the process of waiting for and receiving the flow classification operation result of the data packet operation, and send the data slice of the next data packet to the packet management module;
所述包管理模块还用于:在接收完所述数据包的数据切片,等待所述数据包的流分类操作结果的过程中,接收到所述数据包的下一数据包的数据切片时,将其存储到所述下一数据包对应的存储空间。The packet management module is further configured to: after receiving the data slice of the data packet and waiting for the flow classification operation result of the data packet, when receiving the data slice of the next data packet of the data packet, Store it in the storage space corresponding to the next data packet.
本发明还提供一种数据包接收处理方法,包括:The present invention also provides a data packet receiving and processing method, including:
接收数据包,在接收数据包的过程中,提取流分类操作信息,按预设大小对数据包进行切片得到数据切片,每接收到一个数据切片则存储到该数据包对应的存储空间;Receive data packets, in the process of receiving data packets, extract the flow classification operation information, slice the data packets according to the preset size to obtain data slices, and store each received data slice into the storage space corresponding to the data packet;
当所述数据包接收完毕后,根据所述流分类操作信息对所述数据包进行流分类操作,得到流分类操作结果后,提取相关信息发起后续操作。After the data packet is received, perform a flow classification operation on the data packet according to the flow classification operation information, and after obtaining a flow classification operation result, extract relevant information to initiate a follow-up operation.
进一步的,上述方法还可具有以下特点,所述预设大小为系统缓存操作的最小单元或最小单元的倍数。Further, the above method may also have the following feature, the preset size is the smallest unit or a multiple of the smallest unit for system cache operation.
进一步的,上述方法还可具有以下特点,所述方法还包括:Further, the above-mentioned method can also have the following characteristics, and the method also includes:
当处理多个输入端口的数据包时,使用端口标识信息区分不同输入端口的数据包的数据切片、流分类操作信息和流分类操作结果。When processing data packets of multiple input ports, the port identification information is used to distinguish data slices, flow classification operation information and flow classification operation results of data packets of different input ports.
进一步的,上述方法还可具有以下特点,所述流分类操作结果包括报文修改信息和报文描述符信息;所述提取相关信息包括提取所述数据包的报文描述符信息;Further, the above method may also have the following features, the flow classification operation result includes message modification information and message descriptor information; the extracting related information includes extracting the message descriptor information of the data packet;
所述方法还包括,将所述数据包的报文修改信息存储在所述数据包对应的存储空间。The method further includes storing the message modification information of the data packet in a storage space corresponding to the data packet.
进一步的,上述方法还可具有以下特点,所述方法还包括:在接收数据包的过程中,保存所述数据包前N字节数据,从所述数据包的N个字节之后开始进行切片,所述N为所述预设大小与所述报文修改信息差值;将所述数据包的数据切片进行存储时,保留所述数据包对应的存储空间的首个存储块;Further, the above method may also have the following characteristics, the method also includes: during the process of receiving the data packet, saving the data of the first N bytes of the data packet, and starting to slice after the N bytes of the data packet , the N is the difference between the preset size and the message modification information; when storing the data slice of the data packet, retain the first storage block of the storage space corresponding to the data packet;
在得到所述数据包的流分类操作结果后,将所述前N字节数据与所述数据包的报文修改信息组成包首切片存储在所述数据包对应的存储空间的首个存储块。After obtaining the flow classification operation result of the data packet, the first N bytes of data and the message modification information of the data packet are formed into a packet header slice and stored in the first storage block of the storage space corresponding to the data packet .
进一步的,上述方法还可具有以下特点,所述方法还包括,在接收完一个数据包后,等待并接收所述数据包的流分类操作结果过程中,进行下一数据包的接收、切片以及数据切片存储操作。Further, the above method may also have the following characteristics, the method also includes, after receiving a data packet, during the process of waiting for and receiving the flow classification operation result of the data packet, receiving, slicing and Data slice storage operations.
采用本发明所述的方法,与现有方案相比,由于数据包不需要等待接收完毕,就可以进行存储操作,在一定程度上将存储时间和接收时间复用。因此,整个过程所花费的时间,就大致为数据包接收的时间和一个数据切片的存储时间。对于长包来说,基本上省去了数据包的存储时间,因此,能够显著减少长包的处理的时间,降低系统的延时。By adopting the method of the present invention, compared with the existing scheme, since the data packet does not need to wait for the receiving to be completed, the storage operation can be performed, and the storage time and the receiving time are multiplexed to a certain extent. Therefore, the time spent in the whole process is roughly the time of receiving a data packet and the storage time of a data slice. For the long packet, the storage time of the data packet is basically saved, therefore, the processing time of the long packet can be significantly reduced, and the delay of the system can be reduced.
同时,由于不需要完整的接收一个数据包后再发起存储操作,而是仅仅需要能够支持数据缓存操作的数据大小就可以完成从接收到缓存的操作,因此,器件片内RAM资源的开销,由两个最长包的空间显著减少为两个数据切片。At the same time, since it is not necessary to completely receive a data packet before initiating a storage operation, but only needs to be able to support the data size of the data cache operation, the operation from receiving to buffering can be completed. Therefore, the on-chip RAM resource overhead of the device is determined by The space for the two longest packets is significantly reduced to two data slices.
另外,本发明将流分类操作的部分结果报文修改信息在不超过外部存储空间处理能力的情况下,与报文数据实体一起存入外部存储空间中,然后直接传输给输出模块,不经过队列管理部分,减少了队列管理存储的负担。In addition, the present invention stores part of the message modification information of the flow classification operation into the external storage space together with the message data entity without exceeding the processing capacity of the external storage space, and then directly transmits it to the output module without going through the queue. The management part reduces the burden of queue management storage.
附图说明 Description of drawings
图1是本发明系统框图;Fig. 1 is a system block diagram of the present invention;
图2是本发明IPC与PP的接口示意图;Fig. 2 is the interface schematic diagram of IPC and PP of the present invention;
图3是本发明IPC与PMG的接口示意图;Fig. 3 is the interface schematic diagram of IPC and PMG of the present invention;
图4是本发明IPC的处理示意图;Fig. 4 is the processing schematic diagram of IPC of the present invention;
图5是本发明PMG的处理流程图。FIG. 5 is a flow chart of the PMG process of the present invention.
具体实施方式 Detailed ways
由于流分类操作需要整个数据包的校验信息,必须等到数据包的末尾进入系统才能启动,所以数据包的接收和流分类操作的时间是不可节省的,可以改变的就是数据包存入缓存这个操作。Since the traffic classification operation needs the verification information of the entire data packet, it must wait until the end of the data packet enters the system to start, so the time of receiving the data packet and the flow classification operation cannot be saved. What can be changed is that the data packet is stored in the cache. operate.
本发明的核心思想是:提供一种数据包接收处理方法,让数据包存储操作和数据包接收操作同时开始,让数据包存入缓存的操作不必等到接收操作和流分类操作完成之后再进行,从而节约了数据包存储操作的时间,减小了系统的处理时延和资源消耗。The core idea of the present invention is: to provide a data packet receiving and processing method, so that the data packet storage operation and the data packet receiving operation start at the same time, and the operation of storing the data packet in the cache does not need to wait until the receiving operation and the flow classification operation are completed. Therefore, the time for storing the data packet is saved, and the processing delay and resource consumption of the system are reduced.
本发明提供一种数据包接收处理装置,如图1所示,包括输入控制模块(IPC)、报文处理模块(PP)和包管理模块(PMG)三个部分,其中:The present invention provides a data packet receiving and processing device, as shown in Figure 1, comprising three parts: an input control module (IPC), a message processing module (PP) and a packet management module (PMG), wherein:
所述IPC用于:接收数据包,在接收数据包的过程中,提取流分类操作信息,按预设大小对数据包进行切片,每接收到一个数据切片将其发送给所述PMG,当数据包接收完毕后,将所述流分类操作信息发送给所述PP;以及,接收所述数据包的流分类操作结果,将所述流分类操作结果发送给PMG;The IPC is used to: receive data packets, extract flow classification operation information during the process of receiving data packets, slice the data packets according to the preset size, and send each data slice to the PMG when the data is received After the packet is received, send the flow classification operation information to the PP; and receive the flow classification operation result of the data packet, and send the flow classification operation result to the PMG;
所述PP用于:根据所述流分类操作信息对所述数据包进行流分类操作,将得到的流分类操作结果发送给所述IPC;The PP is configured to: perform a flow classification operation on the data packet according to the flow classification operation information, and send the obtained flow classification operation result to the IPC;
所述PMG用于:接收到所述输入控制模块发送的所述数据包的数据切片时,存储到该数据包对应的存储空间;以及,接收到所述数据包的流分类操作结果后,提取相关信息发起后续操作。数据包可存储在DDR(Double DataRate,双倍速率同步动态随机存储器);中,并在DDR中完成数据包的重组。The PMG is used to: when receiving the data slice of the data packet sent by the input control module, store it in the storage space corresponding to the data packet; and, after receiving the flow classification operation result of the data packet, extract Relevant information initiates follow-up operations. Data packets can be stored in DDR (Double DataRate, double-rate synchronous dynamic random access memory); and complete the reassembly of data packets in DDR.
所述IPC还用于:将所述数据切片发送给所述PMG,和,将所述流分类操作信息发送给所述PP,和,将所述流分类操作结果发送给PMG时,携带所述数据包的输入端口的端口标识信息;The IPC is further configured to: send the data slice to the PMG, and, send the traffic classification operation information to the PP, and, when sending the traffic classification operation result to the PMG, carry the Port identification information of the input port of the data packet;
所述PP还用于,接收所述流分类操作信息和端口标识信息时,保存所述端口标识信息,发送所述流分类操作结果给所述IPC时,携带所述端口标识信息;The PP is further configured to store the port identification information when receiving the flow classification operation information and port identification information, and carry the port identification information when sending the flow classification operation result to the IPC;
所述PMG还用于:接收到所述数据切片及端口标识信息,或接收到所述流分类操作结果及端口标识信息时,根据所述端口标识信息将所述数据切片或流分类操作结果发送到对应的数据端口处理。The PMG is further configured to: when receiving the data slice and port identification information, or receiving the flow classification operation result and port identification information, send the data slice or flow classification operation result according to the port identification information to the corresponding data port for processing.
其中,所述PMG还用于:将所述数据包的报文修改信息存储在所述数据包对应的存储空间,所述提取相关信息包括提取所述数据包的报文描述符信息。Wherein, the PMG is further configured to: store the message modification information of the data packet in the storage space corresponding to the data packet, and the extracting related information includes extracting the message descriptor information of the data packet.
其中,所述输入控制模块还用于:在接收数据包的过程中,保存所述数据包前N字节数据,从所述数据包的N个字节之后开始进行切片,所述N为所述预设大小与所述报文修改信息差值;在收到所述数据包的流分类操作结果后,将所述前N字节数据与所述数据包的报文修改信息组成包首切片发送给所述包管理模块;Wherein, the input control module is also used for: in the process of receiving the data packet, saving the first N bytes of data of the data packet, and starting to slice after the N bytes of the data packet, and the N is the The difference between the preset size and the message modification information; after receiving the flow classification operation result of the data packet, the first N bytes of data and the message modification information of the data packet are used to form a packet header slice Send to the package management module;
所述包管理模块还用于:将所述数据包的数据切片进行存储时,保留所述数据包对应的存储空间的首个存储块;以及,接收到所述数据包的包首切片时,将其存储在所述数据包对应的存储空间的首个存储块。The packet management module is further configured to: when storing the data slice of the data packet, reserve the first storage block of the storage space corresponding to the data packet; and, when receiving the packet header slice of the data packet, Store it in the first storage block of the storage space corresponding to the data packet.
所述端口标识信息为端口号。The port identification information is a port number.
IPC与PP的接口如图2所示。IPC至PP的接口包括有效信号,流分类操作信息、端口号;PP至IPC的接口包括流分类操作结果、端口号和有效信号接口。有效信号接口用于传输使能控制信号,端口号接口用于传输端口标识信息,流分类操作信息接口用于传输流分类操作信息,流分类操作结果接口用于传输流分类操作信息。The interface between IPC and PP is shown in Figure 2. The interface from IPC to PP includes effective signals, traffic classification operation information, and port numbers; the interface from PP to IPC includes traffic classification operation results, port numbers, and effective signal interfaces. The valid signal interface is used to transmit enabling control signals, the port number interface is used to transmit port identification information, the traffic classification operation information interface is used to transmit traffic classification operation information, and the traffic classification operation result interface is used to transmit traffic classification operation information.
IPC与PMG的接口如图3所示,包括有效信号、数据通道、起始信号、结束信号、流分类标识和报文描述符信息接口,其中,有效信号接口用于传输使能控制信号,数据通道用于传输数据切片和包首切片(具体含义见实施例),起始信号接口用于传输数据包的起始信号,结束信号接口用于传输数据包的结束信号,流分类标识接口用于标识是否有流分类操作结果,报文描述符信息接口用于传输报文描述符信息。The interface between IPC and PMG is shown in Figure 3, including effective signal, data channel, start signal, end signal, flow classification identifier and packet descriptor information interface, wherein the effective signal interface is used to transmit enable control signal, data The channel is used to transmit data slices and packet header slices (see the embodiment for specific meanings), the start signal interface is used to transmit the start signal of the data packet, the end signal interface is used to transmit the end signal of the data packet, and the flow classification identification interface is used to Indicates whether there is a traffic classification operation result, and the packet descriptor information interface is used to transmit packet descriptor information.
IPC处的操作流程如下:The operation process at the IPC is as follows:
步骤101,IPC接收输入端口的数据,按预设大小,将数据包进行切片,并根据PP的要求提取流分类操作所需要的信息,简称流分类操作信息;Step 101, the IPC receives the data from the input port, slices the data packet according to the preset size, and extracts the information required for the traffic classification operation according to the requirements of the PP, referred to as the traffic classification operation information;
其中,所述预设大小为系统缓存操作的最小单元或其整数倍。Wherein, the preset size is the smallest unit of system cache operation or an integer multiple thereof.
步骤102,IPC每接收到一个数据切片,就将该数据切片和端口号发送至PMG进行缓存;Step 102, every time the IPC receives a data slice, it sends the data slice and port number to the PMG for caching;
步骤103,当数据包接收完毕后,将数据包的流分类操作信息和端口号发送至PP;Step 103, when the data packet is received, the flow classification operation information and port number of the data packet are sent to the PP;
步骤104,IPC等待并接收PP传回的该数据包流分类操作结果,并且传送给PMG,完成该数据包的传输;在IPC等待PP传回的该数据包流分类操作结果的过程中,可以进行后续数据包的接收和缓存操作。Step 104, the IPC waits for and receives the packet flow classification operation result returned by the PP, and sends it to the PMG to complete the transmission of the packet; while the IPC waits for the packet flow classification operation result returned by the PP, it can Receive and buffer subsequent data packets.
PP处的操作流程如下:The operation process at PP is as follows:
步骤201,PP接收IPC传送给来的数据包的流分类操作信息和该数据包的端口号;Step 201, the PP receives the flow classification operation information and the port number of the data packet sent by the IPC;
步骤202,PP根据流分类操作信息进行数据包的流分类操作;Step 202, the PP performs the flow classification operation of the data packet according to the flow classification operation information;
其中,PP需要保证数据包进行流分类操作的顺序(先进先出)。Wherein, the PP needs to guarantee the sequence (first in, first out) of the flow classification operation of the data packets.
步骤203,PP将流分类操作的结果与该数据包对应的端口信息发送回IPC;Step 203, PP sends the result of the flow classification operation and the port information corresponding to the data packet back to the IPC;
PMG处的操作如下:The operations at the PMG are as follows:
步骤301,PMG接收到IPC发送的数据包的起始信号,申请存储空间;Step 301, PMG receives the start signal of the data packet sent by IPC, and applies for storage space;
步骤302,依次存储IPC发送过来的数据切片直至接收到数据包的结束信号;Step 302, sequentially storing the data slices sent by the IPC until the end signal of the data packet is received;
步骤303,PMG进行后续数据包的存储操作(重复步骤301和步骤302),并同时监控数据包的流分类操作结果;Step 303, PMG carries out the storage operation (repeating step 301 and step 302) of follow-up data packet, and monitors the flow classification operation result of data packet simultaneously;
步骤304,如果接收到数据包的流分类操作结果,将数据包的报文修改信息存储到该数据包对应的存储空间,并提取相应的信息发起下一步操作。Step 304, if the flow classification operation result of the data packet is received, store the message modification information of the data packet in the storage space corresponding to the data packet, and extract the corresponding information to initiate the next operation.
所述相应的信息包括数据包的报文描述符信息。The corresponding information includes packet descriptor information of the data packet.
整个过程中,数据包存入缓存的数据实际上被分为了数据包的实体和数据包的流分类操作结果两部分,数据包的实体部分的存储与数据包接收是同时进行的,而数据包的类分类操作结果的存储是在数据包接收结束后,等待流分类操作结果传回IPC才能进行。During the whole process, the data stored in the cache by the data packet is actually divided into two parts: the entity of the data packet and the result of the flow classification operation of the data packet. The storage of the entity part of the data packet and the reception of the data packet are carried out simultaneously, while The storage of the result of the class classification operation is to wait for the result of the flow classification operation to be sent back to the IPC after receiving the data packet.
本发明不仅适用于单端口输入的系统,同样适用于多端口输入的系统,只需要增加端口标识信息,就能将各个端口号之间的数据进行分离,而每个端口的处理方式与单端口的处理方式一致。单端口情况下,各模块之间传输信息(数据切片,流分类操作信息、流分类操作信息)时,不须携带端口标识信息。The present invention is not only applicable to single-port input systems, but also applicable to multi-port input systems. It only needs to add port identification information to separate the data between each port number, and the processing method of each port is the same as that of a single port. are handled in the same way. In the case of a single port, when transmitting information (data slices, flow classification operation information, flow classification operation information) between modules, it is not necessary to carry port identification information.
为了更清楚地说明本发明的技术方案,下面将介绍一种实现该方案的具体过程,但不作为对本发明的限定。In order to illustrate the technical solution of the present invention more clearly, a specific process for realizing the solution will be introduced below, but not as a limitation of the present invention.
假定,在IPC侧有20个1Gbps的数据端口;PP的处理需要的数据为数据包的前128byte和数据包的CRC校验信息,PP返回48byte报文修改信息添加在数据报文的前面,支持后面的报文修改,另传输66bit报文描述符信息提供给后续报文调度操作;DDR控制器每次存储操作的数据大小为64byte(512bit),因此,可以选择IPC至PMG处的数据位宽为64byte(512bit),数据切片的大小为64byte(512bit);DDR中以2048byte为最小的空间单元;系统支持的数据包长度为64btye-9600byte。Assume that there are 20 1Gbps data ports on the IPC side; the data required for PP processing is the first 128 bytes of the data packet and the CRC check information of the data packet, and the PP returns a 48-byte message modification information to be added in front of the data message, supporting For subsequent message modification, 66bit message descriptor information is transmitted for subsequent message scheduling operations; the data size of each storage operation of the DDR controller is 64byte (512bit), so the data bit width from IPC to PMG can be selected 64byte (512bit), the size of the data slice is 64byte (512bit); 2048byte is the smallest space unit in DDR; the data packet length supported by the system is 64byte-9600byte.
IPC的处理流程如图4所示,单个端口处理数据包的具体步骤如下:The processing flow of IPC is shown in Figure 4, and the specific steps for a single port to process data packets are as follows:
IPC接收到数据包的起始数据后,将数据包的前16byte数据存入预设的FIFO(First Input First Output,先入先出),该FIFO称为头切片FIFO;After the IPC receives the initial data of the data packet, it stores the first 16 bytes of the data packet into the preset FIFO (First Input First Output, first in, first out), which is called the header slice FIFO;
由于报文修改信息为48byte,不足一次缓存操作的大小,因此需要16byte的数据一起组成数据切片,进行缓存操作。由于报文修改信息应该存放在报文数据的前面(便于报文修改操作),因此将报文的前16byte预先截取出来缓存起来,等待报文修改信息传回给IPC时,组装成包首切片,传送给PMG进行缓存,传递该包首切片同时还会传送该数据包对应的报文描述信息。当然,也可以不预存16byte的数据,直接将报文修改信息组成包首切片发送给PMG进行缓存。Since the packet modification information is 48 bytes, which is less than the size of one cache operation, 16 bytes of data are required to form data slices together for cache operations. Since the message modification information should be stored in front of the message data (to facilitate the message modification operation), the first 16 bytes of the message are pre-intercepted and cached, and when the message modification information is sent back to the IPC, it is assembled into a packet header slice , and send it to the PMG for caching, and transfer the first slice of the packet and at the same time transfer the message description information corresponding to the data packet. Of course, the 16-byte data may not be pre-stored, and the packet modification information is directly formed into a packet header slice and sent to the PMG for caching.
IPC提取数据包前128byte,存入固定的存储空间(用端口号进行区分),等待数据包接收完毕后,与CRC校验结果传输给PP,发起流分类操作;The IPC extracts the first 128 bytes of the data packet and stores them in a fixed storage space (differentiated by the port number). After the data packet is received, it transmits the CRC check result to the PP and initiates a flow classification operation;
IPC从数据包的17byte起,按64byte为单位进行数据切片传输,按顺序发送至PMG,对第一个数据切片加上SOP信号,作为新包的起始,对数据包的最后一个切片加上EOP信号,表明数据包的实体信息接收完毕;IPC transmits data slices in units of 64 bytes from the 17byte of the data packet, and sends them to PMG in sequence, adds the SOP signal to the first data slice as the start of a new packet, and adds the SOP signal to the last slice of the data packet EOP signal, indicating that the entity information of the data packet has been received;
监控数据包的流分类操作结果,并将接收到的流分类操作结果与头切片FIFO中的第一个数据组装成数据包首切片,并将对应66bit的报文描述符信息,一起传递给PMG进行存储和发起下一步操作。Monitor the flow classification operation result of the data packet, assemble the received flow classification operation result and the first data in the header slice FIFO into the first slice of the data packet, and pass the corresponding 66-bit packet descriptor information to PMG together Store and initiate the next step.
流分类操作结果,被区分为两部分:1、报文修改信息,该部分不需要传递给系统的队列管理部分,直接与报文一起存在外部缓存中(DDR中),以减轻队列管理的存储负担,在数据包出队时直接传递给系统的输出模块进行报文修改;2、报文描述符信息(66bit),队列管理处理时需要的信息。The result of the flow classification operation is divided into two parts: 1. Message modification information, this part does not need to be passed to the queue management part of the system, and is directly stored in the external cache (in DDR) together with the message to reduce the storage of queue management Burden, when the data packet is dequeued, it is directly passed to the output module of the system for message modification; 2. Message descriptor information (66bit), information required for queue management and processing.
IPC接收到流分类操作结果,主要进行下面的操作:IPC至PMG有两个数据通道,一个是数据通道,传送报文的数据和报文修改信息,然后由PMG缓存至DDR中,一个是报文描述符信息,经PMG后,加上报文对应的PMAU标识(报文的DDR存储空间信息),一起传递后面队列管理。其中,报文修改信息(48byte)和预留的报文前16byte数据,组成一个数据切片(报文的包首切片)进行传输,在传输这个切片的同时,同步的在报文描述符符信息通道,将该数据包的报文描述符信息传递给PMG。The IPC receives the result of the traffic classification operation, and mainly performs the following operations: There are two data channels from the IPC to the PMG, one is a data channel, and the data and modification information of the message are transmitted, and then cached by the PMG to the DDR, and the other is the data channel. After the PMG, the text descriptor information is added with the PMAU identifier corresponding to the message (the DDR storage space information of the message), and passed to the subsequent queue management together. Among them, the message modification information (48byte) and the reserved first 16byte data of the message form a data slice (packet header slice of the message) for transmission. While transmitting this slice, the message descriptor information is synchronously Channel, which transmits the message descriptor information of the data packet to the PMG.
PP在此过程中,处理流程的具体步骤如下:In the process of PP, the specific steps of the processing flow are as follows:
接收IPC发送来的数据包的流分类操作信息和端口号;Receive flow classification operation information and port number of packets sent by IPC;
依次按顺序对数据包进行流分类操作;Carry out flow classification operations on data packets in sequence;
将该数据包的流分类操作结果与该数据包的端口进行同步匹配,然后将流分类操作结果和端口号传送回IPC。Synchronously match the flow classification operation result of the data packet with the port of the data packet, and then transmit the flow classification operation result and the port number back to the IPC.
PMG的处理流程如图5所示,具体步骤如下:The processing flow of PMG is shown in Figure 5, and the specific steps are as follows:
PMG接收到某一个数据切片后,通过数据切片的端口号,将数据切片发送到相应的数据端口;After PMG receives a certain data slice, it sends the data slice to the corresponding data port through the port number of the data slice;
PMG识别数据切片的类型:1、带SOP的起始切片;2、带EOP的结束切片;3、带报文修改信息和描述符信息的包首切片;4、不带有以上信息的普通数据切片;PMG identifies the type of data slice: 1. Start slice with SOP; 2. End slice with EOP; 3. Packet header slice with message modification information and descriptor information; 4. Ordinary data without the above information slice;
PMG接收到带有SOP的起始切片,申请一个数据存储空间单元去缓存该数据包,并且将该数据存储空间单元的第一个地址,预留给包首切片,从第二个地址开始存储起始切片的数据;数据切片存储完成后,记录下该端口下一次存入数据的地址(当前地址加1);将该数据包存储空间的首地址放在一个FIFO(包首切片地址FIFO)中,提供给后面存储包首切片使用;PMG receives the start slice with SOP, applies for a data storage space unit to cache the data packet, and reserves the first address of the data storage space unit for the first slice of the packet, and stores it from the second address The data of the initial slice; after the storage of the data slice is completed, record the address of the data stored in the port next time (the current address plus 1); put the first address of the data packet storage space in a FIFO (packet first slice address FIFO) In , it is provided for the first slice of the storage package to be used later;
PMG接收到不带有任何控制信息的普通数据切片,根据数据切片的端口信息提示的地址,存入DDR中;存储完成后,记录下该端口下一次存入数据的地址(当前地址加1);如果当前地址空间存储满而数据包还未存储完成,申请新的地址空间继续存储;申请的地址空间用链表的形式进行管理并将第一个节点对应的地址作为整个包的标识以提供后面使用;PMG receives a normal data slice without any control information, and stores it in the DDR according to the address prompted by the port information of the data slice; after the storage is completed, record the address of the next data stored in the port (add 1 to the current address) ; If the current address space is full and the data packet has not been stored yet, apply for a new address space to continue storing; the applied address space is managed in the form of a linked list, and the address corresponding to the first node is used as the identifier of the entire packet to provide later use;
PMG接收到带有EOP的起始切片,将该数据包标志记录,以表明该数据包的包实体已经存储完毕,可以接收下一个数据包的信息;具体的,当PMG存储EOP后,会将该数据包的存储空间的首地址存入一个特定FIFO,每个端口有一个FIFO,用于记录所有报文对应存储空间的首地址,PMG接收到该端口的一个报文的包首切片,就从对应的FIFO取出一个地址,将该包首切片存入该地址,这就是报文缓存完成的标志,然后会将该地址信息(作为报文的标识)和对应的报文描述符信息一起完后传递给后续的队列管理模块,进行下一步操作。PMG receives the start slice with EOP, and records the data packet flag to indicate that the packet entity of the data packet has been stored and can receive the information of the next data packet; specifically, when PMG stores EOP, it will The first address of the storage space of the data packet is stored in a specific FIFO, and each port has a FIFO, which is used to record the first address of the corresponding storage space of all messages. When the PMG receives the packet header slice of a message of the port, it Take out an address from the corresponding FIFO, store the packet header slice into this address, this is the sign that the message cache is completed, and then complete the address information (as the message identifier) and the corresponding message descriptor information together After that, it is passed to the subsequent queue management module for the next operation.
PMG接收到带有报文修改信息和报文描述符信息的包首切片,同时提取包首切片地址FIFO的第一个地址,将包首切片存入该地址中,这样就完成了数据的重组;同时提取相应的数据包的信息(数据包存储的首地址和数据包描述符信息等),发起接下来的操作。PMG receives the packet header slice with message modification information and message descriptor information, and at the same time extracts the first address of the packet header slice address FIFO, and stores the packet header slice in this address, thus completing the data reorganization ; Simultaneously extract the information of the corresponding data packet (the first address stored in the data packet and the information of the data packet descriptor, etc.), and initiate the next operation.
本实施例中,由于数据切片的大小是系统操作的最小单元,每个数据切片占用一个数据存储空间单元,当数据切片的大小是系统操作的最小单元的整数倍时,每个数据切片占用多个数据存储空间单元,称为一个存储块,此时,保留首个存储块用于存储包首切片,从第二存储块开始存储数据包实体的数据切片。如果报文修改信息的大小超过一个存储块的存储空间,则预留该数据包对应的存储空间的前多个存储块,用于存储报文修改信息。In this embodiment, since the size of the data slice is the minimum unit of system operation, each data slice occupies one data storage space unit. When the size of the data slice is an integer multiple of the minimum unit of system operation, how much does each data slice occupy A data storage space unit is called a storage block. At this time, the first storage block is reserved for storing the first slice of the packet, and the data slice of the data packet entity is stored from the second storage block. If the size of the message modification information exceeds the storage space of one storage block, the first multiple storage blocks of the storage space corresponding to the data packet are reserved for storing the message modification information.
由于整个过程中,操作的最小单元是以64byte为单位的数据切片,因此,各个端口只要以数据切片为单位进行轮询传输,对每个数据切片附加的端口信息就可以轻松区分;端口内数据包的区分,主要根据数据包控制信息和数据包本身的先后顺序;在PMG中,各端口的写入地址情况,需要分开管理,根据控制信息,按照前面提到的存储操作流程进行操作,就可以在DDR空间内,完成数据包的重组。Since the minimum unit of operation is a data slice in units of 64bytes throughout the process, each port can easily distinguish the port information attached to each data slice as long as each port polls and transmits in units of data slices; the data in the port The division of packets is mainly based on the sequence of data packet control information and data packets themselves; in PMG, the write address of each port needs to be managed separately. According to the control information, operate according to the storage operation process mentioned above. The reassembly of the data packet can be completed in the DDR space.
本发明还提供一种数据包接收处理方法,包括:The present invention also provides a data packet receiving and processing method, including:
接收数据包,在接收数据包的过程中,提取流分类操作信息,按预设大小对数据包进行切片得到数据切片,每接收到一个数据切片则存储到该数据包对应的存储空间;Receive data packets, in the process of receiving data packets, extract the flow classification operation information, slice the data packets according to the preset size to obtain data slices, and store each received data slice into the storage space corresponding to the data packet;
当所述数据包接收完毕后,根据所述流分类操作信息对所述数据包进行流分类操作,得到流分类操作结果后,提取相关信息发起后续操作。After the data packet is received, perform a flow classification operation on the data packet according to the flow classification operation information, and after obtaining a flow classification operation result, extract relevant information to initiate a follow-up operation.
其中,所述预设大小为系统缓存操作的最小单元或最小单元的倍数。Wherein, the preset size is the smallest unit or a multiple of the smallest unit for system cache operation.
其中,当处理多个输入端口的数据包时,使用端口标识信息区分不同输入端口的数据包的数据切片、流分类操作信息和流分类操作结果。Wherein, when processing data packets of multiple input ports, the port identification information is used to distinguish data slices of data packets of different input ports, flow classification operation information and flow classification operation results.
其中,所述流分类操作结果包括报文修改信息和报文描述符信息;所述提取相关信息包括提取所述数据包的报文描述符信息;所述方法还包括,将所述数据包的报文修改信息存储在所述数据包对应的存储空间。Wherein, the flow classification operation result includes message modification information and message descriptor information; the extracting related information includes extracting the message descriptor information of the data packet; the method further includes, The message modification information is stored in the storage space corresponding to the data packet.
所述方法还包括:在接收数据包的过程中,保存所述数据包前N字节数据,从所述数据包的N个字节之后开始进行切片,所述N为所述预设大小与所述报文修改信息差值;将所述数据包的数据切片进行存储时,保留所述数据包对应的存储空间的首个存储块;在得到所述数据包的流分类操作结果后,将所述前N字节数据与所述数据包的报文修改信息组成包首切片存储在所述数据包对应的存储空间的首个存储块。The method further includes: during the process of receiving the data packet, saving the first N bytes of data of the data packet, and starting to slice after N bytes of the data packet, where N is the preset size and The message modifies the information difference; when storing the data slice of the data packet, retaining the first storage block of the storage space corresponding to the data packet; after obtaining the flow classification operation result of the data packet, storing The first N bytes of data and the message modification information of the data packet form a packet header slice stored in the first storage block of the storage space corresponding to the data packet.
所述方法还包括,在接收完一个数据包后,等待并接收所述数据包的流分类操作结果过程中,进行下一数据包的接收、切片以及数据切片存储操作。The method further includes, after receiving a data packet, performing receiving, slicing and data slice storage operations of the next data packet while waiting for and receiving the flow classification operation result of the data packet.
本发明提供的数据包接收处理方法,让数据包存储操作和数据包接收操作同时开始,让数据包存入缓存的操作不必等到接收操作和流分类操作完成之后再进行,从而节约了数据包存储操作的时间,减小了系统的处理时延和资源消耗。The data packet receiving and processing method provided by the present invention allows the data packet storage operation and the data packet receiving operation to start at the same time, and the operation of storing the data packet in the cache does not need to wait until the receiving operation and the flow classification operation are completed, thereby saving data packet storage The operation time reduces the processing delay and resource consumption of the system.
另外,本发明还可减小数据包接收和存储过程的去器件片内RAM资源开销。由于流分类操作只需要数据包的包头(即数据包中固定长度的数据)和数据包接收时的CRC校验的结果,因此需要的缓存不是很大。器件片内RAM资源的最大的消耗,是在数据包的接收-缓存的流程上。如果采用现有方案,在数据包采用接收完毕再发起缓存操作,那么系统至少需要两个长包的器件片内RAM资源来完成此流程。采用本发明方案时,接收-缓存同时进行,即数据包只要接收到足够做一次缓存操作的数据,就进行数据包的缓存处理,将此流程的器件片内RAM资源降低为两次缓存操作的数据的大小。In addition, the present invention can also reduce the RAM resource overhead of the on-chip RAM of the device in the process of receiving and storing data packets. Since the flow classification operation only needs the header of the data packet (that is, the fixed-length data in the data packet) and the result of the CRC check when the data packet is received, the required cache is not very large. The biggest consumption of the on-chip RAM resource of the device is in the flow of data packet reception-buffering. If the existing solution is used to initiate the cache operation after the data packet is received, the system needs at least two long-packet on-chip RAM resources to complete this process. When adopting the scheme of the present invention, receiving-caching is carried out at the same time, that is, as long as the data packet receives enough data for one cache operation, the cache processing of the data packet is carried out, and the device on-chip RAM resource of this process is reduced to two cache operations. The size of the data.
另外,本发明将流分类结果中不需要经过队列管理的部分-报文修改信息,与报文实体一起存入外部空间,虽然增加了外部空间的负担,但是减小了队列管理的存储负担。相对来说,报文管理模块(PMG)的能力要强于队列管理模块,且成本相对较低。In addition, the present invention stores the part of the flow classification result that does not require queue management—the message modification information—in the external space together with the message entity. Although the burden on the external space is increased, the storage burden on the queue management is reduced. Relatively speaking, the capability of the message management module (PMG) is stronger than that of the queue management module, and the cost is relatively low.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110050489.XA CN102104548B (en) | 2011-03-02 | 2011-03-02 | Method and device for receiving and processing data packets |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110050489.XA CN102104548B (en) | 2011-03-02 | 2011-03-02 | Method and device for receiving and processing data packets |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102104548A CN102104548A (en) | 2011-06-22 |
| CN102104548B true CN102104548B (en) | 2015-06-10 |
Family
ID=44157085
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201110050489.XA Active CN102104548B (en) | 2011-03-02 | 2011-03-02 | Method and device for receiving and processing data packets |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN102104548B (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
| US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
| US9118618B2 (en) * | 2012-03-29 | 2015-08-25 | A10 Networks, Inc. | Hardware-based packet editor |
| CN102780618B (en) * | 2012-07-23 | 2014-11-19 | 华为技术有限公司 | Method and device for data message transmission |
| US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
| US10038693B2 (en) | 2013-05-03 | 2018-07-31 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
| US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
| US10268467B2 (en) | 2014-11-11 | 2019-04-23 | A10 Networks, Inc. | Policy-driven management of application traffic for providing services to cloud-based applications |
| CN119383146B (en) * | 2021-07-23 | 2026-03-20 | 合肥忆芯电子科技有限公司 | Message forwarding circuit |
| CN114168085B (en) * | 2021-12-16 | 2024-02-20 | 潍柴动力股份有限公司 | Variable processing methods, devices, equipment and storage media |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100571195C (en) * | 2005-07-27 | 2009-12-16 | 华为技术有限公司 | Multi-port Ethernet switching device and data transmission method |
| CN100550833C (en) * | 2005-11-24 | 2009-10-14 | 武汉烽火网络有限责任公司 | The method and apparatus of Ethernet cache exchanging and scheduling |
| CN101136854B (en) * | 2007-03-19 | 2010-08-18 | 中兴通讯股份有限公司 | A method and device for realizing line-speed processing of data packets |
-
2011
- 2011-03-02 CN CN201110050489.XA patent/CN102104548B/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| CN102104548A (en) | 2011-06-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102104548B (en) | Method and device for receiving and processing data packets | |
| JP5863076B2 (en) | Method, apparatus, and system for reconstructing and reordering packets | |
| US8310934B2 (en) | Method and device for controlling information channel flow | |
| EP3657744B1 (en) | Message processing | |
| CN104065588B (en) | A kind of device and method of data packet dispatching and caching | |
| US20160380895A1 (en) | Traffic Management Implementation Method and Apparatus, and Network Device | |
| US9641916B2 (en) | Optical channel data unit service transmission apparatus and method | |
| EP3166269B1 (en) | Queue management method and apparatus | |
| CN108521343A (en) | A kind of processing method and processing device of OAM message | |
| US20030012223A1 (en) | System and method for processing bandwidth allocation messages | |
| CN115695553A (en) | A data transmission system and method for a synchronization plane and a management plane between FPGA chips | |
| CN108614792B (en) | 1394 transaction layer data packet storage management method and circuit | |
| CN102480408B (en) | Scheduling method and device for pseudo wire emulation system | |
| WO2017063457A1 (en) | Rate adaptation method and apparatus, and computer storage medium | |
| CN110661745B (en) | Overhead transmission method, device, equipment and computer readable storage medium | |
| CN105245313B (en) | Unmanned plane multi-load data dynamic multiplexing method | |
| US11799576B2 (en) | Data sending method and apparatus, and FlexE switching system | |
| CN103634229B (en) | A kind of Inter-chip communication method and control device | |
| CN102308538B (en) | Message processing method and device | |
| WO2011026508A1 (en) | Method for distributing data traffic over radio links | |
| CN101119152B (en) | Multi-service transmission method and device in microwave communication | |
| CN100401731C (en) | High-speed data link control protocol receiving processing module and data processing method thereof | |
| JP5313155B2 (en) | Data transmission method and system in time division multiplexing mode | |
| CN101742489A (en) | Apparatus for performing downlink or uplink processing in wireless communication system and data processing method | |
| CN120711315B (en) | A central office optical transport network (OTN) device and service processing method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| C41 | Transfer of patent application or patent right or utility model | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20151116 Address after: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice Patentee after: ZTE Corp. Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice Patentee before: ZTE Corp. |
|
| TR01 | Transfer of patent right |
Effective date of registration: 20221207 Address after: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong Patentee before: ZTE Corp. Patentee before: SANECHIPS TECHNOLOGY Co.,Ltd. |
|
| TR01 | Transfer of patent right |