WO2014166190A1 - 一种网络设备数据转发方法及装置 - Google Patents

一种网络设备数据转发方法及装置 Download PDF

Info

Publication number
WO2014166190A1
WO2014166190A1 PCT/CN2013/082042 CN2013082042W WO2014166190A1 WO 2014166190 A1 WO2014166190 A1 WO 2014166190A1 CN 2013082042 W CN2013082042 W CN 2013082042W WO 2014166190 A1 WO2014166190 A1 WO 2014166190A1
Authority
WO
WIPO (PCT)
Prior art keywords
tcp
message
protocol stack
processed
packet
Prior art date
Application number
PCT/CN2013/082042
Other languages
English (en)
French (fr)
Inventor
刘威
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to MX2016000241A priority Critical patent/MX2016000241A/es
Publication of WO2014166190A1 publication Critical patent/WO2014166190A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a network device data forwarding method and apparatus. Background technique
  • an LTE network with an FDD (Frequency Division Duplexing, Frequency Division Duplexing, also referred to as full duplex) LTE network and an 802.11n 2*2 LTE wireless router can achieve a rate of 100 Mbps in the LTE to WiFi direction.
  • FDD Frequency Division Duplexing, Frequency Division Duplexing, also referred to as full duplex
  • 802.11n 2*2 LTE wireless router can achieve a rate of 100 Mbps in the LTE to WiFi direction.
  • high requirements are also placed on the hardware configuration of the routing product.
  • the rate can naturally be improved.
  • an LTE wireless routing device for home users it is a low-end embedded product, and the CPU of the motherboard is not too high; too high hardware configuration means an increase in cost, which is not conducive to the popularity of the product.
  • the routing device is the most important function for data forwarding.
  • the LTE air interface (the air interface refers to the air interface, and the air interface is a visual term, which is relative to the concept of "line interface" in wired communication.
  • the WiFi driver After the data packet from the network, after a series of processing, it is forwarded to the WiFi driver, and finally reaches the WiFi terminal through the WiFi air interface.
  • Most of the routing products use the NAT (Network Address Translation) scheme of the embedded Linux operating system.
  • the general processing flow of a data packet is as follows:
  • LTE air interface data arrives at the network card driver
  • step 2 will generate a large number of CPU interrupts, each packet must be processed through the layer processing of the TCP/IP protocol stack, which greatly increases the CPU load; reduces the data forwarding rate, affects the network device. Data transfer efficiency (such as routing devices).
  • the main object of the present invention is to provide a method and device for forwarding data of a network device, which aims to avoid unnecessary CPU interruption, reduce CPU load, improve data forwarding speed, and improve data transmission efficiency of the device.
  • the invention provides a data forwarding method for a network device, the method comprising:
  • connection information of the IP packet When the connection information of the IP packet is in the preset connection tracking table, performing address translation on the IP packet, and then forwarding the converted IP packet;
  • the IP packet is sent to the CPU for TCP/IP protocol stack processing, and the IP processed by the TCP/IP protocol stack is forwarded. Message.
  • the forwarding of the IP >3 ⁇ 4 file processed by the TCP/IP protocol stack includes:
  • the determining whether the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding conditions comprises:
  • the method Determining, according to the preset specific port list, whether the IP packet processed by the TCP/IP protocol stack belongs to a preset type of packet; When the IP packet processed by the TCP/IP protocol stack belongs to a preset type of packet, it is determined that the IP packet processed by the TCP/IP protocol stack is determined to be a preset type. After the message, the method also includes:
  • the method further includes:
  • IP packet processed by the TCP/IP protocol stack is an ALG packet, it is determined whether the IP packet processed by the TCP/IP protocol stack is an FTP-DATA packet;
  • IP packet processed by the TCP/IP protocol stack is an FTP-DATA packet, it is determined that the IP packet processed by the TCP/IP protocol stack meets a preset fast forwarding condition;
  • IP packet processed by the TCP/IP protocol stack is not an FTP-DATA packet, it is determined.
  • the present invention also provides a network device data forwarding device, including:
  • the receiving module is configured to: receive a data packet, and generate an IP packet according to the received data packet; and the forwarding module is configured to: when the connection information of the IP packet is in a preset connection tracking table, IP packet forwarding, and then forwarding the converted IP packet; and when the connection information of the IP packet is not in the preset connection tracking table, sending the IP packet to the CPU for performing
  • the TCP/IP protocol stack processes and forwards IP packets processed by the TCP/IP protocol stack.
  • the forwarding module includes:
  • the first determining unit is configured to: determine whether the connection information of the IP packet is located in a preset connection tracking table;
  • the transceiver unit is configured to: when the determination result of the first determining unit is that the connection information of the IP packet is not in the preset connection tracking table, send the IP packet to the CPU for TCP/IP The protocol stack processes; and receives the IP packets processed by the TCP/IP protocol stack;
  • the second determining unit is configured to: determine whether the IP packet processed by the TCP/IP protocol stack is Combined with the default fast forwarding conditions;
  • the forwarding unit is configured to: when the connection result of the first determining unit is that the connection information of the IP packet is in a preset connection tracking table, perform address translation on the IP packet, and then convert the converted IP packet Sending out; and after the second determining unit determines that the IP packet processed by the TCP/IP protocol stack meets a preset fast forwarding condition, the IP processed by the TCP/IP protocol stack is processed. Transmitting the packet and adding the connection information of the IP packet processed by the TCP/IP protocol stack to a preset connection tracking table; and determining, by the second determining unit, the
  • the IP processed by the TCP/IP protocol stack is forwarded.
  • the second determining unit comprises:
  • the first determining subunit is configured to: determine, according to the preset specific port list, whether the IP packet processed by the TCP/IP protocol stack belongs to a preset type of packet, in the TCP/IP protocol stack When the processed IP packet belongs to a preset type of packet, it is determined that the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding condition.
  • the second determining unit further includes:
  • a second determining subunit configured to: the result of the determining in the first determining subunit is the
  • the IP packet processed by the TCP/IP protocol stack does not belong to the preset type of packet, it is determined whether the IP packet processed by the TCP/IP protocol stack is an ALG packet, and the TCP/IP protocol is used. When the IP packet processed by the stack is not an ALG packet, it is determined that the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition.
  • the second determining unit further includes:
  • a third determining subunit configured to: the result of the determining in the second determining subunit is the
  • the IP packet processed by the TCP/IP protocol stack is an ALG packet
  • the IP packet is an FTP-DATA packet
  • the file is not an FTP-DATA packet, it is determined that the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding condition.
  • the technical solution of the embodiment of the present invention does not need to pass all received data messages.
  • the CPU schedules the TCP/IP protocol stack to process the IP packets, and then compares the IP packets with the preset connection tracking table. If the IP packets are in the preset connection, The tracking table directly translates the IP packet and then forwards the converted IP packet.
  • FIG. 1 is a schematic flowchart of a data forwarding method of a network device according to the present invention
  • step S40 in FIG. 1 is a detailed flow chart of step S40 in FIG. 1;
  • FIG. 3 is a detailed flow diagram of step S41 in Figure 2
  • FIG. 4 is a schematic structural diagram of a network device data forwarding device according to the present invention.
  • FIG. 5 is a schematic diagram showing the specific structure of the second determining unit in FIG. 4. The implementation, functional features, and advantages of the present invention will be further described with reference to the accompanying drawings.
  • FIG. 1 is a schematic flowchart of a data forwarding method of a network device according to the present invention, where the method includes:
  • the received data may be a received data packet that is sent to the network card through the LTE air interface network or other air interface network.
  • the data packet is received, and the data packet is correspondingly received.
  • Change generate an IP packet based on the received data packet.
  • the preset connection tracking table can be preset or updated continuously depending on the usage.
  • the preset connection tracking table includes a source address, a target address, a source port, a target port, and a protocol number.
  • the IP The connection information of the source includes the source address, the destination address, the source port, the destination port, and the protocol number.
  • step S30 performing address translation on the IP address, and then forwarding the converted IP " ⁇ "; in the step S30, when the connection information of the IP packet is in the preset connection tracking table, The IP packet does not need to be sent to the CPU for TCP/IP protocol stack processing.
  • the IP packet can be directly translated into the IP packet, and then the converted IP packet is forwarded. For example, the converted IP packet can be forwarded.
  • Forwarding to the WiFi driver the WiFi driver sends the IP packet to the WiFi terminal.
  • the IP packet is not sent to the CPU, and the CPU does not need to perform TCP/IP protocol stack on the IP packet. Processing (including firewall filtering, IP address translation, flow control, etc.) can reduce CPU interrupts and reduce CPU load.
  • IP packets processed by the TCP/IP protocol stack are processed by the TCP/IP protocol stack.
  • the IP packet needs to be sent to the CPU to cause the CPU to generate an interrupt, and the IP packet is processed by the TCP/IP protocol stack; Then forward the IP packet processed by the TCP/IP protocol stack.
  • step S40 includes (as shown in FIG. 2): if yes, step S42 is performed, and if no, step S43 is performed;
  • the IP packet processed by the TCP/IP protocol stack may be forwarded to the IP packet processed by the TCP/IP protocol stack according to the preset fast forwarding condition, for example, the IP packet may be forwarded.
  • the IP packet processed by the TCP/IP protocol stack is forwarded to the WiFi driver, and the IP packet sent by the TCP/IP protocol stack is sent to the WiFi terminal by the WiFi driver.
  • the IP packet processed by the TCP/IP protocol stack that meets the preset fast forwarding condition is also added to the preset connection tracking table by the connection information of the IP packet processed by the TCP/IP protocol stack.
  • the default connection tracking table is updated.
  • connection information of the IP packet can be found in the preset connection tracking table for the same IP packet received next time, and the IP packet can be directly reported. Forwarding the file, the IP packet does not need to be sent to the CPU for processing, which can reduce the CPU load and increase the data forwarding rate.
  • Adding the connection information of the IP packet processed by the TCP/IP protocol stack to the preset connection tracking table includes: adding a quintuple of the connection information of the IP packet processed by the TCP/IP protocol stack To the default connection tracking table, the five-tuple is: source address, destination address, source port, destination port, protocol number.
  • the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding condition, the IP packet processed by the TCP/IP protocol stack is forwarded directly, without The connection information of the IP packet processed by the TCP/IP protocol stack is saved.
  • step S41 determines whether the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition, and includes the following steps (as shown in FIG. 3):
  • step S411 Determine, according to the preset specific port list, whether the IP packet processed by the TCP/IP protocol stack belongs to a preset type, and the IP packet processed by the TCP/IP protocol stack is preset.
  • the type of the packet is determined, the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding condition, and then the step S43 is performed, and the IP packet processed by the TCP/IP protocol stack does not belong to the packet.
  • step S412 is performed;
  • the preset specific port list can be set by the user according to the actual needs, and the port in the connection information of the packet that needs to be processed by the CPU for the TCP/IP protocol stack can be set to the IP packet that the user does not want to perform fast forwarding.
  • Specific ports, such as a specific port list can be set to include: ftp21, http80, and so on.
  • step S412. Determine whether the IP packet processed by the TCP/IP protocol stack is an ALG packet. When the IP packet processed by the TCP/IP protocol stack is not an ALG packet, determine the TCP/IP protocol stack. The processed IP packet meets the preset fast forwarding condition, and then step S42 is performed. When the IP packet processed by the TCP/IP protocol stack is an ALG packet, step S413 is performed;
  • step S413. Determine whether the IP packet processed by the TCP/IP protocol stack is an FTP-DATA packet, and determine the TCP packet when the IP packet processed by the TCP/IP protocol stack is an FTP-DATA packet.
  • the IP packet processed by the IP protocol stack does not meet the preset fast forwarding condition, and then step S43 is performed.
  • FIG. 4 is a schematic structural diagram of a data forwarding device of a network device according to the present invention.
  • the device 100 includes:
  • the receiving module 10 is configured to receive a data packet, and generate an IP packet according to the received data packet.
  • the forwarding module 20 is configured to: when the connection information of the IP packet is in a preset connection tracking table, the IP packet is used. Performing address translation, and then forwarding the converted IP file; and when the connection information of the IP packet is not in the preset connection tracking table, sending the IP packet to the CPU 200 for TCP/IP protocol.
  • the stack processes and forwards the IP packets processed by the TCP/IP protocol stack.
  • the data packet received by the receiving module 10 may be a received data packet that is sent to the network card through the LTE air interface network or other air interface network; the receiving module 10 receives the data packet, and correspondingly changes the data packet. Generating an IP packet according to the received data packet.
  • the preset connection tracking table can be preset or updated continuously depending on the usage.
  • the preset connection tracking table includes source address, destination address, source port, destination port, and protocol number.
  • the connection information of the IP address includes a source address, a destination address, a source port, a destination port, and a protocol number.
  • connection information of the IP packet When the connection information of the IP packet is in the preset connection tracking table, it indicates that the IP packet does not need to be sent to the CPU 200 for TCP/IP protocol stack processing, and the forwarding module 20 can directly perform address translation on the IP packet. Then, the converted IP packet is forwarded. For example, the converted IP packet can be forwarded to the WiFi driver, and then the WiFi driver sends the IP packet to the WiFi terminal. The IP packet does not need to be sent. For the CPU 200, the CPU 200 does not need to perform TCP/IP protocol stack processing on the IP packet (including firewall filtering, IP address translation, flow control, etc.), which can reduce CPU interruption and reduce CPU load.
  • TCP/IP protocol stack processing including firewall filtering, IP address translation, flow control, etc.
  • the forwarding module 20 needs to send the IP packet to the CPU to cause the CPU to generate an interrupt, and perform TCP/IP protocol stack processing on the IP packet; IP packets processed by the TCP/IP protocol stack.
  • the forwarding module 20 includes:
  • the first determining unit 21 is configured to determine whether the connection information of the IP packet is located in a preset connection tracking table;
  • the transceiver unit 22 is configured to: when the determination result of the first determining unit 21 is that the connection information of the IP packet is not in the preset connection tracking table, send the IP packet to the CPU 200 to enable the CPU 200 to report the IP address. Performing TCP/IP protocol stack processing; and receiving IP packets processed by the TCP/IP protocol stack;
  • the second determining unit 23 is configured to determine whether the IP packet processed by the TCP/IP protocol stack meets a preset fast forwarding condition
  • the forwarding unit 24 is configured to: when the connection result of the first determining unit 21 is that the connection information of the IP packet is in the preset connection tracking table, perform address translation on the IP packet, and then send the converted IP packet And the IP packet processed by the TCP/IP protocol stack when the second judgment unit 23 determines that the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition. Forwarding the text and adding the connection information of the IP packet processed by the TCP/IP protocol stack to the preset connection tracking table; and determining the result of the second judgment unit 23 as the TCP/IP stack The processed IP packets are forwarded.
  • the first determining unit 21 is configured to determine whether the connection information of the IP packet is located in a preset connection tracking table. If the connection information of the IP packet is in the preset connection tracking table, the IP packet does not need to be sent to the CPU. After the TCP/IP protocol stack is processed, the IP packet can be directly translated by the forwarding unit 24, and then the converted IP packet is forwarded. For example, the converted IP packet can be forwarded to the WiFi driver. The IP packet is sent to the WiFi terminal by the WiFi driver. If the connection information of the IP packet is in the preset connection tracking table, the IP packet is not sent to the CPU, and the IP packet is not required by the CPU.
  • TCP/IP protocol stack processing including firewall filtering, IP address translation, flow control, etc.
  • IP address translation including firewall filtering, IP address translation, flow control, etc.
  • the forwarding unit 24 forwards the IP packet processed by the TCP/IP protocol stack that meets the preset fast forwarding condition, for example, the IP packet processed by the TCP/IP protocol stack can be forwarded to the WiFi driver, and then The WiFi driver transmits the IP4 message processed by the TCP/IP protocol stack to the WiFi terminal.
  • the transfer The sending unit further adds the connection information of the IP packet processed by the TCP/IP protocol stack to the preset connection tracking table, and updates the preset connection tracking table. By continuously updating the preset connection tracking table, the connection information of the IP packet can be found in the preset connection tracking table for the same IP packet received next time, and then the IP packet can be directly reported. Forwarding the file, the IP packet does not need to be sent to the CPU for processing, which can reduce the CPU load and increase the data forwarding rate.
  • Adding the connection information of the IP packet processed by the TCP/IP protocol stack to the preset connection tracking table includes: adding a quintuple of the connection information of the IP packet processed by the TCP/IP protocol stack To the default connection tracking table, the five-tuple is: source address, destination address, source port, destination port, protocol number.
  • the second determining unit 23 includes: a first determining subunit 25, a second judging subunit 26, and a third judging subunit 27.
  • the first determining sub-unit 25 is configured to determine, according to the preset specific port list, whether the IP packet processed by the TCP/IP protocol stack belongs to a preset type of message, after being processed by the TCP/IP protocol stack When the IP packet belongs to a preset type of packet, it is determined that the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding condition.
  • the preset specific port list can be set by the user according to the actual needs, and the port in the connection information of the packet that needs to be processed by the CPU for the TCP/IP protocol stack can be set to the IP packet that the user does not want to perform fast forwarding.
  • Specific ports, such as a specific port list can be set to include: ftp21, http80, and so on.
  • a second determining subunit 26 configured to determine, in the first determining subunit 25, the
  • the IP packet processed by the TCP/IP protocol stack belongs to a preset type of packet, it is determined whether the IP packet processed by the TCP/IP protocol stack is an ALG packet, after being processed by the TCP/IP protocol stack. When the IP packet is not an ALG packet, it is determined that the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition.
  • a third determining subunit 27, configured to determine, in the second determining subunit 26, the
  • the IP packet processed by the TCP/IP protocol stack is an ALG packet, it is determined whether the IP packet processed by the TCP/IP protocol stack is an FTP-DATA packet, after being processed by the TCP/IP protocol stack.
  • the IP packet is an FTP-DATA packet, it is determined that the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition.
  • the IP packet processed by the TCP/IP protocol stack is not FTP-
  • the DATA packet it is determined that the IP packet processed by the TCP/IP protocol stack does not meet the preset fast forwarding strip.
  • the first determining subunit 25, the second judging subunit 26, and the third judging subunit 27 of the second judging unit 23 determine whether the IP packet processed by the TCP/IP protocol stack meets the preset fast forwarding condition. By judging the specific port, ALG packet, and FTP-DATA packet, it can process only the target connection, reducing false acceleration. For example, for VPN, there is no need to speed up forwarding.
  • the above description is only the preferred embodiment of the present invention, and is not intended to limit the scope of the invention, and the equivalent structure or equivalent flow transformation made by the specification and the drawings of the present invention may be directly or indirectly applied to other related The technical field is equally included in the scope of patent protection of the present invention.
  • the technical solution of the embodiment of the present invention does not need to schedule all the received data packets to be processed by the CPU to enter the TCP/IP protocol stack, but first generate an IP packet by receiving the received data packet, and then report the IP packet.
  • the IP packet is located in the preset connection tracking table, the IP packet is directly translated into an address, and then the converted IP packet is forwarded; It can avoid unnecessary CPU interrupts, reduce CPU load, improve data forwarding speed, and improve data transmission efficiency of the device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种网络设备数据转发的方法,该方法包括:接收数据报文,并根据接收的数据报文生成IP报文;在所述IP报文的连接信息位于预设的连接跟踪表时,对所述IP报文进行地址转换,然后将转换后的IP报文转发出去;在所述IP报文的连接信息不在所述预设的连接跟踪表时,将所述IP报文发送给CPU以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。本发明实施例还公开了相应的装置。上述方案不需要将所有接收到的数据报文都经CPU调度再转发,可避免不必要的CPU中断,降低CPU负荷,可提高数据的转发速度。

Description

一种网络设备数据转发方法及装置
技术领域
本发明涉及到通信技术领域, 特别涉及到一种网络设备数据转发方法及 装置。 背景技术
在实际应用中, 网络设备需要处理大量的报文数据, 如将数据上传和下 载。 每一次无线通信网络的演进以及升级换代, 都伴随着终端下载速率的倍 数甚至指数级增长,从早期以 Kbps为单位来测量速率, 到现在以 Mbps为单 位, 相信不久的将来 Gbps也会成为我们常用的速率单位。 随着 LTE ( Long Term Evolution,长期演进技术 )网络时代的来临 ,再加上 WiFi技术的发展, 家用 LTE无线路由产品也已经面市。以 FDD( Frequency Division Duplexing , 频分双工,也称全双工) LTE网络加支持 802.11η 2*2的 LTE无线路由器为 例, LTE至 WiFi方向的速率可以达到 100Mbps。 如此高的速率, 对路由产 品的硬件配置也提出了较高的要求。理论上,只要相应地提升产品硬件配置, 速率也自然能够提升。但作为面向家庭用户的 LTE无线路由设备, 都是中低 端嵌入式产品, 主板 CPU不会太高; 过高的硬件配置, 意味着成本的增加, 不利于产品的普及。
如何在不提升硬件配置的前提下, 满足 LTE至 WiFi的极限速率, 则只 能依赖软件系统的优化。 路由设备作为数据通道产品, 最主要的作用就是进 行数据转发, 将 LTE空口 (空口是指空中接口, 空中接口是一个形象化的术 语, 是相对于有线通信中的"线路接口"概念而言的) 网络过来的数据包, 经 过一系列处理后, 转发给 WiFi驱动, 最后通过 WiFi空口到达 WiFi终端。 大部分路由产品都釆用嵌入式 Linux 操作系统的 NAT(Network Address Translation, 网络地址转换)方案, 一个数据包的大致处理流程为:
1. LTE空口数据到达网卡驱动;
2. 经 CPU调度, 进入 TCP/IP协议栈处理, 涉及防火墙的过滤, IP地址 转换, 流量控制等操作;
3. 对于目的地非本机的数据包, 转发至相应的网卡设备, 进入驱动层处 理。
这上述三步中, 步骤 2将会产生大量的 CPU中断,每个数据包都要经过 TCP/IP协议栈的层层处理, 极大地加重了 CPU的负荷; 降低了数据转发速 率, 影响网络设备(如路由设备) 的数据传输效率。
发明内容
本发明的主要目的为提供一种网络设备数据转发方法及装置, 旨在避免 不必要的 CPU中断, 降低 CPU负荷, 及提高数据的转发速度, 提高设备的数 据传输效率。
本发明提供一种网络设备数据转发方法, 该方法包括:
接收数据报文, 并根据接收的数据报文生成 IP报文;
在所述 IP报文的连接信息位于预设的连接跟踪表时, 对所述 IP报文进 行地址转换, 然后将转换后的 IP报文转发出去;
在所述 IP报文的连接信息不在所述预设的连接跟踪表时, 将所述 IP报 文发送给 CPU以进行 TCP/IP协议栈处理,并转发经 TCP/IP协议栈处理后的 IP报文。
优选地, 所述转发经 TCP/IP协议栈处理后的 IP >¾文包括:
述经 TCP/IP协议栈处理后的 IP 文转发出去,并将所述经 TCP/IP协议栈处 理后的 IP报文的连接信息加入到所述预设的连接跟踪表; 所述经 TCP/IP协议栈处理后的 IP 文转发出去。
优选地, 所述判断经 TCP/IP协议栈处理后的 IP报文是否符合预设的快 速转发条件包括:
根据预设的特定端口列表, 判断所述经 TCP/IP协议栈处理后的 IP报文 是否属于预设种类的报文; 在所述经 TCP/IP协议栈处理后的 IP报文属于预设种类的报文时, 确定 优选地, 所述判断所述经 TCP/IP协议栈处理后的 IP报文是否属于预设 种类的报文之后, 该方法还包括:
在所述经 TCP/IP协议栈处理后的 IP报文不属于预设种类的报文时, 判 断所述经 TCP/IP协议栈处理后的 IP报文是否是 ALG报文;
在所述经 TCP/IP协议栈处理后的 IP报文不是 ALG报文时,确定所述经 优选地,所述判断所述经 TCP/IP协议栈处理后的 IP报文是否是 ALG报 文之后, 该方法还包括:
在所述经 TCP/IP协议栈处理后的 IP报文是 ALG报文时, 判断所述经 TCP/IP协议栈处理后的 IP报文是否是 FTP-DATA报文;
在所述经 TCP/IP协议栈处理后的 IP报文是 FTP-DATA报文时,确定所 述经 TCP/IP协议栈处理后的 IP报文符合预设的快速转发条件;
在所述经 TCP/IP协议栈处理后的 IP报文不是 FTP-DATA报文时,确定
本发明还提供一种网络设备数据转发装置, 包括:
接收模块,设置为:接收数据报文,并根据接收的数据报文生成 IP报文; 转发模块,设置为:在所述 IP报文的连接信息位于预设的连接跟踪表时, 对所述 IP报文进行地址转换, 然后将转换后的 IP报文转发出去; 及在所述 IP报文的连接信息不在所述预设的连接跟踪表时,将所述 IP报文发送给 CPU 以进行 TCP/IP协议栈处理, 并转发经 TCP/IP协议栈处理后的 IP报文。
优选地, 所述转发模块包括:
第一判断单元,设置为: 判断所述 IP报文的连接信息是否位于预设的连 接跟踪表;
收发单元,设置为: 在所述第一判断单元的判断结果为所述 IP报文的连 接信息不在所述预设的连接跟踪表时, 将所述 IP报文发送给 CPU 以进行 TCP/IP协议栈处理; 及接收经 TCP/IP协议栈处理后的 IP报文;
第二判断单元, 设置为: 判断经 TCP/IP协议栈处理后的 IP报文是否符 合预设的快速转发条件;
转发单元,设置为: 在第一判断单元的判断结果为所述 IP报文的连接信 息位于预设的连接跟踪表时,对所述 IP报文进行地址转换, 然后将转换后的 IP报文发送出去; 及在所述第二判断单元判断结果为所述经 TCP/IP协议栈 处理后的 IP报文符合预设的快速转发条件时, 将所述经 TCP/IP协议栈处理 后的 IP报文转发出去并将所述经 TCP/IP协议栈处理后的 IP报文的连接信息 加入到预设的连接跟踪表; 及在所述第二判断单元的判断结果为所述经
TCP/IP 协议栈处理后的 IP报文不符合预设的快速转发条件时, 将所述经
TCP/IP协议栈处理后的 IP才艮文转发出去。
优选地, 所述第二判断单元包括:
第一判断子单元,设置为:根据预设的特定端口列表,判断所述经 TCP/IP 协议栈处理后的 IP报文是否属于预设种类的报文, 在所述经 TCP/IP协议栈 处理后的 IP报文属于预设种类的报文时, 确定所述经 TCP/IP协议栈处理后 的 IP报文不符合预设的快速转发条件。
优选地, 所述第二判断单元还包括:
第二判断子单元, 设置为: 在所述第一判断子单元的判断结果为所述经
TCP/IP协议栈处理后的 IP报文不属于预设种类的报文时,判断所述经 TCP/IP 协议栈处理后的 IP报文是否是 ALG报文,在所述经 TCP/IP协议栈处理后的 IP报文不是 ALG报文时, 确定所述经 TCP/IP协议栈处理后的 IP报文符合 预设的快速转发条件。
优选地, 所述第二判断单元还包括:
第三判断子单元, 设置为: 在所述第二判断子单元的判断结果为所述经
TCP/IP协议栈处理后的 IP报文是 ALG报文时, 判断所述经 TCP/IP协议栈 处理后的 IP报文是否是 FTP-DATA报文,在所述经 TCP/IP协议栈处理后的 IP报文是 FTP-DATA报文时,确定所述经 TCP/IP协议栈处理后的 IP报文符 合预设的快速转发条件, 在所述经 TCP/IP 协议栈处理后的 IP 报文不是 FTP-DATA报文时, 确定所述经 TCP/IP协议栈处理后的 IP报文不符合预设 的快速转发条件。 釆用本发明实施例的技术方案, 不需要将所有接收到的数据报文都经 CPU调度以进入 TCP/IP协议栈处理,而是先将接收到的数据报文生成 IP报文, 再将 IP报文与预设的连接跟踪表比较,如果该 IP报文位于预设的连接跟踪表, 则直接对 IP报文进行地址转换, 然后将转换后的 IP报文转发出去; 釆用本发 明的方案, 可避免不必要的 CPU中断, 降低 CPU负荷, 及提高数据的转发速 度, 提高设备的数据传输效率。 附图概述
图 1为本发明的网络设备数据转发方法的流程示意图;
图 2为图 1中步骤 S40的详细流程示意图;
图 3是图 2中步骤 S41的详细流程示意图 '
图 4为本发明的网络设备数据转发装置的结构示意图;
图 5为图 4中第二判断单元的具体结构示意图。 本发明目的的实现、 功能特点及优点将结合实施例, 参照附图做进一步 说明。
本发明的较佳实施方式
应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并不用于限 定本发明。
参照图 1 , 图 1为本发明的网络设备数据转发方法的流程示意图, 该方法 包括:
S10、 接收数据报文, 并根据该接收的数据报文生成 IP报文;
该接收的数据 4艮文,可以是接收的通过 LTE空口网络或其他空口网络将 数据报文发送到网卡的数据报文, 在该步骤 S10中, 接收数据报文, 对该数 据报文进行相应更改, 根据该接收的数据报文生成 IP报文。
S20、 判断该 IP报文的连接信息是否位于预设的连接跟踪表, 如果是, 则执行步骤 S30, 如果否, 则执行步骤 S40;
该预设的连接跟踪表可预先设置, 也可根据使用情况在不断更新。 该预 设的连接跟踪表包括源地址、 目标地址、 源端口、 目标端口、 协议号。 该 IP 才艮文的连接信息包括源地址、 目标地址、 源端口、 目标端口、 协议号。
S30、 对该 IP ·^艮文进行地址转换, 然后将转换后的 IP "^文转发出去; 在该步骤 S30中,在该 IP报文的连接信息位于预设的连接跟踪表时, 则 说明该 IP报文不需要发送给 CPU进行 TCP/IP协议栈处理, 可直接对该 IP 报文进行地址转换, 然后将转换后的 IP报文转发出去, 例如, 可将该转换后 的 IP报文转发到 WiFi驱动 , 再由该 WiFi驱动将 IP报文发送给 WiFi终端。 在该步骤中, 不需要将该 IP报文发送给 CPU, 不需由 CPU对该 IP报文进行 TCP/IP协议栈处理(涉及防火墙的过滤、 IP地址转换、 流量控制等), 可减 少 CPU中断, 降低 CPU的负荷。
S40、 将该 IP ^艮文发送给 CPU以进行 TCP/IP协议栈处理, 并转发经
TCP/IP协议栈处理后的 IP报文。
在该步骤中,在该 IP报文的连接信息不在预设的连接跟踪表时, 需要将 该 IP报文发送给 CPU以使 CPU产生中断, 对该 IP报文进行 TCP/IP协议栈 处理; 再转发经 TCP/IP协议栈处理后的 IP报文。
进一步的, 在步骤 S40中的转发经 TCP/IP协议栈处理后的 IP 文的步 骤包括(如图 2所示) : 件; 如果是, 则执行步骤 S42, 如果否, 则执行步骤 S43;
S42、 将该经 TCP/IP协议栈处理后的 IP 文转发出去并将该经 TCP/IP 协议栈处理后的 IP报文的连接信息加入到预设的连接跟踪表;
在该步骤中, 对符合预设的快速转发条件的经 TCP/IP协议栈处理后的 IP报文, 可将该经 TCP/IP协议栈处理后的 IP报文转发出去, 例如, 可将该 经 TCP/IP协议栈处理后的 IP报文转发到 WiFi驱动, 再由该 WiFi驱动将经 TCP/IP协议栈处理后的 IP报文发送给 WiFi终端。对符合预设的快速转发条 件的经 TCP/IP协议栈处理后的 IP报文,还将该经 TCP/IP协议栈处理后的 IP 报文的连接信息加入到预设的连接跟踪表, 对预设的连接跟踪表进行更新。 通过对该预设的连接跟踪表不断更新,对下次接收的同样的 IP报文时, 可在 该预设的连接跟踪表中找到该 IP报文的连接信息, 进而可以直接将该 IP报 文转发, 不需要再将该 IP报文发送到 CPU进行处理, 可降低 CPU负荷, 提 高数据转发速率。 将该经 TCP/IP协议栈处理后的 IP报文的连接信息加入到预设的连接跟 踪表, 包括: 将该经 TCP/IP协议栈处理后的 IP报文的连接信息的五元组加 入到预设的连接跟踪表, 该五元组为: 源地址、 目的地址、 源端口、 目的端 口、 协议号。
S43、 将该经 TCP/IP协议栈处理后的 IP 文转发出去。
在该步骤中, 如果经 TCP/IP协议栈处理后的 IP报文不符合预设的快速 转发条件的, 则直接将该经 TCP/IP协议栈处理后的 IP报文转发出去, 不需 将该经 TCP/IP协议栈处理后的 IP报文的连接信息进行保存。
进一步的, 该步骤 S41判断经 TCP/IP协议栈处理后的 IP报文是否符合 预设的快速转发条件包括以下步骤(如图 3所示) :
S411、 根据预设的特定端口列表, 判断该经 TCP/IP协议栈处理后的 IP 报文是否属于预设种类的报文, 在该经 TCP/IP协议栈处理后的 IP报文属于 预设种类的报文时, 确定该经 TCP/IP协议栈处理后的 IP报文不符合预设的 快速转发条件, 然后执行步骤 S43 , 在该经 TCP/IP协议栈处理后的 IP报文 不属于预设种类的报文时, 则执行步骤 S412;
该预设的特定端口列表, 可由用户根据实际需要设定, 可将用户不想进 行快速转发的 IP报文,需要由 CPU进行 TCP/IP协议栈处理的报文的连接信 息中的端口设定为特定端口, 如特定端口列表可以设定包括: ftp21、 http80 等。
S412、判断该经 TCP/IP协议栈处理后的 IP报文是否是 ALG报文,在该 经 TCP/IP协议栈处理后的 IP报文不是 ALG报文时, 确定该经 TCP/IP协议 栈处理后的 IP报文符合预设的快速转发条件, 然后执行步骤 S42, 在该经 TCP/IP协议栈处理后的 IP报文是 ALG报文时, 则执行步骤 S413;
S413、判断该经 TCP/IP协议栈处理后的 IP报文是否是 FTP-DATA报文, 在该经 TCP/IP协议栈处理后的 IP报文是 FTP-DATA报文时, 确定该经 TCP/IP协议栈处理后的 IP报文符合预设的快速转发条件 ,然后执行步骤 S42; 在该经 TCP/IP协议栈处理后的 IP报文不是 FTP-DATA报文时, 确定该经 TCP/IP协议栈处理后的 IP报文不符合预设的快速转发条件, 然后执行步骤 S43。
上述步骤 S411、 S412和 S413判断经 TCP/IP协议栈处理后的 IP报文是 否符合预设的快速转发条件, 通过对特定端口、 ALG报文和 FTP-DATA报 文的判断, 可以只针对目标连接进行处理, 减少误加速, 比如对于 VPN报文 就不需要加速转发。 参照图 4, 图 4为本发明的网络设备数据转发装置的结构示意图, 该装 置 100包括:
接收模块 10,用于接收数据报文,并根据接收的数据报文生成 IP报文; 转发模块 20, 用于在该 IP报文的连接信息位于预设的连接跟踪表时, 对该 IP 文进行地址转换, 然后将转换后的 IP 文转发出去; 及用于在该 IP报文的连接信息不在该预设的连接跟踪表时,将该 IP报文发送给 CPU 200 以进行 TCP/IP协议栈处理, 并转发经 TCP/IP协议栈处理后的 IP报文。
接收模块 10接收的数据报文, 可以是接收的通过 LTE空口网络或其他 空口网络将数据报文发送到网卡的数据报文;接收模块 10接收数据报文,对 该数据报文进行相应更改, 根据该接收的数据报文生成 IP报文。
该预设的连接跟踪表可预先设置, 也可根据使用情况在不断更新。 该预 设的连接跟踪表包括源地址、 目标地址、 源端口、 目标端口、 协议号。 该 IP 才艮文的连接信息包括源地址、 目标地址、 源端口、 目标端口、 协议号。
在该 IP报文的连接信息位于预设的连接跟踪表时, 则说明该 IP报文不 需要发送给 CPU 200进行 TCP/IP协议栈处理, 转发模块 20可直接对该 IP 报文进行地址转换, 然后将转换后的 IP报文转发出去, 例如, 可将该转换后 的 IP报文转发到 WiFi驱动 , 再由该 WiFi驱动将 IP报文发送给 WiFi终端; 不需要将该 IP报文发送给 CPU 200 ,不需由 CPU 200对该 IP报文进行 TCP/IP 协议栈处理(涉及防火墙的过滤、 IP地址转换、 流量控制等), 可减少 CPU 中断, 降低 CPU的负荷。
在该 IP报文的连接信息不在预设的连接跟踪表时, 转发模块 20需要将 该 IP报文发送给 CPU以使 CPU产生中断, 对该 IP报文进行 TCP/IP协议栈 处理; 再转发经 TCP/IP协议栈处理后的 IP报文。
进一步的, 该转发模块 20包括:
第一判断单元 21 , 用于判断该 IP报文的连接信息是否位于预设的连接 跟踪表; 收发单元 22, 用于在该第一判断单元 21的判断结果为该 IP报文的连接 信息不在预设的连接跟踪表时,将该 IP报文发送给 CPU 200以使该 CPU 200 对 IP报文进行 TCP/IP协议栈处理;及用于接收经 TCP/IP协议栈处理后的 IP 报文;
第二判断单元 23, 用于判断经 TCP/IP协议栈处理后的 IP报文是否符合 预设的快速转发条件;
转发单元 24, 用于在第一判断单元 21的判断结果为该 IP报文的连接信 息位于预设的连接跟踪表时,对该 IP报文进行地址转换,然后将转换后的 IP 报文发送出去; 及用于在该第二判断单元 23判断结果为该经 TCP/IP协议栈 处理后的 IP报文符合预设的快速转发条件时, 将该经 TCP/IP协议栈处理后 的 IP报文转发出去并将该经 TCP/IP协议栈处理后的 IP报文的连接信息加入 到预设的连接跟踪表;及用于在该第二判断单元 23的判断结果为该经 TCP/IP 栈处理后的 IP报文转发出去。
第一判断单元 21用于判断该 IP报文的连接信息是否位于预设的连接跟 踪表; 如果 IP报文的连接信息位于预设的连接跟踪表, 则说明该 IP报文不 需要发送给 CPU进行 TCP/IP协议栈处理, 可直接通过转发单元 24对该 IP 报文进行地址转换, 然后将转换后的 IP报文转发出去, 例如, 可将该转换后 的 IP报文转发到 WiFi驱动 , 再由该 WiFi驱动将 IP报文发送给 WiFi终端; 如果 IP报文的连接信息位于预设的连接跟踪表, 就不需要将该 IP报文发送 给 CPU, 不需由 CPU对该 IP报文进行 TCP/IP协议栈处理(涉及防火墙的 过滤、 IP地址转换、 流量控制等) , 可减少 CPU中断, 降低 CPU的负荷; 如果 IP报文的连接信息不位于预设的连接跟踪表, 则需要通过收发单元 22 将该 IP 4艮文发送给 CPU 200 , CPU 200产生中断, 对该 IP 4艮文进行 TCP/IP 协议栈处理; 该 CPU 200还将经 TCP/IP协议栈处理后的 IP 文发送给收发 单元 22。
转发单元 24将符合预设的快速转发条件的经 TCP/IP协议栈处理后的 IP 报文转发出去, 例如, 可将该经 TCP/IP协议栈处理后的 IP报文转发到 WiFi 驱动, 再由该 WiFi驱动将经 TCP/IP协议栈处理后的 IP 4艮文发送给 WiFi终 端。 对符合预设的快速转发条件的经 TCP/IP协议栈处理后的 IP报文, 该转 发单元还将该经 TCP/IP协议栈处理后的 IP报文的连接信息加入到预设的连 接跟踪表, 对预设的连接跟踪表进行更新。 通过对该预设的连接跟踪表不断 更新,对下次接收的同样的 IP报文时,可在该预设的连接跟踪表中找到该 IP 报文的连接信息, 进而可以直接将该 IP报文转发, 不需要再将该 IP报文发 送到 CPU进行处理, 可降低 CPU负荷, 提高数据转发速率。
将该经 TCP/IP协议栈处理后的 IP报文的连接信息加入到预设的连接跟 踪表, 包括: 将该经 TCP/IP协议栈处理后的 IP报文的连接信息的五元组加 入到预设的连接跟踪表, 该五元组为: 源地址、 目的地址、 源端口、 目的端 口、 协议号。
进一步的,如图 5所示,该第二判断单元 23包括: 第一判断子单元 25、 第二判断子单元 26和第三判断子单元 27。
第一判断子单元 25, 用于根据预设的特定端口列表, 判断该经 TCP/IP 协议栈处理后的 IP报文是否属于预设种类的报文, 在该经 TCP/IP协议栈处 理后的 IP报文属于预设种类的报文时, 确定该经 TCP/IP协议栈处理后的 IP 报文不符合预设的快速转发条件。
该预设的特定端口列表, 可由用户根据实际需要设定, 可将用户不想进 行快速转发的 IP报文,需要由 CPU进行 TCP/IP协议栈处理的报文的连接信 息中的端口设定为特定端口, 如特定端口列表可以设定包括: ftp21、 http80 等。
第二判断子单元 26 , 用于在该第一判断子单元 25 的判断结果为该经
TCP/IP协议栈处理后的 IP报文属于预设种类的报文时, 判断该经 TCP/IP协 议栈处理后的 IP报文是否是 ALG报文, 在该经 TCP/IP协议栈处理后的 IP 报文不是 ALG报文时,确定该经 TCP/IP协议栈处理后的 IP报文符合预设的 快速转发条件。
第三判断子单元 27 , 用于在该第二判断子单元 26 的判断结果为该经
TCP/IP协议栈处理后的 IP报文是 ALG报文时, 判断该经 TCP/IP协议栈处 理后的 IP报文是否是 FTP-DATA报文, 在该经 TCP/IP协议栈处理后的 IP 报文是 FTP-DATA报文时,确定该经 TCP/IP协议栈处理后的 IP报文符合预 设的快速转发条件, 在该经 TCP/IP协议栈处理后的 IP报文不是 FTP-DATA 报文时, 确定该经 TCP/IP协议栈处理后的 IP报文不符合预设的快速转发条 件,
通过第二判断单元 23中的第一判断子单元 25、第二判断子单元 26和第 三判断子单元 27判断经 TCP/IP协议栈处理后的 IP报文是否符合预设的快速 转发条件, 通过对特定端口、 ALG报文和 FTP-DATA报文的判断, 可以只 针对目标连接进行处理,减少误加速,比如对于 VPN ^艮文就不需要加速转发。 以上所述仅为本发明的优选实施例, 并非因此限制本发明的专利范围, 凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换, 或直接 或间接运用在其他相关的技术领域, 均同理包括在本发明的专利保护范围。
工业实用性
本发明实施例的技术方案,不需要将所有接收到的数据报文都经 CPU调 度以进入 TCP/IP协议栈处理, 而是先将接收到的数据报文生成 IP报文, 再 将 IP报文与预设的连接跟踪表比较,如果该 IP报文位于预设的连接跟踪表, 则直接对 IP报文进行地址转换, 然后将转换后的 IP报文转发出去; 釆用本 发明的方案, 可避免不必要的 CPU中断, 降低 CPU负荷, 及提高数据的转 发速度, 提高设备的数据传输效率。

Claims

权 利 要 求 书
1、 一种网络设备数据转发方法, 该方法包括:
接收数据报文, 并根据接收的数据报文生成 IP报文;
在所述 IP报文的连接信息位于预设的连接跟踪表时, 对所述 IP报文进 行地址转换, 然后将转换后的 IP报文转发出去;
在所述 IP报文的连接信息不在所述预设的连接跟踪表时, 将所述 IP报 文发送给 CPU以进行 TCP/IP协议栈处理,并转发经 TCP/IP协议栈处理后的 IP报文。
2、 根据权利要求 1所述的方法, 其中, 所述转发经 TCP/IP协议栈处理 后的 IP ·^艮文包括:
述经 TCP/IP协议栈处理后的 IP 文转发出去,并将所述经 TCP/IP协议栈处 理后的 IP报文的连接信息加入到所述预设的连接跟踪表; 所述经 TCP/IP协议栈处理后的 IP报文转发出去。
3、 根据权利要求 2所述的方法, 其中, 所述判断经 TCP/IP协议栈处理 后的 IP报文是否符合预设的快速转发条件包括:
根据预设的特定端口列表, 判断所述经 TCP/IP协议栈处理后的 IP报文 是否属于预设种类的报文;
在所述经 TCP/IP协议栈处理后的 IP报文属于预设种类的报文时, 确定
4、 根据权利要求 3所述的方法, 其中, 所述判断所述经 TCP/IP协议栈 处理后的 IP报文是否属于预设种类的报文之后, 该方法还包括:
在所述经 TCP/IP协议栈处理后的 IP报文不属于预设种类的报文时, 判 断所述经 TCP/IP协议栈处理后的 IP报文是否是 ALG报文;
在所述经 TCP/IP协议栈处理后的 IP报文不是 ALG报文时 ,确定所述经
5、 根据权利要求 4所述的方法, 其中, 所述判断所述经 TCP/IP协议栈 处理后的 IP报文是否是 ALG报文之后, 该方法还包括:
在所述经 TCP/IP协议栈处理后的 IP报文是 ALG报文时, 判断所述经
TCP/IP协议栈处理后的 IP报文是否是 FTP-DATA报文;
在所述经 TCP/IP协议栈处理后的 IP报文是 FTP-DATA报文时,确定所 述经 TCP/IP协议栈处理后的 IP报文符合预设的快速转发条件;
在所述经 TCP/IP协议栈处理后的 IP报文不是 FTP-DATA报文时,确定
6、 一种网络设备数据转发装置, 包括:
接收模块,设置为:接收数据报文,并根据接收的数据报文生成 IP报文; 转发模块,设置为:在所述 IP报文的连接信息位于预设的连接跟踪表时, 对所述 IP报文进行地址转换, 然后将转换后的 IP报文转发出去; 及在所述 IP报文的连接信息不在所述预设的连接跟踪表时,将所述 IP报文发送给 CPU 以进行 TCP/IP协议栈处理, 并转发经 TCP/IP协议栈处理后的 IP报文。
7、 根据权利要求 6所述的装置, 其中, 所述转发模块包括:
第一判断单元,设置为: 判断所述 IP报文的连接信息是否位于预设的连 接跟踪表;
收发单元,设置为: 在所述第一判断单元的判断结果为所述 IP报文的连 接信息不在所述预设的连接跟踪表时, 将所述 IP报文发送给 CPU 以进行 TCP/IP协议栈处理; 及接收经 TCP/IP协议栈处理后的 IP报文;
第二判断单元, 设置为: 判断经 TCP/IP协议栈处理后的 IP报文是否符 合预设的快速转发条件;
转发单元,设置为: 在第一判断单元的判断结果为所述 IP报文的连接信 息位于预设的连接跟踪表时,对所述 IP报文进行地址转换, 然后将转换后的 IP报文发送出去; 及在所述第二判断单元判断结果为所述经 TCP/IP协议栈 处理后的 IP报文符合预设的快速转发条件时, 将所述经 TCP/IP协议栈处理 后的 IP报文转发出去并将所述经 TCP/IP协议栈处理后的 IP报文的连接信息 加入到预设的连接跟踪表; 及在所述第二判断单元的判断结果为所述经
TCP/IP 协议栈处理后的 IP报文不符合预设的快速转发条件时, 将所述经 TCP/IP协议栈处理后的 IP才艮文转发出去。
8、 根据权利要求 7所述的装置, 其中, 所述第二判断单元包括: 第一判断子单元,设置为:根据预设的特定端口列表,判断所述经 TCP/IP 协议栈处理后的 IP报文是否属于预设种类的报文, 在所述经 TCP/IP协议栈 处理后的 IP报文属于预设种类的报文时, 确定所述经 TCP/IP协议栈处理后 的 IP报文不符合预设的快速转发条件。
9、 根据权利要求 8所述的装置, 其中, 所述第二判断单元还包括: 第二判断子单元, 设置为: 在所述第一判断子单元的判断结果为所述经
TCP/IP协议栈处理后的 IP报文不属于预设种类的报文时,判断所述经 TCP/IP 协议栈处理后的 IP报文是否是 ALG报文,在所述经 TCP/IP协议栈处理后的 IP报文不是 ALG报文时, 确定所述经 TCP/IP协议栈处理后的 IP报文符合 预设的快速转发条件。
10、 根据权利要求 9所述的装置, 其中, 所述第二判断单元还包括: 第三判断子单元, 设置为: 在所述第二判断子单元的判断结果为所述经
TCP/IP协议栈处理后的 IP报文是 ALG报文时, 判断所述经 TCP/IP协议栈 处理后的 IP报文是否是 FTP-DATA报文,在所述经 TCP/IP协议栈处理后的 IP报文是 FTP-DATA报文时,确定所述经 TCP/IP协议栈处理后的 IP报文符 合预设的快速转发条件, 在所述经 TCP/IP 协议栈处理后的 IP 报文不是 FTP-DATA报文时, 确定所述经 TCP/IP协议栈处理后的 IP报文不符合预设 的快速转发条件。
PCT/CN2013/082042 2013-07-08 2013-08-22 一种网络设备数据转发方法及装置 WO2014166190A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
MX2016000241A MX2016000241A (es) 2013-07-08 2013-08-22 Procedimiento y aparato para la transmisión de datos de dispositivos de red.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310284742.7A CN104283923A (zh) 2013-07-08 2013-07-08 一种网络设备数据转发方法及装置
CN201310284742.7 2013-07-08

Publications (1)

Publication Number Publication Date
WO2014166190A1 true WO2014166190A1 (zh) 2014-10-16

Family

ID=51688897

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/082042 WO2014166190A1 (zh) 2013-07-08 2013-08-22 一种网络设备数据转发方法及装置

Country Status (3)

Country Link
CN (1) CN104283923A (zh)
MX (1) MX2016000241A (zh)
WO (1) WO2014166190A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600833A (zh) * 2019-07-30 2020-08-28 新华三技术有限公司 网络操作系统及报文转发方法
CN112134757A (zh) * 2020-09-21 2020-12-25 北京信而泰科技股份有限公司 一种报文生成方法及装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411771A (zh) * 2016-09-09 2017-02-15 北京锐安科技有限公司 一种数据转发方法及系统
CN108234359B (zh) * 2016-12-13 2020-12-04 华为技术有限公司 传输报文的系统和方法
CN107872545B (zh) * 2017-09-26 2022-12-06 中兴通讯股份有限公司 一种报文传输方法及装置、计算机可读存储介质
CN109756498B (zh) * 2019-01-04 2021-05-28 烽火通信科技股份有限公司 通信设备上tcp协议的nat alg转换方法及系统
CN111787010A (zh) * 2020-07-01 2020-10-16 深信服科技股份有限公司 一种报文处理方法、装置、设备及可读存储介质
CN115086183B (zh) * 2022-07-05 2024-02-06 武汉思普崚技术有限公司 一种应用层网关的报文关联方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035011A (zh) * 2006-03-10 2007-09-12 中国科学院软件研究所 以太网驱动级底层过滤方法和系统
CN101068212A (zh) * 2007-06-11 2007-11-07 中兴通讯股份有限公司 一种网络地址转换转发的装置及方法
CN102123082A (zh) * 2011-01-14 2011-07-13 中兴通讯股份有限公司 数据包转发方法和设备
CN102394815A (zh) * 2011-10-28 2012-03-28 深圳市共进电子股份有限公司 Linux下实现网络加速的方法
CN102821032A (zh) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 一种快速转发数据包的方法及三层设备
CN102957600A (zh) * 2011-08-19 2013-03-06 中兴通讯股份有限公司 一种数据报文转发方法及装置
CN103067281A (zh) * 2012-12-28 2013-04-24 深圳市磊科实业有限公司 一种路由器快速转发方法及实施该方法的系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7961636B1 (en) * 2004-05-27 2011-06-14 Cisco Technology, Inc. Vectorized software packet forwarding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035011A (zh) * 2006-03-10 2007-09-12 中国科学院软件研究所 以太网驱动级底层过滤方法和系统
CN101068212A (zh) * 2007-06-11 2007-11-07 中兴通讯股份有限公司 一种网络地址转换转发的装置及方法
CN102123082A (zh) * 2011-01-14 2011-07-13 中兴通讯股份有限公司 数据包转发方法和设备
CN102821032A (zh) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 一种快速转发数据包的方法及三层设备
CN102957600A (zh) * 2011-08-19 2013-03-06 中兴通讯股份有限公司 一种数据报文转发方法及装置
CN102394815A (zh) * 2011-10-28 2012-03-28 深圳市共进电子股份有限公司 Linux下实现网络加速的方法
CN103067281A (zh) * 2012-12-28 2013-04-24 深圳市磊科实业有限公司 一种路由器快速转发方法及实施该方法的系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600833A (zh) * 2019-07-30 2020-08-28 新华三技术有限公司 网络操作系统及报文转发方法
CN111600833B (zh) * 2019-07-30 2022-08-26 新华三技术有限公司 网络操作系统及报文转发方法
CN112134757A (zh) * 2020-09-21 2020-12-25 北京信而泰科技股份有限公司 一种报文生成方法及装置

Also Published As

Publication number Publication date
CN104283923A (zh) 2015-01-14
MX2016000241A (es) 2016-08-23

Similar Documents

Publication Publication Date Title
WO2014166190A1 (zh) 一种网络设备数据转发方法及装置
JP2020522967A (ja) セッション管理方法及び装置
WO2008032750A1 (fr) dispositif de communication
CN105264830B (zh) 数据包的处理方法、终端、基站及系统
EP2866395B1 (en) Maximum transmission unit negotiation method and data terminal
WO2018121535A1 (zh) 一种负载均衡处理方法及装置
JP5923376B2 (ja) Tcp中継装置
JP2022537239A (ja) 無線lanにおいてデータを受送信する方法、端末、システム及びネットワークアクセス機器
WO2013123862A1 (zh) 存储和发送mac地址表项的方法、设备及系统
EP3937565A1 (en) Communication method and apparatus
EP3021555B1 (en) Message processing method and device
JP2012089012A (ja) 接続装置及びパケットを送信する方法
WO2014101888A1 (zh) 数据传输方法、设备及网关
CN103974339B (zh) 一种数据缓存的方法和装置
US20140029496A1 (en) Communication terminal, communication method, and computer readable medium
US10432744B2 (en) Information processing apparatus, information processing system, and information processing method
US20160295301A1 (en) Communication protocol control method and device in smart tv apparatus
JP2007228294A5 (zh)
JP2012533235A5 (zh)
JP2010166142A (ja) 通信制御装置、通信制御方法、およびプログラム
WO2012146139A1 (zh) 一种报文的过滤方法和接入设备
WO2010139216A1 (zh) 实现在扩展处理器和交换芯片之间传输报文的方法和系统
WO2015006901A1 (zh) 一种数据流处理方法、设备和系统
WO2015096734A1 (zh) 一种业务数据的下行传输方法及分组数据网关
WO2014000290A1 (zh) 数据报文的控制方法、设备及系统

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: 13881594

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: MX/A/2016/000241

Country of ref document: MX

122 Ep: pct application non-entry in european phase

Ref document number: 13881594

Country of ref document: EP

Kind code of ref document: A1