CN115412526B - 分布式系统中的nat处理方法、装置、电子设备及介质 - Google Patents

分布式系统中的nat处理方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN115412526B
CN115412526B CN202210988867.7A CN202210988867A CN115412526B CN 115412526 B CN115412526 B CN 115412526B CN 202210988867 A CN202210988867 A CN 202210988867A CN 115412526 B CN115412526 B CN 115412526B
Authority
CN
China
Prior art keywords
address
service board
conversion
nat
message
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
Application number
CN202210988867.7A
Other languages
English (en)
Other versions
CN115412526A (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.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co 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 Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202210988867.7A priority Critical patent/CN115412526B/zh
Publication of CN115412526A publication Critical patent/CN115412526A/zh
Application granted granted Critical
Publication of CN115412526B publication Critical patent/CN115412526B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2557Translation policies or rules

Landscapes

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

Abstract

本公开涉及网络通信技术领域,尤其涉及一种分布式系统中的NAT处理方法、装置、电子设备及介质,通过第一业务板获取正向报文,根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址,根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板,判断第一业务板与第二业务板是否一致,在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址,采用该方式提高了NAT处理的性能。

Description

分布式系统中的NAT处理方法、装置、电子设备及介质
技术领域
本公开涉及网络通信技术领域,尤其涉及一种分布式系统中的NAT处理方法、装置、电子设备及介质。
背景技术
目前,随着网络技术的快速发展、对网络设备的性能和可靠性等要求的提高,集中式的网络设备已经无法满足用户的需求,因此,为了提高网络设备的性能和可靠性等,分布式系统架构的网络设备应运而生,主要包括:控制板、接口板和多个业务板,其中,接口板将接收到的数据报文根据算法进行分流,以使每个数据报文能够分流到对应的业务板上,多个业务板对接收到的数据报文能够各自独立的进行数据处理,以此解决多业务板间的负载均衡的问题。然而,数据报文被分流到业务板上后,需要进行网络地址转换(NetworkAddress Translation,NAT)处理,数据报文的互联网协议地址(Internet ProtocolAddress,IP)转换后,存在正反报文被分流到不同的业务板上的问题,造成数据报文的处理流程数据不完整。
现有技术中,业务板在确定接收到的正向报文与反向报文被分流到不同的业务板上时,将正向报文进行转板到反向报文的业务板上,并建立重定向表,以此实现正反报文由同一业务板处理,避免数据报文的处理流程数据不完整。
然而,采用现有技术,由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,且增加了数据报文的处理流程,从而降低了NAT处理的性能。
发明内容
基于此,有必要针对上述技术问题,提供了一种分布式系统中的NAT处理方法、装置、电子设备及介质。
本公开实施例的第一方面,提供一种分布式系统中的NAT处理方法,所述方法包括:
第一业务板获取正向报文;
根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址;
根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板;
判断所述第一业务板与所述第二业务板是否一致;
在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发;其中,所述第二地址为所述预设NAT地址池中除所述第一地址的其它地址。
在一个实施例中,所述根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址,包括:
根据所述正向报文匹配到的NAT策略,判断所述正向报文IP地址是否需要进行转换;
在确定所述正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址。
在一个实施例中,所述根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板,包括:
根据所述第一转换地址,计算对应的哈希值;
根据所述哈希值,确定所述正向报文对应的反向报文分流的第二业务板。
在一个实施例中,所述判断所述第一业务板与所述第二业务板是否一致,包括:
确定所述第一业务板对应的第一版号、所述第二业务板对应的第二版号;
根据所述第一版号和所述第二版号,判断所述第一业务板与所述第二业务板是否一致。
在一个实施例中,所述在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发,包括:
在确定所述第一业务板与所述第二业务板不一致时,设置预设地址转换次数,其中,所述预设地址转换次数为所述正向报文IP地址转换最大次数;
根据所述预设地址转换次数,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发。
在一个实施例中,所述方法还包括:
若在所述预设地址转换次数内,在所述预设NAT地址池中选取的所有第二转换地址分别确定的每个第二业务板均与所述第一业务板不一致时,则根据最后一次选取的第二地址进行转换,并将所述正向报文转板至所述反向报文将分流的第三业务板;
针对所述第三业务板,建立动态重定向表,并将所述正向报文进行外发;
其中,所述动态重定向表包括所述第一业务板与所述第三业务板之间的映射关系。
本公开实施例的第二方面,提供一种分布式系统中的NAT处理装置,所述装置包括:
正向报文获取模块,用于第一业务板获取正向报文;
第一转换地址确定模块,用于根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址;
第二业务板确定模块,用于根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板;
判断模块,用于判断所述第一业务板与所述第二业务板是否一致;
处理模块,用于在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发;其中,所述第二地址为所述预设NAT地址池中除所述第一地址的其它地址。
在一个实施例中,所述第一转换地址确定模块,具体用于根据所述正向报文匹配到的NAT策略,判断所述正向报文IP地址是否需要进行转换;
在确定所述正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址。
本公开实施例的第三方面,提供一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中任一所述的方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开提供了一种分布式系统中的NAT处理方法、装置、电子设备及介质,通过第一业务板获取正向报文,根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址,根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板,判断第一业务板与第二业务板是否一致,在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址。这样,本公开通过在预设NAT地址池中选取正向报文IP地址的转换地址,且在根据该转换地址确定反向报文将被分流的第二业务板与接收正向报文的第一业务板一致时,根据该转换地址进行转化,实现正向报文与反向报文在同一业务板上进行业务处理,避免现有技术中由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,增加数据报文的处理流程的问题,从而提高了NAT处理的性能。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种分布式系统中的NAT处理方法的流程示意图;
图2为本公开实施例提供的一种分布式系统中的NAT处理装置的结构示意图;
图3为本公开实施例提供的电子设备的内部结构图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
本公开的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
目前,随着网络技术的快速发展、对网络设备的性能和可靠性等要求的提高,集中式的网络设备已经无法满足用户的需求,因此,为了提高网络设备的性能和可靠性等,分布式系统架构的网络设备应运而生,主要包括:控制板、接口板和多个业务板,其中,接口板将接收到的数据报文根据算法进行分流,以使每个数据报文能够分流到对应的业务板上,多个业务板对接收到的数据报文能够各自独立的进行数据处理,以此解决多业务板间的负载均衡的问题。然而,数据报文被分流到业务板上后,需要进行网络地址转换(NetworkAddress Translation,NAT)处理,数据报文的互联网协议地址(Internet ProtocolAddress,IP)转换后,存在正反报文被分流到不同的业务板上的问题,造成数据报文的处理流程数据不完整。
现有技术中,业务板在确定接收到的正向报文与反向报文被分流到不同的业务板上时,将正向报文进行转板到反向报文的业务板上,并建立重定向表,以此实现正反报文由同一业务板处理,避免数据报文的处理流程数据不完整。
然而,采用现有技术,由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,且增加了数据报文的处理流程,从而降低了NAT处理的性能。
基于此,本公开提供了一种分布式系统中的NAT处理方法、装置、电子设备及介质,通过第一业务板获取正向报文,根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址,根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板,判断第一业务板与第二业务板是否一致,在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址。这样,本公开通过在预设NAT地址池中选取正向报文IP地址的转换地址,且在根据该转换地址确定反向报文将被分流的第二业务板与接收正向报文的第一业务板一致时,根据该转换地址进行转化,实现正向报文与反向报文在同一业务板上进行业务处理,避免现有技术中由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,增加数据报文的处理流程的问题,从而提高了NAT处理的性能。
在一个实施例中,如图1所示,图1为本公开实施例提供的一种分布式系统中的NAT处理方法的流程示意图,具体包括以下步骤:
S11:第一业务板获取正向报文。
具体的,交换网板将接收的正向报文按照分流算法分流到对应的业务板上即第一业务板,第一业务板接收分流的正向报文。
示例性的,对于正向报文按照分流算法分流到对应的业务板上,可以是通过根据哈希算法实现,具体的,通过根据正向报文的IP值计算对应的哈希值,以此根据该哈希值确定正向报文分流的业务板。
S12:根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址。
其中,NAT策略是指预先设置的策略,NAT策略包括但不限于对正向报文的IP地址转换策略,本领域技术人员可根据实际情况设置。预设NAT地址池也是根据NAT策略确定的,该预设NAT地址池中包括多个公网的IP地址。
具体的,当正向报文上报到对应的第一业务板上后,会匹配对应的NAT策略,在匹配到对应的NAT策略之后,根据匹配到的NAT策略,在预设NAT地址池中选取第一地址,以作为正向报文IP地址的第一转换地址。
可选的,在上述实施例的基础上,在本公开一些实施例中,S12的一种实现方式可以是:
S12-A:根据正向报文匹配到的NAT策略,判断正向报文IP地址是否需要进行转换。
S12-B:在确定正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址。
具体的,当正向报文上报到对应的第一业务板上后,并匹配对应的NAT策略,根据匹配到的NAT策略,判断正向报文IP地址是否需要进行转换,在确定正向报文IP地址需要进行转换时,在根据NAT策略预设设置的预设NAT地址池中,任意选取一个地址作为正向报文IP地址的第一转换地址。
示例性的,上述判断正向报文IP地址是否需要进行转换可以是通过查看是否存在正确的路由,且安全策略放行,但不限于此,本公开不具体限制。
S13:根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板。
其中,第二业务板是根据正向报文IP地址进行转换后,根据转换后的地址预测的正向报文对应的反向报文将会被分流的第二业务板,此时还未接收到反向报文。
可选的,在上述实施例的基础上,在本公开一些实施例中,S13的一种实现方式可以是:
S13-A:根据第一转换地址,计算对应的哈希值。
S13-B:根据哈希值,确定正向报文对应的反向报文分流的第二业务板。
具体的,根据正向报文IP地址对应的第一转换地址,根据哈希算法,从而计算对应的哈希值,根据该哈希值,以此确定正向报文对应的反向报文分流的第二业务板。
示例性的,上述根据哈希算法计算对应的哈希值可以是通过,根据第一转换地址包括的二元组信息如源IP地址和目的IP地址计算哈希值,还可以是根据第一转换地址包括的四元组信息如源IP地址、目的IP地址、源端口和目的端口计算哈希值,但不限于此,本公开不具体限制,本领域技术人员可根据实际情况具体设置。
S14:判断第一业务板与第二业务板是否一致。
具体的,在根据正向报文IP地址对应的第一转换地址确定反向报文将会被分流的第二业务板之后,判断接收处理正向报文的第一业务板和反向报文的第二业务板是否一致。
可选的,在上述实施例的基础上,在本公开一些实施例中,S14的一种实现方式可以是:
S14-A:确定第一业务板对应的第一版号、第二业务板对应的第二版号。
S14-B:根据第一版号和第二版号,判断第一业务板与第二业务板是否一致。
具体的,根据正向报文的IP地址,根据哈希算法计算对应的哈希值之后,根据该哈希值能够确定第一业务板对应的第一版号,根据正向报文的IP地址对应的第一转换地址,根据哈希算法计算对应的哈希值,根据该哈希值能够确定第二业务板对应的第二版号,比较第一业务板对应的第一版号和第二业务板对应的第二版号是否相同,当第一版号和第二版号相同时,确定第一业务板和第二业务板一致,当第一版号和第二版号不同时,确定第一业务板和第二业务板不一致。
示例性的,设置网络设备中包括的四个业务板,该四个业务板对应不同的编号,例如为业务板1、业务板2、业务板3、业务板4,根据正向报文的IP地址,通过哈希算法计算哈希值之后,根据该哈希值确定第一业务板对应的第一版号为业务板2,根据正向报文的IP地址对应的第一转换地址通过哈希算法计算哈希值之后,根据该哈希值确定第二业务板的第二版号也为业务板2,则此时确定第一业务板和第二业务板一致,当据该哈希值确定第二业务板的第二版号也为业务板3,则此时确定第一业务板和第二业务板不一致,但不限于此,本公开不具体限制,本领域技术人员可根据实际情况具体设置。
这样,本公开通过在网络设备中多个业务板设置不同的版号,通过计算正向报文的第一业务板的版号和反向报文的第二业务板的版号,以此判断第一业务板和第二业务板是否一致,以此避免在实际情况中,由于存在不同的哈希值对应的报文被分到同一业务板的情况,以保证判断结果的准确性。
S15:在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发。
其中,第二地址为预设NAT地址池中除第一地址的其它地址。
具体的,当第一次在预设NAT地址池中选取的第一转换地址,并根据第一转换地址确定的反向报文的第二业务板与第一业务板不一致时,在预设NAT地址池中重新选取第二地址作为第二转换地址,根据当前的第二转换地址,通过哈希算法,确定正向报文对应的当前第二业务板,判断当前第二业务板与第一业务板是否一致,若当前第二业务板与第一业务板不一致时,则在预设NAT地址池中继续选取第二转换地址,直至根据选取的第二转换地址确定的当前第二业务板与第一业务板是一致的时候,根据当前的第二地址进行转换,并将正向报文外发。
可选的,在上述实施例的基础上,在本公开一些实施例中,S15的一种实现方式可以是:
S15-A:在确定第一业务板与第二业务板不一致时,设置预设地址转换次数。
其中,预设地址转换次数为正向报文IP地址转换最大次数,示例性的,对于预设NAT地址池中存在200个公网地址,可以设置正向报文IP地址转换最大次数即预设地址转换次数为十次,以此避免预设NAT地址池太大,导致选取转换地址耗时过长,降低了NAT处理的性能。
S15-B1:根据预设地址转换次数,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发。
具体的,在预设地址转换次数内,在预设NAT地址池中选取第二地址作为第二转换地址,根据当前的第二转换地址,通过哈希算法,确定正向报文对应的当前第二业务板,在判断当前第二业务板与第一业务板是否一致,若当前第二业务板与第一业务板不一致时,则在预设NAT地址池中继续选取第二转换地址,直至根据选取的第二转换地址确定的当前第二业务板与第一业务板是一致的时候,根据当前的第二地址进行转换,并将正向报文外发。
示例性的,承接上述实施例,对于预设NAT地址池中存在200个公网地址,可以设置正向报文IP地址转换最大次数即预设地址转换次数为十次,则在预设地址转换次数十次内,在预设NAT地址池中选取第二转换地址,直至根据选取的第二转换地址确定的当前第二业务板与第一业务板是一致的时候,根据当前的第二地址进行转换,并将正向报文外发。
这样,本公开实施例设置最大的预设地址转换次数,在预设地址转换次数选取转换地址,避免预设NAT地址池太大,导致选取转换地址耗时过长,降低了NAT处理的性能。
可选的,在上述实施例的基础上,在本公开一些实施例中,还包括:
S15-B2:若在预设地址转换次数内,在预设NAT地址池中选取的所有第二转换地址分别确定的每个第二业务板均与第一业务板不一致时,则根据最后一次选取的第二地址进行转换,并将正向报文转板至反向报文将分流的第三业务板。
具体的,如果在预设地址转换次数内,当在预设NAT地址池中选取的所有第二转换地址,根据哈希算法分别确定的每个第二业务板均与第一业务板不一致的时候,此时则根据最后一次选取的第二地址进行转换,并将正向报文转板至反向报文将分流的第三业务板上。
示例性的,在预设地址转换次数如十次内,通过判断根据第十次选取的第二转换地址确定的第二业务板仍与第一业务板不一致时,此时则根据第十次对应的第二地址进行转换,并将正向报文转板至反向报文将分流的第三业务板上,但不限于此,本公开不具体限制,本领域技术人员可根据实际情况具体设置。
需要说明的是,该第三业务板是根据最后一次选取的第二地址,通过哈希算法预测的反向报文将会分流的业务板。
S15-B3:针对第三业务板,建立动态重定向表,并将正向报文进行外发。
其中,动态重定向表包括第一业务板与第三业务板之间的映射关系,该动态重定向表用来使得正向报文与对应的反向报文能够被分流到同一业务板上进行处理。
具体的,对于第三业务板,在第三业务板建立动态重定向表之后,将正向报文进行外发。
这样,本公开实施例通过当在预设地址转换次数内,在预设NAT地址池中在无法选取到一个第二转换地址,使得根据第二转换地址确定的第二业务板与第一业务板一致时,能够通过将正向报文进行转板至反向报文分流的第三业务板上,以此实现正向报文与对应的反向报文能够被分流到同一业务板上进行处理,避免数据报文的处理流程数据不完整的问题。
这样,本公开实施例通过第一业务板获取正向报文,根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址,根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板,判断第一业务板与第二业务板是否一致,在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址。这样,本公开通过在预设NAT地址池中选取正向报文IP地址的转换地址,且在根据该转换地址确定反向报文将被分流的第二业务板与接收正向报文的第一业务板一致时,根据该转换地址进行转化,实现正向报文与反向报文在同一业务板上进行业务处理,避免现有技术中由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,增加数据报文的处理流程的问题,从而提高了NAT处理的性能。
本公开实施例还提供了一种分布式系统中的NAT处理装置,用于执行上述实施例提供的任一种分布式系统中的NAT处理方法,具备分布式系统中的NAT处理方法相应的有益效果。
图2为本公开实施例提供的一种分布式系统中的NAT处理装置,包括:
正向报文获取模块11,用于第一业务板获取正向报文。
第一转换地址确定模块12,用于根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址。
第二业务板确定模块13,用于根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板。
判断模块14,用于判断第一业务板与第二业务板是否一致。
处理模块15,用于在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址。
在上述实施例中,第一转换地址确定模块12,具体用于根据正向报文匹配到的NAT策略,判断正向报文IP地址是否需要进行转换;
在确定正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址。
在上述实施例中,第二业务板确定模块13,具体用于根据第一转换地址,计算对应的哈希值。根据哈希值,确定正向报文对应的反向报文分流的第二业务板。
在上述实施例中,判断模块14,具体用于确定第一业务板对应的第一版号、第二业务板对应的第二版号。根据第一版号和第二版号,判断第一业务板与第二业务板是否一致。
在上述实施例中,处理模块15,具体用于在确定第一业务板与第二业务板不一致时,设置预设地址转换次数,其中,预设地址转换次数为正向报文IP地址转换最大次数;根据预设地址转换次数,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发。
在上述实施例中,处理模块15,具体还用于若在预设地址转换次数内,在预设NAT地址池中选取的所有第二转换地址分别确定的每个第二业务板均与第一业务板不一致时,则根据最后一次选取的第二地址进行转换,并将正向报文转板至反向报文将分流的第三业务板;针对第三业务板,建立动态重定向表,并将正向报文进行外发;其中,动态重定向表包括第一业务板与第三业务板之间的映射关系。
这样,本实施例通过正向报文获取模块用于第一业务板获取正向报文。第一转换地址确定模块用于根据正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为正向报文IP地址的第一转换地址。第二业务板确定模块用于根据第一转换地址,确定正向报文对应的反向报文分流的第二业务板。判断模块用于判断第一业务板与第二业务板是否一致。处理模块用于在确定第一业务板与第二业务板不一致时,在预设NAT地址池中选取第二地址作为第二转换地址,直至根据第二转换地址确定反向报文分流的第二业务板与第一业务板一致时,获取第二地址进行转换,并将正向报文进行外发;其中,第二地址为预设NAT地址池中除第一地址的其它地址。这样,本公开通过在预设NAT地址池中选取正向报文IP地址的转换地址,且在根据该转换地址确定反向报文将被分流的第二业务板与接收正向报文的第一业务板一致时,根据该转换地址进行转化,实现正向报文与反向报文在同一业务板上进行业务处理,避免现有技术中由于正反报文对应的业务板之间需要进行重定向,造成多个业务板之间的通信流量增大,增加数据报文的处理流程的问题,从而提高了NAT处理的性能。
图3是本公开实施例提供的一种电子设备的结构示意图,如图3所示,该电子设备包括处理器310、存储器320、输入装置330和输出装置340;计算机设备中处理器310的数量可以是一个或多个,图3中以一个处理器310为例;电子设备中的处理器310、存储器320、输入装置330和输出装置340可以通过总线或其他方式连接,图3中以通过总线连接为例。
存储器320作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中方法对应的程序指令/模块。处理器310通过运行存储在存储器320中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现本发明实施例所提供的方法。
存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器320可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置330可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,可以包括键盘、鼠标等。输出装置340可包括显示屏等显示设备。
本公开实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于实现本发明实施例所提供的方法,方法包括:
第一业务板获取正向报文;
根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址;
根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板;
判断所述第一业务板与所述第二业务板是否一致;
在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发;其中,所述第二地址为所述预设NAT地址池中除所述第一地址的其它地址。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种分布式系统中的NAT处理方法,其特征在于,所述方法包括:
第一业务板获取正向报文;
根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址;
根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板;
判断所述第一业务板与所述第二业务板是否一致;
在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发;其中,所述第二地址为所述预设NAT地址池中除所述第一地址的其它地址。
2.根据权利要求1所述的方法,其特征在于,所述根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址,包括:
根据所述正向报文匹配到的NAT策略,判断所述正向报文IP地址是否需要进行转换;
在确定所述正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板,包括:
根据所述第一转换地址,计算对应的哈希值;
根据所述哈希值,确定所述正向报文对应的反向报文分流的第二业务板。
4.根据权利要求1所述的方法,其特征在于,所述判断所述第一业务板与所述第二业务板是否一致,包括:
确定所述第一业务板对应的第一版号、所述第二业务板对应的第二版号;
根据所述第一版号和所述第二版号,判断所述第一业务板与所述第二业务板是否一致。
5.根据权利要求1所述的方法,其特征在于,所述在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发,包括:
在确定所述第一业务板与所述第二业务板不一致时,设置预设地址转换次数,其中,所述预设地址转换次数为所述正向报文IP地址转换最大次数;
根据所述预设地址转换次数,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若在所述预设地址转换次数内,在所述预设NAT地址池中选取的所有第二转换地址分别确定的每个第二业务板均与所述第一业务板不一致时,则根据最后一次选取的第二地址进行转换,并将所述正向报文转板至所述反向报文将分流的第三业务板;
针对所述第三业务板,建立动态重定向表,并将所述正向报文进行外发;
其中,所述动态重定向表包括所述第一业务板与所述第三业务板之间的映射关系。
7.一种分布式系统中的NAT处理装置,其特征在于,所述装置包括:
正向报文获取模块,用于第一业务板获取正向报文;
第一转换地址确定模块,用于根据所述正向报文匹配到的NAT策略,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址;
第二业务板确定模块,用于根据所述第一转换地址,确定所述正向报文对应的反向报文分流的第二业务板;
判断模块,用于判断所述第一业务板与所述第二业务板是否一致;
处理模块,用于在确定所述第一业务板与所述第二业务板不一致时,在所述预设NAT地址池中选取第二地址作为第二转换地址,直至根据所述第二转换地址确定所述反向报文分流的第二业务板与所述第一业务板一致时,获取所述第二地址进行转换,并将所述正向报文进行外发;其中,所述第二地址为所述预设NAT地址池中除所述第一地址的其它地址。
8.根据权利要求7所述的装置,其特征在于,包括:
所述第一转换地址确定模块,具体用于根据所述正向报文匹配到的NAT策略,判断所述正向报文IP地址是否需要进行转换;
在确定所述正向报文IP地址需要进行转换时,在预设NAT地址池中选取第一地址作为所述正向报文IP地址的第一转换地址。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的分布式系统中的NAT处理方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6中任一项所述的分布式系统中的NAT处理方法的步骤。
CN202210988867.7A 2022-08-17 2022-08-17 分布式系统中的nat处理方法、装置、电子设备及介质 Active CN115412526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210988867.7A CN115412526B (zh) 2022-08-17 2022-08-17 分布式系统中的nat处理方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210988867.7A CN115412526B (zh) 2022-08-17 2022-08-17 分布式系统中的nat处理方法、装置、电子设备及介质

Publications (2)

Publication Number Publication Date
CN115412526A CN115412526A (zh) 2022-11-29
CN115412526B true CN115412526B (zh) 2024-02-02

Family

ID=84160221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210988867.7A Active CN115412526B (zh) 2022-08-17 2022-08-17 分布式系统中的nat处理方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN115412526B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102821036A (zh) * 2012-04-20 2012-12-12 杭州华三通信技术有限公司 一种实现报文转发的方法及设备
CN104065759A (zh) * 2013-03-22 2014-09-24 杭州迪普科技有限公司 一种提高nat地址池资源利用效率的方法及装置
CN104580550A (zh) * 2014-12-30 2015-04-29 北京天融信科技有限公司 分布式系统中多业务板分流时的nat处理方法及设备
CN107547666A (zh) * 2016-06-24 2018-01-05 迈普通信技术股份有限公司 网络地址转换的实现方法及装置
CN108173982A (zh) * 2018-03-26 2018-06-15 深圳市风云实业有限公司 跨板报文的nat处理方法及装置
CN109218205A (zh) * 2018-09-26 2019-01-15 新华三信息安全技术有限公司 一种报文转发方法及装置
CN113708975A (zh) * 2021-09-08 2021-11-26 北京天融信网络安全技术有限公司 一种数据处理方法及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102821036A (zh) * 2012-04-20 2012-12-12 杭州华三通信技术有限公司 一种实现报文转发的方法及设备
CN104065759A (zh) * 2013-03-22 2014-09-24 杭州迪普科技有限公司 一种提高nat地址池资源利用效率的方法及装置
CN104580550A (zh) * 2014-12-30 2015-04-29 北京天融信科技有限公司 分布式系统中多业务板分流时的nat处理方法及设备
CN107547666A (zh) * 2016-06-24 2018-01-05 迈普通信技术股份有限公司 网络地址转换的实现方法及装置
CN108173982A (zh) * 2018-03-26 2018-06-15 深圳市风云实业有限公司 跨板报文的nat处理方法及装置
CN109218205A (zh) * 2018-09-26 2019-01-15 新华三信息安全技术有限公司 一种报文转发方法及装置
CN113708975A (zh) * 2021-09-08 2021-11-26 北京天融信网络安全技术有限公司 一种数据处理方法及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"多核NAT应用模型的研究与实现";陈琪;《中国硕士学位论文全文数据库信息科技辑》(第第2期期);全文 *

Also Published As

Publication number Publication date
CN115412526A (zh) 2022-11-29

Similar Documents

Publication Publication Date Title
CN104137518B (zh) 在面向服务架构总线上的互联网协议连接
CN111193773B (zh) 负载均衡方法、装置、设备及存储介质
US20120215747A1 (en) Data uploading method, data downloading method, and data system
US7779131B2 (en) Server and communication control method
CN112650704B (zh) 分布式多板分流下nat处理方法、装置及电子设备
CN109525684B (zh) 报文转发方法和装置
CN108011994B (zh) 一种查询dns记录的方法和系统
CN110769080B (zh) 一种域名解析方法、相关产品及计算机可读存储介质
CN107241254B (zh) 一种网络连接设备、网络系统和组网方法
CN110012118B (zh) 一种提供网络地址转换nat服务的方法及控制器
CN112583952B (zh) 重定向调度处理方法、装置、系统及相关设备、存储介质
CN110225150B (zh) 不同网络协议间的通信方法、系统和存储介质
CN110719273A (zh) 回源节点的确定方法、服务器及计算机可读存储介质
CN114363288A (zh) 报文处理方法、装置、链路负载均衡设备和存储介质
US20180343194A1 (en) Network-aware routing in information centric networking
CN109413224B (zh) 报文转发方法和装置
JP5828952B2 (ja) 通信システム、ノード、フロー制御ネットワーク及び通信制御方法
CN104426816A (zh) 一种虚拟机通信方法及装置
CN115412526B (zh) 分布式系统中的nat处理方法、装置、电子设备及介质
CN110855810B (zh) 一种nat转换方法、装置、网络安全设备及存储介质
CN114157633B (zh) 一种报文转发方法及装置
CN111294316B (zh) 基于用户态协议栈虚拟路由器的网络隔离方法和装置
CN111600929A (zh) 传输线路探测方法、路由策略生成方法及代理服务器
CN113596105B (zh) 内容的获取方法、边缘节点及计算机可读存储介质
US20100238930A1 (en) Router and method of forwarding ipv6 packets

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