一种nat网关设备之间的负载分担方法和设备的制作方法

文档序号:7717485阅读:179来源:国知局
专利名称:一种nat网关设备之间的负载分担方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种NAT网关设备之间的负载分担方法和设 备。
背景技术
网络地址转换(NAT, Network Address Translation)技术是一种接入广域网 (WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,被广泛应用于各种 类型互联网(Internet)接入方式和各种类型的网络中。不仅完美地解决了网络互联协议 (Internet Protocol, IP)地址不足的问题,而且还能够有效地避免来自网络外部的攻击, 隐藏并保护网络内部的计算机。 随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟 见肘。事实上,除了中国教育和科研计算机网(China Education and ResearchNETwork, CERNET)夕卜,一般用户几乎申请不到整段的C类IP地址。在其他互联网服务提供商 (Internet Service Provider, ISP)网络中,即使是拥有几百台计算机的大型局域网用户, 当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP 地址根本无法满足网络用户的需求,于是也就产生了 NAT技术。 借助于NAT,私有(保留)地址的〃 内部〃 网络通过路由器发送数据包时,私有地 址被转换成合法的IP地址, 一个局域网只需使用少量IP地址(甚至是1个)即可实现私 有地址网络内所有计算机与Internet的通信需求。 NAT将自动修改IP报文的源IP地址和目的IP地址,IP地址校验则在NAT处理过 程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时 对报文进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据都分别嵌入IP 地址的应用程序就不能正常工作。 NAT的实现方式有三种,即静态转换、动态转换和端口多路复用。
(1)静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一 对一的,是固定不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可 以实现外部网络对内部网络中某些特定设备(如服务器)的访问。 (2)动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址对是 不确定的,而是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定 的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作 为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提 供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。
(3)端口多路复用是指改变外出数据包的源端口并进行端口转换,即端口地址转 换(PAT, Port Address Translation).采用端口多路复用方式。内部网络的所有主机均 可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资 源。同时,又可隐藏网络内部的所有主机,有效避免来自Internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。 在现有的技术方案中,企业使用NAT网关作为Internet的出口,在高可靠性的网 络中会使用2台或多台设备进行NAT转换。 无论是负载分担还是作为备份的NAT应用都会存在以下问题
—、某台设备的压力过大。 这可能由设备性能,上网的用户的流量分部不均导致,或设备没有进行负载分担, 而是作为备份导致的,比如图1中路由接入(Router-Access, R_A)到外网的默认路由网关 是NAT1,而不是NAT2。在某台设备NAT表项压力较大的情况下,其余的空闲设备却无法为 之分担转发压力。 二、设备的出口速率不同。 比如一台设备是GE出口,一台是2.5G P0S出口 。上行链路比较空闲的设备也无 法为其他设备分担转发压力。 现有技术通过路由实现负载分担,如图1中所示,路由器均启用动态路由协议 0SPF,并在NATl和NAT2设备上引入默认路由,不做任何配置修改的情况下R_A上能学习到 2条默认路由,下一跳分别为NATl和NAT2,行成等价路由。 用户上网的流量会在R-A根据三层负载分担哈希算法均匀的向NATl和NAT2进行 发送。 在实现本发明的过程中,发明人发现现有技术至少存在以下问题 现有技术只能做到利用路由来实现负载分担,但无法根据设备本身的负载情况和
链路速率进行动态调整。 并且在备份方案下只有等主用设备故障后备用设备才能履行网管职责,无法在主 用设备负载较高的情况下分担压力。

发明内容
本发明提供一种NAT网关设备之间的负载分担方法和设备,实现根据传输速率对 NAT网关设备的负载进行负载分担。 为达到上述目的,本发明一方面提供了一种网络地址转换NAT网关设备之间的负 载分担方法,应用于包括多个NAT网关设备的系统中,其特征在于,所述多个NAT网关互为 邻居设备,所述方法包括 各所述NAT网关设备按照预设的检测周期对自身的NAT表项利用情况进行检测, 并将检测结果发送给其他NAT网关设备; 所述NAT网关设备接收到其他NAT网关设备发送的检测结果,根据各NAT网关设 备的上行链路速率,计算各NAT网关设备所应分担的NAT表项; 所述NAT网关设备根据计算得到的所述各NAT网关设备所应分担的NAT表项,与
其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。 优选的,所述多个NAT网关互为邻居设备,具体通过以下方式进行设定 各所述NAT网关设备分别向所述系统中的其他NAT网关设备发送协商报文; 各所述NAT网关设备根据接收到的所述协商报文,判断是否可以与其他NAT网关
设备成为邻居设备;
当所述判断结果为是时,各所述NAT网关设备与其他NAT网关设备成为邻居设备。
优选的,各所述NAT网关设备分别向所述系统中的其他NAT网关设备发送协商报 文时,还包括 各所述NAT网关设备在所发送协商报文中携带各所述NAT网关设备所对应的上行 链路传输速率信息; 各所述NAT网关设备根据所述协商报文中所携带的上行链路传输速率信息,设置 自身的上行链路传输速率。 优选的,当所述NAT网关设备判断第一 NAT网关设备所应分担的NAT表项的数量 超过自身所能分担的NAT表项的最大数量时,所述方法还包括 所述NAT网关设备使所述第一 NAT网关设备按照所能分担的NAT表项的最大数量 分担NAT表项; 所述NAT网关设备针对除所述第一 NAT网关设备所分担的NAT表项之外的所有 NAT表项,根据除所述第一NAT网关设备外的所有NAT网关设备的上行链路速率,计算各 NAT网关设备所应分担的NAT表项; 所述NAT网关设备根据计算得到的所述各NAT网关设备所应分担的NAT表项,与
其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。 优选的,所述NAT网关设备与其他NAT网关设备所进行的NAT表项同步完成后,还
包括 作为接收端的NAT网关设备向对端的NAT网关设备发送确认消息,确认完成所述 NAT表项同步的操作。 优选的,所述NAT网关设备与其他NAT网关设备所进行的NAT表项同步完成后,还
包括各所述NAT网关设备更新路由接入设备中的路由表信息,具体为 所述NAT网关设备向所述路由接入设备发送需要同步的NAT表项,其中,各NAT表
项中的下一条信息为同步后所述NAT表项所归属的NAT网关设备的接口地址。 另一方面,本发明还提出了 一种NAT网关设备,应用于包括多个NAT网关设备的系
统中,所述多个NAT网关互为邻居设备,包括 检测模块,用于按照预设的检测周期对自身的NAT表项利用情况进行检测;
通信模块,用于将所述检测模块所生成的检测结果发送给其他NAT网关设备,并 用于接收其他NAT网关设备所发送的检测结果; 计算模块,用于根据所述通信模块所接收到的各NAT网关设备的上行链路速率, 计算各NAT网关设备所应分担的NAT表项; 调整模块,用于根据所述计算模块所计算得到的所述各NAT网关设备所应分担的 NAT表项,与其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
优选的,所述通信模块,还用于分别向所述系统中的其他NAT网关设备发送协商 报文,并接收其他NAT网关设备所发送的协商报文,以进行所述多个NAT网关互为邻居设备 的设定,此种情况下,所述NAT网关设备还包括 判断模块,用于根据接收到的所述协商报文,判断是否可以与其他NAT网关设备 成为邻居设备; 处理模块,用于当所述判断模块所生成的判断结果为是时,使所述NAT网关设备分别与其他NAT网关设备成为邻居设备。 其中,如果所述通信模块所发送的协商报文中携带了各NAT网关设备的上行链路 传输速率信息,所述调整模块,还用于根据所述协商报文中所携带的上行链路传输速率信 息,设置自身的上行链路传输速率。 优选的,所述判断模块,还用于判断其他NAT网关设备所应分担的NAT表项的数量 是否超过自身所能分担的NAT表项的最大数量; 当所述所述判断模块判断第一 NAT网关设备所应分担的NAT表项的数量超过自身 所能分担的NAT表项的最大数量时,所述计算模块,还用于针对除所述第一 NAT网关设备所 分担的NAT表项之外的所有NAT表项,根据除所述第一 NAT网关设备外的所有NAT网关设 备的上行链路速率,计算各NAT网关设备所应分担的NAT表项; 所述调整模块,还用于使所述第一 NAT网关设备按照所能分担的NAT表项的最大 数量分担NAT表项,并根据计算得到的所述各NAT网关设备所应分担的NAT表项,与其他 NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。 优选的,所述NAT网关设备与其他NAT网关设备所进行的NAT表项同步完成后,
所述通信模块,还用于向所述其他NAT网关设备发送提示同步完成的消息,并向 所述路由接入设备发送需要同步的NAT表项,更新路由接入设备中的路由表信息;
其中,各NAT表项中的下一条信息为同步后所述NAT表项所归属的NAT网关设备 的接口地址。 与现有技术相比,本发明具有以下优点 通过应用本发明的技术方案,通过对设备实际负载和上行链路带宽的定期检测, 根据实际转发情况动态的同步NAT网关之间的NAT转发表项,并通过路由更新的方式,调整 接入路由器的三层转发表,实现NAT网关设备之间的动态负载分担。


图1为现有技术中的一种网络结构的示意图; 图2为本发明所提出的一种NAT网关设备之间的负载分担方法的流程示意图;
图3为本发明所提出的具体应用场景下的一种NAT网关设备之间的负载分担方法 的流程示意图; 图4为本发明所提出的一种协商报文的格式示例的示意图; 图5为本发明所提出的一种空的UPDATE报文的格式示例的示意图; 图6为本发明所提出的一种NAT网关设备的结构示意图。
具体实施例方式
如背景技术所述,由于各路径等价处理,NAT网关设备无法根据自身性能压力和上
行链路速率来进行动态负载分担,从而影响了个设备的性能发挥效果。 为了解决上述问题,本发明提出了一种网络地址转换NAT网关设备之间的负载分
担方法,应用于包括多个NAT网关设备的系统中,多个NAT网关互为邻居设备。 如图2所示,为本发明提出的一种NAT网关设备之间的负载分担方法的流程示意
图,具体包括以下步骤
步骤S201 、各NAT网关设备按照预设的检测周期对自身的NAT表项利用情况进行 检测,并将检测结果发送给其他NAT网关设备。 需要指出的是,上述步骤的实现是以各NAT网关设备互为邻居设备为前提的,因
此,需要指出的是,多个NAT网关互为邻居设备具体是通过以下方式进行设定的 (1)各NAT网关设备分别向系统中的其他NAT网关设备发送协商报文。 在具体的应用场景中,各NAT网关设备分别向系统中的其他NAT网关设备发送协
商报文时,还可以在所发送协商报文中携带各NAT网关设备所对应的上行链路传输速率信息。 在此种情况下,各NAT网关设备根据协商报文中所携带的上行链路传输速率信 息,设置自身的上行链路传输速率。 需要指出的是,上述的上行链路传输速率的设定过程是可选步骤,是否包含本步 骤并不影响本发明的保护范围。 (2)各NAT网关设备根据接收到的协商报文,判断是否可以与其他NAT网关设备成 为邻居设备。 (3)当判断结果为是时,各NAT网关设备与其他NAT网关设备成为邻居设备,当判 断结果为否时,NAT网关设备之间放弃成为邻居设备。 步骤S202、NAT网关设备接收到其他NAT网关设备发送的检测结果,根据各NAT网 关设备的上行链路速率,计算各NAT网关设备所应分担的NAT 步骤S203、NAT网关设备根据计算得到的各NAT网关设备所应分担的NAT表项,与 其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
在具体的应用场景中,NAT网关设备与其他NAT网关设备所进行的NAT表项同步 完成后,还包括 作为接收端的NAT网关设备向对端的NAT网关设备发送确认消息,确认完成NAT 表项同步的操作。 进一步的,NAT网关设备与其他NAT网关设备所进行的NAT表项同步完成后,还包 括各NAT网关设备更新路由接入设备中的路由表信息,具体为 NAT网关设备向路由接入设备发送需要同步的NAT表项,其中,各NAT表项中的下 一条信息为同步后NAT表项所归属的NAT网关设备的接口地址。 再进一步需要指出的是,当NAT网关设备判断第一 NAT网关设备所应分担的NAT 表项的数量超过自身所能分担的NAT表项的最大数量时,方法还包括
NAT网关设备使第一 NAT网关设备按照所能分担的NAT表项的最大数量分担NAT 表项; NAT网关设备针对除第一 NAT网关设备所分担的NAT表项之外的所有NAT表项,根 据除第一 NAT网关设备外的所有NAT网关设备的上行链路速率,重新计算各NAT网关设备 所应分担的NAT表项; NAT网关设备根据计算得到的新的各NAT网关设备所应分担的NAT表项,与其他 NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
与现有技术相比,本发明具有以下优点 通过应用本发明的技术方案,通过对设备实际负载和上行链路带宽的定期检测,根据实际转发情况动态的同步NAT网关之间的NAT转发表项,并通过路由更新的方式,调整
接入路由器的三层转发表,实现NAT网关设备之间的动态负载分担。 下面,进一步结合具体的示例,对本发明的技术方案进行说明。 如图3所示,为本发明提出的具体应用场景下的一种NAT网关设备之间的负载分
担方法的流程示意图,具体包括以下步骤 步骤S301、各NAT网关设备建立邻居关系。 这里引入了一种协商报文的设定,运行在各NAT网关设备之间,使NAT设备之间建 立邻居。 上述协商报文的发送方式默认为组播,如果跨网段可配置对端NAT网关设备,此 时运行在单播模式,由于NAT网关设备不会很多,一般不会造成设备的性能压力。
具体的协商报文的格式示例如图4所示。 以NAT-HELLO报文为协商报文的示例,NAT设备收到NAT-HELLO报文后,进行能力
协商(Common Hello Parameters TLV),主要协商上行链路速率,这里的上行链路速率为实
际运营商分配的速率,一般不等同于物理链路速率,需要用户手工配置以通知NAT网关设
备,需要指出的是,链路速率的协商为可选项,用户可以关闭此功能。 如果协商通过则各NAT网关设备彼此间建立NAT邻居设定。 步骤S302、各NAT网关设备分别检测自身的NAT表项占用情况。 每间隔一段时间NAT网关对自身NAT表项利用率进行检测,检测完成后主动发送
NAT-UPDATE报文,通知其他设备。 在具体的应用场景中,各NAT网关中所设置的检测时间是预先设定的,具体的时
间长度可以相同也可以不同,这样的变化并不影响本发明的保护范围。 步骤S303、各NAT网关设备根据上行链路速率比进行负载分担的计算。 NAT-UPDATE报文中需携带设备配置的上行链路速率、当前使用的表项数量、本地
支持的最大表项数量,收到UPDATE报文的设备计算所有NAT设备当前使用表项的总和,并
根据上行链路速率比进行负载分担的计算。 步骤S304、各NAT网关设备根据负载分担的结果进行NAT表项同步。 如果计算发现某台设备所需要承担的表项数已超过规格,则扣除此设备的最大表
项数,其余设备重新进行计算。需要同步转发表的设备通过UPDATE传递转发表信息,收到
的设备回复一个空的UPDATE报文进行确认。该报文的格式示例如图5所示。例如NAT1、 NAT2的表项规格均为10K条,20分钟采样时间后,NAT1当前使用表
项为4K条,NAT2也为4K条。他们互发UPDATE报文来通告这一情况,并获知总的当前使用
NAT表项为8K条,上行链路速率比为1 : 3 (举例)。于是NAT1实际转发表项应为2K条,
NAT2应为6K条。则NAT1需要同步2K条表项给NAT2。假如NAT2的表项规格为5K条,则
NAT2只能承担5K条表项,NAT1同步1K条表项给NAT2设备。 步骤S305、 NAT网关设备更新R_A的路由表信息。 NAT网关之间的表项同步完成后(接收端已发送空的UPDATE进行同步完成确 认),发送端根据同步后NAT表项内容更新R-A的路由表,即NAT网关设备在自身的路由表 中查找需要同步的NAT表项,找到学习这些表项的路由协议,发送更新报文给需要同步表 项的NAT邻居,指定下一跳为该NAT邻居的接口地址。
这里需要NAT网关和使用的路由协议做联动,但不需要对协议本身做改动。
其中,符合条件的目的地址可按照以下算法提取 将NAT表项中所有的目的地址进行统计,计算出每一个目的IP对应的表项数,然 后采用穷举算法,计算最接近需要同步表项的数量的目的IP的组合。如NAT1需要同步到 NAT2的表项数量为X, NATl所有表项中共有目的IP Y个,分别为a, b, c, d, e, f , g……,对 应表项分另ll为n, m, o, p, q, r, s......。 对所有目的IP进行第一次统计,记录对应表项数量,第二次统计所有目的IP对应 表项数量两两相加之和,第三次统计三三相加之和……共统计Y次。将每一次统计的结果 和X相比较,最接近X的目的IP地址为所需要进行路由切换的地址,如果相同,则取数量少 的组合。 NAT网关设备通知路由模块发送这些地址的路由更新,把NAT2的接口地址作为下一跳。 本算法最后的计算结果和X会存在一定误差,在该例子中如果计算结果超过NAT2 的接受能力则不发生切换。 步骤S306、 R-A设备更新本地路由表,将流量切换到新的NAT网关设备上。
R-A收到到外网的明细路由后更新本地路由表,将流量切换到新的NAT网关上去。 原来的表项不需要删除,否则会导致回来的报文无法转发,用户流中断。用户主动拆除连接 后,原表项会被老化。 与现有技术相比,本发明具有以下优点 通过应用本发明的技术方案,通过对设备实际负载和上行链路带宽的定期检测, 根据实际转发情况动态的同步NAT网关之间的NAT转发表项,并通过路由更新的方式,调整 接入路由器的三层转发表,实现NAT网关设备之间的动态负载分担。 为了实现本发明的技术方案,本发明还提出了一种NAT网关设备,应用于包括多 个NAT网关设备的系统中,多个NAT网关互为邻居设备。 如图6所示,为本发明所提出的一种NAT网关设备的结构示意图,具体包括
检测模块61,用于按照预设的检测周期对自身的NAT表项利用情况进行检测;
通信模块62,用于将检测模块61所生成的检测结果发送给其他NAT网关设备,并 用于接收其他NAT网关设备所发送的检测结果; 计算模块63,用于根据通信模块62所接收到的各NAT网关设备的上行链路速率, 计算各NAT网关设备所应分担的NAT表项;调整模块64,用于根据计算模块63所计算得到的各NAT网关设备所应分担的NAT 表项,与其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
在具体的应用场景中,通信模块62还用于分别向系统中的其他NAT网关设备发送 协商报文,并接收其他NAT网关设备所发送的协商报文,以进行多个NAT网关互为邻居设备 的设定,此种情况下,NAT网关设备还包括 判断模块65,用于根据接收到的协商报文,判断是否可以与其他NAT网关设备成 为邻居设备; 处理模块66,用于当判断模块65所生成的判断结果为是时,使NAT网关设备分别 与其他NAT网关设备成为邻居设备。
其中,如果通信模块62所发送的协商报文中携带了各NAT网关设备的上行链路传 输速率信息,调整模块64还用于根据协商报文中所携带的上行链路传输速率信息,设置自 身的上行链路传输速率。 在另一种具体的应用场景中,判断模块65还用于判断其他NAT网关设备所应分担 的NAT表项的数量是否超过自身所能分担的NAT表项的最大数量; 当判断模块65判断第一 NAT网关设备所应分担的NAT表项的数量超过自身所能 分担的NAT表项的最大数量时,计算模块63还用于针对除第一 NAT网关设备所分担的NAT 表项之外的所有NAT表项,根据除第一 NAT网关设备外的所有NAT网关设备的上行链路速 率,计算各NAT网关设备所应分担的NAT表项; 调整模块64,还用于使第一 NAT网关设备按照所能分担的NAT表项的最大数量分 担NAT表项,并根据计算得到的各NAT网关设备所应分担的NAT表项,与其他NAT网关设备 进行NAT表项同步,调整当前分担的NAT表项数量。 NAT网关设备与其他NAT网关设备所进行的NAT表项同步完成后,通信模块62还 用于向其他的NAT网关设备发送提示同步完成的消息,该消息具体可以为空的UPDATE消 息,并向路由接入设备发送需要同步的NAT表项,更新路由接入设备中的路由表信息;
其中,各NAT表项中的下一条信息为同步后NAT表项所归属的NAT网关设备的接 口地址。 与现有技术相比,本发明具有以下优点 通过应用本发明的技术方案,通过对设备实际负载和上行链路带宽的定期检测, 根据实际转发情况动态的同步NAT网关之间的NAT转发表项,并通过路由更新的方式,调整 接入路由器的三层转发表,实现NAT网关设备之间的动态负载分担。 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通
过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发
明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储
介质(可以是CD-R0M, U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可
以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。 本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或
流程并不一定是实施本发明所必须的。 本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进 行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装 置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。 以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本 领域的技术人员能思之的变化都应落入本发明的保护范围。
1权利要求
一种网络地址转换NAT网关设备之间的负载分担方法,应用于包括多个NAT网关设备的系统中,其特征在于,所述多个NAT网关互为邻居设备,所述方法包括各所述NAT网关设备按照预设的检测周期对自身的NAT表项利用情况进行检测,并将检测结果发送给其他NAT网关设备;所述NAT网关设备接收到其他NAT网关设备发送的检测结果,根据各NAT网关设备的上行链路速率,计算各NAT网关设备所应分担的NAT表项;所述NAT网关设备根据计算得到的所述各NAT网关设备所应分担的NAT表项,与其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
2. 如权利要求1所述的方法,其特征在于,所述多个NAT网关互为邻居设备,具体通过 以下方式进行设定各所述NAT网关设备分别向所述系统中的其他NAT网关设备发送协商报文; 各所述NAT网关设备根据接收到的所述协商报文,判断是否可以与其他NAT网关设备 成为邻居设备;当所述判断结果为是时,各所述NAT网关设备与其他NAT网关设备成为邻居设备。
3. 如权利要求2所述的方法,其特征在于,各所述NAT网关设备分别向所述系统中的其 他NAT网关设备发送协商报文时,还包括各所述NAT网关设备在所发送协商报文中携带各所述NAT网关设备所对应的上行链路 传输速率信息;各所述NAT网关设备根据所述协商报文中所携带的上行链路传输速率信息,设置自身 的上行链路传输速率。
4. 如权利要求1所述的方法,其特征在于,当所述NAT网关设备判断第一 NAT网关设 备所应分担的NAT表项的数量超过自身所能分担的NAT表项的最大数量时,所述方法还包 括所述NAT网关设备使所述第一 NAT网关设备按照所能分担的NAT表项的最大数量分担 NAT表项;所述NAT网关设备针对除所述第一 NAT网关设备所分担的NAT表项之外的所有NAT表 项,根据除所述第一NAT网关设备外的所有NAT网关设备的上行链路速率,计算各NAT网关 设备所应分担的NAT表项;所述NAT网关设备根据计算得到的所述各NAT网关设备所应分担的NAT表项,与其他 NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
5. 如权利要求1或4所述的方法,其特征在于,所述NAT网关设备与其他NAT网关设备 所进行的NAT表项同步完成后,还包括作为接收端的NAT网关设备向对端的NAT网关设备发送确认消息,确认完成所述NAT 表项同步的操作。
6. 如权利要求1所述的方法,其特征在于,所述NAT网关设备与其他NAT网关设备所进 行的NAT表项同步完成后,还包括各所述NAT网关设备更新路由接入设备中的路由表信息, 具体为所述NAT网关设备向所述路由接入设备发送需要同步的NAT表项,其中,各NAT表项中 的下一条信息为同步后所述NAT表项所归属的NAT网关设备的接口地址。
7. —种NAT网关设备,应用于包括多个NAT网关设备的系统中,其特征在于,所述多个 NAT网关互为邻居设备,包括检测模块,用于按照预设的检测周期对自身的NAT表项利用情况进行检测;通信模块,用于将所述检测模块所生成的检测结果发送给其他NAT网关设备,并用于 接收其他NAT网关设备所发送的检测结果;计算模块,用于根据所述通信模块所接收到的各NAT网关设备的上行链路速率,计算 各NAT网关设备所应分担的NAT表项;调整模块,用于根据所述计算模块所计算得到的所述各NAT网关设备所应分担的NAT 表项,与其他NAT网关设备进行NAT表项同步,调整当前分担的NAT表项数量。
8. 如权利要求7所述的NAT网关设备,其特征在于,所述通信模块,还用于分别向所述 系统中的其他NAT网关设备发送协商报文,并接收其他NAT网关设备所发送的协商报文,以 进行所述多个NAT网关互为邻居设备的设定,此种情况下,所述NAT网关设备还包括判断模块,用于根据接收到的所述协商报文,判断是否可以与其他NAT网关设备成为 邻居设备;处理模块,用于当所述判断模块所生成的判断结果为是时,使所述NAT网关设备分别 与其他NAT网关设备成为邻居设备。其中,如果所述通信模块所发送的协商报文中携带了各NAT网关设备的上行链路传输 速率信息,所述调整模块,还用于根据所述协商报文中所携带的上行链路传输速率信息,设 置自身的上行链路传输速率。
9. 如权利要求7所述的NAT网关设备,其特征在于,所述判断模块,还用于判断其他NAT网关设备所应分担的NAT表项的数量是否超过自 身所能分担的NAT表项的最大数量;当所述所述判断模块判断第一 NAT网关设备所应分担的NAT表项的数量超过自身所能 分担的NAT表项的最大数量时,所述计算模块,还用于针对除所述第一 NAT网关设备所分担 的NAT表项之外的所有NAT表项,根据除所述第一 NAT网关设备外的所有NAT网关设备的 上行链路速率,计算各NAT网关设备所应分担的NAT表项;所述调整模块,还用于使所述第一NAT网关设备按照所能分担的NAT表项的最大数量 分担NAT表项,并根据计算得到的所述各NAT网关设备所应分担的NAT表项,与其他NAT网 关设备进行NAT表项同步,调整当前分担的NAT表项数量。
10. 如权利要求7所述的NAT网关设备,其特征在于,所述NAT网关设备与其他NAT网 关设备所进行的NAT表项同步完成后,所述通信模块,还用于向所述其他NAT网关设备发送提示同步完成的消息,并向所述 路由接入设备发送需要同步的NAT表项,更新路由接入设备中的路由表信息;其中,各NAT表项中的下一条信息为同步后所述NAT表项所归属的NAT网关设备的接 口地址。
全文摘要
本发明公开了一种NAT网关设备之间的负载分担方法和设备,通过对设备实际负载和上行链路带宽的定期检测,根据实际转发情况动态的同步NAT网关之间的NAT转发表项,并通过路由更新的方式,调整接入路由器的三层转发表,实现NAT网关设备之间的动态负载分担。
文档编号H04L12/56GK101697528SQ200910209448
公开日2010年4月21日 申请日期2009年10月30日 优先权日2009年10月30日
发明者沈岭, 王军 申请人:杭州华三通信技术有限公司;
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1