【技术实现步骤摘要】
分布式系统架构中的NAT处理方法及装置
本申请涉及网络通信
,特别涉及一种分布式系统架构中的NAT处理方法及装置。
技术介绍
NAT(NetworkAddressTranslation,网络地址转换)是将IP(InternetProtocol,因特网协议)数据报文的头部中的IP地址(源IP地址或目的IP地址)转换为另一个IP地址的过程。NAT的实现方式主要有一对一的NAT和多对一的NAT。一对一的NAT是指转换前的IP地址和转换后的IP地址一一对应。而多对一的NAT是指多个不同的IP地址可以转换为同一IP地址。如图1所示,在内网和外网之间设置有NAT设备,内网中有主机A和主机B,两者的IP地址分别是192.168.1.2、192.168.1.3。主机A访问外网中的服务器时,会分别发出源地址为192.168.1.2的报文1,主机B访问该服务器时,会发出源地址为192.168.1.3的报文2。NAT设备接收到报文1和报文2时,会按照预定ACL规则,对报文1和报文2中的源IP地址进行NAT,都转换为了IP地址20.1.1.1,并且改变了源端口。为了提高性能和可靠性等,用于实现NAT的网络设备,例如,路由器、防火墙等,可以采用如图2所示的分布式系统架构,在这种分布式系统架构中包括:控制板、至少一个接口板和多个业务板。此时,在如图2所示的分布式系统架构中时,需要采用分布式处理方式实现NAT,即,多个业务板各自独立地并行进行NAT处理。但是,在现有技术实现NAT分布式处理时,是通过软件来实现的,软件的处理速度会受到软件代码、以及CPU(中央处理器)软件的处理性能 ...
【技术保护点】
【技术特征摘要】
1.一种分布式系统架构中的网络地址转换NAT处理方法,所述分布式系统架构中包括:接口板和至少两个业务板,其特征在于,所述方法包括:接口板上的硬件可编程逻辑器件在接收到需要进行NAT的报文之后,从分流表中查找该报文对应的NAT类型、NAT地址映射表的索引和业务板索引;其中,NAT类型中包括:NAT方向和需要转换的IP地址类型;若查找到的业务板索引的值为空,则在查找到的NAT类型中包括的NAT方向是正向NAT时,接口板上的硬件可编程逻辑器件从查找到的NAT地址映射表的索引所指示的NAT地址映射表中,为该报文获取NAT后的因特网协议IP地址;在查找到的NAT类型中包括的需要转换的IP地址类型是源IP地址时,按照预定算法对该报文的第一相关信息进行运算,根据得到的运算值,从分布式映射表中查找到对应的业务板索引;在查找到的NAT类型中包括的需要转换的IP地址类型是目的IP地址时,按照预定算法对该报文的第三相关信息进行运算,根据得到的运算值,从分布式映射表中查找到对应的业务板索引;其中,所述分流表、所述NAT地址映射表和所述分布式映射表保存在所述接口板上的硬件可编程逻辑器件中;其中,接口板上的硬件可编程逻辑器件将该报文、获取的NAT后的IP地址、以及查找到的NAT类型,发送给查找到的业务板索引所指示的业务板,以便该业务板上的硬件可编程逻辑器件根据所述获取的NAT后的IP地址、以及该NAT类型对该报文进行地址转换。2.根据权利要求1所述的方法,其特征在于,所述NAT地址映射表中包括:地址指针和N个IP地址,所述地址指针用于指示当前要选择的IP地址的索引,N为正整数;则,从查找到的NAT地址映射表的索引所指示的NAT地址映射表中,为该报文获取NAT后的IP地址的方法包括:从该NAT地址映射表中,获取地址指针的当前值n;根据该当前值n,从该NAT地址映射表中查找到对应的IP地址,作为为该报文获取的NAT后的IP地址;将地址指针的当前值n更新为(n+1)%N,其中,n=1,2,...,N,%为取模运算符。3.根据权利要求1所述的方法,其特征在于,在查找该报文对应的NAT类型、NAT地址映射表的索引和业务板索引之后,还包括:若查找到的业务板索引的值为空,则在查找到的NAT类型中包括的NAT方向是反向NAT时,接口板上的硬件可编程逻辑器件按照所述预定算法对该报文的相关信息进行运算,根据得到的运算值,从所述分布式映射表中查找到对应的业务板索引;接口板上的硬件可编程逻辑器件将该报文发送给查找到的业务板索引所指示的业务板,以便该业务板上的硬件可编程逻辑器件对该报文进行地址转换。4.根据权利要求3所述的方法,其特征在于,该方法还包括:在查找到的NAT类型中包括的NAT方向是反向NAT,且该NAT类型中包括的需要转换的IP地址类型是目的IP地址时,根据所述预定算法对该报文的第二相关信息进行运算;其中,当第一相关信息中包括:获取的NAT后的IP地址,该报文的目的IP地址和目的端口标识时,第二相关信息中包括:该报文的目的IP地址、源IP地址、源端口标识;当第一相关信息中包括:获取的NAT后的IP地址,该报文的目的IP地址、目的端口标识和协议号时,第二相关信息中包括:该报文的目的IP地址、源IP地址、源端口标识和协议号。5.根据权利要求3所述的方法,其特征在于,该方法还包括:在查找到的NAT类型中包括的NAT方向是反向NAT,且该NAT类型中包括的需要转换的IP地址类型是源IP地址时,根据所述预定算法对该报文的第四相关信息进行运算;其中,当第三相关信息中包括:获取的NAT后的IP地址,该报文的源IP地址、源端口标识时,第四相关信息中包括:该报文的源IP地址、目的IP地址、目的端口标识;当第三相关信息中包括:获取的NAT后的IP地址,该报文的源IP地址、源端口标识和协议号时,第四相关信息中包括:该报文的源IP地址、目的IP地址、目的端口标识和协议号。6.根据权利要求3、4或5所述的方法,其特征在于,所述根据得到的运算值,从分布式映射表中查找到对应的业务板索引的方法包括:从所述分布式映射表中查找到与该运算值对应的表项,其中,所述分布式映射表的每一个表项中包括:业务板索引;判断查找到的表项中包括的业务板索引的值是否为空;若不为空,则获取所述查找到的表项中的业务板索引的值;若为空,则获取本地保存的选择变量m,将所述查找到的表项中的业务板索引的值设置为(m+1)%M,获取该业务板索引的值(m+1)%M,将该选择变量m更新为m+1;其中,M为业务板总数,m=1,2,...,%为取模运算符。7.根据权利要求3所述的方法,其特征在于,在从分布式映射表中查找到对应的业务板索引之后,还包括:将所述分流表中与该报文对应的为空的业务板索引,更新为从所述分布式映射表中查找到的业务板索引的值;在查找该报文对应的NAT类型、NAT地址映射表的索引和业务板索引之后,还包括:若查找到的业务板索引的值不为空,则接口板上的硬件可编程逻辑器件将该报文发送给查找到的业务板索引所指示的业务板,以便该业务板上的硬件可编程逻辑器件对该报文进行地址转换。8.根据权利要求7所述的方法,其特征在于,所述根据所述获取的NAT后的IP地址、以及该NAT类型对该报文进行地址转换的方法包括:当该NAT类型中包括的需要转换的IP地址类型是源IP地址时,将该报文的源IP地址转换为所述获取的NAT后的IP地址,将转换前的五元组信息与转换后的五元组信息之间的对应关系记录到NAT地址转换表中;当该NAT类型中包括的需要转换的IP地址类型是目的IP地址时,将该报文的目的IP地址转换为所述获取的NAT后的IP地址,将转换前的五元组信息与转换后的五元组信息之间的对应关系记录到NAT地址转换表中;所述对该报文进行地址转换的方法包括:根据该报文的五元组信息从所述NAT地址转换表中查找到对应的五元组信息,将该报文的五元组信息转换为查找到的五元组信息。9.根据权利要求1所述的方法,其特征在于,在接收到需要进行NAT的报文之前,还包括:预先在所述接口板上的硬件可编程逻辑器件中创建所述分流表,其中,所述分流表的每一个表项中包含有:转换前的IP地址、包括正向NAT和需要转换的IP地址类型的NAT类型、转换后的IP地址所在的NAT地址映射表的索引、与业务板索引之间的对应关系,该业务板索引的值为空;在为该报文获取到NAT后的IP地址之后,还包括:在所述分流表中添加一表项,添加的表项中包含有:所述获取的NAT后的IP地址、包括反向NAT和需要转换的IP地址类型的NAT类型、NAT地址映射表的索引、与业务板索引之间的对应...
【专利技术属性】
技术研发人员:岳炳词,
申请(专利权)人:杭州华三通信技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。