CN105794158A - 用于处理因特网协议包的方法和系统 - Google Patents

用于处理因特网协议包的方法和系统 Download PDF

Info

Publication number
CN105794158A
CN105794158A CN201380081201.2A CN201380081201A CN105794158A CN 105794158 A CN105794158 A CN 105794158A CN 201380081201 A CN201380081201 A CN 201380081201A CN 105794158 A CN105794158 A CN 105794158A
Authority
CN
China
Prior art keywords
address
network
network interface
routing rule
interface
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.)
Granted
Application number
CN201380081201.2A
Other languages
English (en)
Other versions
CN105794158B (zh
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.)
Pismo Labs Technology Ltd
Original Assignee
Pismo Labs Technology Ltd
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 Pismo Labs Technology Ltd filed Critical Pismo Labs Technology Ltd
Priority to CN201910320183.8A priority Critical patent/CN110098988B/zh
Publication of CN105794158A publication Critical patent/CN105794158A/zh
Application granted granted Critical
Publication of CN105794158B publication Critical patent/CN105794158B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks

Landscapes

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

Abstract

一种由系统中使用的网络节点实施的用于转发IP包的方法。当所述网络节点从第一网络接口接收IP包时,所述网络节点确定所述IP包的目的地址是否匹配第一路由规则的IP地址区段中的IP地址。如果所述IP包的所述目的地址匹配所述第一路由规则的所述IP地址区段中的所述IP地址,那么所述网络节点将所述IP包转发到第二网络接口。所述第一路由规则包括至少一个IP地址区段和至少一个网络接口区段。所述第一网络接口和所述第二网络接口中的一个或两个未分配IP地址。所述网络节点包括至少三个网络接口。

Description

用于处理因特网协议包的方法和系统
技术领域
本发明总的而言涉及计算机网络的领域。更确切地说,本发明涉及一种通过网络节点执行的用于根据第一路由规则转发IP包的方法。网络节点确定IP包的目的地址是否匹配第一路由规则的IP地址区段中的IP地址。如果IP包的目的地址匹配第一路由规则的IP地址区段中的IP地址,那么网络节点将IP包转发到第二网络接口。
背景技术
路由器的网络接口通常分配有IP地址和网络掩码。取决于IP地址所属于的子网,路由器能够将IP包路由到对应网络接口。然而,由于IP地址受到限制,IP地址可能不足,使得没有足够的IP地址分配给每个网络接口。
为了节省IP地址,已经使用随时可用的模式以允许在不给路由器或网关的对应网络接口分配IP地址的情况下路由器或网关路由IP包。使用图1作为说明,网络接口171和172未分配IP地址。防火墙150、主机161、网络节点164、主机109a和主机109b分配有同一IP子网。当通过路由器111传输IP包到主机109a或主机109b时,网络节点170通过网络接口172将所述IP包路由到防火墙150,因为网络节点170的处理单元在检查所述IP包的目的地址之后确定所述IP包属于连接到网络接口172的IP子网。这导致错误的路由。
类似地,当网络节点164发送IP包到主机109a时,网络节点170或者丢弃所述IP包或者将所述IP包转发回到防火墙150,因为所述IP包的目的地址属于网络接口172所连接到的IP子网。这也导致错误的路由。
为了避免错误路由,必须创建一个或多个路由规则以允许通过网络接口171发送IP包到属于连接到网络接口172的网络的同一IP子网的主机和节点以及从所述主机和节点接收IP包。
发明内容
根据本发明的一个实施例,当网络节点的多个网络接口分配有同一第一IP地址时,创建第一路由规则以帮助路由IP包。路由规则包括IP地址区段和网络接口区段。在一个变型中,第一路由规则分配有比默认路由规则更高的优先级。在一个变型中,通过网络节点的处理单元创建第一路由规则,并且所述处理单元通过监测经过网络节点的地址解析协议(ARP)消息习得一个或多个路由规则所需的一个或多个IP地址。
根据本发明的一个实施例,周期性地更新第一路由规则。在一个变型中,当对应于路由规则的一个或多个IP地址已经改变时更新第一路由规则。
根据本发明的一个实施例,直到接收到确认才执行第一路由规则。在一个变型中,通过web接口接收确认。在一个变型中,通过安全连接接收确认。
具体实施方式
以下说明仅提供优选示例性实施例和示例性实施例,且不意图限制本发明的范围、适用性或配置。实际上,优选示例性实施例和示例性实施例的以下说明将为所属领域的技术人员提供实施本发明的优选示例性实施例的有效说明。应理解,在不脱离如在所附权利要求书中阐述的本发明的精神和范围的情况下可以制得元件的功能和布置的各种变化。
同样,应注意,实施例可以描述为过程,过程描绘为流程图、流程图表、数据流图、结构图或方块图。尽管流程图可以将操作描述为顺序过程,但是许多操作可以并行或同时执行。另外,操作的顺序可以重新布置。当操作完成时,过程终止,但是过程可以具有不包含在图中的另外步骤。过程可以与方法、函数、步骤、子例程、子程序等相对应。当过程与函数相对应时,其终止与所述函数返回到调用函数或主函数相对应。
实施例或其各部分可以程序指令来实施,所述程序指令可在处理单元上操作以用于执行如本文中所描述的功能和操作。构成各种实施例的程序指令可以存储于存储单元中,例如存储于从存储装置中。
此外,如本文所揭示,术语“从存储装置”和“主存储器”可以表示用于存储数据的一个或多个装置,包含只读存储器(ROM)、随机存取存储器(RAM)、磁性RAM、磁心存储器、磁盘存储媒体、光学存储媒体、快闪存储器装置和/或用于存储信息的其它机器可读媒体。术语“机器可读媒体”包含但不限于便携式或固定存储装置、光学存储装置、无线信道以及能够存储、含有或承载指令和/或数据的各种其它媒体。机器可读媒体可以通过虚拟化来实现,且可以是虚拟机器可读媒体,包含在基于云的实例中的虚拟机器可读媒体。
此外,实施例可以由硬件、软件、固件、中间件、微码、硬件描述语言或其任意组合来实施。当以软件、固件、中间件或微码实施时,执行必要任务的程序指令或代码段可以存储在例如存储单元等机器可读媒体中。处理单元可以执行必要任务。处理单元可以是CPU、ASIC半导体芯片、半导体芯片、逻辑单元、数字处理器、模拟处理器、FPGA或能够执行逻辑和算术函数的任何处理器。程序指令可以表示步骤、函数、子程序、程序、例程、子例程、模块、软件包、类别,或指令、数据结构或程序语句的任何组合。一个程序指令可以通过传递和/或接收信息、数据、自变量、参数或存储器内容耦合到另一程序指令或硬件电路。信息、自变量、参数、数据等可以经由包含存储器共享、消息传递、令牌传递、网络传输等任何合适的方式传递、转发或传输。处理单元可以通过虚拟化来实现,且可以是虚拟处理单元,包含在基于云的实例中的虚拟处理单元。
网络接口可以通过独立的电子组件实施或者可以与其它电子组件整合。取决于配置,网络接口可以不具有网络连接或具有至少一个网络连接。网络接口仅连接到一个可接入网络。因此,可能存在由可接入网络承载的超过一个网络连接。网络接口可以是以太网接口、帧中继接口、光纤接口、电缆接口、DSL接口、令牌环接口、串行总线接口、通用串行总线(USB)接口、火线接口、外围组件互连(PCI)接口等。
实施例或其各部分可以计算机数据信号来实施,所述计算机数据信号可以采用用于经由传输媒体进行通信的任何合适形式,使得所述计算机数据信号是可读的以用于通过功能装置(例如,处理单元)来执行从而执行本文中所描述的操作。计算机数据信号可以包含能够经由传输媒体传播的任何二进制数字电子信号,所述传输媒体例如电子网络信道、光纤、空气、电磁媒体、射频(RF)链路等,且因此数据信号可以采用电信号、光信号、射频或其它无线通信信号等形式。在某些实施例中,可经由计算机网络下载程序指令,计算机网络例如因特网、企业内部网、LAN、MAN、WAN、PSTN、卫星通信系统、电缆传输系统和/或类似物。
网络节点可以充当网关、路由器和移动装置。网络节点可以通过虚拟化来实现,并且可以是虚拟网络节点。
图5是根据本发明的一个实施例的网络节点(例如,网络节点170)的示意性方块图。网络节点170包括处理单元501、主存储器502、系统总线503、从存储装置504以及网络接口171、172和173。处理单元501和主存储器502彼此直接连接。系统总线503将处理单元501直接或间接连接到从存储装置504以及网络接口171、172和173。使用系统总线503允许网络节点170具有提高的模块性。系统总线503将处理单元501耦合到从存储装置504以及网络接口171、172和173。系统总线503可以是包含存储器总线、外围总线以及使用各种总线架构中的任一个的本地总线的若干类型的总线结构中的任一个。从存储装置504存储用于由处理单元501执行的程序指令。本发明的范围不限于网络节点170具有三个网络接口,因此网络节点170可以具有更多网络接口。仅出于说明的目的而指定网络接口171、172和173。
图1示出了其中网络节点170根据本发明的一个实施例的操作进行操作的网络环境。网络节点170通过网络接口172和151连接到防火墙150;通过网络接口171和107连接到交换机105;并且通过网络接口173和112连接到路由器111。网络接口171和172中的一个分配有相同的IP地址或网络接口171和172两者均未分配IP地址。路由器101、防火墙150、主机161、网络节点164、主机109a和主机109b处于第一IP子网中。因此网络接口103、141a、141b、151、152、153、162和163的IP地址分配有属于第一IP子网的IP地址。处理单元501根据第一路由规则转发或路由接收到的IP包。
第一路由规则是路由规则。路由规则具有至少两个区段。第一区段是IP地址区段并且用以指示一个或多个IP地址或IP地址范围。第二区段是网络接口区段并且用以指示网络节点170的网络接口的标识。标识可以是字符串、编号或允许处理单元502与网络节点的网络接口相关联的任何信息。可以存在超过一个路由规则。在一个变型中,路由规则存储于网络节点170的存储单元中,例如从存储装置504或主存储器502中。图3示出了流程图,其在概念上展示根据本发明的一个实施例的网络节点170的操作的流程。当在步骤301处IP包已经到达网络节点170时,在步骤302处,处理单元501检查IP包的目的地址以校验目的地址是否匹配在路由规则中的任一个的第一区段中指示的IP地址。如果IP包的目的地址匹配IP地址或在路由规则的IP地址区段中指示的IP地址范围内,那么在步骤303处,处理单元501通过在同一路由规则的网络接口区段中指示的网络接口转发IP包。否则的话,在步骤304处,处理单元501不根据任何路由规则转发IP包。
当不存在具有IP地址区段中指示的IP地址的路由规则时,处理单元501不根据任何路由规则转发IP包。
在一个变型中,如果不存在具有IP地址区段中指示的IP地址的路由规则,那么处理单元501通过对应于经由与其它路由器交换路由协议发现的路线的网络接口转发IP包。
在一个变型中,如果不存在具有IP地址区段中指示的IP地址的路由规则,那么处理单元501根据默认路由规则转发IP包。
图2A示出了包括IP地址区段201和网络接口区段202的路由规则的结构。IP地址区段201含有对应于一个IP地址、一组IP地址或一系列IP地址的IP地址信息。IP地址信息还含有IP子网信息。IP地址可以是IP版本4或IP版本6。例如,第二路由规则在IP地址区段201中包括具有对应IP子网掩码的IP版本4地址以及具有对应IP子网掩码的IP版本6地址。在一个变型中,IP子网信息包含于路由规则的另一字段中而不是在IP地址区段内。网络接口区段202指示用以转发具有匹配IP地址区段201中的IP地址的目的地址的IP包的网络接口。
在一个变型中,如果在IP地址区段中不存在IP子网信息,那么假定IP子网仅含有一个IP地址。因此,对于路由规则中的IP版本4使用IP子网掩码255.255.255.255。
图2B示出了两个路由规则的实例。包括IP地址区段211的路由规则具有两个IP地址,即210.1.10.4和210.1.10.5,其分别具有对应IP子网掩码255.255.255.255和255.255.255.255,并且网络接口区段212具有第一网络接口。第一网络接口是网络接口(例如,网络接口171)的标识。
包括IP地址区段221的路由规则具有IP地址210.1.2.1,其具有对应IP子网掩码255.255.255.0,并且网络接口区段222具有第三网络接口。第三网络接口是网络接口(例如,网络接口172)的标识。由于IP地址区段211中的210.1.10.4和210.1.10.5的IP子网掩码均是255.255.255.255,这意味着具有210.1.10.4或210.1.10.5的目的地址的IP包通过网络接口171转发。类似地,由于IP地址区段221中的210.1.2.1的IP子网掩码是255.255.255.0,这意味着具有从210.1.2.1到210.1.2.255的目的地址的IP包通过网络接口3转发。
第一路由规则具有比默认路由规则更高的优先级。因此,处理单元501将首先使用第一路由规则且随后通过默认路由规则检查接收到的IP包。第一路由规则应具有主机和/或节点的网络接口的IP地址,所述IP地址不应应用于默认路由规则。
当存在除默认路由规则之外的多个路由规则时,可以存在一个或多个IP地址包含于多个路由规则的超过一个IP地址区段中的可能性。在一个变型中,每个路由规则具有唯一优先级。路由规则根据优先级评定等级。当IP地址包含于多个路由规则的超过一个IP地址区段中时,应执行最高等级的路由规则。在一个变型中,根据时间戳自动地分配唯一优先级,使得根据就路由规则输入到网络节点170的时间来评定路由规则的等级。
所属领域的技术人员应了解,默认路由规则可以是存储于网络节点170的从存储装置504或主存储器502中的列出到特定网络目的地的路线的数据表,比如路由表。默认路由规则可以由网络节点170的用户或管理员专门输入、由处理单元501自动地创建、由处理单元501通过与其它路由器交换路由信息自动地创建、和/或由处理单元501用网络节点170的用户或管理员输入的信息自动地创建。
第一路由规则和默认路由规则
例如,根据下表分配网络接口102、103、112、113、141a、141b、151、152、153、162、163的IP地址。出于易于参考的目的,当参考图1时本发明的所有实施例根据下表调适IP地址分配。
表1
网络接口 IP地址 网络掩码
102 100.10.10.1 255.255.255.255
103 210.10.10.3 255.255.255.0
112 100.1.1.2 255.255.255.0
113 100.1.1.1 255.255.255.0
141a 210.10.10.4 255.255.255.0
141b 210.10.10.5 255.255.255.0
151 210.10.10.6 255.255.255.0
152 210.10.10.7 255.255.255.0
153 210.10.10.8 255.255.255.0
162 210.10.10.9 255.255.255.0
163 210.10.10.10 255.255.255.0
默认路由规则是通过网络接口172和151转发具有属于防火墙150的IP子网的目的地址(即210.10.10.6/255.255.255.0)的所有IP包,而不管IP包是从哪个网络接口接收的。第一路由规则的作用是通过网络接口171转发具有网络接口141a和141b的IP地址的目的地址的IP包。
具有第一路由规则的原因是允许主机161和网络节点164能够通过IP协议与主机109a和109b通信。在没有第一路由规则的情况下,网络节点170由于默认路由规则而不通过网络接口171转发具有属于IP子网210.10.10.6/255.255.255.0的目的地址的IP包。
作为示例而言,当网络节点170通过网络接口173接收到具有网络接口162的目的地址(即210.10.10.9)的IP包时,处理单元501根据默认路由规则转发所述IP包到网络接口172。类似地,当网络节点170从网络接口173接收IP包并且接收到的IP包的目的IP地址是主机109a的网络接口141a的IP地址时,网络节点170根据第一路由规则转发所述IP包。类似地,当网络节点170从网络接口172接收IP包并且接收到的IP包的目的IP地址是主机109b的网络接口141b的IP地址时,网络节点170根据第一路由规则转发所述IP包。
当网络节点170通过网络接口172接收IP包并且接收到的IP包的目的IP地址不在210.10.10.1/255.255.255.0的IP子网中时,不应用第一路由规则和默认路由规则。如果目的IP地址是通过路由器101和111两者可到达的,所属领域的技术人员将了解,处理单元501能够使用许多方法来确定网络接口171或173中的哪个用于转发IP包,例如,网络性能、路由策略、路由表和链路加载技术。
如果接收到的IP包的目的IP地址是仅通过路由器101可到达的,那么需要第二路由规则以使处理单元501通过网络接口171转发IP包。在第二路由规则的IP地址区段中,需要IP地址、IP地址范围或IP地址子网。在第二路由规则的网络接口区段中需要网络接口171的标识。类似地,如果接收到的IP包的目的IP地址是仅通过路由器111可到达的,那么需要第三路由规则以使处理单元501通过网络接口173转发IP包。在第三路由规则的IP地址区段中,需要IP地址、IP地址范围或IP地址子网。在第三路由规则的网络接口区段中需要网络接口173的标识。
优选地,对应于路由规则的信息存储于网络节点170的存储单元中,例如存储于从存储装置504或主存储器502中,从而允许处理单元501易于获取路由规则信息。
路由规则
路由规则的数目不受限制。例如,可以存在十个路由规则并且路由规则中的每一个对应于一个IP地址。存在的路由规则越多,处理单元501用以检查接收到的IP包的目的地址是否属于路由规则的IP地址中的一个所需的计算资源就越多。如果存在太多路由规则,那么处理单元501会花费更长时间来确定应用哪些路由规则。也会需要更多存储资源来存储路由规则。
一个IP地址不应在不同路由规则的IP地址区段中出现超过一次,因为这可能使得处理单元501不能够识别正确的网络接口来转发接收到的IP包。在一个变型中,若针对不同路由规则允许相同的IP地址,则在路由规则中需要另外的区段。另外的区段可以包括端口编号、源地址以及可以从接收到的IP包识别的其它信息。在一个变型中,针对每种信息存在单独的区段,其中所述区段可以包含用于端口编号的端口编号区段、用于源地址的源地址区段、以及用于可以从接收到的IP包识别的其它信息的其它区段。例如,存在其中网络接口为网络接口区段中的网络接口171的标识的第一路由规则。第一路由规则具有IP地址区段、端口编号区段以及源地址区段。对于将根据第一路由规则通过网络接口171转发的IP包,IP包的目的地址、端口编号以及源地址必须分别匹配在第一路由规则的IP地址区段、端口编号区段以及源地址区段中指定的目的地址、端口编号以及源地址。
IP地址区段中的IP地址
根据本发明的一个实施例,通过网络节点170的用户或管理员输入一个或多个路由规则。所属领域的技术人员将了解,存在许多方法来向网络节点170输入信息。例如,用户或管理员能够通过网页、命令行接口或软件输入一个或多个路由规则。
根据本发明的一个实施例,通过网络节点170的处理单元501创建路由规则。网络节点170通过监测经过所述网络节点的地址解析协议(ARP)相关的包来习得直接或间接连接到其网络接口的主机和节点的IP地址。当网络节点170从其网络接口中的一个接收以太网帧时,网络节点170的处理单元501检查所述以太网帧是否含有ARP消息。如果是,处理单元501使用接收所述以太网帧的网络接口的IP地址来创建对应路由规则。
当主机109a通过网络接口141a发送ARP消息宣布网络接口141a的IP地址是210.10.10.4,并且如果网络节点170通过网络接口171接收由以太网帧承载的ARP消息时,则网络节点170的处理单元501能够确定网络接口141a是通过网络接口171可到达的。因此,处理单元501创建其中IP地址为IP地址区段中的210.10.10.4以及网络接口为网络接口区段中的网络接口171的标识的路由规则。类似地,当网络节点164通过网络接口163广播具有网络接口163的IP地址是210.10.10.10的信息的ARP消息时,处理单元501能够在ARP消息通过网络接口172经过网络节点170时习得网络接口163的IP地址。接着处理单元501创建其中IP地址为IP地址区段中的210.10.10.10以及网络接口为网络接口区段中的网络接口172的标识的路由规则。
由于新的主机和节点可能加入或脱离连接到网络节点170的网络,通过ARP消息习得的IP地址可能变得过时或需要进行更新,因此处理单元501用从ARP消息习得的新IP地址来更新路由规则。在一个变型中,当在预定义时间内尚未接收到源自主机或节点的网络接口的ARP消息时,处理单元501从对应路由规则中清除IP地址、IP子网掩码以及网络接口标识。在一个变型中,处理单元501周期性地送出ARP消息以请求对其具有的路由规则的IP地址区段中的IP地址的应答。这允许处理单元501更新其路由规则。
优选地,当处理单元501自动地创建路由规则时,每个路由规则对应于仅一个IP地址,因为处理单元501无法从ARP消息中知晓通过网络接口可到达的IP地址的范围。因此,IP地址区段中的IP子网掩码设置成允许仅一个IP地址,例如对于IP版本4的IP子网掩码255.255.255.255。
网关
根据本发明的一个实施例,网络节点170用作防火墙150的网关。网络接口172是局域网(LAN)接口并且网络接口171和173是广域网(WAN)接口。处理单元501将通过网络接口172连接的所有网络节点或主机视为属于同一LAN并且因此具有同一子网,例如第一子网。所属领域的技术人员将了解,存在通过网络接口172连接的主机和/节点可能不属于同一子网(例如,虚拟LAN(VLAN))的情况。图4A示出了流程图,其在概念上展示当网络节点170用作网关且从LAN接口接收IP包时网络节点170的操作的流程。在步骤401处,网络节点170通过网络接口172接收IP包。在步骤处402,处理单元501检查IP包的目的地址是否匹配路由规则的IP地址区段中的IP地址。如果存在其中IP包的目的地址匹配IP地址区段中的IP地址的路由规则,那么在步骤403处,处理单元501通过对应于IP包的目的地址的路由规则的网络接口区段中所识别的WAN接口转发IP包。
如果不存在其中IP包的目的地址匹配IP地址区段中的IP地址的路由规则,那么在步骤404中,处理单元501确定IP包的目的地址是否匹配LAN接口所连接到的网络的IP子网。如果是,处理单元501在步骤406中不进一步转发IP包,因为处理单元501将属于IP子网的所有主机和/节点视为仅能够通过网络接口172连接。否则的话,在步骤405处,处理单元501通过WAN接口中的一个转发IP包,使得IP包应能够到达目的地。所属领域的技术人员将了解,处理单元501能够使用许多方法来确定应使用WAN接口中的哪个用于转发IP包,例如,网络性能、路由策略、路由表和链路加载技术。如果仅存在一个WAN接口,那么处理单元501通过所述WAN接口转发IP包。
图4B示出了流程图,其在概念上展示当网络节点170用作网关且从WAN接口接收IP包时网络节点170的操作的流程。在步骤411处,网络节点170通过WAN接口接收IP包。例如,网络节点170通过网络接口171接收IP包。在步骤处412,处理单元501检查IP包的目的地址是否匹配路由规则的IP地址区段中的IP地址。如果存在其中IP包的目的地址匹配IP地址区段中的IP地址的路由规则,那么处理单元501进一步确定所述目的地址是否是通过网络接口171(网络接口171是从其中接收IP包的同一WAN接口)可到达的。如果是,在步骤418处,处理单元501不进一步转发IP包,因为IP包是从同一WAN接口接收的。否则的话,在步骤417处,处理单元501将IP包转发到路由规则的网络接口区段中陈述的目的地。
在步骤414处,处理单元501确定IP包的目的地址是否属于LAN接口所连接到的LAN网络的IP子网。如果是,在步骤415处,处理单元501通过所述LAN接口转发IP包。否则的话,在步骤416中,处理单元501不将IP包转发到其网络接口中的任一个。
为了使得用作网关的网络节点170的处理单元501自动地为网络接口141a和/或141b创建路由规则,处理单元501通过ARP消息习得IP地址以及接收IP包的网络接口的标识。进一步通过ARP消息,处理单元501能够习得含有ARP消息的IP包的发送方的以太网MAC地址。当网络节点170通过网络接口172从防火墙150接收到ARP消息时,处理单元501能够通过网络接口171将同一ARP消息转发到主机141a和141b,或能够用作ARP代理以发送另一ARP消息到主机109a和109b,从而查找网络接口141a和141b的IP地址和/或MAC地址。类似地,当处理单元501已经从网络接口141a和/或141b接收到ARP消息时,处理单元501能够转发所述ARP消息到防火墙150或作为ARP代理对主机109a和/或109b进行回复。所属领域的技术人员将了解,存在许多方法将网络节点170用作网关以处理ARP消息,以便改进响应时间、减少网络流量、并且保持更新IP地址和MAC地址记录。
在一个变型中,出于创建路由规则的目的仅监测通过WAN接口接收的ARP消息。另外,仅属于连接到WAN接口的网络的IP子网的IP地址可用于路由规则的IP地址区段。这是因为根据默认路由规则通常通过LAN接口到达所述IP地址。路由规则用以允许通过WAN接口到达所述IP地址。因此,不需要监测通过LAN接口接收到的ARP消息。
使用用于图示的图1以及表1中的IP地址分配,通过网络节点170监测源自网络接口141a和141b的ARP消息以便习得网络接口141a和141b的IP地址。由于这些ARP消息是通过网络接口171接收到的,因此处理单元501能够基于针对IP地址区段习得的IP地址以及针对网络接口区段习得的网络接口171创建路由规则。处理单元501仅使用网络接口141a和141b的IP地址(即210.10.10.4和210.10.10.5)来创建网络路由规则,因为它们具有同一IP子网,其中网络连接到网络接口172但是仅可通过网络接口171(其是WAN接口)到达。在IP地址区段中的这两个IP地址的IP子网掩码均是255.255.255.255,因为从ARP消息习得的IP地址是用于特定网络接口。不需要监测通过网络接口172接收到的ARP消息,因为处理单元501不自动地针对网络接口151、152、153、162和163创建路由规则,因为网络接口151、152、153、162和163可以通过LAN接口到达。然而,优选地,还应监测通过网络接口172接收到的ARP消息,因为主机或节点可以从WAN侧移动到LAN侧,并且接着需要更新对应的路由规则。
根据本发明的一个实施例,网络接口171和172中的一个分配有IP地址并且另一个网络接口未分配IP地址。仍应用默认路由规则和路由规则。例如,网络接口171分配有IP地址210.10.10.11并且图1中的其它网络接口根据表1中所列的分配进行分配。另外,IP地址210.10.10.11以及分配给网络接口151、152、153、162和163的IP地址属于同一IP子网,例如。210.10.10.1/0。由于处理单元501了解网络接口171分配有IP地址210.10.10.11,其不通过网络接口172转发具有属于IP地址210.10.10.11的目的地址的IP包,即使在默认路由规则是转发属于子网210.10.10.1/0的IP包时。
根据本发明的一个实施例,由于新的主机和节点可能加入或脱离连接到网络节点171的网络,并且通过ARP消息习得的IP地址可能变得过时或需要进行更新,因此处理单元501用从ARP消息习得的新IP地址和/或取决于接收ARP消息的网络接口的网络接口标识来更新路由规则。例如,主机109a可以从连接到交换机105移动至连接到防火墙150。因此,从主机109a接收ARP消息的网络接口应已经从网络接口171变化为网络接口172。接着处理单元501能够或者在默认路由规则是通过网络接口172转发属于子网210.10.10.1/0的IP包时删除路由规则或者将路由规则的网络接口区段更新为网络接口172。在其它实例中,存在连接到交换机105的具有IP地址210.10.10.11和IP子网掩码255.255.255.0的新的节点。因此,处理单元501能够创建新路由规则,其包括具有IP地址210.10.10.11和IP子网掩码255.255.255.0的IP地址区段以及具有网络接口172的标识的网络接口区段。在一个变型中,如果已经存在包括具有网络接口172的标识的网络接口区段的路由规则,那么处理单元501能够将IP地址210.10.10.11和IP子网掩码255.255.255.0添加到所述路由规则的IP区段。使用现有路由规则而不是创建新路由规则可以促使更有效地利用计算和存储资源。
在一个变型中,当没有在预定义时间内尚未接收到源自主机或节点的网络接口的ARP消息时,处理单元501从对应路由规则中清除IP地址、IP子网掩码以及网络接口标识或在路由规则中不存在其它IP地址时删除路由规则。在一个变型中,处理单元501周期性地送出ARP消息以请求对其具有的路由规则的IP地址区段中的IP地址的应答。这允许处理单元501更新其路由规则。
在一个变型中,周期性地清除所有路由规则。接着处理单元501通过如上文所描述的监测ARP消息再次自动地创建路由规则。优选地,当处理单元501将清除路由规则时,处理单元501送出ARP消息以请求对路由规则的IP地址区段中指示的IP地址的应答。接着处理单元501能够用分配有所述IP地址的主机或节点回复的ARP消息迅速创建新路由规则。
根据本发明的一个实施例,在存储路由规则之前,网络节点170的管理员被询问以确认是否将使用IP地址和网络接口标识来创建路由规则。因此,管理员有机会修改、添加或删除与路由规则相关联的信息。在一个变型中,管理员能够通过用户接口确认、修改、添加或删除路由规则。在一个变型中,通过安全连接进行管理员与网络节点170之间的通信。在一个变型中,上传和下载路由规则到远程服务器以用于集中管理。因此,管理员能够通过服务器管理路由规则。
根据本发明的一个实施例,直到接收到确认才执行路由规则。在一个变型中,通过web接口接收确认。在一个变型中,通过安全连接接收确认。
根据本发明的一个实施例,网络接口171和172中的一个或两个分配有IP地址。当网络节点170从其网络接口中的一个接收具有与所分配IP地址相同的目的地址的IP包时,处理单元501拦截所述IP包并且不转发所述IP包。在一个变型中,所分配的IP地址是用于管理目的,使得可以使用这些所分配IP地址接触网络节点170。当来自LAN侧的主机或节点通过所分配IP地址与网络节点170通信时,处理单元501识别所分配IP地址并响应。因此,所分配IP地址可以是任何IP地址,只要其不在LAN中产生IP地址冲突。类似地,来自WAN侧的主机或节点(即,网络接口171和173)能够通过所分配IP地址与网络节点170通信。
附图说明
图1示出了其中网络节点根据本发明的一个实施例进行操作的网络环境。
图2A示出了根据本发明的一个实施例的包括IP地址区段和网络接口区段的路由规则的结构。
图2B示出了根据本发明的一个实施例的两个路由规则的实例。
图3示出了流程图,其在概念上展示根据本发明的一个实施例的网络节点的操作的流程。
图4A示出了流程图,其在概念上展示根据本发明的一个实施例的当网络节点用作网关且从LAN接口接收IP包时所述网络节点的操作的流程。
图4B示出了流程图,其在概念上展示根据本发明的一个实施例的当网络节点用作网关且从WAN接口接收IP包时所述网络节点的操作的流程。
图5是根据本发明的一个实施例的网络节点的示意性方块图。

Claims (20)

1.一种由网络系统中使用的网络节点执行的用于转发IP包的方法,其中所述网络节点执行以下步骤:
从第一网络接口接收IP包;
确定所述IP包的目的地址是否匹配第一路由规则的IP地址区段中的IP地址;
如果所述IP包的所述目的地址匹配所述第一路由规则的所述IP地址区段中的所述IP地址,那么通过第二网络接口转发所述IP包;
其中所述第一网络接口和所述第二网络接口中的一者或两者未分配IP地址;
其中所述网络节点包括至少三个网络接口;
其中所述第一路由规则包括至少一个IP地址区段和至少一个网络接口区段。
2.根据权利要求1所述的方法,其进一步包括:
如果所述IP包的所述目的地址匹配默认路由规则的IP地址,那么通过第三网络接口转发所述IP包;并且
其中所述第一路由规则具有比所述默认路由规则更高的优先级。
3.根据权利要求1所述的方法,其中手动地输入所述第一路由规则的所述IP地址区段和网络接口区段的信息。
4.根据权利要求1所述的方法,其中通过所述网络节点的处理单元确定所述第一路由规则的所述IP地址区段和网络接口区段的信息。
5.根据权利要求4所述的方法,其中通过所述网络节点的处理单元至少部分基于所述网络节点接收到的地址解析协议(ARP)消息确定所述第一路由规则的所述IP地址区段和网络接口区段的信息。
6.根据权利要求5所述的方法,其进一步包括周期性地更新所述第一路由规则。
7.根据权利要求2所述的方法,其中所述第一网络接口和第二网络接口中的一个是广域网(WAN)接口并且所述第一网络接口和第二网络接口中的另一个是局域网(LAN)接口。
8.根据权利要求7所述的方法,其中所述默认路由规则是通过所述LAN接口转发具有属于连接到所述LAN接口的网络的IP子网的目的地址的所有IP包;并且
其中所述第一路由规则是通过所述WAN接口转发具有属于所述第一路由规则的所述IP地址区段中指定的一个或多个IP地址的目的地址的所有IP包。
9.根据权利要求8所述的方法,其中所述第一路由规则的所述IP地址区段中指定的所述一个或多个IP地址属于连接到所述LAN接口的网络的同一IP子网。
10.根据权利要求9所述的方法,其中通过所述网络节点的处理单元至少部分基于所述网络接收到的ARP消息确定在所述第一路由规则的所述IP地址区段中指定的所述一个或多个IP地址。
11.一种用于转发IP包的网络系统中使用的网络节点,其中所述网络节点包括:
至少三个网络接口;
至少一个处理单元;
至少一个存储单元,所述存储单元存储可由所述至少一个处理单元执行以用于以下操作的程序指令:
从第一网络接口接收IP包;
确定所述IP包的目的地址是否匹配第一路由规则的IP地址区段中的IP地址;
如果所述IP包的所述目的地址匹配所述第一路由规则的所述IP地址区段中的所述IP地址,那么通过第二网络接口转发所述IP包;
其中所述第一网络接口和所述第二网络接口中的一者或两者未分配IP地址;
其中所述第一路由规则包括至少一个IP地址区段和至少一个网络接口区段。
12.根据权利要求11所述的网络节点,其中所述至少一个存储单元进一步存储可由所述至少一个处理单元执行以用于以下操作的程序指令:
如果所述IP包的所述目的地址匹配默认路由规则的IP地址,那么通过第三网络接口转发所述IP包;并且
其中所述第一路由规则具有比所述默认路由规则更高的优先级。
13.根据权利要求11所述的网络节点,其中手动地输入所述第一路由规则的所述IP地址区段和网络接口区段的信息。
14.根据权利要求11所述的网络节点,其中通过所述网络节点的所述至少一个处理单元确定所述第一路由规则的所述IP地址区段和网络接口区段的信息。
15.根据权利要求14所述的网络节点,其中通过所述网络节点的处理单元至少部分基于所述网络节点接收到的地址解析协议(ARP)消息确定所述第一路由规则的所述IP地址区段和网络接口区段的信息。
16.根据权利要求15所述的网络节点,其中所述至少一个存储单元进一步存储可由所述至少一个处理单元执行以用于周期性地更新所述第一路由规则的程序指令。
17.根据权利要求12所述的网络节点,其中所述第一网络接口和第二网络接口中的一个是广域网(WAN)接口并且所述第一网络接口和第二网络接口中的另一个是局域网(LAN)接口。
18.根据权利要求17所述的网络节点,其中所述默认路由规则是通过所述LAN接口转发具有属于连接到所述LAN接口的网络的IP子网的目的地址的所有IP包;并且
其中所述第一路由规则是通过所述WAN接口转发具有属于所述第一路由规则的所述IP地址区段中指定的一个或多个IP地址的目的地址的所有IP包。
19.根据权利要求18所述的网络节点,其中所述第一路由规则的所述IP地址区段中指定的所述一个或多个IP地址属于连接到所述LAN接口的网络的同一IP子网。
20.根据权利要求19所述的网络节点,其中通过所述网络节点的处理单元至少部分基于所述网络接收到的ARP消息确定在所述第一路由规则的所述IP地址区段中指定的所述一个或多个IP地址。
CN201380081201.2A 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统 Active CN105794158B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910320183.8A CN110098988B (zh) 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2013/060402 WO2015079284A1 (en) 2013-11-26 2013-11-26 Methods and systems for processing internet protocol packets

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910320183.8A Division CN110098988B (zh) 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统

Publications (2)

Publication Number Publication Date
CN105794158A true CN105794158A (zh) 2016-07-20
CN105794158B CN105794158B (zh) 2019-05-31

Family

ID=52001432

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910320183.8A Active CN110098988B (zh) 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统
CN201380081201.2A Active CN105794158B (zh) 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910320183.8A Active CN110098988B (zh) 2013-11-26 2013-11-26 用于处理因特网协议包的方法和系统

Country Status (4)

Country Link
US (1) US9467372B2 (zh)
CN (2) CN110098988B (zh)
GB (1) GB2525054B (zh)
WO (1) WO2015079284A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9467372B2 (en) * 2013-11-26 2016-10-11 Pismo Labs Technology Limited Methods and systems for processing internet protocol packets
US9680710B2 (en) 2014-11-18 2017-06-13 Gigamon Inc. Systems and methods for processing packets tapped from a network using discovery protocol
US9571393B2 (en) 2014-11-18 2017-02-14 Gigamon Inc. Systems and methods for processing packets tapped from a network
US9584413B2 (en) * 2014-11-18 2017-02-28 Gigamon Inc. Systems and methods for determining input and out interfaces of a network device and copies of a same packet going through the network device
CN107547405B (zh) * 2017-08-08 2019-12-06 杭州迪普科技股份有限公司 路由代理方法及装置
CN114079627B (zh) * 2020-08-14 2024-07-09 华为技术有限公司 数据传输装置和方法
CN112383479B (zh) * 2020-10-15 2022-03-22 国家计算机网络与信息安全管理中心 规则查询方法、装置、计算机设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010017857A1 (en) * 2000-02-29 2001-08-30 Kenji Matsukawa IP address duplication detection method using address resolution protocol
WO2003090410A1 (en) * 2002-04-22 2003-10-30 Thomson Licensing S.A. Trouble shooting and updating electronic apparatus
US6826623B1 (en) * 2000-09-14 2004-11-30 International Business Machines Corporation Detecting a dead gateway for subsequent non-TCP transmission by sending a first TCP packet and deleting an ARP entry associated with the gateway
US7174376B1 (en) * 2002-06-28 2007-02-06 Cisco Technology, Inc. IP subnet sharing technique implemented without using bridging or routing protocols
US20070110046A1 (en) * 2003-09-10 2007-05-17 Farrell Richard S Internet protocol optimizer
US20080112362A1 (en) * 2006-11-10 2008-05-15 Motorola, Inc. Ip layer-handoff using mobility domains and ip caching
US20080117902A1 (en) * 2006-11-21 2008-05-22 Cisco Technology, Inc. Auto-provisioning of network services over an Ethernet access link
CN102217253A (zh) * 2011-05-05 2011-10-12 华为技术有限公司 报文转发方法、装置及网络设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0978977A1 (en) * 1998-08-07 2000-02-09 International Business Machines Corporation A method and system for improving high speed internetwork data transfers
US7587755B2 (en) * 2004-07-02 2009-09-08 Citrix Systems, Inc. System and method for executing interactive applications with minimal privileges
CN101127695B (zh) * 2006-08-17 2011-08-24 中兴通讯股份有限公司 一种减少网络流量无效传递的处理方法
EP2115960A1 (en) * 2007-02-08 2009-11-11 Telefonaktiebolaget LM Ericsson (PUBL) Network router and method of configuring a network router
CN101656654B (zh) * 2008-08-21 2011-11-30 中国移动通信集团公司 路由选择方法及装置
CN101883160B (zh) * 2010-07-09 2013-03-20 杭州华三通信技术有限公司 多接口网络设备和多接口网络设备的报文发送方法
EP2410698B1 (en) 2010-07-19 2014-05-07 Alcatel Lucent A method for routing and associated routing device and destination device
CN102325077B (zh) * 2011-05-25 2015-02-04 杭州华三通信技术有限公司 分支机构间的通信方法及分支机构的出口路由器
CN102571970B (zh) 2012-01-20 2015-07-01 长沙学院 用于交通物联网的节点模块及其通信方法
US9467372B2 (en) * 2013-11-26 2016-10-11 Pismo Labs Technology Limited Methods and systems for processing internet protocol packets

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010017857A1 (en) * 2000-02-29 2001-08-30 Kenji Matsukawa IP address duplication detection method using address resolution protocol
US6826623B1 (en) * 2000-09-14 2004-11-30 International Business Machines Corporation Detecting a dead gateway for subsequent non-TCP transmission by sending a first TCP packet and deleting an ARP entry associated with the gateway
WO2003090410A1 (en) * 2002-04-22 2003-10-30 Thomson Licensing S.A. Trouble shooting and updating electronic apparatus
US7174376B1 (en) * 2002-06-28 2007-02-06 Cisco Technology, Inc. IP subnet sharing technique implemented without using bridging or routing protocols
US20070110046A1 (en) * 2003-09-10 2007-05-17 Farrell Richard S Internet protocol optimizer
US20080112362A1 (en) * 2006-11-10 2008-05-15 Motorola, Inc. Ip layer-handoff using mobility domains and ip caching
US20080117902A1 (en) * 2006-11-21 2008-05-22 Cisco Technology, Inc. Auto-provisioning of network services over an Ethernet access link
CN102217253A (zh) * 2011-05-05 2011-10-12 华为技术有限公司 报文转发方法、装置及网络设备

Also Published As

Publication number Publication date
GB201418214D0 (en) 2014-11-26
CN105794158B (zh) 2019-05-31
GB2525054B (en) 2020-12-30
GB2525054A (en) 2015-10-14
CN110098988A (zh) 2019-08-06
CN110098988B (zh) 2021-10-29
US9467372B2 (en) 2016-10-11
WO2015079284A1 (en) 2015-06-04
US20150146725A1 (en) 2015-05-28

Similar Documents

Publication Publication Date Title
CN105794158A (zh) 用于处理因特网协议包的方法和系统
US9225641B2 (en) Communication between hetrogenous networks
CN102594711B (zh) 一种在边缘设备上的报文转发方法和边缘设备
EP2619953B1 (en) A control apparatus, a communication system, a communication method and a recording medium having recorded thereon a communication program
CN104506408A (zh) 基于sdn的数据传输的方法及装置
US9871761B2 (en) Methods and apparatus for implementing a fibre channel zone policy
CN106452857A (zh) 生成配置信息的方法和网络控制单元
CN105227466B (zh) 通信处理方法和装置
CN104852840A (zh) 一种控制虚拟机之间互访的方法及装置
CN111556110B (zh) 一种用于私有云系统的不同物理业务网络自动化适配方法
JP2006262193A (ja) 制御装置、パケット転送方法およびパケット処理装置
CN112532563B (zh) 报文的发送方法和装置
CN112887209B (zh) 关于数据传输的表项建立方法及相关设备
CN104601475A (zh) 一种基于路由器端口进行报文转发的方法和装置
CN105187311A (zh) 一种报文转发方法及装置
JP5105096B2 (ja) 通信ネットワーク、情報処理装置およびアドレス割当方法
KR20130101618A (ko) 네트워크 가상화에 기반한 네트워크 운용 시스템 및 방법
CN104703211B (zh) 一种虚拟化接入方法及设备
CN105052106B (zh) 用于接收和传输互联网协议(ip)数据包的方法和系统
JPWO2014126094A1 (ja) 通信システム、通信方法、制御装置、制御装置の制御方法及びプログラム
CN108259292B (zh) 建立隧道的方法及装置
JP2008219400A (ja) 中継装置およびパケット中継方法
JP4821715B2 (ja) 機器管理通信システム
CN114301913B (zh) 一种请求处理方法及系统
US9537750B2 (en) Multicast router topology discovery

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant