一种NAT实现系统、方法及Openflow交换机技术方案

技术编号:8633612 阅读:976 留言:0更新日期:2013-04-27 17:52
本发明专利技术公开了一种NAT实现系统,包括:Controller和Openflow交换机;Controller下发流表和改进组表;Openflow交换机接收流表和改进组表,根据流表记录的地址转换匹配规则,匹配出需要进行地址转换的数据包;根据改进组表记录的地址转换规则执行私有地址与公有IP地址之间的转换,利用转换后的地址将数据包发送出去;本发明专利技术还公开了一种NAT实现方法及Openflow交换机,利用本发明专利技术,只需将流表和改进组表一次发送给Openflow交换机,无需Openflow交换机和Controller进行频繁交互,缩短数据包转发时延,提高网络传输效率。

【技术实现步骤摘要】

本专利技术涉及网络
,具体涉及一种NAT实现系统、方法及Openflow交换机。技术背景网络地址转换(NAT,Network Address Translation)技术是将私有地址转换为公有IP地址的技术,这项技术广泛地应用在Internet接入方式中。企业的内部网络为私有网络,可以采用私有地址作为主机地址;当主机连接互联网(Internet)上的服务器时,NAT 设备将数据包的私有地址转换为公有IP地址发送至服务器;当Internet上的服务器按此公有IP地址返回应答数据包时,NAT设备将此公有IP地址转换为原来的私有地址,使应答数据包能够正确返回到相应的主机。NAT技术可令同一公有IP地址对应于多个主机的私有地址,在保证了企业内部网络安全的前提下,节约了公有IP地址资源。软件定义网络(SDN, Software Defined Network)技术是一种通信网络实现方法; 将NAT技术应用于基于Openflow (网络交换模型)的SDN,实现数据包路由控制与数据包转发的分离。现有的Openflow网络组成结构如图1所示,包括控制器(Controller)和 Openflow 交换机(Openflow Switch);当企业内部网络的主机B’链接到互联网的服务器D时,所述Openflow交换机接收到来自主机B’具有私有地址B的数据包A,所述Openflow交换机向所述Controller上报接收到数据包A事件;接收到上报事件后,所述Controller下发流表(Flow Table)到所述Openflow交换机,所述流表包含动作表,指示将数据包A的私有地址B转换为公有IP地址C,即建立起了数据包A的私有地址B与公有IP地址C之间的地址映射关系;所述Openflow交换机依据流表记录的内容,将私有地址B转换为公有IP地址C,利用公有IP地址C将数据包A发送出去;所述Controller将流表下发到所述Openflow交换机的同时将组表(Group Table)也下发到所述Openflow交换机;所述组表包括数据类型及对相应数据类型的处理操作,例如,对Select (选择)数据类型的数据包进行广播、服务器负载均衡等等。由上面所述可看出,所述Openflo w交换机通过流表完成私有地址B到公有IP地址C的转换;除此之外,当主机B’链接到互联网的另一服务器如服务器E时,所述Openflow 交换机与所述Controller又将依据上述技术方案进行一次互动;也就是说,现有技术中,每当主机B’拥有一个不同的链接(主机B’链接到Internet的不同服务器)时,所述 Openflow交换机在接收到主机B’私有地址的数据包时,所述Controller都将下发一次流表到所述Openflow交换机,当有大量私有网络的主机数据包需要Openflow交换机发送到 Internet时,Controller频繁下发流表将增加Openflow交换机和Controller的交互次数、延长了数据包转发的时延,同时因Internet除了对主机与服务器之间的数据包进行传输之外,还有传输其它业务,进而严重影响了 Internet网络传输效率。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种NAT实现系统、方法及Openflow交换机,能够减少Openflow交换机和Controller的交互次数、缩短数据包转发时延,提高网络传输效率。为达到上述目的,本专利技术的技术方案是这样实现的本专利技术提供了一种NAT实现系统,该系统包括控制器Controller和Openflow交换机 Openflow Switch ;其中,所述控制器Controller,用于利用Openflow协议,将流表和改进组表下发到所述 Openflow交换机;所述Openflow交换机,用于利用Openflow协议,接收所述Controller下发的所述流表和所述改进组表;接收来源于私有网络或互联网Internet的数据包,所述Openflow交换机根据流表记录的地址转换匹配规则匹配出需要进行地址转换的数据包,根据改进组表记录的地址转换规则,执行数据包的私有地址与公有IP地址之间的转换,将数据包或发送至Internet 或发送至私有网络。上述方案中,所述Openflow交换机进一步包括=Switch控制面、内部通道和 Switch转发面;其中,所述Switch控制面,利用Openflow协议,接收所述Controller下发的流表和改进组表;在接收到流表和改进组表之后,对接收到的数据包属性进行规则匹配,当有数据包属性能够匹配所述流表记录的地址转换匹配规则时,所述流表执行Group命令,指向所述改进组表,根据改进组表记录的地址转换规则产生转换命令,通过所述内部通道下发转换命令至所述Switch转发面;所述Switch转发面,用于接收来自私有网络或Internet的数据包并通过所述内部通道将数据包属性发送至所述Switch控制面;接收所述Switch控制面下发转换命令,依据地址转换规则,执行数据包私有地址与公有IP地址之间的转换,将数据包或发送至私有网络或发送至Internet。上述方案中,所述改进 组表记录的地址转换规则包括的内容为需要进行地址转换的数据包的协议类型、供私有地址选择的公有IP地址范围、端口号范围及私有地址与公有IP地址对应转换关系的有效维持时间。上述方案中,所述流表记录有规则和命令,对能够匹配规则的数据包进行命令处理;所述规则包括地址转换匹配规则;所述命令包括Group命令;当有数据包能够匹配所述流表记录的地址转换匹配规则时,所述流表执行Group命令,指向带有NAT数据类型的改进组表。上述方案中,所述Switch控制面接收流表和改进组表,进一步包括NAT分析模块; 其中,所述流表,用于将数据包属性进行规则匹配,当有数据包属性能够匹配记录的地址转换匹配规则时,所述流表执行Group命令,指向所述带有NAT数据类型的改进组表;所述改进组表,用于记录有地址转换规则;所述NAT分析模块,用于依据IANA规定及地址转换规则,对数据包属性进行分析, 产生转换命令,并通过内部通道下发命令到所述Switch转发面。上述方案中,所述Switch转发面用于完成从私有地址到公有IP地址转换之后,还用于保存数据包的NAT转换列表。本专利技术还提供了一种NAT实现方法,该方法包括利用Openflow协议,Openflow交换机接收由Controller下发的流表和改进组表;Openflow交换机根据接收流表和改进组表,依据流表记录的地址转换匹配规则匹配出需要进行地址转换的数据包,根据改进组表记录的地址转换规则,执行数据包私有地址与公有IP地址之间的转换,将数据包或发送至Internet或发送至私有网络。上述方案中,所述改进组表记录有地址转换规则,所述地址转换规则记录的内容包括需要进行地址转换的数据包的协议类型、供私有地址选择的公有IP地址范围、端口号范围及私有地址与公有IP地址对应转换关系的有效维持时间。上述方案中,所述完成数据包私有地址与公有IP地址之间的转换为依据IANA规定及地址转换规则,判断出当前数据包的地址源地址、目的地址为私有地址还是公有IP地址;当判断本文档来自技高网
...

【技术保护点】
一种NAT实现系统,其特征在于,该系统包括:控制器Controller和Openflow交换机Openflow?Switch;其中,所述控制器Controller,用于利用Openflow协议,将流表和改进组表下发到所述Openflow交换机;所述Openflow交换机,用于利用Openflow协议,接收所述Controller下发的所述流表和所述改进组表;接收来源于私有网络或互联网Internet的数据包,所述Openflow交换机根据流表记录的地址转换匹配规则匹配出需要进行地址转换的数据包,根据改进组表记录的地址转换规则,执行数据包的私有地址与公有IP地址之间的转换,将数据包或发送至Internet或发送至私有网络。

【技术特征摘要】
1.一种NAT实现系统,其特征在于,该系统包括控制器Controller和Openflow交换机 Openflow Switch ;其中,所述控制器Controller,用于利用Openflow协议,将流表和改进组表下发到所述 Openflow交换机;所述Openflow交换机,用于利用Openflow协议,接收所述Controller下发的所述流表和所述改进组表;接收来源于私有网络或互联网Internet的数据包,所述Openflow交换机根据流表记录的地址转换匹配规则匹配出需要进行地址转换的数据包,根据改进组表记录的地址转换规则,执行数据包的私有地址与公有IP地址之间的转换,将数据包或发送至Internet或发送至私有网络。2.根据权利要求1所述的NAT实现系统,其特征在于,所述Openflow交换机进一步包括Switch控制面、内部通道和Switch转发面;其中,所述Switch控制面,利用Openflow协议,接收所述Controller下发的所述流表和所述改进组表;在接收到所述流表和所述改进组表之后,对接收到的数据包属性进行规则匹配,当有数据包属性能够匹配所述流表记录的地址转换匹配规则时,所述流表执行Group命令,指向所述改进组表,根据改进组表记录的地址转换规则产生转换命令,通过所述内部通道下发转换命令至所述Switch转发面;所述Switch转发面,用于接收来自私有网络或Internet的数据包并通过所述内部通道将数据包属性发送至所述Switch控制面;接收所述Switch控制面下发转换命令,依据地址转换规则,执行数据包私有地址与公有IP地址之间的转换,将数据包或发送至私有网络或发送至Internet。3.根据权利要求1或2所述的NAT实现系统,其特征在于,所述改进组表记录的地址转换规则包括的内容为需要进行地址转换的数据包的协议类型、供私有地址选择的公有IP 地址范围、端口号范围及私有地址与公有IP地址对应转换关系的有效维持时间。4.根据权利要求1所述的NAT实现系统,其特征在于,所述流表记录有规则和命令, 对能够匹配规则的数据包进行命令处理;所述规则包括地址转换匹配规则;所述命令包括Group命令;当有数据包能够匹配所述流表记录的地址转换匹配规则时,所述流表执行 Group命令,指向带有NAT数据类型的所述改进组表。5.根据权利要求2所述的NAT实现系统,其特征在于,所述Switch控制面接收流表和改进组表,进一步包括NAT分析模块;其中,所述流表,用于将数据包属性进行规则匹配,当有数据包属性能够匹配记录的地址转换匹配规则时,所述流表执行Group命令,指向带有NAT数据类型的所述改进组表;所述改进组表,用于记录有地址转换规则;所述NAT分析模块,用于依据IANA规定及地址转换规则,对数据包属性进行分析,产生转换命令,并通过内部通道下发命令到所述Switch转发面。6.根据权利要求5所述的NAT实现系统,其特征在于,所述Switch转发面用于完成从私有地址到公有IP地址转换之后,还用于保存数据包的NAT转换列表。7.—种NAT实现方法,其特征在于,该方法包括利用Openflow协议,Openflow交换机接收由Controller下发的流表...

【专利技术属性】
技术研发人员:马苏安汪军
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1