CN104283923A - 一种网络设备数据转发方法及装置 - Google Patents
一种网络设备数据转发方法及装置 Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping 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报文不符合预设的快速转发条件。
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)
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)
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)
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)
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下实现网络加速的方法 |
-
2013
- 2013-07-08 CN CN201310284742.7A patent/CN104283923A/zh active Pending
- 2013-08-22 MX MX2016000241A patent/MX2016000241A/es unknown
- 2013-08-22 WO PCT/CN2013/082042 patent/WO2014166190A1/zh active Application Filing
Patent Citations (3)
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)
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 |