一种网络设备数据转发方法及装置制造方法

文档序号:8001975阅读:105来源:国知局
一种网络设备数据转发方法及装置制造方法
【专利摘要】本发明公开了一种网络设备数据转发的方法,该方法包括:接收数据报文,并根据接收的数据报文生成IP报文;在所述IP报文的连接信息位于预设的连接跟踪表时,对所述IP报文进行地址转换,然后将转换后的IP报文转发出去;在所述IP报文的连接信息不在所述预设的连接跟踪表时,将所述IP报文发送给CPU以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。本发明还公开了相应的装置。采用本发明的方案,不需要将所有接收到的数据报文都经CPU调度再转发,可避免不必要的CPU中断,降低CPU负荷,可提高数据的转发速度。
【专利说明】一种网络设备数据转发方法及装置

【技术领域】
[0001]本发明涉及到通信【技术领域】,特别涉及到一种网络设备数据转发方法及装置。

【背景技术】
[0002]在实际应用中,网络设备需要处理大量的报文数据,如将数据上传和下载。每一次无线通信网络的演进以及升级换代,都伴随着终端下载速率的倍数甚至指数级增长,从早期以Kbps为单位来测量速率,到现在以Mbps为单位,相信不久的将来Gbps也会成为我们常用的速率单位。随着LTE (Long Term Evolut1n,长期演进技术)网络时代的来临,再加上WiFi技术的发展,家用LTE无线路由产品也已经面市。以FDD (Frequency Divis1nDuplexing,频分双工,也称全双工)LTE网络加支持802.11η2*2的LTE无线路由器为例,LTE至WiFi方向的速率可以达到100Mbps。如此高的速率,对路由产品的硬件配置也提出了较高的要求。理论上,只要相应地提升产品硬件配置,速率也自然能够提升。但作为面向家庭用户的LTE无线路由设备,都是中低端嵌入式产品,主板CPU不会太高;过高的硬件配置,意味着成本的增加,不利于产品的普及。
[0003]如何在不提升硬件配置的前提下,满足LTE至WiFi的极限速率,则只能依赖软件系统的优化。路由设备作为数据通道产品,最主要的作用就是进行数据转发,将LTE空口(空口是指空中接口,空中接口是一个形象化的术语,是相对于有线通信中的“线路接口 ”概念而言的)网络过来的数据包,经过一系列处理后,转发给WiFi驱动,最后通过WiFi空口到达WiFi终端。大部分路由产品都采用嵌入式Linux操作系统的NAT (Network AddressTranslat1n,网络地址转换)方案,一个数据包的大致处理流程为:
[0004]1.LTE空口数据到达网卡驱动;
[0005]2.经CPU调度,进入TCP/IP协议栈处理,涉及防火墙的过滤,IP地址转换,流量控制等操作;
[0006]3.对于目的地非本机的数据包,转发至相应的网卡设备,进入驱动层处理。
[0007]这上述三步中,步骤2将会产生大量的CPU中断,每个数据包都要经过TCP/IP协议栈的层层处理,极大地加重了 CPU的负荷;降低了数据转发速率,影响网络设备(如路由设备)的数据传输效率。


【发明内容】

[0008]本发明的主要目的为提供一种网络设备数据转发方法及装置,旨在避免不必要的CPU中断,降低CPU负荷,及提高数据的转发速度,提高设备的数据传输效率。
[0009]本发明提供一种网络设备数据转发方法,该方法包括:
[0010]接收数据报文,并根据接收的数据报文生成IP报文;
[0011]在所述IP报文的连接信息位于预设的连接跟踪表时,对所述IP报文进行地址转换,然后将转换后的IP报文转发出去;
[0012]在所述IP报文的连接信息不在所述预设的连接跟踪表时,将所述IP报文发送给CPU以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。
[0013]优选地,所述转发经TCP/IP协议栈处理后的IP报文的步骤包括:
[0014]判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件;
[0015]在经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件时,将所述经TCP/IP协议栈处理后的IP报文转发出去,并将所述经TCP/IP协议栈处理后的IP报文的连接信息加入到所述预设的连接跟踪表;
[0016]在经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件时,将所述经TCP/IP协议栈处理后的IP报文转发出去。
[0017]优选地,所述判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件的步骤包括:
[0018]根据预设的特定端口列表,判断所述经TCP/IP协议栈处理后的IP报文是否属于预设种类的报文;
[0019]在所述经TCP/IP协议栈处理后的IP报文属于预设种类的报文时,确定所述经TCP/IP协议栈处理后的IP报文不符合所述预设的快速转发条件。
[0020]优选地,所述判断所述经TCP/IP协议栈处理后的IP报文是否属于预设种类的报文的步骤之后,该方法还包括:
[0021]在所述经TCP/IP协议栈处理后的IP报文不属于预设种类的报文时,判断所述经TCP/IP协议栈处理后的IP报文是否是ALG报文;
[0022]在所述经TCP/IP协议栈处理后的IP报文不是ALG报文时,确定所述经TCP/IP协议栈处理后的IP报文符合所述预设的快速转发条件。
[0023]优选地,所述判断所述经TCP/IP协议栈处理后的IP报文是否是ALG报文的步骤之后,该方法还包括:
[0024]在所述经TCP/IP协议栈处理后的IP报文是ALG报文时,判断所述经TCP/IP协议栈处理后的IP报文是否是FTP-DATA报文;
[0025]在所述经TCP/IP协议栈处理后的IP报文是FTP-DATA报文时,确定所述经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件;
[0026]在所述经TCP/IP协议栈处理后的IP报文不是FTP-DATA报文时,确定所述经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件。
[0027]本发明还提供一种网络设备数据转发装置,包括:
[0028]接收模块,用于接收数据报文,并根据接收的数据报文生成IP报文;
[0029]转发模块,用于在所述IP报文的连接信息位于预设的连接跟踪表时,对所述IP报文进行地址转换,然后将转换后的IP报文转发出去;及用于在所述IP报文的连接信息不在所述预设的连接跟踪表时,将所述IP报文发送给CPU以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。
[0030]优选地,所述转发模块包括:
[0031]第一判断单元,用于判断所述IP报文的连接信息是否位于预设的连接跟踪表;
[0032]收发单元,用于在所述第一判断单元的判断结果为所述IP报文的连接信息不在所述预设的连接跟踪表时,将所述IP报文发送给CPU以进行TCP/IP协议栈处理;及用于接收经TCP/IP协议栈处理后的IP报文;
[0033]第二判断单元,用于判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件;
[0034]转发单元,用于在第一判断单元的判断结果为所述IP报文的连接信息位于预设的连接跟踪表时,对所述IP报文进行地址转换,然后将转换后的IP报文发送出去;及用于在所述第二判断单元判断结果为所述经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件时,将所述经TCP/IP协议栈处理后的IP报文转发出去并将所述经TCP/IP协议栈处理后的IP报文的连接信息加入到预设的连接跟踪表;及用于在所述第二判断单元的判断结果为所述经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件时,将所述经TCP/IP协议栈处理后的IP报文转发出去。
[0035]优选地,所述第二判断单元包括:
[0036]第一判断子单元,用于根据预设的特定端口列表,判断所述经TCP/IP协议栈处理后的IP报文是否属于预设种类的报文,在所述经TCP/IP协议栈处理后的IP报文属于预设种类的报文时,确定所述经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件。
[0037]优选地,所述第二判断单元还包括:
[0038]第二判断子单元,用于在所述第一判断子单元的判断结果为所述经TCP/IP协议栈处理后的IP报文不属于预设种类的报文时,判断所述经TCP/IP协议栈处理后的IP报文是否是ALG报文,在所述经TCP/IP协议栈处理后的IP报文不是ALG报文时,确定所述经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件。
[0039]优选地,所述第二判断单元还包括:
[0040]第三判断子单元,用于在所述第二判断子单元的判断结果为所述经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报文不符合预设的快速转发条件。
[0041]采用本发明的技术方案,不需要将所有接收到的数据报文都经CPU调度以进入TCP/IP协议栈处理,而是先将接收到的数据报文生成IP报文,再将IP报文与预设的连接跟踪表比较,如果该IP报文位于预设的连接跟踪表,则直接对IP报文进行地址转换,然后将转换后的IP报文转发出去;采用本发明的方案,可避免不必要的CPU中断,降低CPU负荷,及提高数据的转发速度,提高设备的数据传输效率。

【专利附图】

【附图说明】
[0042]图1为本发明的网络设备数据转发方法的流程示意图;
[0043]图2为图1中步骤S40的详细流程示意图;
[0044]图3是图2中步骤S41的详细流程示意图‘
[0045]图4为本发明的网络设备数据转发装置的结构示意图;
[0046]图5为图4中第二判断单元的具体结构示意图。
[0047]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

【具体实施方式】
[0048]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0049]参照图1,图1为本发明的网络设备数据转发方法的流程示意图,该方法包括:
[0050]S10、接收数据报文,并根据该接收的数据报文生成IP报文;
[0051 ] 该接收的数据报文,可以是接收的通过LTE空口网络或其他空口网络将数据报文发送到网卡的数据报文,在该步骤S10中,接收数据报文,对该数据报文进行相应更改,根据该接收的数据报文生成IP报文。
[0052]S20、判断该IP报文的连接信息是否位于预设的连接跟踪表,如果是,则执行步骤S30,如果否,则执行步骤S40 ;
[0053]该预设的连接跟踪表可预先设置,也可根据使用情况在不断更新。该预设的连接跟踪表包括源地址、目标地址、源端口、目标端口、协议号。该IP报文的连接信息包括源地址、目标地址、源端口、目标端口、协议号。
[0054]S30、对该IP报文进行地址转换,然后将转换后的IP报文转发出去;
[0055]在该步骤S30中,在该IP报文的连接信息位于预设的连接跟踪表时,则说明该IP报文不需要发送给CPU进行TCP/IP协议栈处理,可直接对该IP报文进行地址转换,然后将转换后的IP报文转发出去,例如,可将该转换后的IP报文转发到WiFi驱动,再由该WiFi驱动将IP报文发送给WiFi终端。在该步骤中,不需要将该IP报文发送给CPU,不需由CPU对该IP报文进行TCP/IP协议栈处理(涉及防火墙的过滤、IP地址转换、流量控制等),可减少CPU中断,降低CPU的负荷。
[0056]S40、将该IP报文发送给CPU以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。
[0057]在该步骤中,在该IP报文的连接信息不在预设的连接跟踪表时,需要将该IP报文发送给CPU以使CPU产生中断,对该IP报文进行TCP/IP协议栈处理;再转发经TCP/IP协议栈处理后的IP报文。
[0058]进一步的,在步骤S40中的转发经TCP/IP协议栈处理后的IP报文的步骤包括(如图2所示):
[0059]S41、判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件;如果是,则执行步骤S42,如果否,则执行步骤S43 ;
[0060]S42、将该经TCP/IP协议栈处理后的IP报文转发出去并将该经TCP/IP协议栈处理后的IP报文的连接信息加入到预设的连接跟踪表;
[0061]在该步骤中,对符合预设的快速转发条件的经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负荷,提高数据转发速率。
[0062]将该经TCP/IP协议栈处理后的IP报文的连接信息加入到预设的连接跟踪表,包括:将该经TCP/IP协议栈处理后的IP报文的连接信息的五元组加入到预设的连接跟踪表,该五元组为:源地址、目的地址、源端口、目的端口、协议号。
[0063]S43、将该经TCP/IP协议栈处理后的IP报文转发出去。
[0064]在该步骤中,如果经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件的,则直接将该经TCP/IP协议栈处理后的IP报文转发出去,不需将该经TCP/IP协议栈处理后的IP报文的连接信息进行保存。
[0065]进一步的,该步骤S41判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件包括以下步骤(如图3所示):
[0066]S411、根据预设的特定端口列表,判断该经TCP/IP协议栈处理后的IP报文是否属于预设种类的报文,在该经TCP/IP协议栈处理后的IP报文属于预设种类的报文时,确定该经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件,然后执行步骤S43,在该经TCP/IP协议栈处理后的IP报文不属于预设种类的报文时,则执行步骤S412 ;
[0067]该预设的特定端口列表,可由用户根据实际需要设定,可将用户不想进行快速转发的IP报文,需要由CPU进行TCP/IP协议栈处理的报文的连接信息中的端口设定为特定端口,如特定端口列表可以设定包括:ftp21、http80等。
[0068]S412、判断该经TCP/IP协议栈处理后的IP报文是否是ALG报文,在该经TCP/IP协议栈处理后的IP报文不是ALG报文时,确定该经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件,然后执行步骤S42,在该经TCP/IP协议栈处理后的IP报文是ALG报文时,则执行步骤S413 ;
[0069]S413、判断该经TCP/IP协议栈处理后的IP报文是否是FTP-DATA报文,在该经TCP/IP协议栈处理后的IP报文是FTP-DATA报文时,确定该经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件,然后执行步骤S42 ;在该经TCP/IP协议栈处理后的IP报文不是FTP-DATA报文时,确定该经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件,然后执行步骤S43。
[0070]上述步骤S411、S412和S413判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件,通过对特定端口、ALG报文和FTP-DATA报文的判断,可以只针对目标连接进行处理,减少误加速,比如对于VPN报文就不需要加速转发。
[0071]参照图4,图4为本发明的网络设备数据转发装置的结构示意图,该装置100包括:
[0072]接收模块10,用于接收数据报文,并根据接收的数据报文生成IP报文;
[0073]转发模块20,用于在该IP报文的连接信息位于预设的连接跟踪表时,对该IP报文进行地址转换,然后将转换后的IP报文转发出去;及用于在该IP报文的连接信息不在该预设的连接跟踪表时,将该IP报文发送给CPU200以进行TCP/IP协议栈处理,并转发经TCP/IP协议栈处理后的IP报文。
[0074]接收模块10接收的数据报文,可以是接收的通过LTE空口网络或其他空口网络将数据报文发送到网卡的数据报文;接收模块10接收数据报文,对该数据报文进行相应更改,根据该接收的数据报文生成IP报文。
[0075]该预设的连接跟踪表可预先设置,也可根据使用情况在不断更新。该预设的连接跟踪表包括源地址、目标地址、源端口、目标端口、协议号。该IP报文的连接信息包括源地址、目标地址、源端口、目标端口、协议号。
[0076]在该IP报文的连接信息位于预设的连接跟踪表时,则说明该IP报文不需要发送给CPU200进行TCP/IP协议栈处理,转发模块20可直接对该IP报文进行地址转换,然后将转换后的IP报文转发出去,例如,可将该转换后的IP报文转发到WiFi驱动,再由该WiFi驱动将IP报文发送给WiFi终端;不需要将该IP报文发送给CPU200,不需由CPU200对该IP报文进行TCP/IP协议栈处理(涉及防火墙的过滤、IP地址转换、流量控制等),可减少CPU中断,降低CPU的负荷。
[0077]在该IP报文的连接信息不在预设的连接跟踪表时,转发模块20需要将该IP报文发送给CPU以使CPU产生中断,对该IP报文进行TCP/IP协议栈处理;再转发经TCP/IP协议栈处理后的IP报文。
[0078]进一步的,该转发模块20包括:
[0079]第一判断单元21,用于判断该IP报文的连接信息是否位于预设的连接跟踪表;
[0080]收发单元22,用于在该第一判断单元21的判断结果为该IP报文的连接信息不在预设的连接跟踪表时,将该IP报文发送给CPU200以使该CPU200对IP报文进行TCP/IP协议栈处理;及用于接收经TCP/IP协议栈处理后的IP报文;
[0081]第二判断单元23,用于判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件;
[0082]转发单元24,用于在第一判断单元21的判断结果为该IP报文的连接信息位于预设的连接跟踪表时,对该IP报文进行地址转换,然后将转换后的IP报文发送出去;及用于在该第二判断单元23判断结果为该经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件时,将该经TCP/IP协议栈处理后的IP报文转发出去并将该经TCP/IP协议栈处理后的IP报文的连接信息加入到预设的连接跟踪表;及用于在该第二判断单元23的判断结果为该经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件时,将该经TCP/IP协议栈处理后的IP报文转发出去。
[0083]第一判断单元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。
[0084]转发单元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负荷,提高数据转发速率。
[0085]将该经TCP/IP协议栈处理后的IP报文的连接信息加入到预设的连接跟踪表,包括:将该经TCP/IP协议栈处理后的IP报文的连接信息的五元组加入到预设的连接跟踪表,该五元组为:源地址、目的地址、源端口、目的端口、协议号。
[0086]进一步的,如图5所示,该第二判断单元23包括:第一判断子单元25、第二判断子单元26和第三判断子单元27。
[0087]第一判断子单元25,用于根据预设的特定端口列表,判断该经TCP/IP协议栈处理后的IP报文是否属于预设种类的报文,在该经TCP/IP协议栈处理后的IP报文属于预设种类的报文时,确定该经TCP/IP协议栈处理后的IP报文不符合预设的快速转发条件。
[0088]该预设的特定端口列表,可由用户根据实际需要设定,可将用户不想进行快速转发的IP报文,需要由CPU进行TCP/IP协议栈处理的报文的连接信息中的端口设定为特定端口,如特定端口列表可以设定包括:ftp21、http80等。
[0089]第二判断子单元26,用于在该第一判断子单元25的判断结果为该经TCP/IP协议栈处理后的IP报文属于预设种类的报文时,判断该经TCP/IP协议栈处理后的IP报文是否是ALG报文,在该经TCP/IP协议栈处理后的IP报文不是ALG报文时,确定该经TCP/IP协议栈处理后的IP报文符合预设的快速转发条件。
[0090]第三判断子单元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报文不符合预设的快速转发条件,
[0091]通过第二判断单元23中的第一判断子单元25、第二判断子单元26和第三判断子单元27判断经TCP/IP协议栈处理后的IP报文是否符合预设的快速转发条件,通过对特定端口、ALG报文和FTP-DATA报文的判断,可以只针对目标连接进行处理,减少误加速,比如对于VPN报文就不需要加速转发。
[0092]以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围。
【权利要求】
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报文不符合预设的快速转发条件。
【文档编号】H04L29/08GK104283923SQ201310284742
【公开日】2015年1月14日 申请日期:2013年7月8日 优先权日:2013年7月8日
【发明者】刘威 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1