CN101141494B - 一种解决负载分担情况下资源分配冲突的方法 - Google Patents
一种解决负载分担情况下资源分配冲突的方法 Download PDFInfo
- Publication number
- CN101141494B CN101141494B CN2007101758187A CN200710175818A CN101141494B CN 101141494 B CN101141494 B CN 101141494B CN 2007101758187 A CN2007101758187 A CN 2007101758187A CN 200710175818 A CN200710175818 A CN 200710175818A CN 101141494 B CN101141494 B CN 101141494B
- Authority
- CN
- China
- Prior art keywords
- nat
- nat gateway
- public network
- address
- gateway
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种解决负载分担情况下资源分配冲突的方法,适用于包括至少两个网络地址转换(NAT)网关的网络环境,所述至少两个NAT网关互为备份且进行负载分担,该方法包括:为互为备份且进行负载分担的各个NAT网关分配独立的公网资源,所述NAT网关使用自身的公网资源进行NAT转换。利用本发明所提供的方法,能够有效避免负载分担情况下资源分配冲突问题的产生。
Description
技术领域
本发明涉及网络通信技术,尤其涉及一种解决负载分担情况下资源分配冲突的方法。
背景技术
网络地址转换(NAT,Network Address Translation)是一种将私网网际协议(IP,Internet Protocol)地址转换为公网IP地址的技术,主要用于实现私有网络访问公有网络的功能,它可以使多台私网计算机共享Internet连接,很好地解决公共IP地址资源紧缺的问题。
支持NAT功能的设备称为NAT网关,图1示出了NAT网关的基本应用示意图。参见图1,NAT网关位于私有网络与公有网络的连接处,当私网主机(Host)192.168.1.3发往公网服务器(Server)10.1.1.2的报文(packet)1到达NAT网关后,NAT网关将该报文的源IP地址192.168.1.3转换为一个可在Internet上选路的公有地址20.1.1.1,然后将转换后的报文1发送到公网服务器,同时在NAT网关的转换关系表中记录这一映射;当公网服务器返回给私网主机192.168.1.3的报文2到达NAT网关后,NAT查找自身记录的转换关系表,将报文2的目的IP地址20.1.1.1替换为私网主机的IP地址192.168.1.3,然后发送到私网主机。上述过程对终端来说是透明的,对公网服务器而言,其认为内部主机的IP地址就是20.1.1.1,而并不知道有192.168.1.3这个地址。因此,NAT“隐藏”了企业的私有网络,为私有网络提供了“隐私”保护。
网络地址端口转换(NAPT,Network Address Port Translation)是NAT的一种变形,它允许多个私网地址映射到同一个公网地址的不同端口上。图 2示出了NAT网关的NAPT应用示意图。参见图2,四个带有私网地址的IP报文到达NAT网关,其中,报文1和报文2来自同一个私网地址但具有不同的源端口号,报文3和报文4来自不同的私网地址但具有相同的源端口号;NAT网关将这四个报文的源IP地址都映射到了同一个公网地址的不同端口上,同时在NAT网关的转发关系表中记录这些映射;当回应报文到达时,NAT网关根据自身记录的转换关系表将回应报文的目的IP地址和目的端口号替换为原始私网主机的IP地址和端口号。目前,大部分的NAT网关都支持图1和图2所示的两种应用。
上述图1和图2均是单一NAT网关的应用。使用单一NAT网关,NAT网关本身成为了网络中的关键节点,其一旦失效,就会导致整个私网无法接入公网。为了克服该问题,通常使用双机备份或多机备份技术来提升设备的可靠性。图3示出了NAT网关双机备份的工作方式示意图,其中,NAT网关1(FW1)为主NAT网关,FW2为备NAT网关,当FW1正常时,所有流量都经过FW1,同时FW1将建立的转换关系表项如192.168.1.112(1152)->20.1.2.100(2001)备份到FW2上;当FW1异常无法工作时,所有的流量都切换到FW2上,FW2根据备份的转换关系表完成后续报文的地址转换,保证用户的会话连接不会中断。
在图3所示的双机备份情况下,仅有一个NAT网关工作,而另一个NAT网关闲置。为了提高设备的利用率,可以在备份的基础上进行负载分担。图4示出了NAT网关双机备份+负载分担的工作方式示意图,其中,一部分流量经过FW1,一部分流量经过FW2,两个NAT网关进行负载分担,各自完成自己的NAT转换工作,并互向对方备份转换关系表。一旦其中一个NAT网关出现故障,所有流量就切换到剩下那一个正常的NAT网关上,由于这个正常的NAT网关既有自己的转换关系表,也有对方备份过来的转换关系表,因此全部的流量都可以经过这个设备完成NAT转换功能。
但是,在上述负载分担的工作方式下,由于两个NAT网关都是从相同的地址和端口资源中获取公网IP地址和公网端口号,因此很可能会产生资 源分配冲突的问题。比如,参见图5所示,FW1和FW2分别为不同的私网地址和端口号192.168.1.112(1152)及192.168.1.113(2233)分配了相同的公网地址和端口号20.1.2.100(2001)。也就是说,一个公网地址和端口号对应两个不同的私网地址和端口号,这样,当携带的目的信息为20.1.2.100(2001)的反向报文到达FW1或FW2后,FW1或FW2将无法确定应该根据哪种对应关系来进行NAT转换,即无法确定应将该反向报文发送给192.168.1.112(1152)还是192.168.1.113(2233),从而引起通信混乱,导致这两个连接都无法正常工作。
发明内容
有鉴于此,本发明的主要目的在于提供一种解决负载分担情况下资源分配冲突的方法,有效避免负载分担情况下资源分配冲突问题的产生。
为达到上述目的,本发明提供的技术方案如下:
一种解决负载分担情况下资源分配冲突的方法,适用于包括至少两个NAT网关的网络环境,所述至少两个NAT网关互为备份且进行负载分担,该方法包括:为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源,所述NAT网关使用自身的公网资源进行NAT转换,所述公网资源为公网IP地址或公网端口,转换后的目的信息包括公网IP地址和公网端口。
当所述互为备份且进行负载分担的NAT网关个数为两个,且所述公网资源为公网IP地址时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网IP地址分成奇数地址和偶数地址两部分,并将奇数地址分配给所述两个NAT网关中的一个NAT网关,将偶数地址分配给另一个NAT网关;
或者,将所述两个NAT网关在进行NAT转换时可使用的全部公网IP地址按照地址大小顺序分成高段地址和低段地址两部分,并将高段地址分配给所述两个NAT网关中的一个NAT网关,将低段地址分配给另一个NAT网关。
当所述互为备份且进行负载分担的NAT网关个数为两个,且所述公网资源为公网端口时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网端口分成奇数端口和偶数端口两部分,并将奇数端口分配给所述两个NAT网关中的一个NAT网关,将偶数端口分配给另一个NAT网关;
或者,将所述两个NAT网关在进行NAT转换时可使用的全部公网端口按照端口大小顺序分成高段端口和低段端口两部分,并将高段端口分配给所述两个NAT网关中的一个NAT网关,将低段端口分配给另一个NAT网关。
其中,所述分配通过静态配置方式进行。
或者,所述分配通过动态协商机制进行,所述动态协商过程包括:
所述两个NAT网关分别向对方发送携带自身设备标识的协商报文,NAT网关收到对方发送来的协商报文后,比较其中携带的设备标识与自身设备标识,根据比较结果确定自身的资源使用范围。
其中,所述设备标识为设备序列号或媒质接入控制地址或管理IP地址。
当所述互为备份且进行负载分担的NAT网关个数为两个,且第一NAT网关先于第二NAT网关存在时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网资源分为互不重叠的第一资源和第二资源两部分,且设定协商过程中设备标识小的NAT网关使用第一资源,设备标识大的NAT网关使用第二资源;
第二NAT网关启动时,向第一NAT网关发送携带自身设备标识的协商报文,第一NAT网关收到后向第二NAT网关返回设备标识为0的协商报文,第二NAT网关根据第一NAT网关返回的协商报文判断出自身设备标识较大,使用第二资源进行NAT转换,第一NAT网关一直使用第一资源进行NAT转换。
其中,所述公网资源为公网IP地址或公网端口;
所述第一资源和第二资源按照公网IP地址或公网端口的奇偶数划分,或者按照公网IP地址或公网端口的大小顺序划分。
当所述互为备份且进行负载分担的NAT网关个数N大于两个,且N个NAT网关形成星型组网结构时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
所述N个NAT网关进行主控设备协商,协商成功后,为非主控设备的NAT网关向主控设备发送携带自身设备标识的注册报文,主控设备根据收到的注册报文个数确定当前进行负载分担的NAT网关总数,并对全部NAT网关的设备标识进行大小排序,将排序结果发送给已注册的NAT网关,收到排序结果的NAT网关及主控设备根据自身设备标识在排序结果中的位置确定各自的资源使用范围。
所述主控设备协商过程包括:每个NAT网关通过广播方式周期性发送携带自身设备标识的协商报文来竞争主控设备,监听到所述协商报文的NAT网关比较监听到的协商报文中的设备标识与自身设备标识的大小,如果前者小,则保持静默;如果后者小,则发送携带自身设备标识的协商报文来竞争主控设备,最终设备标识最小的NAT网关竞争获胜,成为主控设备。
所述各个NAT网关根据自身设备标识在排序结果中的位置确定各自不同的资源使用范围包括:所述NAT网关从排序结果中获知自身设备标识在排序结果中的排序序号,并且选择公网端口号或IP地址除以NAT网关总数后余数为自身序号的端口或IP地址进行NAT转换。
当所述互为备份且进行负载分担的NAT网关个数N大于两个,且N个NAT网关形成环形组网结构时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
每个NAT网关周期性发送携带自身设备标识及Seq=0、Num=0信息的协商报文,收到所述协商报文的NAT网关比较收到的协商报文中携带的设备标识与自身设备标识的大小,如果前者小,则保持其中的设备标识及Num值不变、令Seq值加1,然后将Seq值加1后的协商报文发送出去;如果后 者小,则重新发送携带自身设备标识及Seq=0、Num=0信息的协商报文;
当NAT网关收到的协商报文中的设备标识与其自身设备标识相同时,该NAT网关通过读取该报文中的Seq值获知进行负载分担的NAT网关总数N,记录自身序号为0,并周期性发送携带自身设备标识及Seq=0,Num=N信息的报文;
收到携带Num=N信息的报文的NAT网关,记录NAT网关总数为Num的值N,记录自身序号为该报文中携带的Seq值加1,然后令报文中的Seq值加1,并将Seq值加1后的报文继续发送出去,直到该报文回到初始发出该报文的NAT网关为止;
获知NAT网关总数及自身序号的NAT网关选择公网端口号或IP地址除以NAT网关总数后余数为自身序号的端口或IP地址进行NAT转换。
其中,所述设备标识为设备序列号或媒质接入控制地址或管理IP地址。
由此可见,在本发明所提供的技术方案中,互为备份且进行负载分担的各个NAT网关在进行NAT转换时所使用的公网资源是相互独立的,彼此之间不存在重叠的部分,从而有效地避免了NAT转换时资源分配冲突问题的产生,不会引起通信混乱。
附图说明
图1为NAT网关的基本应用示意图。
图2为NAT网关的NAPT应用示意图。
图3为NAT网关双机备份的工作方式示意图。
图4为NAT网关双机备份+负载分担的工作方式示意图。
图5为负载分担情况下资源分配冲突示意图。
图6为本发明中解决资源分配冲突的方法流程图。
图7为本发明实施例中的资源使用协商过程示意图。
图8为本发明实施例中的星型NAT网关组网结构示意图。
图9为图8所示星型组网下的资源使用协商过程示意图。
图10为本发明实施例中的环形NAT网关组网结构示意图。
图11为图10所示环形组网下的资源使用协商过程示意图。
具体实施方式
为了克服现有技术中资源分配冲突的问题,本发明提供了一种解决方案。参见图6所示,本发明提供的解决资源分配冲突的方法包括以下步骤:
步骤601:为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源。
步骤602:所述NAT网关使用自身的公网资源进行NAT转换。
需要说明的是,本发明不仅适用于只转换IP地址而不改变端口号的基本NAT应用场景,同时也适用于NAPT应用场景。并且,本发明不仅适用于双机备份的情况,同时也适用于多机备份的情况。
为使本发明的目的、技术方案及优点更加清楚明白,下面参照附图并举实施例,对本发明作进一步详细说明。其中,实施例一、实施例二和实施例三对应双机备份的情况,实施例四和实施例五对应多机备份的情况。
实施例一
将两个互为备份的NAT网关FW1和FW2在进行NAT转换时可以使用的全部公网IP地址资源(以下简称为地址池)划分为两部分,FW1和FW2分别使用其中的一部分。比如,将整个地址池分成奇数地址和偶数地址两部分,FW1使用奇数地址,FW2使用偶数地址;或者,将整个地址池(A0~A2)按照地址大小顺序分成低段地址(A0~A1)和高段地址(A1+1~A2)两部分,其中,(A0~A1)供FW1使用,(A1+1~A2)供FW2使用。当然,除了上述两种划分方法之外,还可以采取其它的资源划分方法,只要保证分配给FW1和FW2的资源没有重合的部分即可。
本实施例所提供的资源划分方法既适用于基本NAT应用场景,也适用于NAPT应用场景。
实施例二
对于NAPT应用场景,还可以将两个互为备份的NAT网关FW1和FW2在进行NAT转换时可使用的全部公网端口号资源(以下简称为端口池)划分为两部分,FW1和FW2分别使用其中的一部分。比如,将端口池划分为奇数端口和偶数端口两部分,FW1和FW2中的一方使用奇数端口,另一方使用偶数端口;或者,按照端口号大小顺序将端口池平均分成两部分,FW1和FW2分别使用其中的一部分;或者,采取其它的手段对端口池资源进行划分,只要保证分配给FW1和FW2的资源不相重合即可。
其中,在上述实施例一和实施例二中,关于FW1和FW2究竟使用哪部分资源的问题,可以通过静态配置的方式实现。比如,配置FW1使用(A0~A1)范围内的地址资源,FW2使用(A1+1~A2)范围内的地址资源;或者,配置FW1使用奇数端口,FW2使用偶数端口。
除了上述静态配置的方式之外,FW1和FW2还可以通过动态协商机制来解决上述资源使用的问题。鉴于在双机备份负载分担的情况下,备份双方必然会有一个互相发现和协商工作方式的过程即协商阶段,因此,NAT网关可以选择在协商阶段进行资源使用的协商。
下面以按奇偶数来划分端口资源为例,对资源使用的协商过程进行详细说明。图7示出了一种资源使用协商过程示意图,参见图7,该过程主要包括以下步骤:
步骤701:FW1和FW2分别向对方发送携带自身设备标识(ID)的协商报文,如广告(AD,Advertisement)报文。其中,所述设备ID唯一标识一个NAT网关,它既可以是设备序列号、也可以是媒质接入控制(MAC)地址、或者是管理IP地址等,只要该ID全网唯一即可。
步骤702:FW1或FW2在收到对方发送来的设备ID后,比较收到的对方设备ID与自身设备ID的大小,其中,设备ID小的一方使用奇数端口,设备ID大的一方使用偶数端口。
当然,也可以协定设备ID大的一方使用奇数端口,设备ID小的一方使用偶数端口,只需FW1和FW2双方采取的标准一致即可。为便于描述,在 以下实施例中,均以设备ID小的一方使用奇数端口,设备ID大的一方使用偶数端口为例进行说明。
经过上述协商过程之后,互为备份且负载分担的两个NAT网关就可以正常工作了,它们彼此使用的公网端口号不会发生冲突。
实施例三
在实际应用中,经常会出现以下情形:开始时只有一台NAT网关FW1,后来为了提升可靠性和扩容,又增加了一台NAT网关FW2,构成双机备份负载分担系统。在这种情形下,通常希望扩容时FW1上已经进行的用户业务不发生中断。
为达到上述目的,可以在最初配置第一个NAT网关FW1时,就按照双机备份的方式进行配置。比如,固定配置FW1只使用奇数端口进行NAT转换;或者,在FW1启动时,依然进行图7所示的协商过程,但由于只有一台NAT网关,所以协商结束时FW1并不能收到携带对方设备ID的AD报文,此时,FW1自动认为自身的设备ID较小,使用奇数端口进行NAT转换。
在增加了第二个NAT网关FW2后,FW2启动时会进入协商过程,向FW1发送携带自身设备ID的AD报文;此时,由于FW1已经开始工作,其上已经有大量的连接在使用奇数端口号,因此,FW1在收到FW2发来的AD报文后,不会再将自身的设备ID发送给FW2,而是向FW2发送ID=0的AD报文。由于通常情况下设备ID都是大于0的数,因此,FW2在收到FW1发送来的ID=0的AD报文后,肯定会判断出自身的设备ID要比FW1的大,故使用偶数端口进行NAT转换。这样,FW1和FW2所使用的端口资源就不会产生冲突。
以上实施例针对双机备份负载分担的情形进行了说明,下面对多机备份负载分担的情形进行详细阐述。
在多机备份的情况下,同样可以选择对互为备份的多个NAT网关所使用的全部地址资源或端口资源进行划分,保证所述各个NAT网关所使用的 资源不会发生冲突。并且,各个NAT网关之间的资源使用既可以采用静态配置机制,也可以采用动态协商机制。比如,当存在3个互为备份的NAT网关时,将全部端口资源如10001~40000按照大小顺序划分为三等份,并且,静态配置第一个NAT网关使用10001~20000,第二个NAT网关使用20001~30000,第三个NAT网关使用30001~40000。
对于多机备份情况下的动态协商机制,下面以端口划分为例并结合实施例四、实施例五进行说明。其中,实施例四对应星型组网结构,实施例五对应环形组网结构。
实施例四
参见图8所示,N个互为备份的NAT网关都连接到同一个二层交换机上,彼此互通,形成一个星型组网结构。图9示出了该星型组网结构下,各个NAT网关之间的资源使用协商过程示意图,该过程主要包括主控设备(NC,NAT Controller)协商、注册和分配端口范围三个阶段,其具体操作过程如图9所示,包括以下步骤:
步骤901:各个NAT网关都通过广播方式周期性地发送携带自身设备ID的AD报文,来竞争主控设备;每个NAT网关都监听AD报文,并比较监听到的AD报文中携带的设备ID与自身设备ID的大小,如果AD报文中的设备ID比自身设备ID小,NAT网关就保持静默,即被抑制;如果AD报文中的设备ID比自身设备ID大,NAT网关就发送携带自身设备ID的AD报文来竞争主控设备。这样,最终设备ID最小的NAT网关获胜,成为主控设备,主控设备依然周期性地发送AD报文,其它设备被抑制。
其中,各个NAT网关可以通过判断是否连续若干次都收到来自同一个NAT网关的AD报文来确定主控设备协商是否结束。比如,一旦连续收到3个AD报文都来自同一个NAT网关,就确定该NAT网关为主控设备,主控设备协商结束。
步骤902:主控设备协商结束后,各个非主控设备都向主控设备发送携带自身设备ID的注册报文RID,主控设备根据收集到的注册报文个数来确 定当前一共有多少个NAT网关进行负载分担。在本实施例中,一共有N个NAT网关进行负载分担。
步骤903:在确定了进行负载分担的NAT网关个数后,主控设备对收到的注册报文中的设备ID进行大小排序,并将排序结果发送给各个非主控设备。比如,主控设备向各个非主控设备发送携带(ID=S0,S1,...,SN-1)信息的AD报文,其中,S0,S1,...,SN-1表示已经按照由小到大的顺序排好的设备ID。在本实施例中,由于主控设备的ID最小,因此S0即为主控设备ID。
各个非主控设备在收到主控设备发来的排序结果后,便可获知进行负载分担的NAT网关的总数,以及自身ID在所有ID中的排序序号i。这里,主控设备的i=0,其它非主控设备的i依次为1到N-1。之后,当进行NAT转换时,各个NAT网关就可以选取端口号除以N后余数为自身序号i的端口,即ID为Si的NAT网关选取的端口号p必须满足以下条件:p mod N=i,这样就对整个端口资源进行了比较平均的划分。
实施例五
参见图10所示,每个NAT网关都有两个级联口:左侧端口和右侧端口,NAT网关之间彼此左右互连,形成一个环形组网结构。图11示出了该环形组网结构下,各个NAT网关之间的资源使用协商过程示意图,其中,协商报文从NAT网关的左侧端口发送,从右侧端口接收。参见图11所示,该协商过程包括以下步骤:
步骤1101:各个NAT网关都周期性地发送携带(ID=Si,Seq=0,Num=0)信息的AD报文,来竞争主控设备,其中,Si为发出AD报文的NAT网关的自身设备ID。
步骤1102:NAT网关收到携带(ID=Si,Seq=0,Num=0)的AD报文后,比较其中携带的ID与自身设备ID的大小,如果前者小,则抑制自身的AD发送,保持报文中的ID不变,并修改报文中的Seq,令其自动加1,然后将修改后的AD报文发送出去,修改后的AD报文中包括(ID=Si,Seq= Seq+1,Num=0);如果后者小,NAT网关则重新发送携带自身ID(Sj)的AD报文,该AD报文中包括(ID=Sj,Seq=0,Num=0)。
步骤1103:经过步骤1001和1002之后,如果NAT网关接收到的AD报文中携带的ID恰好是该NAT网关自身的ID,则说明该NAT网关原来发出的AD报文已经被发送了一圈,其ID最小,竞争主控设备获胜。由于每经过一个NAT网关Seq值都会被加1,因此,主控设备可以从收到的AD报文中记录的Seq值获知共有多少个NAT网关,其中,NAT网关总数N即为该AD报文中记录的Seq值加1。在确定了NAT网关总数后,主控设备周期性地发送携带(ID=S,Seq=0,Num=N)信息的AD报文,其中,S为主控设备的ID。
步骤1104:其它NAT网关在收到Num≠0的AD报文后,便可获知当前竞争已经结束,故读取其中的Num值,记录NAT网关总数为Num的值N,且读取其中的Seq值,记录自身的序号k=Seq+1;并且,令AD报文中的Seq自动加1,然后将修改后的携带(ID=S,Seq=Seq+1,Num=N)的AD报文继续向下发送,直到该报文回到主控设备为止。
其中,主控设备的序号为0。
经过上述过程以后,全部NAT网关都知道了设备总数N以及自身序号k。之后,当进行NAT转换时,各个NAT网关就可以选取端口号除以N后余数为自身序号k的端口,即序号为k的NAT网关选取的端口号p必须满足以下条件:p mod N=k,这样就对整个端口资源进行了比较平均的划分。
最后需要说明的是,本发明不仅对多个互为备份且进行负载分担的独立设备有效,对分布式设备的多个业务板之间的备份加负载分担的方案同样有效。
以上所述对本发明的目的、技术方案和有益效果进行了进一步的详细说明,所应理解的是,以上所述并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种解决负载分担情况下资源分配冲突的方法,适用于包括至少两个网络地址转换(NAT)网关的网络环境,所述至少两个NAT网关互为备份且进行负载分担,其特征在于,该方法包括:
为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源,所述NAT网关使用自身的公网资源进行NAT转换,所述公网资源为公网IP地址或公网端口,转换后的目的信息包括公网IP地址和公网端口。
2.根据权利要求1所述的方法,其特征在于,当所述互为备份且进行负载分担的NAT网关个数为两个,且所述公网资源为公网IP地址时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网IP地址分成奇数地址和偶数地址两部分,并将奇数地址分配给所述两个NAT网关中的一个NAT网关,将偶数地址分配给另一个NAT网关;
或者,将所述两个NAT网关在进行NAT转换时可使用的全部公网IP地址按照地址大小顺序分成高段地址和低段地址两部分,并将高段地址分配给所述两个NAT网关中的一个NAT网关,将低段地址分配给另一个NAT网关。
3.根据权利要求1所述的方法,其特征在于,当所述互为备份且进行负载分担的NAT网关个数为两个,且所述公网资源为公网端口时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网端口分成奇数端口和偶数端口两部分,并将奇数端口分配给所述两个NAT网关中的一个NAT网关,将偶数端口分配给另一个NAT网关;
或者,将所述两个NAT网关在进行NAT转换时可使用的全部公网端口按照端口大小顺序分成高段端口和低段端口两部分,并将高段端口分配给所述两个NAT网关中的一个NAT网关,将低段端口分配给另一个NAT网关。
4.根据权利要求2或3所述的方法,其特征在于,所述分配通过静态配置方式进行。
5.根据权利要求2或3所述的方法,其特征在于,所述分配通过动态协商机制进行,所述动态协商过程包括:
所述两个NAT网关分别向对方发送携带自身设备标识的协商报文,NAT网关收到对方发送来的协商报文后,比较其中携带的设备标识与自身设备标识,根据比较结果确定自身的资源使用范围。
6.根据权利要求5所述的方法,其特征在于,所述设备标识为设备序列号或媒质接入控制地址或管理IP地址。
7.根据权利要求1所述的方法,其特征在于,当所述互为备份且进行负载分担的NAT网关个数为两个,且第一NAT网关先于第二NAT网关存在时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
将所述两个NAT网关在进行NAT转换时可使用的全部公网资源分为互不重叠的第一资源和第二资源两部分,且设定协商过程中设备标识小的NAT网关使用第一资源,设备标识大的NAT网关使用第二资源;
第二NAT网关启动时,向第一NAT网关发送携带自身设备标识的协商报文,第一NAT网关收到后向第二NAT网关返回设备标识为0的协商报文,第二NAT网关根据第一NAT网关返回的协商报文判断出自身设备标识较大,使用第二资源进行NAT转换,第一NAT网关一直使用第一资源进行NAT转换。
8.根据权利要求7所述的方法,其特征在于,所述公网资源为公网IP地址或公网端口;
所述第一资源和第二资源按照公网IP地址或公网端口的奇偶数划分,或者按照公网IP地址或公网端口的大小顺序划分。
9.根据权利要求1所述的方法,其特征在于,当所述互为备份且进行负载分担的NAT网关个数N大于两个,且N个NAT网关形成星型组网结构时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
所述N个NAT网关进行主控设备协商,协商成功后,为非主控设备的NAT网关向主控设备发送携带自身设备标识的注册报文,主控设备根据收到的注册报文个数确定当前进行负载分担的NAT网关总数,并对全部NAT网关的设备 标识进行大小排序,将排序结果发送给已注册的NAT网关,收到排序结果的NAT网关及主控设备根据自身设备标识在排序结果中的位置确定各自的资源使用范围。
10.根据权利要求9所述的方法,其特征在于,所述主控设备协商过程包括:
每个NAT网关通过广播方式周期性发送携带自身设备标识的协商报文来竞争主控设备,监听到所述协商报文的NAT网关比较监听到的协商报文中的设备标识与自身设备标识的大小,如果前者小,则保持静默;如果后者小,则发送携带自身设备标识的协商报文来竞争主控设备,最终设备标识最小的NAT网关竞争获胜,成为主控设备。
11.根据权利要求9所述的方法,其特征在于,所述各个NAT网关根据自身设备标识在排序结果中的位置确定各自不同的资源使用范围包括:
所述NAT网关从排序结果中获知自身设备标识在排序结果中的排序序号,并且选择公网端口号或IP地址除以NAT网关总数后余数为自身序号的端口或IP地址进行NAT转换。
12.根据权利要求1所述的方法,其特征在于,当所述互为备份且进行负载分担的NAT网关个数N大于两个,且N个NAT网关形成环形组网结构时,所述为互为备份且进行负载分担的各个NAT网关分别分配独立的公网资源包括:
每个NAT网关周期性发送携带自身设备标识及Seq=0、Num=0信息的协商报文,收到所述协商报文的NAT网关比较收到的协商报文中携带的设备标识与自身设备标识的大小,如果前者小,则保持其中的设备标识及Num值不变、令Seq值加1,然后将Seq值加1后的协商报文发送出去;如果后者小,则重新发送携带自身设备标识及Seq=0、Num=0信息的协商报文;
当NAT网关收到的协商报文中的设备标识与其自身设备标识相同时,该NAT网关通过读取该报文中的Seq值获知进行负载分担的NAT网关总数N,记录自身序号为0,并周期性发送携带自身设备标识及Seq=0,Num=N信息的 报文;
收到携带Num=N信息的报文的NAT网关,记录NAT网关总数为Num的值N,记录自身序号为该报文中携带的Seq值加1,然后令报文中的Seq值加1,并将Seq值加1后的报文继续发送出去,直到该报文回到初始发出该报文的NAT网关为止;
获知NAT网关总数及自身序号的NAT网关选择公网端口号或IP地址除以NAT网关总数后余数为自身序号的端口或IP地址进行NAT转换。
13.根据权利要求7至12任一项所述的方法,其特征在于,所述设备标识为设备序列号或媒质接入控制地址或管理IP地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101758187A CN101141494B (zh) | 2007-10-12 | 2007-10-12 | 一种解决负载分担情况下资源分配冲突的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101758187A CN101141494B (zh) | 2007-10-12 | 2007-10-12 | 一种解决负载分担情况下资源分配冲突的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101141494A CN101141494A (zh) | 2008-03-12 |
CN101141494B true CN101141494B (zh) | 2011-02-02 |
Family
ID=39193232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101758187A Active CN101141494B (zh) | 2007-10-12 | 2007-10-12 | 一种解决负载分担情况下资源分配冲突的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101141494B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101299773A (zh) * | 2008-06-02 | 2008-11-05 | 华为技术有限公司 | 一种实现网络地址转换的方法、处理器和系统 |
US8149840B2 (en) | 2008-06-02 | 2012-04-03 | Huawei Technologies Co., Ltd. | Method, system and processor for processing network address translation service |
CN101834831A (zh) * | 2009-03-13 | 2010-09-15 | 华为技术有限公司 | 一种实现nat设备冗余备份的方法、装置和系统 |
CN102075921B (zh) * | 2009-11-24 | 2013-09-18 | 中国移动通信集团公司 | 一种网络间通信的方法和装置 |
CN102098742B (zh) * | 2009-12-09 | 2013-07-10 | 大唐移动通信设备有限公司 | 一种x2连接的协商方法、系统和基站 |
CN102137016A (zh) * | 2011-03-17 | 2011-07-27 | 华为技术有限公司 | 网络地址转换表项的热备份方法及装置 |
CN102932490B (zh) * | 2011-08-12 | 2016-06-08 | 中国电信股份有限公司 | Ip地址转换方法、装置、网络地址转换设备和认证系统 |
CN102404388B (zh) * | 2011-10-30 | 2017-03-15 | 北京方物软件有限公司 | 一种应用虚拟化的负载分担方法及装置 |
WO2013147193A1 (ja) * | 2012-03-30 | 2013-10-03 | 日本電気株式会社 | ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラム |
CN102739820B (zh) * | 2012-06-28 | 2015-06-03 | 杭州华三通信技术有限公司 | 报文的网络地址转换处理方法和网络设备 |
CN104065759A (zh) * | 2013-03-22 | 2014-09-24 | 杭州迪普科技有限公司 | 一种提高nat地址池资源利用效率的方法及装置 |
CN104954155B (zh) * | 2014-03-26 | 2018-07-31 | 杭州迪普科技股份有限公司 | 具有多个业务板的网络设备以及多业务板分担方法 |
CN104753747B (zh) * | 2014-12-31 | 2019-06-04 | 海尔优家智能科技(北京)有限公司 | 一种连接网关与设备的方法、装置及网关设备 |
CN106534400B (zh) * | 2016-11-25 | 2019-09-17 | 新华三技术有限公司 | 网络地址转换方法及装置 |
CN107733808B (zh) * | 2017-11-20 | 2021-10-12 | 新华三技术有限公司 | 一种流量传输方法及装置 |
CN107743098A (zh) * | 2017-11-23 | 2018-02-27 | 新华三技术有限公司 | Cgn板间负载分担的方法、装置和实现装置 |
CN108306777B (zh) * | 2018-04-20 | 2021-04-13 | 平安科技(深圳)有限公司 | 基于sdn控制器的虚拟网关主备切换方法及装置 |
CN108924272B (zh) * | 2018-06-26 | 2021-09-17 | 新华三信息安全技术有限公司 | 一种端口资源分配方法及装置 |
CN109120746B (zh) * | 2018-09-30 | 2022-04-15 | 新华三技术有限公司 | 网络地址转换方法、装置及地址转换设备 |
CN110048953B (zh) * | 2019-04-30 | 2021-11-23 | 新华三技术有限公司 | 一种负载分担方法、装置和路由器 |
CN112040029B (zh) * | 2020-11-04 | 2021-02-02 | 武汉绿色网络信息服务有限责任公司 | Nat转换方法、装置、计算机设备及存储介质 |
CN114793221B (zh) * | 2022-03-21 | 2024-02-09 | 新华三信息安全技术有限公司 | Nat关联表的处理方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1533108A (zh) * | 2003-03-21 | 2004-09-29 | ��Ϊ��������˾ | 一种实现网关动态负载分担和备份的方法 |
CN1754374A (zh) * | 2003-03-28 | 2006-03-29 | 思科技术公司 | 带有网关负载分配的网络地址转换 |
-
2007
- 2007-10-12 CN CN2007101758187A patent/CN101141494B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1533108A (zh) * | 2003-03-21 | 2004-09-29 | ��Ϊ��������˾ | 一种实现网关动态负载分担和备份的方法 |
CN1754374A (zh) * | 2003-03-28 | 2006-03-29 | 思科技术公司 | 带有网关负载分配的网络地址转换 |
Also Published As
Publication number | Publication date |
---|---|
CN101141494A (zh) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101141494B (zh) | 一种解决负载分担情况下资源分配冲突的方法 | |
CN101171821B (zh) | 用于使用群集的节点作为授权域名服务器的活跃负载平衡的系统、网络设备、方法 | |
RU2433461C2 (ru) | Взаимодействие между соседствами в рамках объединения по механизму рандеву | |
CN104426681B (zh) | 端点的分布式多播 | |
CN1794737B (zh) | 用于为ip网络设备动态地分配可变长度前缀的设备 | |
US8458303B2 (en) | Utilizing a gateway for the assignment of internet protocol addresses to client devices in a shared subset | |
CN101729388B (zh) | 一种实现网络地址转换的方法、媒体网关和网络系统 | |
CN110266833B (zh) | Ip地址管理方法及边缘集群 | |
CN101827039B (zh) | 一种负载分担的方法和设备 | |
KR20120102626A (ko) | 네트워크들을 통한 접속을 보장하기 위한 오버레이 사용 | |
US8149840B2 (en) | Method, system and processor for processing network address translation service | |
EP1727314A2 (en) | Method for building virtual private networks using routers | |
CN104488234A (zh) | 用于在大型数据中心处的三层网络架构上缩放IPv6的系统和方法 | |
CN104718733A (zh) | 基于分组的标识符定位符网络协议(ilnp)负载平衡和路由选择的方法和系统 | |
CN101217558A (zh) | 一种业务中间件服务负载均衡方法 | |
CN104168184A (zh) | 报文转发方法及设备 | |
CN114237812A (zh) | 容器网络管理系统 | |
WO2003084147A1 (en) | Method for automatically allocating address prefixes | |
CN104618243A (zh) | 路由方法、装置及系统、网关调度方法及装置 | |
US20220166715A1 (en) | Communication system and communication method | |
CN108306998B (zh) | 网络地址转换方法及装置 | |
JPH04275742A (ja) | データ・パケツトの転送システム及びデータ・パケツトの転送方法 | |
JP4251148B2 (ja) | グループ内通信方法、システム及び記録媒体 | |
CN111464370B (zh) | 一种配网装置、物联网控制系统及其配网方法 | |
CN1625109A (zh) | 虚拟化网络资源的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |