用于在多个WAN网络网关处转发互联网协议(IP)数据包的方法和系统转让专利

申请号 : CN201711235513.0

文献号 : CN107733930B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈浩明陈思瀚

申请人 : 柏思科技有限公司

摘要 :

本发明公开了用于在第一网络网关处转发互联网协议(IP)数据包的方法和系统。第一网络网关包括多个广域网(WAN)网络接口和至少一个局域网(LAN)网络接口。多个WAN网络接口中的第一WAN网络接口未分配IP地址。当通过第一WAN网络接口接收到第一IP数据包时,第一网络网关检查第一IP数据包。当确定不拦截第一IP数据包时,通过至少一个LAN网络接口中的一个转发第一IP数据包。当第一网络网关通过至少一个LAN网络接口中的一个接收第二IP数据包时,第一网络网关检查第二IP包。当确定不拦截第二IP数据包时,第一网关转发第二IP数据包通过多个WAN网络接口中的一个。

权利要求 :

1.一种用于在第一网络网关处转发互联网协议(IP)数据包的方法,其中所述第一网络网关包括多个广域网(WAN)网络接口和至少一个局域网(LAN)网络接口,其中多个WAN网络接口中的第一WAN网络接口未分配IP地址;所述方法包括:(a)当通过第一WAN网络接口接收到第一IP数据包时:(i)检查所述第一IP数据包;

(ii)确定是否拦截所述第一IP数据包;

(iii)当确定不拦截所述第一IP数据包时,通过所述至少一个LAN网络接口中的一个转发所述第一IP数据包;

(iv)当确定拦截所述第一IP数据包时:

创建第三IP数据包;所述第三IP数据包是所述第一IP数据包的响应;

根据所述第一IP数据包的源地址,通过所述第一WAN网络接口转发所述第三IP数据包;

其中所述第一IP数据包的所述源地址是所述第三IP数据包的目的地地址;

其中所述拦截的确定是基于所述第一IP数据包的以下至少一项:端口号、选项字段的内容、目的地地址及有效负载的内容;

(b)当通过所述至少一个LAN网络接口中的一个接收到第二IP数据包,并且所述第二IP数据包是通过所述第一WAN网络接口可到达时:(i)检查所述第二IP数据包;

(ii)确定是否拦截所述第二IP数据包;

(iii)当确定不拦截所述第二IP数据包时,通过所述多个WAN网络接口中的一个转发所述第二IP数据包;

(iv)当确定拦截所述第二IP数据包时:

创建第四IP数据包;所述第四IP数据包是所述第二IP数据包的响应;

根据所述第二IP数据包的源地址,通过所述至少一个LAN网络接口转发所述第四IP数据包;其中所述第二IP数据包的所述源地址是所述第四IP数据包的目的地地址;

其中所述第二IP数据包的每个的目的地地址不是所述第一WAN网络接口的IP地址;

其中所述多个WAN网络接口通过使用串行总线、通用串行总线(USB)并行总线、通用异步接收器/发射器(UART)、外围组件互连(PCI)、本地总线、或其它电子组件连接技术来实施;

其中所述拦截的确定是基于所述第二IP数据包的以下至少一项:端口号、选项字段的内容、目的地地址及有效负载的内容。

2.如权利要求1所述的方法,其中通过检查所述第一IP数据包的有效负荷来执行步骤(a)(i)。

3.如权利要求1所述的方法,其中通过检查所述第二IP数据包的有效负荷来执行步骤(b)(i)。

4.如权利要求1所述的方法,其中通过检查所述第一IP数据包的目的地端口来执行步骤(a)(i)。

5.根据权利要求1所述的方法,其中通过检查所述第二IP数据包的目的地端口来执行步骤(b)(i)。

6.如权利要求1所述的方法,其中所述第三IP数据包包括源地址;其中所述第三IP数据包的所述源地址与所述第一IP数据包的所述目的地地址相同;以及 其中所述第三IP数据包的源地址是通过所述至少一个LAN网络接口中的一个可到达的IP地址。

7.如权利要求1所述的方法,其中所述第一IP数据包包括状态报告及管理指令的至少一个;以及所述第三IP数据包的有效负载包括含有由所述第一网络网关产生的信息,以及包括响应所述状态报告及所述管理指令的的至少一个。

8.如权利要求1所述的方法,其中所述第四IP数据包包括源地址; 所述第四IP数据包的所述源地址与所述第二IP数据包的所述目的地地址相同;以及 所述第四IP数据包的所述源地址是经由至少一个WAN网络接口可到达的IP地址。

9.如权利要求1所述的方法,其中所述第二IP数据包包括状态报告及管理指令的至少一个;以及 所述第四IP数据包的有效负载包括含有由所述第一网络网关产生的信息,以及包括响应所述状态报告及所述管理指令的的至少一个。

10.如权利要求1所述的方法,其中所述至少一个LAN网络接口未分配有IP地址。

11.一种用于转发互联网协议(IP)数据包的第一网络网关,其中所述第一网络网关包括:多个广域网(WAN)网络接口;其中所述多个WAN网络接口中的第一WAN网络接口未分配IP地址; 至少一个局域网(LAN)网络接口; 至少一个处理单元; 至少一个非暂态存储介质,存储可由所述至少一个处理单元执行的程序指令,所述程序指令用于:(a)当通过第一WAN网络接口接收到第一IP数据包时:(i)检查所述第一IP数据包;

(ii)确定是否拦截所述第一IP数据包;

(iii)当确定不拦截所述第一IP数据包时,通过所述至少一个LAN网络接口中的一个转发所述第一IP数据包;

(iv)当确定拦截所述第一IP数据包时:

创建第三IP数据包;所述第三IP数据包是所述第一IP数据包的响应;

根据所述第一IP数据包的源地址,通过所述第一WAN网络接口转发所述第三IP数据包;

其中所述第一IP数据包的所述源地址是所述第三IP数据包的目的地地址;

其中所述拦截的确定是基于所述第一IP数据包的以下至少一项:端口号、选项字段的内容、目的地地址及有效负载的内容;

(b)当通过所述至少一个LAN网络接口中的一个接收到第二IP数据包,并且所述第二IP数据包是通过所述第一WAN网络接口可到达时:(i)检查所述第二IP数据包;

(ii)确定是否拦截所述第二IP数据包;和

(iii)当确定不拦截所述第二IP数据包时,通过所述多个WAN网络接口中的一个转发所述第二IP数据包;

(iv)当确定拦截所述第二IP数据包时:

创建第四IP数据包;所述第四IP数据包是所述第二IP数据包的响应;

根据所述第二IP数据包的源地址,通过所述至少一个LAN网络接口转发所述第四IP数据包;其中所述第二IP数据包的所述源地址是所述第四IP数据包的目的地地址;

其中所述第二IP数据包的每个的目的地地址不是所述第一WAN网络接口的IP地址;

其中所述多个WAN网络接口通过使用串行总线、通用串行总线(USB)并行总线、通用异步接收器/发射器(UART)、外围组件互连(PCI)、本地总线、或其它电子组件连接技术来实施;

其中所述拦截的确定是基于所述第二IP数据包的以下至少一项:端口号、选项字段的内容、目的地地址及有效负载的内容。

12.如权利要求11所述的第一网络网关,其中通过检查所述第一IP数据包的有效负荷来执行步骤(a) (i)。

13.如权利要求11所述的第一网络网关,其中通过检查所述第二IP数据包的有效负荷来执行步骤(b) (i)。

14.根据权利要求11所述的第一网络网关,其中通过检查所述第一ip数据包的目的地端口来执行步骤(a) (i)。

15.根据权利要求11所述的第一网络网关,其中通过检查所述第二IP数据包的目的地端口来执行步骤(b) (i)。

16.根据权利要求11所述的第一网络网关,其中所述第三IP数据包包括源地址; 其中所述第三IP数据包的所述源地址与所述第一IP数据包的所述目的地地址相同;以及 其中所述第三IP数据包的源地址是通过所述至少一个LAN网络接口中的一个可到达的IP地址。

17.如权利要求11所述的第一网络网关,其中所述第一IP数据包包括状态报告及管理指令的至少一个;以及 所述第三IP数据包的有效负载包括含有由所述第一网络网关产生的信息,以及包括响应所述状态报告及所述管理指令的的至少一个。

18.根据权利要求11所述的第一网络网关,其中所述第四IP数据包包括源地址; 所述第四IP数据包的所述源地址与所述第二IP数据包的所述目的地地址相同;以及 所述第四IP数据包的所述源地址是经由至少一个WAN网络接口可到达的IP地址。

19.如权利要求11所述的第一网络网关,其中所述第二IP数据包包括状态报告及管理指令的至少一个;以及 所述第四IP数据包的有效负载包括含有由所述第一网络网关产生的信息,以及包括响应所述状态报告及所述管理指令的的至少一个。

20.根据权利要求11所述的第一网络网关,其中所述至少一个LAN网络接口未分配有IP地址。

说明书 :

用于在多个WAN网络网关处转发互联网协议(IP)数据包的方

法和系统

[0001] 本申请是申请号为201380074665.0,名称为“用于接收和传输互联网协议(IP)数据包的方法和系统”的发明专利申请的分案申请。

技术领域

[0002] 本发明总体涉及计算机网络领域。更具体地说,本发明公开用于在多网络网关处转发互联网协议(IP)数据包的方法和系统。

发明内容

[0003] 本发明涉及用于在第一网络网关处转发互联网协议(IP)数据包的方法和系统。第一网络网关包括多个广域网(WAN)网络接口和至少一个局域网(LAN)网络接口。多个WAN网络接口中的第一WAN网络接口未分配IP地址。当第一网络网关通过第一WAN网络接口接收到第一 IP数据包时,第一网络网关检查第一IP数据包,并确定是否拦截第一 IP数据包。当确定不拦截第一IP数据包时,通过至少一个LAN网络接口中的一个转发第一IP数据包。当第一网络网关通过至少一个LAN网络接口中的一个接收第二IP数据包,并且第二IP数据包通过第一网络接口可达时,第一网络网关检查第二IP数据包并且确定是否拦截第二IP 数据包。当确定不拦截第二IP数据包时,第一网络网关通过多个WAN 网络接口中的一个转发第二IP数据包。
[0004] 根据本发明的一个实施例,通过分别检查第一IP数据包和第二IP 数据包的有效负荷来检查第一IP数据包和第二IP数据包。或者,通过分别检查第一IP数据包和第二IP数据包的目的端口来检查第一IP数据包和第二IP数据包。
[0005] 根据本发明的一个实施例,第一网络网关创建第三数据包,并通过第一WAN网络接口发送第三数据包。第三数据包的源地址是通过至少一个LAN网络接口中的一个可到达的IP地址。当第一数据包包括管理指令时,第三数据包可以是对第一数据包的响应。
[0006] 根据本发明的一个实施例,第一网络网关创建第四数据包,并通过至少一个LAN网络接口中的一个发送第四数据包。第四数据包的源地址是通过第一个WAN网络接口可到达的IP地址。当第二数据包包括管理指令时,第三数据包可以是对第二数据包的响应。根据本发明的一个实施例,所述至少一个LAN网络接口未分配IP地址。

背景技术

[0007] 当通过IP网络管理网络网关时,网络网关需要用于通信的IP地址。网络网关的IP地址允许IP数据包被路由到网络网关且允许网络网关传输IP数据包。
[0008] 然而,在某些网络环境中,不存在足够的IP地址。因此,可能不存在任何额外的IP地址可供网络网关使用。在此情况下,网络网关可能仍然能够路由和/或交换IP数据包,但是其无法传输其自身的IP数据包或接收预定目的地为网络网关的IP数据包。
[0009] 图1是典型的网络环境,其中路由器111经由网络接口113连接到防火墙150以经由网络接口112连接到互连网络101。互连网络101可以是互联网或其它网络。防火墙150经由网络接口151连接到路由器111、经由网络接口152连接到主机161并且经由网络接口153连接到网络节点164。IP支持的装置连接到防火墙150,例如主机161经由网络接口 162且网络节点164经由网络接口163连接到防火墙150。给网络接口 112、113、151、152、153、162以及163中的每一者分配一个IP地址。因此需要七个IP地址。互联网服务提供方(ISP)接着可分配七个IP地址以供路由器111使用。主机161和网络节点164是能够发送、接收或转发互联网协议(IP)数据包的节点。
[0010] 在图2中,当在路由器111与防火墙150之间增加网络网关170时,问题是没有更多的IP地址可用以分配给网络网关170的网络接口171和 172。
[0011] 鉴于如上所述,显而易见的是需要在不给网络网关分配IP地址的情况下所述网络网关与IP网络中的其它节点通信。

附图说明

[0012] 图1是图解说明在典型网络环境中经由根据本发明的实施例中的一者的多个逻辑网络连接使用网络装置的网络图。
[0013] 图2是图解说明在典型网络环境中经由根据本发明的实施例中的一者的多个逻辑网络连接使用网络装置的网络图。
[0014] 图3以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从网络网关处的第一网络接口接收第一IP数据包的细节。
[0015] 图4示出实施本发明的实施例中的一者的网络网关。
[0016] 图5是图解说明实施本发明的实施例中的一者的网络网关的网络图。
[0017] 图6以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从WAN接口接收数据包的细节。
[0018] 图7以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从LAN接口接收数据包的细节。
[0019] 图8示出了根据本发明接收并传输IP数据包的网络节点的本发明的实施例中的一者。

具体实施方式

[0020] 以下说明仅提供优选的示例性实施例并且并不意图限制本发明的范围、实用性或配置。实际上,优选的示例性实施例的以下说明将为所属领域的技术人员提供实施本发明的优选的示例性实施例的有利描述。应理解,在不脱离如在所附权利要求书中阐述的本发明的精神和范围的情况下可以对元件的功能以及布置进行各种改变。
[0021] 同样,应注意,实施方案可以描述为过程,过程描绘为流程图、流程图表、数据流图、结构图或方块图。尽管流程图可以将操作描述为顺序过程,但是许多操作可以并行或同时执行。另外,操作的顺序可以重新布置。当操作完成时,过程终止,但是过程可以具有不包含在图中的另外步骤。过程可以与方法、函数、步骤、子例程、子程序等相对应。当过程与函数相对应时,其终止与所述函数返回到调用函数或主函数相对应。
[0022] 此外,实施例可以由硬件、软件、固件、中间件、微码、硬件描述语言或其任意组合来实施。当以软件、固件、中间件或微码实施时,执行必要任务的程序代码或代码段可以存储在例如存储介质等机器可读介质中。处理单元可以执行必要任务。代码段可以表示步骤、函数、子程序、程序、例程、子例程、模块、软件包、类别,或指令、数据结构或程序语句的任何组合。一个代码段可以通过传递和/或接收信息、数据、自变量、参数或存储器内容耦合到另一代码段或硬件电路。信息、自变量、参数、数据等可以经由包含存储器共享、消息传递、令牌传递、网络传输等任何合适的方式传递、转发或传输。
[0023] 出于可读性的说明目的,本文中描述的网络节点能够发送、接收或转发互联网协议(IP)数据包,例如主机电脑、路由器、交换机、虚拟机、接入点、网关、通信装置或移动电话。
[0024] 图2是其中路由器111经由网络接口113连接到网络网关170以经由网络接口112连接到互连网络101的网络环境。互连网络101可以是互联网或其它网络。网络网关170经由网络接口171连接到路由器111 并且经由网络接口172连接到防火墙150。防火墙150经由网络接口151 连接到网络网关170、经由网络接口152连接到主机161并且经由网络接口153连接到网络节点164。IP支持的装置连接到防火墙150,例如主机161经由网络接口162并且网络节点163经由网络接口164连接到防火墙150。给网络接口112、113、151、152、153、162以及163中的每一者分配一个IP地址。然而,不给网络接口171和172分配任何IP 地址。
[0025] 方法
[0026] 接收IP数据包
[0027] 根据本发明的实施例中的一者,为了经由不具有IP地址的网络网关的第一网络接口处理IP数据包,网络网关检查通过其网络接口的IP数据包。如果IP数据包符合拦截策略,那么网络网关确定所述IP数据包预期用于它并且不将所述IP数据包转发到连接到其网络接口的节点。否则的话,当所述IP数据包不符合拦截策略时,网络网关确定所述IP数据包不是预期用于它并且经由对应的网络接口将所述IP数据包转发到所述IP数据包的目的地地址中指示的目的地。
[0028] 图3以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从网络网关处的第一网络接口接收第一IP数据包的细节。图3应结合图2来查看。
[0029] 当网络网关170在步骤301处经由网络接口171(其具有经由网络接口172可到达的目的地地址)从路由器111接收IP数据包时,网络网关170在步骤302处检查所述IP数据包以校验所述IP数据包是否符合拦截策略。若所述IP数据包符合拦截策略则网络网关170不经由网络接口172转发所述IP数据包。若所述IP数据包不符合拦截策略则网络网关170根据所述IP数据包的目的地地址经由网络接口172转发所述IP 数据包。
[0030] 类似地,当网络网关170在步骤301处经由网络接口172(其具有经由网络接口171可到达的目的地地址)从防火墙150接收IP数据包时,网络网关170在步骤302处检查所述IP数据包以校验所述IP数据包是否符合拦截策略。若所述IP数据包符合拦截策略则网络网关170不经由网络接口171转发所述IP数据包。若所述IP数据包不符合拦截策略则网络网关
170经由网络接口171转发所述IP数据包。
[0031] 例如,在网络接口112、113、151、152、153、162和163处的IP 地址分别是2.2.2.1、2.2.2.2、2.2.2.3、2.2.2.4、2.2.2.5、2.2.2.6和2.2.2.7。网络接口172的可到达的地址是
2.2.2.3、2.2.2.4、2.2.2.5、2.2.2.6和2.2.2.7。网络接口171的可到达的地址是2.2.2.1、
2.2.2.2以及属于互连网络101 的IP地址。
[0032] 根据本发明的实施例中的一者,当主机161传输具有目的地地址 2.2.2.2(即,路由器111的网络接口113)的IP数据包,且所述IP数据包符合拦截策略时,网络网关170因此拦截所述IP数据包且不将所述IP 数据包转发到路由器111。网络网关170将处理所拦截的IP数据包。
[0033] 根据本发明的实施例中的一者,在网络网关170接收到IP数据包之后,网络网关170通过将响应消息通过另外一个或多个IP数据包经由网络接口172传输到主机161来响应所述IP数据包。一个或多个响应IP 数据包的目的地和源地址分别是接收到的IP数据包的源地址和经由除传输所述一个或多个响应IP数据包的网络接口外的网络接口中的一者或多者可到达的IP地址。
[0034] 根据本发明的实施例中的一者,源自节点且通过网络网关170接收到的IP数据包的有效负载含有向网络网关170请求状态报告和/或到网络网关170的管理指令。在检查IP数据包的有效负载之后,网络网关 170确定所述IP数据包预期用于它并拦截所述IP数据包。为了响应所拦截的IP数据包,网络网关170创建响应IP数据包,且具有响应对于状态报告和/或管理指令的请求的有效负载。所拦截的IP数据包的目的地地址属于通过网络接口172可到达的节点的IP地址中的一者。响应IP 数据包的源地址与接收到的IP数据包的目的地地址相同。
[0035] 根据本发明的实施例中的一者,网络网关检查接收到的IP数据包的端口号或选项字段以确定是否符合拦截策略。根据本发明的实施例中的一者,网络网关检查接收到的IP数据包的有效负载以确定是否符合拦截策略。
[0036] 根据本发明的实施例中的一者,接收到的IP数据包的有效负载经过加密且可通过网络网关解密。根据本发明的实施例中的一者,在网络网关已经确定接收到的IP数据包符合拦截策略之后,对接收到的IP数据包的有效负载进行解密。根据本发明的实施例中的一者,网络网关对符合策略的接收到的IP数据包的有效负载进行解密以确定接收到的IP数据包是否符合拦截策略。若网络网关无法解密接收到的IP数据包的有效负载且若拦截决策是基于有效负载的内容,则网络网关将得出接收到的 IP数据包并不符合拦截策略的结论。
[0037] 拦截策略
[0038] 网络网关(例如,网络网关170)确定若IP数据包符合拦截策略则拦截所述IP数据包。拦截策略是用以确定是否应拦截IP数据包的一组条件、约束和设置。
[0039] 根据本发明的实施例中的一者,拦截策略基于接收到的IP数据包的端口号。例如,若拦截策略是拦截具有源端口号8000的IP数据包,则拦截具有源端口号8000的所有接收到的IP数据包。在另一实例中,若拦截策略是拦截具有目的地端口号8888的IP数据包,则拦截具有目的地端口号8888的所有接收到的IP数据包。
[0040] 根据本发明的实施例中的一者,拦截策略是若接收到的IP数据包的选项字段的内容匹配预定义值则拦截接收到的IP数据包。例如,在选项字段的第二十位处预定义值可以是一。
[0041] 根据本发明的实施例中的一者,拦截策略基于接收到的IP数据包的目的地地址。例如,拦截策略是若IP数据包的目的地地址匹配预定义IP 地址则拦截所述IP数据包。
[0042] 根据本发明的实施例中的一者,拦截策略基于接收到的IP数据包的报头中的多个内容。例如,拦截策略是若IP数据包的目的地地址属于特定子网且目的地端口号是65332则拦截所述IP数据包。
[0043] 根据本发明的实施例中的一者,拦截策略基于接收到的IP数据包中的有效负载的内容。例如,拦截策略是若IP数据包含有预定义词则拦截所述IP数据包。
[0044] 多个网络接口
[0045] 图4示出实施本发明的实施例中的一者的网络网关。网络网关400 如同网络网关170一样置于路由器与防火墙之间。网络网关400具有四个网络接口401、402、403和404。这四个网络接口401、402、403和 404均未分配IP地址。当网络接口401接收具有经由网络接口
402、403 和404中的一者或多者可到达的目的地地址的IP数据包时,若所述IP 数据包符合拦截策略则网络网关400不经由网络接口402、403和404 中的任一者转发所述IP数据包。另一方面,若所述IP数据包不符合拦截策略,则网络网关400根据所述IP数据包的目的地地址经由网络接口 402、403和404中的一者或多者转发所述IP数据包。
[0046] 类似地,当网络接口402、403和404在步骤301处从具有经由网络接口401可到达的目的地地址的计算装置或网络节点接收IP数据包时,网络网关400在步骤302处检查所述IP数据包以校验所述IP数据包是否符合拦截策略。若所述IP数据包符合拦截策略则网络网关400不经由网络接口401转发所述IP数据包。若IP数据包不符合拦截策略则网络网关400经由网络接口401转发所述IP数据包。
[0047] 根据本发明的实施例中的一者,若接收到的IP数据包的目的地地址匹配预定义IP地址则符合拦截策略。根据本发明的实施例中的一者,预定义IP地址是链路本地IP地址。例如,在IPv4中,预定义IP地址在块169.254.0.0/16中;在IPv6中,预定义IP地址在块fe80::/10中的IP 地址中。
[0048] 传输IP数据包
[0049] 根据本发明的实施例中的一者,当发送IP数据包时,有可能将IP 数据包的源地址用作任何IP地址。然而,为了允许IP数据包的接收器作出响应,IP数据包的源地址不是任意的。根据本发明的实施例中的一者,由于用以传输IP数据包的网络接口未分配IP地址,因此所述IP数据包的源地址设定为经由网络网关的网络接口中的一者(除用以传输所述IP数据包的网络接口外)可到达的的IP地址,且作为所述IP数据包的源地址。因此,IP数据包的接收器可对将到达网络网关的一个或多个 IP数据包作出响应。
[0050] 同样,例如,在网络接口112、113、151、152、153、162和163处的IP地址分别是2.2.2.1、2.2.2.2、2.2.2.3、2.2.2.4、2.2.2.5、2.2.2.6和 2.2.2.7。当网络网关170经由网络接口171传输IP数据包并且所述IP 数据包源自网络网关170时,所述IP数据包的源地址配置有经由网络接口172可到达的地址。因此,所述IP数据包的源地址配置有2.2.2.3、 
2.2.2.4、2.2.2.5、2.2.2.6和2.2.2.7中的一者。类似地,当网络网关170 经由网络接口172传输IP数据包并且所述IP数据包源自网络网关170 时,所述IP数据包的源地址配置有经由网络接口171可到达的地址。因此,所述IP数据包的源地址配置有2.2.2.1、2.2.2.2以及属于互连网络 101的IP地址中的一者。
[0051] 多个网络接口
[0052] 根据本发明的实施例中的一者,若网络网关具有超过两个网络接口,则源自所述网络网关的IP数据包的源地址配置有经由所述多个网络接口中的一者或多者(除传输所述IP数据包的网络接口外)可到达的IP 地址。
[0053] 根据本发明的实施例中的一者,当网络网关400经由网络接口401 传输源自其自身的IP数据包时,所述IP数据包的源地址是经由网络接口402、403和404中的一者可到达的IP地址。类似地,当网络网关400 经由网络接口402、403和404中的一者传输源自其自身的IP数据包时,所述IP数据包的源地址是经由网络接口401可到达的IP地址。
[0054] WAN和LAN接口
[0055] 根据本发明的实施例中的一者,网络网关具有一个广域网(WAN) 接口和一个或多个局域网(LAN)接口。
[0056] 当网络网关从WAN接口接收IP数据包时,网络网关检查所述IP 数据包以校验所述IP数据包是否符合至少一个拦截策略中的任一者。若 IP数据包符合至少一个拦截策略,则网络网关不将所述IP数据包转发到 LAN接口中的任一者。若IP数据包不符合至少一个策略中的任一者,则网络网关根据所述IP数据包的目的地地址经由LAN接口中的一者或多者转发所述IP数据包
[0057] 类似地,当网络网关从介接经由WAN接口可到达的目的地地址的 LAN中的一者接收IP数据包时,网络网关检查所述IP数据包以校验所述IP数据包是否符合至少一个策略中的任一者。若所述IP数据包符合至少一个策略,则网络网关不将所述IP数据包转发到WAN接口。若IP 数据包不符合至少一个策略中的任一者,则网络网关根据所述IP数据包的目的地地址经由WAN接口转发所述IP数据包。
[0058] 当网络网关经由WAN接口传输源自其自身的IP数据包时,所述IP 数据包的源地址配置有经由LAN接口中的一者或多者可到达的源地址中的一者。
[0059] 当网络网关经由LAN接口中的一者传输源自其自身的IP数据包时,所述IP数据包的源地址配置有经由WAN接口可到达的源地址中的一者。
[0060] 多个WAN接口
[0061] 图6以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从WAN接口接收数据包的细节。图6应结合图5来查看。
[0062] 基于图2的图5示出实施本发明的实施例中的一者的网络网关。网络网关504具有两个WAN接口510和511以及两个LAN接口512和513。 WAN接口511分配有IP地址。WAN接口510以及LAN接口512和513 未分配IP地址。主机161和网络节点164分别经由网络接口162和163 直接与网络网关504连接。WAN接口511连接到路由器501的网络接口 503。路由器501经由网络接口502连接到互连网络101。
[0063] 当网络网关504在步骤601处从WAN接口中的一者接收IP数据包时,网络网关504在步骤602处确定所述IP数据包是经由WAN接口510 还是WAN接口511接收。若所述IP数据包是经由WAN接口511接收,则在步骤603处检测所述IP数据包的目的地地址以确定所述IP数据包是否指定用于网络网关504。指定用于网络网关504的IP数据包应具有 WAN接口511的IP地址作为目的地地址。若所述IP数据包不是指定用于网络网关504,则网络网关504在步骤605处根据所述IP数据包的目的地地址分别经由LAN接口512或513将所述IP数据包转发到或者主机161或者网络节点164。若所述IP数据包是指定用于网络网关504,则网络网关504在步骤606处不转发所述IP数据包且网络网关504可处理所述IP数据包。
[0064] 若所述IP数据包是经由WAN接口510接收,则网络网关504在步骤604处检查所述IP数据包以校验所述IP数据包是否符合拦截策略。若所述IP数据包符合拦截策略,则网络网关504在步骤606处不转发所述IP数据包。若所述IP数据包不符合拦截策略,则网络网关504在步骤605处根据所述IP数据包的目的地地址分别经由LAN接口512或513 将所述IP数据包转发到或者主机161或者网络节点164。
[0065] 图7以流程图表示出本发明的实施例中的一者,所述流程图表提供关于从LAN接口接收数据包的细节。图7应结合图5来查看。
[0066] 在步骤701处,网络网关504分别经由LAN接口512或513从主机 161或网络节点164接收IP数据包。在步骤702处,网络网关504确定所述IP数据包的目的地地址是否是WAN接口511的IP地址。若所述 IP数据包的目的地地址是WAN接口511的IP地址,则网络网关504在步骤704处不经由WAN接口510或511转发所述IP数据包,因为所述 IP数据包预期用于网络网关504。
[0067] 若所述IP数据包的目的地地址不是WAN接口511的IP地址,若所述目的地地址是经由WAN接口510或511可到达的IP地址,且若在步骤703处所述IP数据包符合拦截策略,则网络网关504在步骤704处也不经由WAN接口510或511转发所述IP数据包。
[0068] 若所述IP数据包的目的地地址不是WAN接口511的IP地址,若所述目的地地址是经由WAN接口510或511可到达的IP地址,且若在步骤703处所述IP数据包不符合拦截,则在步骤705处经由WAN接口510 或511中的一者转发所述IP数据包。若IP数据包的IP地址仅可经由 WAN接口中的一者到达,则在步骤705处经由WAN接口中的所述一者转发所述IP数据包。若IP数据包的IP地址可经由一个以上WAN接口到达,则网络网关504在步骤705处确定使用哪个WAN接口来转发所述IP数据包。所属领域的技术人员将理解,存在许多已知的技术在步骤 705处确定使用哪个WAN接口来转发IP数据包,包含使用路由表和网络性能数据。
[0069] 系统
[0070] 图8示出了根据本发明接收并传输IP数据包的网络节点的本发明的实施例中的一者。网络网关801可用作网络网关170、400和504中的一者。网络网关801包括数字处理器804、主存储装置806、从存储装置 805以及网络接口811、812、813和814。网络接口811、812、
813和 814适用于其它网络装置,例如以太网交换机、IP路由器以及其它包网络节点、网络管理和准备系统、本地PC等。网络接口811、812、813 和814能够用作LAN接口和/或WAN接口。
可以在网络网关801内利用的其它组件包含放大器、板级电子组件,以及媒体处理器和其它专门的SoC或ASIC装置。还可以视需要提供对各种处理层以及协议(例如, 802.3、DOCSIS MAC、DHCP、SNMP、H.323/RTP/RTCP、VoIP、SIP 等)的支持。
[0071] 网络网关801可以采用任意数目的物理形式,包括例如在所属领域中熟知的类型的较大网络边缘或集线器装置内的多个离散模块或卡中的一者,且还可以包括固件,所述固件或者是单独的或者与其它硬件/软件组件结合。作为替代,网络网关801可以是设置在其它计算装置或网络节点处的独立的装置或模块,并且甚至可以包含其自身的射频(RF)前端(例如,调制器、加密机等)或光接口,从而直接介接其它计算装置和网络节点。可以使用多种其它配置。网络网关801也可以视需要与其它类型的组件(例如,移动基站、卫星收发器、视频机顶盒、编码器/ 解码器等)和外观尺寸整合。
[0072] 数字处理器804可以通过使用一个或多个中央处理单元、网络处理器、微处理器、微控制器、FPGA、ASIC或能够执行指令的任何装置来实施以执行系统的基础算术、逻辑和输入/输出操作。
[0073] 主存储装置806和从存储装置805可以通过使用至少一个DRAM、 SDRAM、SRAM、闪存RAM、光学存储器、磁存储器、硬盘和/或能够提供存储能力的任何计算机可读介质来实施。优选地,主存储装置806 使用DRAM、SDRAM和/或SRAM来实施并且用作临时存储装置或高速缓冲存储器。从存储装置805可以用来向数字处理器804提供指令,提供存储装置以存储标识符、条件、网络性能统计数据和其它数据以促进网络节点的操作。从存储装置805也用以存储通过数字处理器804使用的拦截策略。
[0074] 网络接口811、812、813和814可以使用串行总线、通用串行总线(USB)并行总线、通用异步接收器/发射器(UART)、外围组件互连(PCI)、本地总线、或连接数字处理器804和媒介的其它电子组件连接技术来实施,媒介用于与光纤、电缆或天线连接。在一个变型中,至少一个网络接口处于数字处理器804中并且因此用于与光纤、电缆或天线连接的媒介可直接与数字处理器804连接。在一个变型中,至少一个网络接口可连接到以太网端口以用于以太网网络连接。在一个变型中,至少一个网络接口可连接到WiFi适配器以用于WiFi网络连接。在一个变体中,至少一个网络接口可以连接到USB端口并且所述USB端口可以连接到用于无线WAN连接的外部调制解调器,例如,USB 3G调制解调器、USB LTE调制解调器、USB WiMax调制解调器、USB WiFi调制解调器,或用于无线通信的其它调制解调器。在一个变型中,所有网络接口连接多个USB端口以用于外部调制解调器连接。在一个变型中,所有网络接口连接到电路内部网络网关801。获知本发明的所属领域的技术人员将理解上文的无数其它组合和排列。
[0075] 根据本发明的实施例中的一者,网络接口811和812为分配IP地址。当网络网关801经由网络接口811(其具有经由网络接口812可到达的目的地地址)接收IP数据包时,所述IP数据包被发送到数字处理器804 以用于通过系统总线802的检测。数字处理器804检测所述IP数据包以确定所述IP数据包是否符合存储于从存储装置805处的拦截策略。若所述IP数据包符合拦截策略则数字处理器804不转发所述IP数据包。若所述IP数据包不符合拦截策略,则数字处理器804根据所述IP数据包的目的地地址经由网络接口812转发所述IP数据包。
[0076] 类似地,当网络网关801经由网络接口812(其具有经由网络接口 811可到达的目的地地址)接收IP数据包时,所述IP数据包被发送到数字处理器804以用于通过系统总线802的检测。数字处理器804检测所述IP数据包以确定所述IP数据包是否符合拦截策略。若所述IP数据包符合拦截策略则数字处理器804不转发所述IP数据包。若所述IP数据包不符合拦截策略,则数字处理器804经由网络接口811转发所述IP数据包。
[0077] 根据本发明的实施例中的一者,在网络网关801经由接收网络接口 (即,网络接口811、812、813或814中的一者)接收IP数据包之后,数字处理器804通过经由所述接收网络接口传输以一个或多个IP数据包包封的响应消息来响应所述IP数据包。一个或多个响应IP数据包的目的地地址是接收到的IP数据包的源地址。一个或多个响应IP数据包的源地址是经由除接收网络接口外的多个网络接口中的一者可到达的IP 地址中的一者。
[0078] 根据本发明的实施例中的一者,接收到的IP数据包的有效负载含有对网络网关801的状态的请求并且响应IP数据包的有效负载含有由数字处理器804产生的网络网关801的状态信息。
[0079] 根据本发明的实施例中的一者,接收到的IP数据包的有效负载含有用于使数字处理器804配置网络网关801的指令并且所传输的响应IP数据包的有效负载含有由数字处理器804产生的网络网关801的操作结果。
[0080] 根据本发明的实施例中的一者,数字处理器804检查接收到的IP数据包的端口号或选项字段以确定是否符合策略。根据本发明的实施例中的一者,数字处理器804检查接收到的IP数据包的有效负载以确定是否符合策略。
[0081] 根据本发明的实施例中的一者,数字处理器804能够对通过网络网关801传输的IP数据包中包封的有效负载进行加密并且能够对通过网络网关801接收到的IP数据包中包封的有效负载进行解密。根据本发明的实施例中的一者,在数字处理器804已经确定接收到的IP数据包符合拦截策略之后,通过数字处理器804对接收到的IP数据包的有效负载进行解密。
[0082] 应理解,上述实施例仅仅是可以构成本发明的原理的应用的许多和不同其它实施例的说明。所属领域的技术人员在不脱离本发明的精神或范围的情况下可以容易地设计此类其它实施例并且我们意欲将此类其它实施例视作在本发明的范围内。