CN113746954A - 一种nat地址块二次分配迅速回收的方法和装置 - Google Patents
一种nat地址块二次分配迅速回收的方法和装置 Download PDFInfo
- Publication number
- CN113746954A CN113746954A CN202111107019.2A CN202111107019A CN113746954A CN 113746954 A CN113746954 A CN 113746954A CN 202111107019 A CN202111107019 A CN 202111107019A CN 113746954 A CN113746954 A CN 113746954A
- Authority
- CN
- China
- Prior art keywords
- address block
- nat
- mapping table
- address
- nat mapping
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/255—Maintenance or indexing of mapping tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种NAT地址块二次分配迅速回收的方法和装置。其方法部分主要包括:将NAT映射表项根据其生存时间的长短进行分类,并建立与不同种类的NAT映射表项相对应的地址块集合;根据待生成NAT映射表项的种类选择对应的地址块集合,从该地址块集合中选出具有空闲NAT资源项的地址块,并从该地址块中获取NAT资源项,用于生成NAT映射表项;每个地址块集合通过单独判断自身地址块使用情况来增加或释放地址块。本发明可以大大提高地址块的回收效率,弥补当前技术中即使地址块的总利用率很低,也不能及时回收地址块的缺陷,且回收后的地址块可以重新分配给别的使用者,从而大大提高NAT资源项的利用率。
Description
【技术领域】
本发明NAT地址池技术领域,特别是涉及一种NAT地址块二次分配迅速回收的方法和装置。
【背景技术】
NAT(Network Address Translation,网络地址转换)技术是一种把内网私有IP地址翻译成公网IP地址的技术,被用来缓解目前IP空间枯竭的问题。
NAT技术通常被应用在路由器、防火墙、ISDN(Integrated Services Digitalnetwork,综合业务数字网)路由器或者单独的NAT设备中,主要包括以下三种类型:静态NAT(Static NAT)、动态地址NAT(Pooled NAT)和NAPT(Port-Level NAT,网络地址端口转换)。
NAT地址池的自适应分配***是一种NAT资源项自动分配和回收的***,其特点在于将NAT资源项进行两次分配,由地址块分配者统一管理NAT资源项,分配(或者回收)地址块给地址块使用者,地址块使用者从地址块中取出NAT资源项分配给所处理的报文流形成NAT映射表项用于生成会话。当NAT映射表项老化之后,地址块使用者将用于该NAT映射表项的NAT资源项回收。当地址块空闲时,地址块使用者可以将多余的地址块返还给地址块分配者。
地址块使用者根据自身的报文量,动态调整NAT资源分配,具有以下有益效果:实现NAT资源的充分利用;避免NAT转换后五元组的冲突;具有较佳的灵活性和适应性。
但随着该***的运行,目前出现了在需要进行地址块回收的情况下,出现有资源空闲(即,地址块总利用率低)却不能回收的情况,使得NAT地址块的自适应分配***无资源可分。
造成上述问题的原因是:
一条NAT映射表项的生存时间(用TTL表示)为:使用该NAT映射表项生成会话的业务的持续时间(用T-business表示)+该NAT映射表项的老化时间(用T-aging表示);而当地址块中有NAT资源项用于生成NAT映射表项的时候,该地址块是不能被回收的;所以,如果有一个地址块中存在这样的NAT资源项,且该NAT资源项被用于TTL很大的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映射表项使用DPI识别报文的业务类型,从而得到待生成NAT映射表项的业务持续时间、老化时间以及生存时间;
根据待生成NAT映射表项的生存时间来判断待生成NAT映射表项的种类;
根据待生成NAT映射表项的种类选择与其对应的地址块集合,并从该地址块集合中选出具有空闲NAT资源项且编号最小的地址块,最后从该地址块中获取NAT资源项,用于生成NAT映射表项。
进一步的,若DPI无法识别当前报文所属业务类型,则将待生成NAT映射表项的老化时间按协议类型设置。
进一步的,所述每个地址块集合通过单独判断自身地址块使用情况来增加或释放地址块具体包括:
对长期地址块集合、中期地址块集合、短期地址块集合的使用情况分别进行单独判断;
任一地址块集合的地址块不够用时,单独增加该地址块集合的地址块;
任一地址块集合的地址块多余时,单独释放该地址块集合所多余的地址块。
进一步的,每个地址块集合单独计算使用率,当其中一个地址块集合的使用率超过告警值之后,地址块使用者优先从另外两个地址块集合中获取可回收的地址块,若获取不到再从地址块分配者处申请地址块。
进一步的,对于使用NAT地址池自适应分配的分布式路由器,其中的MPU作为地址块分配者、LPU作为地址块使用者。
另一方面,本发明提供了一种NAT地址块二次分配迅速回收的装置,具体为:包括至少一个处理器和存储器,至少一个处理器和存储器之间通过数据总线连接,存储器存储能被至少一个处理器执行的指令,指令在被处理器执行后,用于完成第一方面中的NAT地址块二次分配迅速回收的方法。
与现有技术相比,本发明的有益效果在于:通过设立不同种类的NAT映射表项,以及与NAT映射表项相对应的长、中、短期地址块集合,使不同种类的NAT映射表项分布在不同地址块集合中,使短期地址块中不会存在中长期NAT映射表项使用的资源项,中期地址块中不会存在长期NAT映射表项使用的资源项。
另外,本发明总是从有空闲资源项且编号最小的地址块中获取资源项,使得被使用的NAT资源项集中于编号更小的地址块,使得编号越大的地址块相关的NAT映射表项越容易老化完,从而使地址块越容易被回收。
本发明还使用DPI识别报文业务类型,根据业务类型设置NAT映射表项的老化时间,相对于根据TCP、UDP等协议类型来笼统的设置老化时间,老化时间设置得更准确,多数情况下,这样设置的老化时间更小,使得NAT映射表项TTL更小,这样占用NAT资源项的时间就更小,促使对应的NAT地址块更容易被回收。
综合以上几点可知,本发明地址块的回收效率大大提高,不再出现背景技术中的技术问题(长中期NAT映射表项所使用的NAT资源项,随机分布在所有的NAT地址块中,导致总的地址块利用率低,但是长时间无可回收地址块的情况),弥补当前技术中即使地址块的总利用率很低,也不能及时回收地址块的缺陷,且回收后的地址块可以重新分配给别的使用者,从而大大提高NAT资源项的利用率。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种NAT地址块二次分配迅速回收的方法流程图;
图2为本发明实施例1提供的步骤100具体流程图;
图3为本发明实施例1提供的步骤200具体流程图;
图4为本发明实施例1提供的步骤300具体流程图;
图5为本发明实施例1提供的NAT地址块集合示意图;
图6为本发明实施例1提供的NAT地址块集合中NAT资源项被使用情况示意图;
图7为本发明实施例2提供的使用NAT地址池自适应分配的分布式路由器结构示意图;
图8为本发明实施例2提供的生成NAT映射表项的流程图;
图9为本发明实施例3提供的一种NAT地址块二次分配迅速回收的装置结构示意图。
【具体实施方式】
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明是一种特定功能***的体系结构,因此在具体实施例中主要说明各结构模组的功能逻辑关系,并不对具体软件和硬件实施方式做限定。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面就参考附图和实施例结合来详细说明本发明。
实施例1:
如图1所示,本发明实施例1提供一种NAT地址块二次分配迅速回收的方法,具体步骤如下。
步骤100:将NAT映射表项根据其生存时间的长短进行分类,并建立与不同种类的NAT映射表项相对应的地址块集合。
步骤200:根据待生成NAT映射表项的种类选择对应的地址块集合,从该地址块集合中选出具有空闲NAT资源项的地址块,并从该地址块中获取NAT资源项,用于生成NAT映射表项。
步骤300:每个地址块集合通过单独判断自身地址块使用情况来增加或释放地址块。
通过上述步骤,将NAT映射表项进行了分类,而对地址块也进行了集合的划分,从而使不同类型的NAT映射表项只从相对应的地址块集合中选择地址块来获取NAT资源项,避免了不同类型NAT映射表项所使用的NAT资源项随机分布在所有NAT地址块中的情况,解决总的地址块利用率低,但是长时间无可回收地址块的缺陷。
如图2所示,在本优选实施例中,步骤100具体包括如下步骤。
步骤101:通过NAT映射表项的生存时间将NAT映射表项分为长期NAT映射表项、中期NAT映射表项、短期NAT映射表项。
在该步骤中,首先还得对DPI(Deep packet inspection,深度报文解析)能识别的业务,预设业务持续时间(T-business)和相应NAT映射表项的老化时间(T-aging),然后根据预设业务持续时间加上老化时间来得到对应NAT映射表项的生存时间(TTL);然后,再根据NAT映射表项的TTL长短分类,把NAT映射表项分为长期NAT映射表项、中期NAT映射表项、短期NAT映射表项。
步骤102:将地址块使用者获取到的所有地址块划分为与NAT映射表项对应的长期地址块集合、中期地址块集合、短期地址块集合。
在该步骤中,与步骤101中NAT映射表项划分相对应的,将地址块使用者获取到的所有的地址块也划分成三类(为了描述方便,称作长期地址块、中期地址块、短期地址块),并分别将三类地址块存放到三个集合中(为了描述方便,称作长期地址块集合、中期地址块集合、短期地址块集合)。在本优选实施例中,每个地址块集合中至少包含一个地址块。
如图5所示,为本实施例中NAT地址块集合示意图,其中长期地址块集合为由长期NAT映射表项获取NAT资源项的地址块集合,该集合内的地址块编号为地址块1、地址块2、地址块3一直到地址块n;中期地址块集合为由中期NAT映射表项获取NAT资源项的地址块集合,该集合内的地址块编号也为地址块1、地址块2、地址块3一直到地址块n;短期地址块集合为由短期NAT映射表项获取NAT资源项的地址块集合,该集合内的地址块编号也为地址块1、地址块2、地址块3一直到地址块n。
如图3所示,在本优选实施例中,步骤200具体包括如下步骤。
步骤201:对待生成的NAT映射表项使用DPI识别报文的业务类型,从而得到待生成NAT映射表项的业务持续时间、老化时间以及生存时间。
对于该步骤而言,在进行NAT之前,如果需要生成新的NAT映射表项,也即有待生成的NAT映射表项,则使用DPI识别报文的业务类型,从而得到将要生成的NAT映射表项的T-business、T-aging和TTL。
步骤202:根据待生成NAT映射表项的生存时间来判断待生成NAT映射表项的种类。
对于该步骤而言,在生成NAT映射表项前,先根据待生成NAT映射表项的TTL,判断其种类是属于长期NAT映射表项、中期NAT映射表项、短期NAT映射表项中的哪一种。
步骤203:根据待生成NAT映射表项的种类选择与其对应的地址块集合,并从该地址块集合中选出具有空闲NAT资源项且编号最小的地址块,最后从该地址块中获取NAT资源项,用于生成NAT映射表项。
对于该步骤而言,若待生成NAT映射表项的种类为长期NAT映射表项,则选择与其对应的长期地址块集合来获取具有空闲NAT资源项且编号最小的地址块,以获取该地址块资源项来生成NAT映射表项;若待生成NAT映射表项的种类为中期NAT映射表项,则选择与其对应的中期地址块集合来获取具有空闲NAT资源项且编号最小的地址块,以获取该地址块资源项来生成NAT映射表项;若待生成NAT映射表项的种类为短期NAT映射表项,则选择与其对应的短期地址块集合来获取具有空闲NAT资源项且编号最小的地址块,以获取该地址块资源项来生成NAT映射表项。
如图6所示,通过上述步骤的设置,本发明总是从有空闲资源项且编号最小的地址块中获取资源项,使得被使用的NAT资源项集中于编号更小的地址块(也即是使地址块中被使用的NAT资源项分布情况为:编号越小,分布越多),使得编号越大的地址块相关的NAT映射表项越容易老化完,从而使地址块越容易被回收。
需注意的是,本实施例中,生成NAT映射表项使用的NAT资源项只能从对应的地址块中获取,即,生成长期NAT映射表项,只能从长期地址块中获取;生成中期NAT映射表项,只能从中期地址块中获取;生成短期NAT映射表项,只能从短期地址块中获取。
在不产生新的NAT映射表项的情况下,所有NAT映射表项结束其生命周期,并释放其使用的NAT资源项后,地址块被分配出去,资源项将陆续被回收完,地址块中没有资源项被NAT映射表项使用,于是这个地址块就可以被地址块分配者回收了,处于可回收状态。一个地址块从“可回收状态”到“不可以回收状态”到“可回收状态”的最短时间(这里用T-min表示)可以用来代表其被回收的难易程度,T-min越大的,越难被回收。短期地址块的T-min是最短短期NAT映射表项的TTL,中期地址块的T-min是最短中期NAT映射表项的TTL,长期地址块的T-min是最短长期NAT映射表项的TTL。很显然,短期地址块最容易被回收,长期地址块最不容易被回收。
本实施例使用DPI识别报文业务类型,根据业务类型设置NAT映射表项的老化时间,相对于根据TCP、UDP等协议类型来笼统的设置老化时间,本实施例的老化时间设置得更准确,多数情况下,这样设置的老化时间更小,使得NAT映射表项TTL更小,这样占用NAT资源项的时间就更小,促使对应的NAT地址块更容易被回收。
但还需说明的是,在本实施例的某些特殊情况,会出现DPI无法识别当前报文的场景,对于该场景,若DPI无法识别当前报文所属业务类型,则将待生成NAT映射表项的老化时间按TCP、UDP等协议类型来设置。
如图4所示,在本优选实施例中,步骤300具体包括如下步骤。
步骤301:对长期地址块集合、中期地址块集合、短期地址块集合的使用情况分别进行单独判断。
其中,使用情况包括判断各个地址块集合中的地址块是否够用以及是否多余。
如果判断地址块不够用则进入步骤302:任一地址块集合的地址块不够用时,单独增加该地址块集合的地址块;
如果判断地址块多余则进入步骤303:任一地址块集合的地址块多余时,单独释放该地址块集合所多余的地址块。
在本优选实施例中,每个地址块集合单独计算使用率,当其中一个地址块集合的使用率超过告警值之后,地址块使用者优先从另外两个地址块集合中获取可回收的地址块,若获取不到再从地址块分配者处申请地址块。
通过上述实施例,本发明地址块的回收效率大大提高,不再出现背景技术中的技术问题(长中期NAT映射表项所使用的NAT资源项,随机分布在所有的NAT地址块中,导致总的地址块利用率低,但是长时间无可回收地址块的情况),弥补当前技术中即使地址块的总利用率很低,也不能及时回收地址块的缺陷,且回收后的地址块可以重新分配给别的使用者,从而大大提高NAT资源项的利用率。
实施例2:
基于实施例1提供的NAT地址块二次分配迅速回收的方法,本实施例2通过使用NAT地址池自适应分配的分布式路由器为例,对本发明技术方案进行进一步详细描述。
在本实施例中,地址块使用者收到一个报文,若该报文没有与之对应的NAT映射表项,则先使用DPI获取该报文的业务类型,根据业务类型得到该报文将生成的NAT映射表项的TTL。根据TTL从对应类别的地址块集合中,选择具有空闲NAT资源项的编号最小的地址块,从中获取NAT资源项。使用之前得出的老化时间给NAT资源项配置。当某种地址块集合中地址块不够用的时候,检查别的地址块集合有没有多余的地址块,有的话从中获取地址块补充到本集合中,否则,从地址块分配者那里获取地址块。当地址块分配者发起地址块回收动作的时候,查询各个集合中是否有多余的地址块,有的话,取出一个给地址块分配者。
下面通过具体使用场景来进行示例性说明。
如图7所示,本实施例中的分布式路由器包括MPU(主控板)以及LPU(业务板),其中MPU作为地址块分配者,LPU作为地址块使用者。在本优选实施例中,LPU有三个,分别为LPU1、LPU2、LPU3。需要说明的是,上述地址块分配者、地址块使用者只是示例,而不一定限定为MPU和LPU,在其他不同的***中,分配者和使用者也可以是不同的设备,具体依场景而定,在此不需赘述。
首先,用户在MPU上配置了地址池,MPU将地址池划分成更小的地址块。然后,任一LPU上NAT业务启动之后,向MPU申请三个地址块,分别放在长期地址块集合、中期地址块集合、短期地址块集合中;最后,LPU用地址块中的NAT资源项生成NAT映射表项。
如图8所示,本实施例生成NAT映射表项的流程如下:
步骤1:收到一个没有对应的NAT表项的报文。
该步骤具体包括:LPU收到一个报文,使用五元组查询是否存在相对应的NAT映射表项。如果存在,则按照匹配的NAT映射表项进行网络地址端口的转换;如果不存在,则进行下一项生成NAT映射表项。
步骤2:使用DPI获取到报文业务类型。
该步骤具体包括:使用DPI识别当前报文所属业务,如果不能识别业务类型,则将T-aging按照传统方式进行设置,即大类进行划分,如协议为TCP的设置为1000秒,UDP协议的设置为500秒等,TTL设置为最大值。如果能识别业务类型,则进行下一步。
步骤3:通过业务类型获取T-business和T-aging。
该步骤具体包括:从已配置的业务和NAT映射表项TTL对应表中获取到将要生成的NAT映射表项的T-business、T-aging和TTL。
步骤4:计算TTL(T-business+T-aging),得到NAT映射表项的种类和对应地址块集合。
该步骤具体包括:按照TTL对将要生成的NAT映射表项进行分类,并找到与将要生成的NAT映射表项对应的地址块集合。
步骤5:在对应集合中,从具有空闲NAT资源项的最小编号地址块中获取一个NAT资源项。
该步骤具体包括:从待生成NAT映射表项对应的地址块集合中,选择具有空闲NAT资源项且编号最小的地址块,并从中获取一个NAT资源项,用于后续生成NAT映射表项。如,根据TTL判断将要生成的NAT映射表项属于短期NAT映射表项,则从短期地址块集合中选择地址块获取NAT资源项;根据TTL判断将要生成的NAT映射表项属于中期NAT映射表项,则从中期地址块集合中选择地址块获取NAT资源项;根据TTL判断将要生成的NAT映射表项属于长期NAT映射表项,则从长期地址块集合中选择地址块获取NAT资源项。经过判断地址块集合后,首先从对应地址块集合中编号为1的地址块开始获取NAT资源项,如果地址块1中没有空闲的NAT资源项,则从编号为2的地址块获取资源项,以次类推。
步骤6:使用NAT资源项生成新的NAT映射表项,并将该表项老化时间设置为T-aging。
在本优选实施例中,如果地址块集合中的NAT资源项使用达到一定的告警值,则先判断别的集合中是否存在空闲的地址块,如果别的地址块集合中地址块存在空闲,则从别的地址块集合中获取地址块,补充本集合。
上述告警值可以是空闲资源项占该集合中总资源项的百分比,也可以是剩余空闲资源项的数量等。
上述地址块集合中地址块存在空闲是指:地址块中有处于“可回收状态的地址块”,并且将这个地址块移出集合之后,本集合中的地址块仍然够用。
上述地址块集合中地址块够用是指:集合中空闲资源项大于需要申请地址块的告警值。
本实施例中,LPU上总的地址块不够用的时候,向MPU申请新的地址块;LPU上地址块多余的时候,向MPU返还地址块。
上述LPU上地址块多余是指:LPU上总的NAT资源项空余量达到释放值,并且存在“地址块集合中地址块存在空闲”的情况。
上述释放值可以是空闲资源项占该集合中总资源项的百分比,也可以是剩余空闲资源项的数量等;
在本实施例中,NAT映射表项老化的时候,将NAT资源项返还到对应的地址块中,以供下一次使用。
本实施例2通过设立不同种类的NAT映射表项,以及与NAT映射表项相对应的长、中、短期地址块集合,使不同种类的NAT映射表项分布在不同地址块集合中,使短期地址块中不会存在中长期NAT映射表项使用的资源项,中期地址块中不会存在长期NAT映射表项使用的资源项。另外,本实施例2总是从有空闲资源项且编号最小的地址块中获取资源项,使得被使用的NAT资源项集中于编号更小的地址块,使得编号越大的地址块相关的NAT映射表项越容易老化完,从而使地址块越容易被回收。本实施例2还使用DPI识别报文业务类型,根据业务类型设置NAT映射表项的老化时间,相对于根据TCP、UDP等协议类型来笼统的设置老化时间,老化时间设置得更准确,多数情况下,这样设置的老化时间更小,使得NAT映射表项TTL更小,这样占用NAT资源项的时间就更小,促使对应的NAT地址块更容易被回收。
综上所述,本实施例2对地址块的回收效率大大提高,不再出现长中期NAT映射表项所使用的NAT资源项随机分布在所有的NAT地址块中,导致总的地址块利用率低,但是长时间无可回收地址块的情况,弥补当前技术中即使地址块的总利用率很低,也不能及时回收地址块的缺陷,且回收后的地址块可以重新分配给别的使用者,从而大大提高NAT资源项的利用率。
实施例3:
在上述实施例1至实施例2提供的NAT地址块二次分配迅速回收的方法的基础上,本发明还提供了一种可用于实现上述方法及***的NAT地址块二次分配迅速回收的装置,如图9所示,是本发明实施例的装置架构示意图。本实施例的NAT地址块二次分配迅速回收的装置包括一个或多个处理器21以及存储器22。其中,图9中以一个处理器21为例。
处理器21和存储器22可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如实施例1至实施例2中的NAT地址块二次分配迅速回收的方法、***。处理器21通过运行存储在存储器22中的非易失性软件程序、指令以及模块,从而执行NAT地址块二次分配迅速回收的装置的各种功能应用以及数据处理,即实现实施例1至实施例2的NAT地址块二次分配迅速回收的方法。
存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
程序指令/模块存储在存储器22中,当被一个或者多个处理器21执行时,执行上述实施例1至实施例2中的NAT地址块二次分配迅速回收的方法、***,例如,执行以上描述的图1和图8所示的各个步骤。
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(Read Only Memory,简写为:ROM)、随机存取存储器(Random AccessMemory,简写为:RAM)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种NAT地址块二次分配迅速回收的方法,其特征在于,包括:
将NAT映射表项根据其生存时间的长短进行分类,并建立与不同种类的NAT映射表项相对应的地址块集合;
根据待生成NAT映射表项的种类选择对应的地址块集合,从该地址块集合中选出具有空闲NAT资源项的地址块,并从该地址块中获取NAT资源项,用于生成NAT映射表项;
每个地址块集合通过单独判断自身地址块使用情况来增加或释放地址块。
2.根据权利要求1所述的NAT地址块二次分配迅速回收的方法,其特征在于,所述将NAT映射表项根据其生存时间的长短进行分类,并建立与不同种类的NAT映射表项相对应的地址块集合具体包括:
通过NAT映射表项的生存时间将NAT映射表项分为长期NAT映射表项、中期NAT映射表项、短期NAT映射表项;
将地址块使用者获取到的所有地址块划分为与NAT映射表项对应的长期地址块集合、中期地址块集合、短期地址块集合。
3.根据权利要求2所述的NAT地址块二次分配迅速回收的方法,其特征在于,所述NAT映射表项的生存时间由预设的业务持续时间加上相应NAT映射表项的老化时间所得。
4.根据权利要求2所述的NAT地址块二次分配迅速回收的方法,其特征在于,每个地址块集合至少包括一个地址块。
5.根据权利要求2所述的NAT地址块二次分配迅速回收的方法,其特征在于,所述根据待生成NAT映射表项的种类选择对应的地址块集合,从该地址块集合中选出具有空闲NAT资源项的地址块,并从该地址块中获取NAT资源项,用于生成NAT映射表项具体包括:
对待生成的NAT映射表项使用DPI识别报文的业务类型,从而得到待生成NAT映射表项的业务持续时间、老化时间以及生存时间;
根据待生成NAT映射表项的生存时间来判断待生成NAT映射表项的种类;
根据待生成NAT映射表项的种类选择与其对应的地址块集合,并从该地址块集合中选出具有空闲NAT资源项且编号最小的地址块,最后从该地址块中获取NAT资源项,用于生成NAT映射表项。
6.根据权利要求5所述的NAT地址块二次分配迅速回收的方法,其特征在于,若DPI无法识别当前报文所属业务类型,则将待生成NAT映射表项的老化时间按协议类型设置。
7.根据权利要求5所述的NAT地址块二次分配迅速回收的方法,其特征在于,所述每个地址块集合通过单独判断自身地址块使用情况来增加或释放地址块具体包括:
对长期地址块集合、中期地址块集合、短期地址块集合的使用情况分别进行单独判断;
任一地址块集合的地址块不够用时,单独增加该地址块集合的地址块;
任一地址块集合的地址块多余时,单独释放该地址块集合所多余的地址块。
8.根据权利要求7所述的NAT地址块二次分配迅速回收的方法,其特征在于,每个地址块集合单独计算使用率,当其中一个地址块集合的使用率超过告警值之后,地址块使用者优先从另外两个地址块集合中获取可回收的地址块,若获取不到再从地址块分配者处申请地址块。
9.根据权利要求1-8任一所述的NAT地址块二次分配迅速回收的方法,其特征在于,对于使用NAT地址池自适应分配的分布式路由器,其中的MPU作为地址块分配者、LPU作为地址块使用者。
10.一种NAT地址块二次分配迅速回收的装置,其特征在于:
包括至少一个处理器和存储器,所述至少一个处理器和存储器之间通过数据总线连接,所述存储器存储能被所述至少一个处理器执行的指令,所述指令在被所述处理器执行后,用于完成权利要求1-9中任一项所述的NAT地址块二次分配迅速回收的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111107019.2A CN113746954B (zh) | 2021-09-22 | 2021-09-22 | 一种nat地址块二次分配迅速回收的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111107019.2A CN113746954B (zh) | 2021-09-22 | 2021-09-22 | 一种nat地址块二次分配迅速回收的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113746954A true CN113746954A (zh) | 2021-12-03 |
CN113746954B CN113746954B (zh) | 2023-06-13 |
Family
ID=78740217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111107019.2A Active CN113746954B (zh) | 2021-09-22 | 2021-09-22 | 一种nat地址块二次分配迅速回收的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113746954B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766625A (zh) * | 2022-09-07 | 2023-03-07 | 迈普通信技术股份有限公司 | 接口资源同步方法、装置及分布式交换机 |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1825812A (zh) * | 2005-02-25 | 2006-08-30 | 华为技术有限公司 | 管理网络日志信息的***及方法 |
US7647427B1 (en) * | 2002-10-18 | 2010-01-12 | Foundry Networks, Inc. | Redundancy support for network address translation (NAT) |
CN102196057A (zh) * | 2010-03-03 | 2011-09-21 | 腾讯科技(深圳)有限公司 | 一种确定nat类型的方法及装置 |
US20120005299A1 (en) * | 2009-03-13 | 2012-01-05 | Xu Xiaohu | Method, apparatus, and system for implementing redundancy backup between nat devices |
CN103067531A (zh) * | 2011-10-20 | 2013-04-24 | 安美世纪(北京)科技有限公司 | 一种公网ip地址资源管理分配方法 |
CN103384280A (zh) * | 2012-05-02 | 2013-11-06 | 中兴通讯股份有限公司 | 一种网络地址转换端口资源管理方法及*** |
US20140359163A1 (en) * | 2011-12-14 | 2014-12-04 | Koninklijke Kpn N.V. | Methods and Systems for Enabling NAT Traversal |
CN104270475A (zh) * | 2014-09-03 | 2015-01-07 | 武汉烽火网络有限责任公司 | 基于NAT64实现IPv4网络与IPv6网络互通的***及方法 |
US20150032872A1 (en) * | 2013-07-24 | 2015-01-29 | Cisco Technology, Inc., A Corporation Of California | Selectively Using Network Address Translated Mapped Addresses Based on their Prior Network Reachability |
CN104333611A (zh) * | 2014-10-29 | 2015-02-04 | 中国联合网络通信集团有限公司 | 一种老化时间的调整方法及装置 |
CN104468870A (zh) * | 2014-12-31 | 2015-03-25 | 小米科技有限责任公司 | 网络地址转换nat窗口时长检测方法及装置 |
CN104601738A (zh) * | 2014-12-09 | 2015-05-06 | 国家计算机网络与信息安全管理中心 | 一种分布式网络地址转换*** |
US20150172252A1 (en) * | 2013-12-18 | 2015-06-18 | Cisco Technology, Inc. | Visual representation of complex network address translation rules |
CN105991552A (zh) * | 2015-02-03 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 对流表和nat会话表进行老化的方法和装置 |
CN106331196A (zh) * | 2015-06-26 | 2017-01-11 | 中兴通讯股份有限公司 | 一种实现nat的方法和装置 |
CN106657439A (zh) * | 2016-12-06 | 2017-05-10 | 东软集团股份有限公司 | 网络地址转换映射表的操作方法及装置 |
CN109962988A (zh) * | 2017-12-25 | 2019-07-02 | 中国电信股份有限公司 | 用于配置nat老化时长的方法、***和nat设备 |
CN110691148A (zh) * | 2018-07-05 | 2020-01-14 | ***通信有限公司研究院 | 一种确定nat老化时间的方法、装置、设备、存储介质 |
CN111314497A (zh) * | 2020-01-20 | 2020-06-19 | 广州芯德通信科技股份有限公司 | 一种同时支持多种nat类型生效方法及*** |
CN112100173A (zh) * | 2020-08-20 | 2020-12-18 | 广东网堤信息安全技术有限公司 | 一种nat地址转换链表的实现方法 |
CN112202935A (zh) * | 2020-08-28 | 2021-01-08 | 中盈优创资讯科技有限公司 | 一种nat地址池的管理方法和装置 |
CN112929457A (zh) * | 2019-12-05 | 2021-06-08 | ***通信集团设计院有限公司 | Nat地址映射分时段保持方法、辅助服务器及设备 |
-
2021
- 2021-09-22 CN CN202111107019.2A patent/CN113746954B/zh active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7647427B1 (en) * | 2002-10-18 | 2010-01-12 | Foundry Networks, Inc. | Redundancy support for network address translation (NAT) |
CN1825812A (zh) * | 2005-02-25 | 2006-08-30 | 华为技术有限公司 | 管理网络日志信息的***及方法 |
US20120005299A1 (en) * | 2009-03-13 | 2012-01-05 | Xu Xiaohu | Method, apparatus, and system for implementing redundancy backup between nat devices |
CN102196057A (zh) * | 2010-03-03 | 2011-09-21 | 腾讯科技(深圳)有限公司 | 一种确定nat类型的方法及装置 |
CN103067531A (zh) * | 2011-10-20 | 2013-04-24 | 安美世纪(北京)科技有限公司 | 一种公网ip地址资源管理分配方法 |
US20140359163A1 (en) * | 2011-12-14 | 2014-12-04 | Koninklijke Kpn N.V. | Methods and Systems for Enabling NAT Traversal |
CN103384280A (zh) * | 2012-05-02 | 2013-11-06 | 中兴通讯股份有限公司 | 一种网络地址转换端口资源管理方法及*** |
US20150032872A1 (en) * | 2013-07-24 | 2015-01-29 | Cisco Technology, Inc., A Corporation Of California | Selectively Using Network Address Translated Mapped Addresses Based on their Prior Network Reachability |
US20150172252A1 (en) * | 2013-12-18 | 2015-06-18 | Cisco Technology, Inc. | Visual representation of complex network address translation rules |
CN104270475A (zh) * | 2014-09-03 | 2015-01-07 | 武汉烽火网络有限责任公司 | 基于NAT64实现IPv4网络与IPv6网络互通的***及方法 |
CN104333611A (zh) * | 2014-10-29 | 2015-02-04 | 中国联合网络通信集团有限公司 | 一种老化时间的调整方法及装置 |
CN104601738A (zh) * | 2014-12-09 | 2015-05-06 | 国家计算机网络与信息安全管理中心 | 一种分布式网络地址转换*** |
CN104468870A (zh) * | 2014-12-31 | 2015-03-25 | 小米科技有限责任公司 | 网络地址转换nat窗口时长检测方法及装置 |
CN105991552A (zh) * | 2015-02-03 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 对流表和nat会话表进行老化的方法和装置 |
CN106331196A (zh) * | 2015-06-26 | 2017-01-11 | 中兴通讯股份有限公司 | 一种实现nat的方法和装置 |
CN106657439A (zh) * | 2016-12-06 | 2017-05-10 | 东软集团股份有限公司 | 网络地址转换映射表的操作方法及装置 |
CN109962988A (zh) * | 2017-12-25 | 2019-07-02 | 中国电信股份有限公司 | 用于配置nat老化时长的方法、***和nat设备 |
CN110691148A (zh) * | 2018-07-05 | 2020-01-14 | ***通信有限公司研究院 | 一种确定nat老化时间的方法、装置、设备、存储介质 |
CN112929457A (zh) * | 2019-12-05 | 2021-06-08 | ***通信集团设计院有限公司 | Nat地址映射分时段保持方法、辅助服务器及设备 |
CN111314497A (zh) * | 2020-01-20 | 2020-06-19 | 广州芯德通信科技股份有限公司 | 一种同时支持多种nat类型生效方法及*** |
CN112100173A (zh) * | 2020-08-20 | 2020-12-18 | 广东网堤信息安全技术有限公司 | 一种nat地址转换链表的实现方法 |
CN112202935A (zh) * | 2020-08-28 | 2021-01-08 | 中盈优创资讯科技有限公司 | 一种nat地址池的管理方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766625A (zh) * | 2022-09-07 | 2023-03-07 | 迈普通信技术股份有限公司 | 接口资源同步方法、装置及分布式交换机 |
Also Published As
Publication number | Publication date |
---|---|
CN113746954B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102685272B (zh) | 一种分配公网地址的方法及装置 | |
US20210144092A1 (en) | Packet processing method and network device | |
CN1744612A (zh) | Dhcp的地址分配方法 | |
CN103117947B (zh) | 一种负载分担方法及装置 | |
CN104780232B (zh) | 一种资源分配方法、控制器及*** | |
US20060159086A1 (en) | Device of dynamically assigning variable length prefixes for IP network equipments | |
WO2020001045A1 (zh) | 管理地址的方法和装置 | |
CN114070822B (zh) | 一种Kubernetes Overlay IP地址管理方法 | |
CN108990112B (zh) | 通信网络中的任务处理方法和通信装置 | |
CN109525684B (zh) | 报文转发方法和装置 | |
CN113746954A (zh) | 一种nat地址块二次分配迅速回收的方法和装置 | |
US10419392B2 (en) | Method, device and system for implementing address sharing | |
CN110855424B (zh) | 一种DPI领域非对称流量xDR合成的方法和装置 | |
CN104144226B (zh) | 端口分配方法和网络地址转换装置 | |
US10348651B2 (en) | Apparatus and method for virtual switching | |
CN107547690B (zh) | Nat中的端口分配方法、装置、nat设备及存储介质 | |
CN112272244B (zh) | 一种路由器WAN端IPv6上网模式配置方法及装置 | |
CN102238245A (zh) | 一种地址的分配方法和设备 | |
CN111294316B (zh) | 基于用户态协议栈虚拟路由器的网络隔离方法和装置 | |
CN108429822B (zh) | 通信***、IPv6地址分配方法、装置及分布式网关 | |
US10791088B1 (en) | Methods for disaggregating subscribers via DHCP address translation and devices thereof | |
CN105447141A (zh) | 一种数据处理的方法及节点 | |
CN109167846B (zh) | 一种通信端口的分配方法与装置 | |
CN112104565B (zh) | 一种实现报文转发的方法、***及设备 | |
CN109639845B (zh) | 网络地址转换nat的资源分配方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |