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

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

Info

Publication number
CN104283923A
CN104283923A CN201310284742.7A CN201310284742A CN104283923A CN 104283923 A CN104283923 A CN 104283923A CN 201310284742 A CN201310284742 A CN 201310284742A CN 104283923 A CN104283923 A CN 104283923A
Authority
CN
China
Prior art keywords
message
icp
protocol stack
default
forwarding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310284742.7A
Other languages
English (en)
Inventor
刘威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201310284742.7A priority Critical patent/CN104283923A/zh
Priority to MX2016000241A priority patent/MX2016000241A/es
Priority to PCT/CN2013/082042 priority patent/WO2014166190A1/zh
Publication of CN104283923A publication Critical patent/CN104283923A/zh
Pending legal-status Critical Current

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

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 TermEvolution,长期演进技术)网络时代的来临,再加上WiFi技术的发展,家用LTE无线路由产品也已经面市。以FDD(Frequency Division Duplexing,频分双工,也称全双工)LTE网络加支持802.11n2*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报文属于预设种类的报文时,确定所述经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报文是ALG报文时,判断所述经TCP/IP协议栈处理后的IP报文是否是FTP-DATA报文;
在所述经TCP/IP协议栈处理后的IP报文是FTP-DATA报文时,确定所述经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件;
在所述经TCP/IP协议栈处理后的IP报文不是FTP-DATA报文时,确定所述经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件。
本发明还提供一种网络设备数据转发装置,包括:
接收模块,用于接收数据报文,并根据接收的数据报文生成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报文;
该接收的数据报文,可以是接收的通过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所示):
S41、判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件;如果是,则执行步骤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报文发送给CPU200以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。
接收模块10接收的数据报文,可以是接收的通过LTE空口网络或其他空口网络将数据报文发送到网卡的数据报文;接收模块10接收数据报文,对该数据报文进行相应更改,根据该接收的数据报文生成IP报文。
该预设的连接跟踪表可预先设置,也可根据使用情况在不断更新。该预设的连接跟踪表包括源地址、目标地址、源端口、目标端口、协议号。该IP报文的连接信息包括源地址、目标地址、源端口、目标端口、协议号。
在该IP报文的连接信息位于预设的连接跟踪表时,则说明该IP报文不需要发送给CPU200进行TCP/IP协议栈处理,转发模块20可直接对该IP报文进行地址转换,然后将转换后的IP报文转发出去,例如,可将该转换后的IP报文转发到WiFi驱动,再由该WiFi驱动将IP报文发送给WiFi终端;不需要将该IP报文发送给CPU200,不需由CPU200对该IP报文进行TCP/IP协议栈处理(涉及防火墙的过滤、IP地址转换、流量控制等),可减少CPU中断,降低CPU的负荷。
在该IP报文的连接信息不在预设的连接跟踪表时,转发模块20需要将该IP报文发送给CPU以使CPU产生中断,对该IP报文进行TCP/IP协议栈处理;再转发经TCP/IP协议栈处理后的IP报文。
进一步的,该转发模块20包括:
第一判断单元21,用于判断该IP报文的连接信息是否位于预设的连接跟踪表;
收发单元22,用于在该第一判断单元21的判断结果为该IP报文的连接信息不在预设的连接跟踪表时,将该IP报文发送给CPU200以使该CPU200对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报文不符合预设的快速转发条件时,将该经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报文发送给CPU200,CPU200产生中断,对该IP报文进行TCP/IP协议栈处理;该CPU200还将经TCP/IP协议栈处理后的IP报文发送给收发单元22。
转发单元24将符合预设的快速转发条件的经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报文的连接信息的五元组加入到预设的连接跟踪表,该五元组为:源地址、目的地址、源端口、目的端口、协议号。
进一步的,如图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报文就不需要加速转发。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围。

Claims (10)

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报文转发出去,并将所述经TCP/IP协议栈处理后的IP报文的连接信息加入到所述预设的连接跟踪表;
在经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件时,将所述经TCP/IP协议栈处理后的IP报文转发出去。
3.根据权利要求2所述的方法,其特征在于,所述判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件的步骤包括:
根据预设的特定端口列表,判断所述经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报文时,确定所述经TCP/IP协议栈处理后的IP报文符合所述预设的快速转发条件。
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报文时,确定所述经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件。
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报文不符合预设的快速转发条件。
CN201310284742.7A 2013-07-08 2013-07-08 一种网络设备数据转发方法及装置 Pending CN104283923A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310284742.7A CN104283923A (zh) 2013-07-08 2013-07-08 一种网络设备数据转发方法及装置
MX2016000241A MX2016000241A (es) 2013-07-08 2013-08-22 Procedimiento y aparato para la transmisión de datos de dispositivos de red.
PCT/CN2013/082042 WO2014166190A1 (zh) 2013-07-08 2013-08-22 一种网络设备数据转发方法及装置

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
CN104283923A true CN104283923A (zh) 2015-01-14

Family

ID=51688897

Family Applications (1)

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

Country Status (3)

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

Cited By (6)

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

Families Citing this family (2)

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

Citations (3)

* 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
CN102821032A (zh) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 一种快速转发数据包的方法及三层设备
CN103067281A (zh) * 2012-12-28 2013-04-24 深圳市磊科实业有限公司 一种路由器快速转发方法及实施该方法的系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100435514C (zh) * 2006-03-10 2008-11-19 中国科学院软件研究所 以太网驱动级底层过滤方法和系统
CN101068212B (zh) * 2007-06-11 2010-12-29 中兴通讯股份有限公司 一种网络地址转换转发的装置及方法
CN102123082A (zh) * 2011-01-14 2011-07-13 中兴通讯股份有限公司 数据包转发方法和设备
CN102957600B (zh) * 2011-08-19 2017-11-10 中兴通讯股份有限公司 一种数据报文转发方法及装置
CN102394815B (zh) * 2011-10-28 2014-03-05 深圳市共进电子股份有限公司 Linux下实现网络加速的方法

Patent Citations (3)

* 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
CN102821032A (zh) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 一种快速转发数据包的方法及三层设备
CN103067281A (zh) * 2012-12-28 2013-04-24 深圳市磊科实业有限公司 一种路由器快速转发方法及实施该方法的系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411771A (zh) * 2016-09-09 2017-02-15 北京锐安科技有限公司 一种数据转发方法及系统
CN108234359A (zh) * 2016-12-13 2018-06-29 华为技术有限公司 传输报文的系统和方法
CN108234359B (zh) * 2016-12-13 2020-12-04 华为技术有限公司 传输报文的系统和方法
CN107872545A (zh) * 2017-09-26 2018-04-03 中兴通讯股份有限公司 一种报文传输方法及装置、计算机可读存储介质
WO2019062593A1 (zh) * 2017-09-26 2019-04-04 西安中兴新软件有限责任公司 报文传输方法及装置、计算机可读存储介质
US11356410B2 (en) 2017-09-26 2022-06-07 Zte Corporation Packet transmission method and device, and computer readable storage medium
CN109756498A (zh) * 2019-01-04 2019-05-14 烽火通信科技股份有限公司 通信设备上tcp协议的nat alg转换方法及系统
CN111787010A (zh) * 2020-07-01 2020-10-16 深信服科技股份有限公司 一种报文处理方法、装置、设备及可读存储介质
CN115086183A (zh) * 2022-07-05 2022-09-20 武汉思普崚技术有限公司 一种应用层网关的报文关联方法及装置
CN115086183B (zh) * 2022-07-05 2024-02-06 武汉思普崚技术有限公司 一种应用层网关的报文关联方法及装置

Also Published As

Publication number Publication date
WO2014166190A1 (zh) 2014-10-16
MX2016000241A (es) 2016-08-23

Similar Documents

Publication Publication Date Title
CN104283923A (zh) 一种网络设备数据转发方法及装置
US8514890B2 (en) Method for switching traffic between virtual machines
CN102300259B (zh) 一种数据块级联和拆解处理方法、装置及系统
EP2764681B1 (en) Systems and methods for data packet processing
CN101621833B (zh) 一种报文流量控制方法和基站控制器
CN101799682B (zh) 一种家电设备智能控制系统的控制方法
CN103856302B (zh) 一种智能设备控制方法
KR20170018057A (ko) 데이터 전송 방법 및 디바이스
US9661550B2 (en) Communication apparatus, communication method, and communication system
CN109274596A (zh) 数据传输方法及相关装置
CN107612841A (zh) 一种传输数据的方法、装置及计算机设备
CN104283750A (zh) 基于以太网总线的统一链路层多协议交换方法
CN107580233A (zh) 一种传输数据的方法、装置及计算机设备
CN101610587B (zh) 一种基于tdd制式的数据传输方法和装置
US8774205B2 (en) Network device and its control method and computer program product
EP3920443A1 (en) Transmission processing method, terminal and network device
EP2667547A1 (en) Bandwidth adjustment method, bus controller and signal converter
CN103974339B (zh) 一种数据缓存的方法和装置
CN104158683A (zh) 一种跨设备聚合组快速收敛方法及装置
CN205641369U (zh) 自助空调管理系统
CN107005464A (zh) 一种业务流数据包的处理方法及装置
JPWO2010073474A1 (ja) 通信システム
CN103906011A (zh) 一种数据发送、接收装置及方法
CN109120486A (zh) WiFi模块数据传输方法、传输系统、智能家电数据传输系统
WO2019112494A1 (en) A first node and a second node and methods of operating the same

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150114