NAT信息同步方法和装置与流程

文档序号:15049769发布日期:2018-07-27 23:59阅读:207来源:国知局

本公开涉及通信技术领域,尤其涉及一种nat信息同步方法和装置。



背景技术:

nat(networkaddresstranslation,网络地址转换)通过将私网地址转换成为公网地址,使无合法公网地址的私网主机也能访问互联网(internet)。nat是一种常用的节省ipv4地址的网络技术。

端口块nat是将每个公网的端口划分成多个独立的端口块。每个私网地址使用端口块范围内的端口进行端口转换。端口块nat是nat444网关上常用的nat类型。nat444是运营商网络部署nat的整体解决方案。nat444基于端口块nat和pppoe(point-to-pointprotocoloverethernet,点对点以太网承载协议)接入,结合aaa(authentication,authorizationandaccounting,认证、授权和计费)服务器、日志服务器等配套系统,支持用户溯源等功能。

在转发平面和控制平面分离的情况下,nat444支持转控分离。pppoe用户认证信息通过vxlan(virtualextensiblelan,可扩展虚拟局域网络)隧道传送给cp(controlplane,控制平面)。在cp上进行认证授权。cp上nat444网关与vbras(virtualbroadbandremoteaccessserver,虚拟远程宽带接入服务器)联动。用户通过aaa认证并分配得到私网地址之后,nat444网关会立即为该用户分配公网地址以及端口块,并将用户的私网ip地址、分配的公网地址及该端口块的映射关系通知给bras。bras记录该地址映射关系,并将这个映射关系上报给aaa服务器。之后,该用户访问外部网络时直接使用nat444网关已经分配的公网地址和端口块。同时cp上同步数据到dp(dateplane,转发平面)。

nat444联动上线时需要提前在dp上提前配置地址组、端口块大小、端口块范围和接口上应用地址组,可能导致cp及dp上nat配置冲突,影响用户上线。如:cp及dp上端口块大小不一致,或者cp及dp上端口块范围不一致等。



技术实现要素:

有鉴于此,本公开提出了一种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配置一致,从而保证用户正常上线。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出根据本公开一实施例的nat信息同步方法的流程图。

图2示出根据本公开一实施例的nat信息同步方法的另一流程图。

图3示出根据本公开另一实施例的nat信息同步方法的流程图。

图4示出根据本公开另一实施例的nat信息同步方法的另一流程图。

图5示出一种symmetric报文结构的示例图。

图6示出不同状态之间改变的示例图。

图7示出根据本公开一实施例的nat信息同步装置的结构示意图。

图8示出根据本公开一实施例的nat信息同步装置的另一结构示意图。

图9示出根据本公开另一实施例的nat信息同步装置的结构示意图。

图10示出根据本公开另一实施例的nat信息同步装置的框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

图1示出根据本公开一实施例的nat信息同步方法的流程图。如图1所示,该nat信息同步方法应用于虚拟远程宽带接入服务器的转发平面,该方法包括:

步骤101、接收来自控制平面的nat信息同步报文,所述nat信息同步报文中包括所述控制平面的与nat相关的配置参数;

步骤102、根据所述控制平面与nat相关的配置参数,设置所述转发平面的与nat相关的配置参数。

在本公开中,虚拟远程宽带接入服务器的控制平面可以定期向转发平面同步与nat相关的配置参数。与nat相关的配置参数包括但不限于端口块范围的起始端口块、端口块范围的结束端口块、端口块大小、地址组、接口与地址组的对应关系中的至少一项。

举例而言,步骤101可以包括:控制平面向转发平面发送基于开放流openflow的对称报文,所述对称报文中包括控制平面上配置的端口块范围的起始端口块、端口块范围的结束端口块、端口块大小、地址组、接口与地址组的对应关系中的至少一项。在对称报文中,可以为每一种与nat相关的配置参数增加相应的字段,对称报文的一种结构示例可以参见图5。

在实际应用场景中,控制平面既可以定期向转发平面发送与nat相关的所有配置参数,也可以根据转发平面的需求,向转发平面发送与nat相关的部分配置参数。

在一种可能的实现方式中,如图2所示,该方法还包括:

步骤201、在检测到所述转发平面的与nat相关的配置参数改变的情况下,向控制平面发送nat信息请求报文,所述nat信息请求报文包括与nat相关的配置参数的改变状态。

在转发平面中,用户主动修改或者误操作可能使得nat相关的配置参数发生改变。在转发平面中,可以设置与nat相关的配置参数对应的改变状态,通过不同的编号、字符等来表示不同的改变状态。

例如,如果转发平面的与nat相关的配置参数全部改变,改变状态可以设置为空闲状态。如果转发平面的与nat相关的配置参数全部未改变,改变状态可以设置为完全状态。如果转发平面的与nat相关的配置参数部分改变,改变状态可以设置为中间状态。状态改变的示例可以参见图6及其相关描述。

再如,nat信息请求报文也可以采用对称报文来实现,例如在对称报文中增加关于状态的字段,参见图5。如果转发平面的与nat相关的起始端口块改变,改变状态属于中间状态,在对称报文中将状态字段设置为字符100来表示起始端口块改变。如果转发平面的与nat相关的结束端口块改变,改变状态属于中间状态,在对称报文中将状态字段设置为字符101来表示结束端口块改变。如果转发平面的与nat相关的端口块大小改变,改变状态属于中间状态,在对称报文中将状态字段设置为字符110来表示端口块大小改变。

控制平面收到nat信息请求报文后,可以根据其中具体的改变状态,来判断转发平面哪些参数需要更新。然后,控制平面nat信息同步报文通过向转发平面返回需要更新的参数,这样可以减少传输的数量。因此,步骤101可以包括:接收来自控制平面的针对所述nat信息请求报文发送的nat信息同步报文,所述nat信息同步报文包括控制平面上的与所述改变状态对应的配置参数。

例如,如果控制平面收到的nat信息请求报文中改变状态为101,则表示转发平面的与nat相关的结束端口块改变。控制平面向转发平面发送的nat信息同步报文中,包括控制平面自身最新的结束端口块。

在一种可能的实现方式中,步骤102包括:

比较所述控制平面与所述转发平面的与nat相关的配置参数是否一致;

如果不一致,则根据所述控制平面与nat相关的配置参数,修改所述转发平面的与nat相关的配置参数。

在转发平面收到nat信息同步报文后,可以先比较收到的控制平面与nat相关的配置参数,与转发平面自身的与nat相关的配置参数是否一致。如果不一致,再将转发平面的与nat相关的配置参数修改为与控制平面一致。对于定期从控制平面接收全部的与nat相关的配置参数的情况,可以比较后,只修改转发平面中不一致的参数。这样,可以减少数据修改量。

当然,在转发平面不进行参数比较,直接将转发平面的与nat相关的配置参数修改为收到的相关参数也是可以的。

本公开中,转发平面可以从控制平面同步与nat相关的配置参数,不用在转发平面配置与nat相关的配置参数,有利于防止控制平面与转发平面的nat配置冲突,在用户请求上线之前即可使得控制平面与转发平面的nat配置一致,从而保证用户正常上线。

图3示出根据本公开另一实施例的nat信息同步方法的流程图。如图3所示,该nat信息同步方法应用于虚拟远程宽带接入服务器的控制平面,该方法包括:

步骤301、向转发平面发送nat信息同步报文,所述nat信息同步报文中包括所述控制平面的与nat相关的配置参数,以使得所述转发平面能够根据所述控制平面与nat相关的配置参数,设置所述转发平面的与nat相关的配置参数。

在一种可能的实现方式中,如图4所示,该方法还包括:

步骤401、接收来自转发平面的nat信息请求报文,所述nat信息请求报文包括与nat相关的配置参数的改变状态。这种情况下,步骤301可以包括:针对所述nat信息请求报文向转发平面发送nat信息同步报文,所述nat信息同步报文包括控制平面上的与所述改变状态对应的配置参数。

在一种可能的实现方式中,步骤301包括:

向转发平面发送基于开放流openflow的对称报文,所述对称报文中包括控制平面上配置的端口块范围的起始端口块、端口块范围的结束端口块、端口块大小、地址组、接口与地址组的对应关系中的至少一项。

本实施例的应用于控制平面nat信息同步方法的原理,与应用于转发平面的nat信息同步方法类似,可以参见上述实施例的相关描述。

应用示例:

在cp和dp上利用openflow(开放流)symmetric(对称)报文增加扩展字段进行维护,保证cp、dp端口块范围及端口块大小一致。当cp端口块范围或者端口块大小变化时向dp同步配置。当dp端口块范围或者端口块大小变化时向cp发出同步申请,cp收到申请后同步起始端口块、结束端口块或者端口块大小。cp和dp一致时,能够维护稳态报文。

例如,利用openflow私有协议报文symmetric报文,检查cp和dp的端口块范围及端口块大小是否一致。如果不一致,cp向dp同步配置。

如图5所示,为一种symmetric报文结构的示例。该symmetric报文结构的各字段的含义如下。

type(类型):表示该报文属于nat模块使用,用于同步端口大小及端口块范围。在本示例中,将type字段的大小设置为7比特(bits)。本示例中各字段大小仅为举例,而非限制。在实际应用中,可以根据具体需求设置字段大小。

lenth(长度):报文的整体长度。例如,将lenth字段的大小设置为9bits。

startport(起始端口块):端口块范围的起始端口块。例如,将startport字段的大小设置为2个八位字节(octets)。

endport(结束端口块):端口块范围的结束端口块。例如,将endport字段的大小设置为2octets。startport和endport表示端口块范围。

portsize:端口块大小。例如,将portsize字段的大小设置为2octets。

state(状态):利用后边三个bits表示dp和cp是否一致的状态。例如,1表示配置一致,0表示配置不一致。将portsize字段的大小设置为1octets。

此外,还可以在dp上维护state(状态)。如图6所示,不同状态之间可以发生改变,示例如下:

idle(空闲)状态:000表示dp与cp起始端口块、结束端口块、端口块大小都不一致。在该状态下,dp可以向cp申请同步端口块大小及端口范围。

middle(中间)状态:001—110表示起始端口块、结束端口块、端口块大小部分一致。在该状态下,dp可以向cp申请不一致的起始端口块、结束端口块、端口大小。如110表示端口块大小不一致,dp向cp发送110,cp把端口块大小同步给dp。

full(完全)状态:111表示起始端口块、结束端口块、端口大小都一致。dp、cp处于稳定状态,ipoe(internetprotocoloverethernet,互联网以太网承载协议)或者pppoe用户可以上线。

在dp上,可以根据端口块大小、端口块范围等参数的变化,来确定状态的改变。以下为几个状态之间切换的示例。

e1:在middle状态下,如果dp删除或修改端口块大小、起始端口块和结束端口块,使dp、cp都不一致,dp可以从middle状态改变为idle状态。

e2:在idle状态下,如果dp修改端口块大小或者端口块范围,使得nat配置部分与cp不一致,dp可以从idle状态改变为middle状态。

e3:在middle状态下,如果cp同步给dp始端口块、结束端口块或者端口大小完成,dp可以从middle状态改变为full状态。

e4:在full状态下,如果dp修改起始端口块、结束端口块及端口块大小,使得dp、cp部分一致,dp可以从full状态改变为middle状态。

e5:在full状态下,如果dp删除或修改端口块大小、起始端口块和结束端口块,使dp、cp都不一致,dp可以从full状态改变为idle状态。

e6:在idle状态下,如果配置dp与cp端口块、结束端口块及端口块大小变成完全一致,dp可以从idle状态改变为full状态。

本公开的方法,通过在openflow私有协议的symmetric报文中扩展字段,来保证cp与dp上关于nat配置的数据一致,不用dp配置nat的端口块大小及端口块范围等,而是从cp同步这些参数。并且,在dp上维护端口块、结束端口块及端口块大小状态机。因此,能够解决cp与dp的nat冲突的问题,适合ipoe及pppoe转控联动用户登陆。

图7示出根据本公开一实施例的nat信息同步装置的结构示意图。如图7所示,该装置应用于虚拟远程宽带接入服务器的转发平面,所述装置包括:

第一接收模块41,用于接收来自控制平面的nat信息同步报文,所述nat信息同步报文中包括所述控制平面的与nat相关的配置参数;

第一设置模块43,用于根据所述控制平面与nat相关的配置参数,设置所述转发平面的与nat相关的配置参数。

在一种可能的实现方式中,如图8所示,该装置还包括:

第一发送模块45,用于在检测到所述转发平面的与nat相关的配置参数改变的情况下,向控制平面发送nat信息请求报文,所述nat信息请求报文包括与nat相关的配置参数的改变状态;

所述第一接收模块41还用于接收来自控制平面的针对所述nat信息请求报文发送的nat信息同步报文,所述nat信息同步报文包括控制平面上的与所述改变状态对应的配置参数。

在一种可能的实现方式中,所述第一设置模块43还用于比较所述控制平面与所述转发平面的与nat相关的配置参数是否一致;如果不一致,则根据所述控制平面与nat相关的配置参数,修改所述转发平面的与nat相关的配置参数。

在一种可能的实现方式中,第一接收模块41还用于接收来自控制平面的基于openflow的对称报文,所述对称报文中包括控制平面上配置的端口块范围的起始端口块、端口块范围的结束端口块、端口块大小、地址组、接口与地址组的对应关系中的至少一项。

图9示出根据本公开另一实施例的nat信息同步装置的结构示意图。如图9所示,该装置应用于虚拟远程宽带接入服务器的控制平面,所述装置包括:

第二发送模块51,用于向转发平面发送nat信息同步报文,所述nat信息同步报文中包括所述控制平面的与nat相关的配置参数,以使得所述转发平面能够根据所述控制平面与nat相关的配置参数,设置所述转发平面的与nat相关的配置参数。

在一种可能的实现方式中,该装置还包括:

第二接收模块53,用于接收来自转发平面的nat信息请求报文,所述nat信息请求报文包括与nat相关的配置参数的改变状态;

所述第二发送模块51还用于针对所述nat信息请求报文向转发平面发送nat信息同步报文,所述nat信息同步报文包括控制平面上的与所述改变状态对应的配置参数。

在一种可能的实现方式中,第二发送模块51还用于向转发平面发送基于openflow的对称报文,所述对称报文中包括控制平面上配置的端口块范围的起始端口块、端口块范围的结束端口块、端口块大小、地址组、接口与地址组的对应关系中的至少一项。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图10示出根据本公开另一实施例的nat信息同步装置的框图。参照图10,该装置900可包括处理器901、存储有机器可执行指令的机器可读存储介质902。处理器901与机器可读存储介质902可经由系统总线903通信。并且,处理器901通过读取机器可读存储介质902中与nat信息同步逻辑对应的机器可执行指令以执行上文所述的nat信息同步方法。

本文中提到的机器可读存储介质902可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1