WO2008106879A1 - Data transfer process device and method - Google Patents

Data transfer process device and method Download PDF

Info

Publication number
WO2008106879A1
WO2008106879A1 PCT/CN2008/070350 CN2008070350W WO2008106879A1 WO 2008106879 A1 WO2008106879 A1 WO 2008106879A1 CN 2008070350 W CN2008070350 W CN 2008070350W WO 2008106879 A1 WO2008106879 A1 WO 2008106879A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
forwarding
data packet
message
unit
Prior art date
Application number
PCT/CN2008/070350
Other languages
French (fr)
Chinese (zh)
Inventor
Yang Xia
Yinghui Guo
Yunquan Xue
Qiuming Gao
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of WO2008106879A1 publication Critical patent/WO2008106879A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Definitions

  • a multi-core processor integrates multiple general-purpose processor cores on a single physical chip that share an external bus and memory. Each core has a completely separate CPU structure, such as register banks, pipelines, arithmetic units, caches, etc., which can operate as a stand-alone CPU. When the processor's main frequency and power consumption become bottlenecks, multi-core technology can greatly improve the processing power of the chip.
  • Multi-core processor application in network processing a key technical point in software design is the choice of system architecture.
  • multi-core processor system architecture is generally divided into symmetric multi-processor (SMP, Symmetric Multi Process) and asymmetric multi-processor. Way (AMP, Asymmetric Multi Process).
  • SMP Symmetric Multi Process
  • AMP Asymmetric Multi Process
  • FIG. 1 is a schematic diagram of a prior art AMP architecture system.
  • Each CPU has an independent operating system such as OSl (Operation systeml), 0S2, and so on.
  • OSl Operating systeml
  • 0S2 0S2
  • different processors handle different tasks. For example, one processor only processes the protocol of the control plane, and the other processor only processes the data forwarding of the data plane.
  • the AMP method has little to do with the operating system. Resource allocation, sharing, and inter-CPU communication are all defined and designed by the user.
  • FIG. 2 is a prior art SMP Schematic diagram of the architecture system.
  • each processor handles various types of resource management on average, and the process allocation is done by the operating system OS.
  • the SMP method has good scalability. When you increase the number of cores, the application does not need to be modified.
  • the OS can see and manage all resources, automatically handle resource sharing, and arbitrate issues.
  • the OS dynamically allocates and adjusts the load on each core to optimize system performance. Inter-core communication and synchronization are done through the OS kernel and are highly efficient.
  • the main object of embodiments of the present invention is to provide a method and apparatus for data forwarding processing.
  • the purpose of the embodiment of the present invention is achieved by the following technical solutions:
  • An embodiment of the present invention provides an apparatus for data forwarding processing, including:
  • a receiving unit configured to receive a data packet to be forwarded, and extract forwarding information of the data packet
  • a buffer unit configured to buffer a data packet received by the receiving unit
  • a forwarding processing unit configured to extract, according to the forwarding information extracted by the receiving unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance;
  • a sending unit configured to extract, according to the sending information extracted by the forwarding processing unit, the corresponding data packet in the buffer unit, and forward the extracted data packet to the destination port.
  • the embodiment of the present invention further provides a data forwarding method, including:
  • the receiving unit puts the received data message into the cache unit
  • the forwarding processing unit forwarding, by the forwarding processing unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance according to the forwarding information, and transmitting the sending information;
  • the sending unit receives the sending information, and extracts a corresponding one in the buffer unit according to the sending information.
  • the data packet is forwarded to the destination port.
  • the data forwarding processing method and apparatus provided by the embodiments of the present invention do not require an operating system and only provide one heap and stack, which is suitable for efficient data forwarding processing. Compared with the single task under the operating system, the resource usage is small, the software and hardware overhead is reduced, and the complexity of the software is reduced, and the processing performance is improved.
  • FIG. 1 is a schematic diagram of a prior art AMP framework system
  • FIG. 2 is a schematic diagram of a prior art SMP architecture system
  • FIG. 3 is a schematic diagram of an apparatus for data forwarding processing according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of a CPU parallel processing module according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a CPU serial processing module according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a processing module in which CPU strings are combined in parallel according to an embodiment of the present invention
  • FIG. 7 is a schematic structural diagram of a system for data forwarding processing according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a method for data forwarding processing according to an embodiment of the present invention.
  • the device for data forwarding processing does not need an operating system, but only provides a heap and a stack, which is equivalent to a single task, and can execute an interrupt processing function in response to an interrupt.
  • FIG. 3 is a schematic diagram of a device for data forwarding processing according to an embodiment of the present invention.
  • the device includes:
  • the receiving unit is configured to receive the data packet to be forwarded, and extract the forwarding information of the data packet.
  • the forwarding information of the data packet includes: Packet length information, packet start address information, and port number information of received packets.
  • a buffer unit configured to buffer a data packet received by the receiving unit;
  • the receiving unit receives the data packet to be forwarded, and first puts the data packet into the cache unit.
  • the forwarding information of the data packet may also be extracted first, and then the data packet is put into the cache unit.
  • a forwarding processing unit configured to extract, according to the forwarding information extracted by the receiving unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance;
  • the sending information of the data packet includes: the message ending information, the packet length information, and the packet start address information.
  • a sending unit configured to extract, according to the sending information extracted by the forwarding processing unit, the corresponding data packet in the buffer unit, and forward the extracted data packet to the destination port.
  • the forwarding processing unit implemented by the present invention can be completed by at least two CPUs.
  • the forwarding processing unit is composed of at least two CPUs, each of the CPUs includes a packet processing module, configured to process the received packets, and a packet processing sending module, configured to process the packets.
  • the information processed by the module is sent to the subsequent CPU.
  • the processing of the packet by the CPU needs to be determined according to a specific service.
  • the distribution of the multi-core processor in the forwarding processing unit may be as follows: One is a parallel processing module, that is, all forwarding processes of a packet are completed in one CPU, so that all forwarding is performed. The CPU runs the same code.
  • FIG. 4 is a schematic diagram of a CPU parallel processing module according to an embodiment of the present invention; the other is a serial processing module, that is, each or each group of CPUs completes a processing function, and all processing functions are serially processed. The way to complete step by step. Referring to FIG. 5, FIG.
  • FIG. 5 is a schematic diagram of a CPU serial processing module according to an embodiment of the present invention; if a message that does not require a certain processing function can pass through a column processor, for example, the CPU 1 completes the classification function, the CPU 2 completes
  • the table lookup function if a message does not need to be processed by the classification function, can directly perform CPU2 processing through the CPU 1.
  • There are many ways to specifically transmit it for example: By specifying different in the message forwarding message The CPU's destination address selects a different CPU.
  • FIG. 6 is a schematic diagram of a processing module in which CPU strings are combined in parallel according to an embodiment of the present invention.
  • the distributed processing manner of the CPU in the forwarding processing unit can be freely combined according to specific conditions, for example, a suitable distributed processing manner needs to be selected considering the hardware system structure characteristics of the CPU.
  • FIG. 7 is a schematic structural diagram of a system for data forwarding processing according to an embodiment of the present invention; in FIG. 7, the forwarding processing unit includes:
  • the uplink forwarding processing sub-unit is configured to: when the data packet to be forwarded received by the receiving unit is an uplink data packet, extract the uplink data packet by using multiple parallel processors according to the forwarding information extracted by the receiving unit Sending information; for example, the uplink forwarding processing subunit is forwarded by the CPU 1, CPU 2, and CPU 3 in parallel, so that CPU1, CPU2, and CPU3 run the same code, that is, the same code is run while supporting IP forwarding and QoS.
  • the IP forwarding and QoS processing functions can be completed by one of CPU1, CPU2 and CPU3;
  • the downlink forwarding processing sub-unit is configured to: when the data packet to be forwarded received by the receiving unit is a downlink data packet, perform, according to the forwarding information extracted by the receiving unit, the downlink data packet by using another parallel processor The enqueue process is performed, and then the queue polling process is performed by the processor in series with the plurality of parallel processors in the other path, and the transmission information of the downlink data message is extracted in the order after the queue polling.
  • the downlink forwarding processing sub-unit is forwarded by the CPU 4, the CPU 5, the CPU 6, the CPU 7, and the CPU 8 in a parallel and serial manner, that is, the CPU 4 and the CPU 5 respectively support the TM (Token Machine) queue in a serial manner.
  • the CPU 6, CPU 7, and CPU 8 simultaneously support IP forwarding, QoS, and GTM/TM enqueue processing functions in parallel. In this way, during the downlink forwarding process, IP forwarding, QoS, and GTM/TM enqueue processing functions can be completed by one of CPU6, CPU7, and CPU8.
  • the TM queue polling and GTS queue polling processing functions need to be completed by the CPU 4 and the CPU 5, respectively.
  • the receiving and transmitting modules of the line side and the network side interface can also be completed by hardware or software. Need to say It is obvious that the present invention can support some complicated applications, that is, different CPU distribution patterns can be designed according to the needs of different application services. For example, according to the firewall service, a distribution manner of a CPU that is advantageous for implementing the service is designed.
  • FIG. 8 is a schematic diagram of a method for data forwarding processing according to an embodiment of the present invention.
  • Step 801 The receiving unit puts the received data packet into a cache unit.
  • a buffer header may be configured with a header pointer for each data packet for indexing the data packet.
  • Step 802 The receiving unit extracts the forwarding information of the data packet and sends the forwarding information to the forwarding processing unit.
  • the forwarding information of the data packet includes at least: packet end information and packet length information.
  • the packet start address information and the port number information of the received packet, and the data structure of the forwarding information of the data packet may be as follows:
  • EOP indicates the end of message message. Can be represented by 0 and 1. 0 means not the last message of the message; 1 means the last message of the message.
  • Status is used to indicate various error messages of RX and message broadcast/multicast/unicast information, which can be designed according to the required number of bits.
  • Packet Lenth indicates the length of the data packet.
  • Packet address indicates the starting address of the data packet.
  • the Source Port indicates the port number of the data received.
  • Step 803 The forwarding processing unit extracts, according to the forwarding information, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance, and sends the sending information.
  • the information about the data packet includes: the packet end information, the packet length information, and the packet start address information, and the data packet sending information.
  • the data structure can be as follows: Packet Lenth Packet address
  • EOP indicates the end of message message. It can be represented by 0 and 1, 0 means not the last message of the message; 1 means the last message of the message.
  • Packet Lenth indicates the length of the data packet.
  • Packet address indicates the starting address of the data packet.
  • the forwarding processing unit implemented by the present invention can be completed by at least two CPUs. Each of the CPUs processes the received message and sends the processed information to the subsequent CPU.
  • the message format of the message delivery between the multiple CPUs may be as follows:
  • the message information CPU forwards the processing information, wherein the message information indicates that the EOP, Packet Lenth, Packet address, etc. in the previous message are identified. All information.
  • the processing of the packet by the CPU needs to be determined according to a specific service.
  • Step 804 The sending unit receives the sending information, and extracts the corresponding data packet in the buffer unit according to the sending information, and forwards the data packet to the destination port.
  • the sending unit may extract the data packet corresponding to the buffer unit according to the header pointer of the data packet mentioned above and the sending information.
  • the method and apparatus for data forwarding processing provided by the embodiments of the present invention do not require an operating system, and only provide one heap and stack. Compared with a single task under the operating system, the resource occupation is less, and the software and hardware overhead is reduced. It also reduces the complexity of the software, which is suitable for efficient data forwarding processing.
  • the embodiment of the present invention provides a distribution processing module for forwarding a CPU in a CPU module, which can be flexibly selected according to different service requirements, thereby increasing forwarding capability and ensuring forwarding performance.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

A data transfer process device, mainly includes: a receiving unit for receiving data messages to be transferred, and extracting transfer information of the data messages; a buffer unit for buffering the data messages received by the receiving unit; a transfer process unit for extracting sending information of the data messages according to the transfer information extracted by the receiving unit, through multiple serial and/or parallel processors established in advance, and sending it to sending unit; a sending unit for extracting corresponding data messages in the buffer unit according to the sending information extracted by the transfer process unit, and transferring the data messages to destination ports. And a data transfer process method. By means of the method and device, the operating system is needless, and it is suitable for effective data transfer process. Meanwhile, the cost of software and hardware, simultaneously the complexity of software can be reduced, and the process performance can be enhanced.

Description

说 明 书 数据转发处理的方法和装置 技术领域 本发明涉及通信技术, 尤其涉及一种数据转发处理的方法和装置。 背景技术 多核处理器就是在一个物理芯片上集成多个通用处理器核心, 这些处理器 核心共用外部总线和存储器。 各核有完整独立的 CPU结构, 例如寄存器组、 流 水线、 运算单元、 緩存等, 能够作为一个独立 CPU运行。 在处理器主频和功耗 成为瓶颈的时候, 多核技术能够大幅度提高芯片的处理能力。  TECHNICAL FIELD The present invention relates to communications technologies, and in particular, to a data forwarding processing method and apparatus. BACKGROUND OF THE INVENTION A multi-core processor integrates multiple general-purpose processor cores on a single physical chip that share an external bus and memory. Each core has a completely separate CPU structure, such as register banks, pipelines, arithmetic units, caches, etc., which can operate as a stand-alone CPU. When the processor's main frequency and power consumption become bottlenecks, multi-core technology can greatly improve the processing power of the chip.
多核处理器应用在网络处理中, 软件设计上的一个关键技术点就是系统架 构的选择, 现在多核处理器系统架构一般分为对称多处理器方式(SMP , Symmetric Multi Process)和非对称多处理器方式 (AMP , Asymmetric Multi Process)。  Multi-core processor application in network processing, a key technical point in software design is the choice of system architecture. Now multi-core processor system architecture is generally divided into symmetric multi-processor (SMP, Symmetric Multi Process) and asymmetric multi-processor. Way (AMP, Asymmetric Multi Process).
AMP是不同的核处理不同的任务。 在这种情况下, 各个核运行独立的操作 系统。 参考图 1 , 图 1为现有技术 AMP构架系统示意图。 每个 CPU都有独立的操 作系统如 OSl ( Operation systeml ) , 0S2等。 在 AMP方式下, 各个不同的处理 器处理不同的任务。 比如一个处理器只处理控制平面的协议, 另外一个处理器 只处理数据平面的数据转发。 AMP方式因为本身和操作系统的关系不大, 资源 分配, 共享, CPU间通讯等都由用户自己定义和设计的。  AMP is a different core for different tasks. In this case, each core runs a separate operating system. Referring to Figure 1, Figure 1 is a schematic diagram of a prior art AMP architecture system. Each CPU has an independent operating system such as OSl (Operation systeml), 0S2, and so on. In the AMP mode, different processors handle different tasks. For example, one processor only processes the protocol of the control plane, and the other processor only processes the data forwarding of the data plane. The AMP method has little to do with the operating system. Resource allocation, sharing, and inter-CPU communication are all defined and designed by the user.
在 AMP方式下, 当增加核的数目时, 应用程序的结构需要重新设计, 且设 计复杂度不是线性增加的, 复杂度会增加很多。 且核间同步核通讯通过应用层 消息来实现, 效率低。  In the AMP mode, when the number of cores is increased, the structure of the application needs to be redesigned, and the design complexity is not linearly increased, and the complexity is much increased. And inter-core synchronous core communication is realized by application layer messages, which is inefficient.
SMP是指各个处理器都可以平等的处理任意的任务。 在这种情况下, 只有 一个操作系统在运行, 管理所有的处理器和资源。参考图 2, 图 2为现有技术 SMP 构架系统示意图。 在这种模式下, 各个处理器平均分担处理各种类型的资源管 理, 进程分配等工作都由操作系统 OS完成。 SMP方式可扩容性好。 增加核的数 目时候, 应用程序不需要修改。 OS能够看到和管理所有资源, 自动处理资源共 享, 仲裁问题。 OS动态分配和调整各个核上的负载, 使系统性能达到最优。 核 间通讯和同步通过 OS内核完成, 效率高。 因为操作系统能够管理所有资源, 所 以容易获得系统运行的各种统计信息, 以评估和优化系统。 由于 SMP对操作系 统要求较高, 目前支持多核处理器 SMP方式的实时操作系统不多。 且 SMP方式 下, 性能不能完全满足高效的数据转发平面的需求, 且对一些复杂的应用不能 支持。 发明内容 SMP means that each processor can handle any task equally. In this case, only one operating system is running, managing all the processors and resources. Referring to Figure 2, Figure 2 is a prior art SMP Schematic diagram of the architecture system. In this mode, each processor handles various types of resource management on average, and the process allocation is done by the operating system OS. The SMP method has good scalability. When you increase the number of cores, the application does not need to be modified. The OS can see and manage all resources, automatically handle resource sharing, and arbitrate issues. The OS dynamically allocates and adjusts the load on each core to optimize system performance. Inter-core communication and synchronization are done through the OS kernel and are highly efficient. Because the operating system is capable of managing all resources, it is easy to obtain various statistics of the system's operation to evaluate and optimize the system. Due to the high operating system requirements of SMP, there are not many real-time operating systems that support multi-core processor SMP. In SMP mode, the performance cannot fully meet the requirements of an efficient data forwarding plane, and it cannot be supported by some complex applications. Summary of the invention
有鉴于此, 本发明实施例的主要目的是提供一种数据转发处理的方法和装 置。 本发明实施例的目的是通过以下技术方案实现的:  In view of this, the main object of embodiments of the present invention is to provide a method and apparatus for data forwarding processing. The purpose of the embodiment of the present invention is achieved by the following technical solutions:
本发明实施例提供一种数据转发处理的装置, 包括:  An embodiment of the present invention provides an apparatus for data forwarding processing, including:
接收单元, 用于接收需转发的数据报文, 并提取所述数据报文的转发信息; 緩存单元, 用于緩存所述接收单元接收的数据报文;  a receiving unit, configured to receive a data packet to be forwarded, and extract forwarding information of the data packet; and a buffer unit, configured to buffer a data packet received by the receiving unit;
转发处理单元, 用于根据所述接收单元提取的转发信息, 通过预先设置的 多个串行和 /或并行的处理器提取所述数据报文的发送信息;  a forwarding processing unit, configured to extract, according to the forwarding information extracted by the receiving unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance;
发送单元, 用于根据所述转发处理单元提取的发送信息提取緩存单元中的 所对应的数据报文, 并将提取的数据报文转发给目的端口。  And a sending unit, configured to extract, according to the sending information extracted by the forwarding processing unit, the corresponding data packet in the buffer unit, and forward the extracted data packet to the destination port.
此外, 本发明实施例还提供一种数据转发的方法, 包括:  In addition, the embodiment of the present invention further provides a data forwarding method, including:
接收单元将所接收的数据报文放入緩存单元;  The receiving unit puts the received data message into the cache unit;
接收单元提取所述数据报文的转发信息发送给转发处理单元;  Receiving, by the receiving unit, the forwarding information of the data packet, and sending the forwarding information to the forwarding processing unit;
转发处理单元根据所述转发信息通过预先设置的多个串行和 /或并行的处理 器提取所述数据报文的发送信息, 发送所述发送信息;  And forwarding, by the forwarding processing unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance according to the forwarding information, and transmitting the sending information;
发送单元接收所述发送信息, 根据所述发送信息提取緩存单元中的所对应 的数据报文并转发给目的端口。 The sending unit receives the sending information, and extracts a corresponding one in the buffer unit according to the sending information. The data packet is forwarded to the destination port.
由上述本发明实施例提供的技术方案可以看出, 本发明实施例提供的数据 转发处理的方法和装置, 不需要操作系统, 只提供一个堆和栈, 适合需要高效 的数据转发处理。 且与操作系统下的单任务相比, 资源占用少, 减少了软件和 硬件的开销, 同时也降低了软件的复杂度, 提高处理性能。 附图说明  It can be seen from the technical solutions provided by the foregoing embodiments of the present invention that the data forwarding processing method and apparatus provided by the embodiments of the present invention do not require an operating system and only provide one heap and stack, which is suitable for efficient data forwarding processing. Compared with the single task under the operating system, the resource usage is small, the software and hardware overhead is reduced, and the complexity of the software is reduced, and the processing performance is improved. DRAWINGS
图 1是现有技术 AMP构架系统示意图;  1 is a schematic diagram of a prior art AMP framework system;
图 2是现有技术 SMP构架系统示意图;  2 is a schematic diagram of a prior art SMP architecture system;
图 3是本发明实施例的数据转发处理的装置示意图;  3 is a schematic diagram of an apparatus for data forwarding processing according to an embodiment of the present invention;
图 4是本发明实施例的 CPU并行处理模块的示意图;  4 is a schematic diagram of a CPU parallel processing module according to an embodiment of the present invention;
图 5是本发明实施例的 CPU串行处理模块的示意图;  FIG. 5 is a schematic diagram of a CPU serial processing module according to an embodiment of the present invention; FIG.
图 6是本发明实施例的 CPU串并行结合的处理模块的示意图;  6 is a schematic diagram of a processing module in which CPU strings are combined in parallel according to an embodiment of the present invention;
图 7是本发明实施例的数据转发处理的系统架构示意图;  7 is a schematic structural diagram of a system for data forwarding processing according to an embodiment of the present invention;
图 8是本发明实施例的数据转发处理的方法示意图。  FIG. 8 is a schematic diagram of a method for data forwarding processing according to an embodiment of the present invention.
具体实施方式 detailed description
为使本发明的目的、 技术方案和优点更加清楚明白, 以下举实施例, 并参 照附图, 对本发明进一步详细说明。  The present invention will be further described in detail below with reference to the accompanying drawings.
在本发明实施例中, 数据转发处理的装置不需要操作系统, 只提供一个堆 和栈, 相当于一个单任务, 可以响应中断, 执行中断处理函数。  In the embodiment of the present invention, the device for data forwarding processing does not need an operating system, but only provides a heap and a stack, which is equivalent to a single task, and can execute an interrupt processing function in response to an interrupt.
本发明实施例提供了一种数据转发处理的装置, 可参考图 3 , 图 3是本发明 实施例的数据转发处理的装置示意图。 所述装置包括:  The embodiment of the present invention provides a device for data forwarding processing. Referring to FIG. 3, FIG. 3 is a schematic diagram of a device for data forwarding processing according to an embodiment of the present invention. The device includes:
接收单元, 用于接收需转发的数据报文, 并提取所述数据报文的转发信息; 在本发明实施例的具体实现中, 所述数据报文的转发信息至少包含: 报文 结束信息、 报文长度信息、 报文起始地址信息和接收报文的端口号信息。 緩存单元, 用于緩存所述接收单元接收的数据报文; The receiving unit is configured to receive the data packet to be forwarded, and extract the forwarding information of the data packet. In a specific implementation of the embodiment of the present invention, the forwarding information of the data packet includes: Packet length information, packet start address information, and port number information of received packets. a buffer unit, configured to buffer a data packet received by the receiving unit;
在本发明实施例的具体实现中, 所述接收单元接收到需转发的数据报文, 先将所述数据报文放入緩存单元。 也可以先提取所述数据报文的转发信息, 然 后再将数据报文放入緩存单元。  In a specific implementation of the embodiment of the present invention, the receiving unit receives the data packet to be forwarded, and first puts the data packet into the cache unit. The forwarding information of the data packet may also be extracted first, and then the data packet is put into the cache unit.
转发处理单元, 用于根据所述接收单元提取的转发信息, 通过预先设置的 多个串行和 /或并行的处理器提取所述数据报文的发送信息;  a forwarding processing unit, configured to extract, according to the forwarding information extracted by the receiving unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance;
本发明实施例的具体实现中, 所述数据报文的发送信息至少包含: 所述报 文结束信息、 所述报文长度信息和所述报文起始地址信息。  In a specific implementation of the embodiment of the present invention, the sending information of the data packet includes: the message ending information, the packet length information, and the packet start address information.
发送单元, 用于根据所述转发处理单元提取的发送信息提取緩存单元中的 所对应的数据报文, 并将提取的数据报文转发给目的端口。  And a sending unit, configured to extract, according to the sending information extracted by the forwarding processing unit, the corresponding data packet in the buffer unit, and forward the extracted data packet to the destination port.
为了进行高效地数据转发处理, 本发明实施的转发处理单元可以由至少两 个 CPU来完成。  In order to perform efficient data forwarding processing, the forwarding processing unit implemented by the present invention can be completed by at least two CPUs.
相应地,所述转发处理单元由至少两个 CPU组成,每个所述 CPU包含报文处 理模块, 用于对所收到的报文进行处理; 报文处理发送模块, 用于将报文处理 模块所处理的信息发送给后续的 CPU。  Correspondingly, the forwarding processing unit is composed of at least two CPUs, each of the CPUs includes a packet processing module, configured to process the received packets, and a packet processing sending module, configured to process the packets. The information processed by the module is sent to the subsequent CPU.
在本发明实施例的具体实现中, CPU对报文的处理需要根据具体的业务来 决定。  In a specific implementation of the embodiment of the present invention, the processing of the packet by the CPU needs to be determined according to a specific service.
在本发明实施例中, 转发处理单元中的多核处理器的分布可以有以下几种: 一种是并行处理模块, 即一个报文的全部转发流程在一个 CPU中完成, 这样, 所有进行转发的 CPU运行同样的代码。可参考图 4,图 4是本发明实施例的 CPU 并行处理模块的示意图; 另一种是串行处理模块, 即每个或者每组 CPU完成一 个处理功能, 所有的处理功能釆用串行处理方式一步一步地完成。 可参考图 5, 图 5是本发明实施例的 CPU串行处理模块的示意图; 如果不需要某个处理功能 的报文可以透过某列处理器, 例如, CPU 1完成分类功能, CPU 2完成查表功 能,如果某报文不需要经过分类功能处理,则可以透过 CPU 1 ,而直接进行 CPU2 的处理。 具体透过的方式有许多种, 例如: 通过在报文转发消息中指定不同的 CPU的目的地址选择不同的 CPU。 此外, 还有一种方式可以是并行和串行相结 合。 可参考图 6, 图 6是本发明实施例的 CPU串并行结合的处理模块的示意图。 在具体的实现中, 转发处理单元中 CPU的分布处理方式可以根据具体情况自由 进行组合, 比如需要考虑 CPU的硬件系统结构特点选择适合的分布处理方式。 In the embodiment of the present invention, the distribution of the multi-core processor in the forwarding processing unit may be as follows: One is a parallel processing module, that is, all forwarding processes of a packet are completed in one CPU, so that all forwarding is performed. The CPU runs the same code. Referring to FIG. 4, FIG. 4 is a schematic diagram of a CPU parallel processing module according to an embodiment of the present invention; the other is a serial processing module, that is, each or each group of CPUs completes a processing function, and all processing functions are serially processed. The way to complete step by step. Referring to FIG. 5, FIG. 5 is a schematic diagram of a CPU serial processing module according to an embodiment of the present invention; if a message that does not require a certain processing function can pass through a column processor, for example, the CPU 1 completes the classification function, the CPU 2 completes The table lookup function, if a message does not need to be processed by the classification function, can directly perform CPU2 processing through the CPU 1. There are many ways to specifically transmit it, for example: By specifying different in the message forwarding message The CPU's destination address selects a different CPU. In addition, there is another way to combine parallel and serial. Referring to FIG. 6, FIG. 6 is a schematic diagram of a processing module in which CPU strings are combined in parallel according to an embodiment of the present invention. In a specific implementation, the distributed processing manner of the CPU in the forwarding processing unit can be freely combined according to specific conditions, for example, a suitable distributed processing manner needs to be selected considering the hardware system structure characteristics of the CPU.
在数据转发处理的具体实现中, 交换网板用于提供报文在不同线卡之间完 成转发。 在本发明的实施例中, 以分布式上下行处理结构为例来对本发明的方 案进行进一步的说明。可参考图 7, 图 7是本发明实施例的数据转发处理的系统 架构示意图; 在图 7中, 转发处理单元包括:  In a specific implementation of the data forwarding process, the switching network board is configured to provide packets to be forwarded between different line cards. In the embodiment of the present invention, the distributed uplink and downlink processing structure is taken as an example to further illustrate the scheme of the present invention. Referring to FIG. 7, FIG. 7 is a schematic structural diagram of a system for data forwarding processing according to an embodiment of the present invention; in FIG. 7, the forwarding processing unit includes:
上行转发处理子单元, 用于当接收单元接收到的需转发的数据报文为上行 数据报文时, 根据接收单元提取的转发信息, 通过一路多个并行的处理器分别 提取上行数据报文的发送信息; 例如, 上行转发处理子单元由 CPU 1、 CPU2和 CPU3以并行的方式进行数据转发, 这样, CPU1、 CPU2和 CPU3运行同样的 代码, 即运行同样的代码同时支持 IP转发和 QoS, 报文通过 CPU1、 CPU2和 CPU3之一即可完成 IP转发和 QoS的处理功能;  The uplink forwarding processing sub-unit is configured to: when the data packet to be forwarded received by the receiving unit is an uplink data packet, extract the uplink data packet by using multiple parallel processors according to the forwarding information extracted by the receiving unit Sending information; for example, the uplink forwarding processing subunit is forwarded by the CPU 1, CPU 2, and CPU 3 in parallel, so that CPU1, CPU2, and CPU3 run the same code, that is, the same code is run while supporting IP forwarding and QoS. The IP forwarding and QoS processing functions can be completed by one of CPU1, CPU2 and CPU3;
下行转发处理子单元, 用于当接收单元接收到的需转发的数据报文为下行 数据报文时, 根据接收单元提取的转发信息, 通过另一路多个并行的处理器对 下行数据报文进行入队处理, 然后通过与所述另一路多个并行的处理器串联的 处理器进行队列轮询处理, 按照队列轮询后的顺序提取所述下行数据报文的发 送信息。 例如, 下行转发处理子单元由 CPU4、 CPU5、 CPU6、 CPU7和 CPU8 以并行和串行结合的方式进行数据转发,即 CPU4和 CPU5以串行的方式分别支 持 TM ( Token Machine, 令牌机)队列轮询和 GTS ( General Traffic Shaping, 通 用业务整形) 队列轮询处理功能。 CPU6、 CPU7和 CPU8以并行的方式同时支 持 IP转发、 QoS和 GTM/TM入队处理功能。 这样, >¾文在下行转发过程中, IP 转发、 QoS和 GTM/TM入队处理功能通过 CPU6、CPU7和 CPU8之一即可完成。 TM队列轮询和 GTS队列轮询处理功能需要分别通过 CPU4和 CPU5来完成。 同时, 线路侧和网络侧接口的收、 发模块也可由硬件或软件辅助完成。 需要说 明的是, 本发明可以支持一些复杂的应用, 即根据不同的应用业务的需要可以 设计不同的 CPU的分布方式。 例如根据防火墙业务, 设计有利于实现该业务的 CPU的分布方式。 The downlink forwarding processing sub-unit is configured to: when the data packet to be forwarded received by the receiving unit is a downlink data packet, perform, according to the forwarding information extracted by the receiving unit, the downlink data packet by using another parallel processor The enqueue process is performed, and then the queue polling process is performed by the processor in series with the plurality of parallel processors in the other path, and the transmission information of the downlink data message is extracted in the order after the queue polling. For example, the downlink forwarding processing sub-unit is forwarded by the CPU 4, the CPU 5, the CPU 6, the CPU 7, and the CPU 8 in a parallel and serial manner, that is, the CPU 4 and the CPU 5 respectively support the TM (Token Machine) queue in a serial manner. Polling and GTS (General Traffic Shaping) queue polling processing. The CPU 6, CPU 7, and CPU 8 simultaneously support IP forwarding, QoS, and GTM/TM enqueue processing functions in parallel. In this way, during the downlink forwarding process, IP forwarding, QoS, and GTM/TM enqueue processing functions can be completed by one of CPU6, CPU7, and CPU8. The TM queue polling and GTS queue polling processing functions need to be completed by the CPU 4 and the CPU 5, respectively. At the same time, the receiving and transmitting modules of the line side and the network side interface can also be completed by hardware or software. Need to say It is obvious that the present invention can support some complicated applications, that is, different CPU distribution patterns can be designed according to the needs of different application services. For example, according to the firewall service, a distribution manner of a CPU that is advantageous for implementing the service is designed.
此外, 本发明实施例提供了一种基于多核处理器的数据转发处理的方法, 参考图 8, 图 8是本发明实施例的数据转发处理的方法示意图。  In addition, the embodiment of the present invention provides a method for data forwarding processing based on a multi-core processor. Referring to FIG. 8, FIG. 8 is a schematic diagram of a method for data forwarding processing according to an embodiment of the present invention.
步骤 801、 接收单元将所接收的数据报文放入緩存单元;  Step 801: The receiving unit puts the received data packet into a cache unit.
在本发明实施例的具体实现中, 緩存单元中有对每个数据报文可以设置一 个头指针, 用于对所述数据报文的索引。  In a specific implementation of the embodiment of the present invention, a buffer header may be configured with a header pointer for each data packet for indexing the data packet.
步骤 802、 接收单元提取所述数据报文的转发信息发送给转发处理单元; 在本发明实施例的具体实现中, 所述数据报文的转发信息至少包含: 报文 结束信息、 报文长度信息、 报文起始地址信息和接收报文的端口号信息, 所述 数据报文的转发信息的数据结构可以如下:
Figure imgf000008_0001
Step 802: The receiving unit extracts the forwarding information of the data packet and sends the forwarding information to the forwarding processing unit. In a specific implementation of the embodiment of the present invention, the forwarding information of the data packet includes at least: packet end information and packet length information. The packet start address information and the port number information of the received packet, and the data structure of the forwarding information of the data packet may be as follows:
Figure imgf000008_0001
其中, EOP表示报文结束标志。 可以用 0和 1表示。 0表示不是该报文的最 后一个消息; 1表示为该报文的最后一个消息。  Where EOP indicates the end of message message. Can be represented by 0 and 1. 0 means not the last message of the message; 1 means the last message of the message.
Status用来表示 RX的各种错误信息和报文广播 /多播 /单播等信息, 其可以 根据需要设计占用的位数。  Status is used to indicate various error messages of RX and message broadcast/multicast/unicast information, which can be designed according to the required number of bits.
Packet Lenth表示所述数据报文的长度。  Packet Lenth indicates the length of the data packet.
Packet address表示所述数据报文的起始地址。  Packet address indicates the starting address of the data packet.
Source Port表示接收所述数据 ^艮文的端口号。  The Source Port indicates the port number of the data received.
步骤 803、 转发处理单元根据转发信息通过预先设置的多个串行和 /或并行 的处理器提取所述数据报文的发送信息, 发送该发送信息;  Step 803: The forwarding processing unit extracts, according to the forwarding information, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance, and sends the sending information.
多个处理器的结构参见图 4、 图 5或图 6 , 这里不再详述。  The structure of multiple processors is shown in Figure 4, Figure 5 or Figure 6, and will not be described in detail here.
在本发明的具体实现中, 所述数据报文的发送信息至少包含: 所述报文结 束信息、 所述报文长度信息和所述报文起始地址信息, 所述数据报文的发送信 息的数据结构可以如下: Packet Lenth Packet address In a specific implementation of the present invention, the information about the data packet includes: the packet end information, the packet length information, and the packet start address information, and the data packet sending information. The data structure can be as follows: Packet Lenth Packet address
其中, EOP表示报文结束标志。 可以用 0和 1来表示, 0表示不是该报文的 最后一个消息; 1表示为该报文的最后一个消息。  Where EOP indicates the end of message message. It can be represented by 0 and 1, 0 means not the last message of the message; 1 means the last message of the message.
Packet Lenth表示所述数据报文的长度。  Packet Lenth indicates the length of the data packet.
Packet address表示所述数据报文的起始地址。  Packet address indicates the starting address of the data packet.
为了进行高效地数据转发处理, 本发明实施的转发处理单元可以由至少两 个 CPU来完成。每个所述 CPU对所收到的报文进行处理,并将所处理的信息发送 给后续的 CPU。  In order to perform efficient data forwarding processing, the forwarding processing unit implemented by the present invention can be completed by at least two CPUs. Each of the CPUs processes the received message and sends the processed information to the subsequent CPU.
在本发明实施例中, 多个 CPU之间进行报文传递的消息格式可以如下: 报文信息 CPU转发处理信息 其中, 报文信息表示前面消息中的 EOP, Packet Lenth, Packet address等标 识该 的所有信息。  In the embodiment of the present invention, the message format of the message delivery between the multiple CPUs may be as follows: The message information CPU forwards the processing information, wherein the message information indicates that the EOP, Packet Lenth, Packet address, etc. in the previous message are identified. All information.
在本发明实施例的具体实现中, CPU对报文的处理需要根据具体的业务来 决定。  In a specific implementation of the embodiment of the present invention, the processing of the packet by the CPU needs to be determined according to a specific service.
步骤 804、发送单元接收发送信息, 根据所述发送信息提取緩存单元中的所 对应的数据报文并转发给目的端口。  Step 804: The sending unit receives the sending information, and extracts the corresponding data packet in the buffer unit according to the sending information, and forwards the data packet to the destination port.
在本发明实施例的实现中, 发送单元可以根据上述提到的数据报文的头指 针并结合所述发送信息来提取緩存单元中所对应的数据报文。  In an implementation of the embodiment of the present invention, the sending unit may extract the data packet corresponding to the buffer unit according to the header pointer of the data packet mentioned above and the sending information.
所以, 本发明实施例所提供的数据转发处理的方法和装置, 不需要操作系 统, 只提供一个堆和栈, 与操作系统下的单任务相比, 资源占用少, 减少了软 件和硬件的开销, 同时也降低了软件的复杂度, 此种模式适合需要高效的数据 转发处理。此外,本发明实施例提供了一种对转发 CPU模块中的 CPU的分布处 理模块, 可以根据不同的业务需要灵活选用, 这样增加了转发能力, 保证了转 发性能。 以上所述, 仅为本发明较佳的具体实施方式, 但本发明的保护范围并不局 限于此, 任何熟悉该技术的人在本发明所揭露的技术范围内, 可轻易想到的变 化或替换, 都应涵盖在本发明的保护范围之内。 Therefore, the method and apparatus for data forwarding processing provided by the embodiments of the present invention do not require an operating system, and only provide one heap and stack. Compared with a single task under the operating system, the resource occupation is less, and the software and hardware overhead is reduced. It also reduces the complexity of the software, which is suitable for efficient data forwarding processing. In addition, the embodiment of the present invention provides a distribution processing module for forwarding a CPU in a CPU module, which can be flexibly selected according to different service requirements, thereby increasing forwarding capability and ensuring forwarding performance. The above is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope of the present invention. All should be covered by the scope of the present invention.

Claims

权 利 要 求 书 Claim
1、 一种数据转发处理的装置, 其特征在于, 包括: A device for data forwarding processing, comprising:
接收单元, 用于接收需转发的数据报文, 并提取所述数据报文的转发信息; 緩存单元, 用于緩存所述接收单元接收的数据报文;  a receiving unit, configured to receive a data packet to be forwarded, and extract forwarding information of the data packet; and a buffer unit, configured to buffer a data packet received by the receiving unit;
转发处理单元, 用于根据所述接收单元提取的转发信息, 通过预先设置的 多个串行和 /或并行的处理器提取所述数据报文的发送信息;  a forwarding processing unit, configured to extract, according to the forwarding information extracted by the receiving unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance;
发送单元, 用于根据所述转发处理单元提取的发送信息提取緩存单元中的 所对应的数据报文, 并将提取的数据报文转发给目的端口。  And a sending unit, configured to extract, according to the sending information extracted by the forwarding processing unit, the corresponding data packet in the buffer unit, and forward the extracted data packet to the destination port.
2、 根据权利要求 1所述的装置, 其特征在于, 所述数据报文的转发信息至 少包含: 报文结束信息、 报文长度信息、 报文起始地址信息和接收报文的端口 号信息。  2. The device according to claim 1, wherein the forwarding information of the data packet comprises at least: packet end information, message length information, message start address information, and port number information of the received message. .
3、 根据权利要求 1所述的装置, 其特征在于, 所述数据报文的发送信息至 少包含: 所述报文结束信息、 所述报文长度信息和所述报文起始地址信息。  The device according to claim 1, wherein the information of the data message includes at least: the message end information, the message length information, and the message start address information.
4、 根据权利要求 1-3任一所述的装置, 其特征在于, 所述接收单元接收到 需转发的数据报文, 先将所述数据报文放入緩存单元。  The device according to any one of claims 1-3, wherein the receiving unit receives the data message to be forwarded, and first puts the data message into the buffer unit.
5、 根据权利要求 1所述的装置, 其特征在于, 所述转发处理单元包含: 上行转发处理子单元, 用于当所述接收单元接收到的需转发的数据报文为 上行数据报文时, 根据所述接收单元提取的转发信息, 通过一路多个并行的处 理器分别提取上行数据报文的发送信息;  The device according to claim 1, wherein the forwarding processing unit comprises: an uplink forwarding processing sub-unit, configured to: when the data packet to be forwarded received by the receiving unit is an uplink data packet And extracting, according to the forwarding information extracted by the receiving unit, the sending information of the uplink data packet by using multiple parallel processors;
下行转发处理子单元, 用于当所述接收单元接收到的需转发的数据报文为 下行数据报文时, 根据所述接收单元提取的转发信息, 通过另一路多个并行的 处理器对下行数据报文进行入队处理, 然后通过与所述另一路多个并行的处理 器串联的处理器进行队列轮询处理, 按照队列轮询后的顺序提取所述下行数据 报文的发送信息。  a downlink forwarding processing sub-unit, configured to: when the data packet to be forwarded received by the receiving unit is a downlink data packet, according to the forwarding information extracted by the receiving unit, downlink by another parallel processor The data packet is subjected to the enqueue processing, and then the queue polling process is performed by the processor in series with the plurality of parallel processors in the other path, and the transmission information of the downlink data packet is extracted in the order after the queue polling.
6、 根据权利要求 1所述的装置, 其特征在于, 所述处理器为 CPU, 包含: 报文处理模块, 用于对所收到的数据报文进行处理; The device according to claim 1, wherein the processor is a CPU, and includes: a packet processing module, configured to process the received data packet;
报文处理发送模块, 用于将所述报文处理模块处理的信息发送给后续的 a message processing sending module, configured to send information processed by the message processing module to a subsequent
CPU。 CPU.
7、 一种数据转发的方法, 其特征在于, 包括:  7. A data forwarding method, comprising:
接收单元将所接收的数据报文放入緩存单元;  The receiving unit puts the received data message into the cache unit;
接收单元提取所述数据报文的转发信息发送给转发处理单元;  Receiving, by the receiving unit, the forwarding information of the data packet, and sending the forwarding information to the forwarding processing unit;
转发处理单元根据所述转发信息通过预先设置的多个串行和 /或并行的处理 器提取所述数据报文的发送信息, 发送所述发送信息;  And forwarding, by the forwarding processing unit, the sending information of the data packet by using a plurality of serial and/or parallel processors set in advance according to the forwarding information, and transmitting the sending information;
发送单元接收所述发送信息, 根据所述发送信息提取緩存单元中的所对应 的数据报文并转发给目的端口。  The sending unit receives the sending information, and extracts a corresponding data packet in the buffer unit according to the sending information, and forwards the data packet to the destination port.
8、 根据权利要求 7所述的方法, 其特征在于, 所述数据报文的发送信息至 少包含: 所述报文结束信息、 所述报文长度信息和所述报文起始地址信息。  The method according to claim 7, wherein the sending information of the data message comprises at least: the message end information, the message length information, and the message start address information.
9、 根据权利要求 7所述的方法, 其特征在于, 所述数据报文的转发信息至 少包含: 报文结束信息、 报文长度信息、 报文起始地址信息和接收报文的端口 号信息。  The method according to claim 7, wherein the forwarding information of the data packet at least includes: a packet end information, a packet length information, a packet start address information, and a port number information of the received packet. .
10、 根据权利要求 7所述的方法, 其特征在于, 所述处理器为 CPU, 每个所 述 CPU对所收到的数据报文进行处理, 并将所处理的信息发送给后续的 CPU。  The method according to claim 7, wherein the processor is a CPU, each of the CPUs processes the received data message, and sends the processed information to a subsequent CPU.
PCT/CN2008/070350 2007-03-08 2008-02-22 Data transfer process device and method WO2008106879A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CNA2007100734611A CN101043446A (en) 2007-03-08 2007-03-08 Method and apparatus for data transmission process
CN200710073461.1 2007-03-08

Publications (1)

Publication Number Publication Date
WO2008106879A1 true WO2008106879A1 (en) 2008-09-12

Family

ID=38808658

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2008/070350 WO2008106879A1 (en) 2007-03-08 2008-02-22 Data transfer process device and method

Country Status (2)

Country Link
CN (1) CN101043446A (en)
WO (1) WO2008106879A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101043446A (en) * 2007-03-08 2007-09-26 华为技术有限公司 Method and apparatus for data transmission process
CN104023379B (en) * 2013-03-01 2017-11-17 华为终端有限公司 A kind of data transmission method and data forwarding device
CN104184685B (en) * 2013-05-27 2018-05-29 华为技术有限公司 Data center resource distribution method, apparatus and system
CN105959228B (en) * 2016-06-23 2020-06-16 华为技术有限公司 Traffic processing method and transparent cache system
CN108984327B (en) * 2018-07-27 2020-12-01 新华三技术有限公司 Message forwarding method, multi-core CPU and network equipment
CN111049910A (en) * 2019-12-16 2020-04-21 瑞斯康达科技发展股份有限公司 Method, device, equipment and medium for processing message

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081615A1 (en) * 2001-10-22 2003-05-01 Sun Microsystems, Inc. Method and apparatus for a packet classifier
US20040184457A1 (en) * 2002-12-23 2004-09-23 Infineon Technologies Ag Multichannel processor
CN1728683A (en) * 2004-07-29 2006-02-01 国家数字交换系统工程技术研究中心 Forwarding method and router for supporting linear speed of IPv6 single multicast operation
CN1921457A (en) * 2006-09-18 2007-02-28 杭州华为三康技术有限公司 Network equipment and message transferring method based on multiple-core processor
CN1925453A (en) * 2006-10-12 2007-03-07 杭州华为三康技术有限公司 Message transferring method and device
CN101043446A (en) * 2007-03-08 2007-09-26 华为技术有限公司 Method and apparatus for data transmission process

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081615A1 (en) * 2001-10-22 2003-05-01 Sun Microsystems, Inc. Method and apparatus for a packet classifier
US20040184457A1 (en) * 2002-12-23 2004-09-23 Infineon Technologies Ag Multichannel processor
CN1728683A (en) * 2004-07-29 2006-02-01 国家数字交换系统工程技术研究中心 Forwarding method and router for supporting linear speed of IPv6 single multicast operation
CN1921457A (en) * 2006-09-18 2007-02-28 杭州华为三康技术有限公司 Network equipment and message transferring method based on multiple-core processor
CN1925453A (en) * 2006-10-12 2007-03-07 杭州华为三康技术有限公司 Message transferring method and device
CN101043446A (en) * 2007-03-08 2007-09-26 华为技术有限公司 Method and apparatus for data transmission process

Also Published As

Publication number Publication date
CN101043446A (en) 2007-09-26

Similar Documents

Publication Publication Date Title
US20220214919A1 (en) System and method for facilitating efficient load balancing in a network interface controller (nic)
EP2406723B1 (en) Scalable interface for connecting multiple computer systems which performs parallel mpi header matching
US8036243B2 (en) Single chip protocol converter
US7274706B1 (en) Methods and systems for processing network data
US7941569B2 (en) Input/output tracing in a protocol offload system
US7643477B2 (en) Buffering data packets according to multiple flow control schemes
US20140108676A1 (en) Method and system for an os virtualization-aware network interface card
US20100158005A1 (en) System-On-a-Chip and Multi-Chip Systems Supporting Advanced Telecommunication Functions
US20100191814A1 (en) System-On-A-Chip Employing A Network Of Nodes That Utilize Receive Side Flow Control Over Channels For Messages Communicated Therebetween
US20100162265A1 (en) System-On-A-Chip Employing A Network Of Nodes That Utilize Logical Channels And Logical Mux Channels For Communicating Messages Therebetween
CN102521201A (en) Multi-core DSP (digital signal processor) system-on-chip and data transmission method
US20100158023A1 (en) System-On-a-Chip and Multi-Chip Systems Supporting Advanced Telecommunication Functions
US20100161938A1 (en) System-On-A-Chip Supporting A Networked Array Of Configurable Symmetric Multiprocessing Nodes
KR20130099185A (en) A method and system for improved multi-cell support on a single modem board
WO2008106879A1 (en) Data transfer process device and method
CN108768667B (en) Method for inter-chip network communication of multi-core processor
CN107623632B (en) DPDK-based network protocol connection method and system
CN108984327B (en) Message forwarding method, multi-core CPU and network equipment
JP2011008658A (en) Data processor, data processing method, and program
CN103049336A (en) Hash-based network card soft interrupt and load balancing method
CN100452757C (en) Message transferring method and device
US7564860B2 (en) Apparatus and method for workflow-based routing in a distributed architecture router
WO2022068744A1 (en) Method for obtaining message header information and generating message, device, and storage medium
Mamidala et al. Efficient SMP-aware MPI-level broadcast over InfiniBand's hardware multicast
WO2013177854A1 (en) Device and method for inter-core communication in multi-core processor

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08715087

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08715087

Country of ref document: EP

Kind code of ref document: A1