一种基于SDN的网关中控制报文的处理方法及系统与流程

文档序号:11842583阅读:392来源:国知局
一种基于SDN的网关中控制报文的处理方法及系统与流程

本发明涉及网络通信领域,尤其涉及一种基于SDN的网关中控制报文的处理方法及系统。



背景技术:

软件定义网络(SDN,Software Defined Network)技术除了应用到数字通信领域外也在移动接入网和固定接入网中得到了应用。基于SDN架构设计接入网关或者移动网网关设备已经成为一种趋势。基于SDN架构的移动网网关设备或接入网关设备将功能模块划分为网关控制面功能和网关转发面功能两部分,其中网关转发面功能只负责数据的转发,所有与控制相关的处理都由网关控制面功能负责。

在移动网络中,网关控制面功能的功能主要包括用户面隧道的建立并将隧道信息配置到网关转发面功能,从而使得网关转发面功能能按网关控制面功能的配置进行数据转发。

在设计基于SDN的网关设备时,希望将所有的控制和管理相关的功能都放置在网关控制面功能,如用户IP地址的分配、组播组的管理、与用户终端相关的其他配置管理等。

以分配IP地址为例,在现有技术中,用户IP地址的分配可以采用动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)的方式(DHCPv4或DHCPv6)进行,此外,对于分配IPv6地址,还可以采用路由器请求/路由器通告报文(RS/RA)方式进行IP地址的配置。这些与IP地址分配相关的IP报文,都会被用户终端(UE,User Equipment)通过转发面发送给网关转发面功能。

除了与IP地址分配相关的IP报文外,UE还可能发送其他与控制相关 的IP报文,如,加入组播组的报文等。然而,网关转发面功能作为纯转发功能,不具备控制和管理的能力,因此,网关转发面功能不能处理这些与控制和管理相关的IP报文。在下文中将这些与终端的控制和管理相关的IP报文统称为IP控制报文。

移动网网关或固网接入网关通常为很多用户服务。在网关转发面功能面向用户终端一侧通常为每个接入终端分配一个端口。这个端口是一条逻辑链路或一条物理链路,用于隔离来自或发往不同接入终端的数据。在移动应用场景,一个接入终端有时可能会建立多条IP连接,此时,一个接入终端的多个不同IP连接均有唯一的逻辑链路与之对应。在4G中,这种逻辑链路即是GPRS通道协议-用户面(GTP-U,GPRS Tunnel Protocol User Plane)隧道。但逻辑链路不限于GTP-U隧道。任何能将不同接入终端的不同IP连接区分开来的标识均可用于标识一条逻辑链路。

由于用户在接入认证等控制面流程中使用的身份信息(认证身份信息如国际移动用户识别码(IMSI,International Mobile Subscriber Identification Number)、临时移动用户识别(M-TMSI,Temporary Mobile Subscriber Identity)、综合业务数字网(ISDN,Integrated Services Digital Network)等)可能不同于在IP控制报文中所使用的标识信息(IP报文中的标识信息通常是随机数或MAC地址等),当一个为很多接入终端服务的网关转发面功能将来自终端的IP控制报文发送给网关控制面功能时,网关控制面功能很难区分这些IP控制报文所对应的用户。并且,由于不能避免IP控制报文中所使用标识信息的冲突,当网关控制面功能给用户终端发送IP控制报文时,网关转发面功能也可能不能将上述报文匹配到正确的用户终端。

为了节省空口资源及节电,根据现有移动网络协议,当终端不收发数据一段时间后终端进入空闲态。当终端进入空闲态时,空口资源被释放,同时,从基站到网关间的连接也被释放。当终端处于空闲态时,网关在收到发往终端的数据时需发起寻呼流程,从而触发终端重新建立到网络的连接。网关SDN化之后,发起寻呼的功能隶属于网关控制面功能,网关转发面功能在判断收到的数据无下行隧道信息时通过SDN控制器(SDN Controller)触发网关控制面功能发起寻呼。由于寻呼在移动互联网中频繁发生,为了触发寻 呼,网关转发面功能与网关控制面功能间需通过SDN控制器频繁交换信息。

此外,在移动网络中,网关转发面功能还可能收到来自GTP-U隧道对端的GTP-U控制报文。在现有的SDN架构中,网关转发面功能在确认收到的报文是GTP-U控制报文后将该GTP-U控制报文直接发送给SDN控制器,再由SDN控制器发送给网关控制面功能。与每个终端的每条承载对应的GTP-U隧道均有对应的GTP-U控制报文,用于隧道的维护,如隧道保活等。除此之外,系统中还可能有其他与控制相关的报文需转发给网关控制面功能,按SDN架构均需通过SDN控制器转发。然而,大量的GTP-U报文及其他控制报文通过SDN控制器转发对SDN控制器的性能是个巨大的挑战。



技术实现要素:

为了解决上述技术问题,本发明提供一种基于SDN的网关中控制报文的处理方法及系统,能够解决网关控制面功能及网关转发面功能无法将控制报文正确匹配用户的问题,从而避免SDN控制器转发大量控制报文,确保SDN控制器的性能。

为了达到上述技术目的,本发明提供一种基于SDN的网关中控制报文的处理方法,包括:在网关转发面功能和网关控制面功能之间为每个IP连接建立逻辑通道,其中,所述逻辑通道用于在网关转发面功能和网关控制面功能之间转发与所述IP连接相关的控制报文。

进一步地,所述控制报文包括:

用于通过所述IP连接且目的地是网关控制面功能的报文;或者,

用于通过所述IP连接且目的地是组播、任意播或广播地址的报文;或者,

用于网关控制面功能发给用户终端的报文;或者,

所述IP连接相关的GPRS通道协议-用户面GTP-U控制报文;或者,

所述IP连接相关的触发寻呼的数据报文。

进一步地,所述建立逻辑通道的过程中,还包括:所述网关控制面功能通过SDN控制器为所述网关转发面功能设置所述控制报文的转发规则表。

进一步地,所述转发规则表至少包括规则和动作,其中:所述规则用于识别所述IP连接相关的控制报文,所述规则包括:

网关转发面功能收到的GTP-U数据包的GTP-U报文类型;和/或,

网关转发面功能收到的GTP-U数据包的GTP-U目的隧道ID;和/或,

网关转发面功能收到的用户数据包的源IP地址和/或目的IP地址;和/或,

网关转发面功能收到的用户数据包的类型,所述类型包括协议类型和UDP或TCP端口号或ICMP类型,

其中,所述用户数据包是封装在隧道目的地是网关转发面功能的隧道内的IP数据包或无隧道封装的IP数据包;

所述动作用于对网关转发面功能收到的GTP-U数据包或用户数据包进行处理,所述动作包括:将网关转发面功能收到的数据包封装到网关转发面功能与网关控制面功能间的逻辑通道中发送给网关控制面功能。

进一步地,所述动作中包括网关控制面功能的隧道信息和网关转发面功能的本端隧道信息。

本发明还提供一种基于SDN的网关中控制报文的处理系统,设置于网关控制面功能,包括第一处理模块,用于在网关转发面功能和网关控制面功能之间为每个IP连接建立逻辑通道,其中,所述逻辑通道用于在网关转发面功能和网关控制面功能之间转发与所述IP连接相关的控制报文。

进一步地,所述控制报文包括:

用于通过所述IP连接且目的地是网关控制面功能的报文;或者,

用于通过所述IP连接且目的地是组播、任意播或广播地址的报文;或者,

用于网关控制面功能发给用户终端的报文;或者,

所述IP连接相关的GPRS通道协议-用户面GTP-U控制报文;或者,

所述IP连接相关的触发寻呼的数据报文。

进一步地,上述处理系统还包括第二处理模块,用于通过SDN控制器 为所述网关转发面功能设置所述控制报文的转发规则表。

进一步地,所述转发规则表至少包括规则和动作,其中:所述规则用于识别所述IP连接相关的控制报文,所述规则包括:

网关转发面功能收到的GTP-U数据包的GTP-U报文类型;和/或,

网关转发面功能收到的GTP-U数据包的GTP-U目的隧道ID;和/或,

网关转发面功能收到的用户数据包的源IP地址和/或目的IP地址;和/或,

网关转发面功能收到的用户数据包的类型,所述类型包括协议类型和UDP或TCP端口号或ICMP类型,

其中,所述用户数据包是封装在隧道目的地是网关转发面功能的隧道内的IP数据包或无隧道封装的IP数据包;

所述动作用于对网关转发面功能收到的GTP-U数据包或用户数据包进行处理,所述动作包括:将网关转发面功能收到的数据包封装到网关转发面功能与网关控制面功能间的逻辑通道中发送给网关控制面功能。

进一步地,所述动作中包括网关控制面功能的隧道信息和网关转发面功能的本端隧道信息。

在本发明中,在网关转发面功能和网关控制面功能间为每个IP连接建立一条专用的逻辑通道,该专用的逻辑通道用于在网关转发面功能和网关控制面功能间转发控制报文。即,将所有从某一IP连接收到的数据中的控制报文指向上述专用逻辑通道,从而使得网关转发面功能将控制报文通过上述专用逻辑通道转发给网关控制面功能。如此,通过所述专用的逻辑通道,避免了现有技术中IP控制报文中所使用标识信息的冲突,从而避免了网关控制面功能及网关转发面功能无法将控制报文正确匹配用户的问题,同时,避免了SDN控制器转发大量控制报文,确保了SDN控制器的性能。

附图说明

图1为本发明较佳实施例提供的基于SDN的网关中控制报文的处理方法的实现架构图;

图2为图1中的网关转发面功能的接口示意图;

图3为本发明较佳实施例提供的基于SDN的网关中控制报文的处理方法的流程图;

图4为本发明第一实施例的流程图;

图5为本发明第二实施例的流程图;

图6为本发明第一实施例或第二实施例中UE断开PDN连接或网络去附着的流程图;

图7为本发明第三实施例UE进入空闲态时的流程图;

图8为本发明第三实施例UE处于空闲态时,网关转发面功能收到UE的下行数据时的处理流程图;

图9为本发明第四实施例的流程图;

图10为本发明第五实施例的流程图;

图11为本发明第四实施例或第五实施例中UE断开PDN连接或网络去附着的流程图;

图12为本发明第六实施例的流程图;

图13为本发明第七实施例UE进入空闲态时的流程图;

图14为本发明第七实施例UE处于空闲态时,接入网关AGW收到UE的下行数据时的处理流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为本发明较佳实施例提供的基于SDN的网关中控制报文的处理方法的实现架构图。如图1所示,网关控制面功能负责为终端建立转发面功能,如,选择终端接入的网关转发面功能、为终端的IP连接建立转发面逻辑链路(如,GTP-U隧道的建立)、为终端的接入分配IP地址等。网关控制面功能在为终端建立了网关转发面功能之后,还为网关转发面功能配置转发规 则表。该转发规则表决定了网关转发面功能如何为用户IP数据包选择下一跳路由以及发往下一跳路由的封装方式。网关控制面功能通过SDN控制器将上述转发规则表配置到网关转发面功能。同时,网关控制面功能还与接入控制功能接口,以授权为终端分配转发面资源、获取用户的签约信息(用于带宽控制、计费等)等。网关转发面功能负责用户IP数据包的转发。网关转发面功能可将用户IP数据包转发给网关控制面功能,也可将用户IP数据包转发给其他下一跳路由,如发给通往Internet网络的下一跳路由器。

其中,接入控制功能负责对终端接入的控制,如,对终端进行接入认证、决定终端的接入属性(如带宽等)等,在移动网络中,接入控制功能还负责移动性的管理,包括在连接态和空闲态两种状态下用户的移动性管理。接入点是终端的接入设备。当用户通过固网接入时,该接入设备可能是家庭网关(RG,Residential Gateway)、接入点(AP,Access Point)、或其他客户终端设备(CPE,Customer Premise Equipment)。当用户通过移动网络接入时,该接入设备可能是节点B(NB)、演进的节点B(eNB)、家庭基站、或AP等设备。

在实际部署中,网关控制面功能可以是一个物理实体,也可以是运行在虚拟机上的一个虚拟网元。同时,网关控制面功能还可以是SDN控制器上的一个应用程序(APP),通过北向接口与SDN控制器接口。网关转发面功能支持Open Flow协议,用于流表的配置。在实际部署中,网关转发面功能可以是一个或多个交换机或者其他专用设备的组合。

图2为图1中的网关转发面功能的接口示意图。

如图2所示,网关转发面功能至少有3个接口,分别与下游节点(如:接入点设备)、网关控制面功能(如网关控制面设备)、以及上游节点(如:下一跳路由器或交换机)相连,分别对应图2中的接口1、接口2和接口3。

接口1上分成很多逻辑端口,每个逻辑端口对应一个IP连接,每个逻辑端口有对应的逻辑端口号。以无线网络为例,接口1上的逻辑端口为GTP-U隧道,每个IP连接对应一个GTP-U隧道,网关转发面功能用一个或一组隧道ID(隧道端点标识(TEID-U,Tunnel Endpoint Identifier))和隧道IP地址标识一个逻辑端口。相应地,网关转发面功能与网关控制面功能 接口(即,接口2)为每个IP连接分配一个逻辑端口,该逻辑端口也可用网关转发面功能的隧道IP和隧道ID标识。然而,本发明对此并不限定,于其他实施例中,也可用其他方式来标识。网关转发面功能与上游节点相连的接口(即接口3)根据应用场景的不同可以是一个简单的二层端口,也可能是针对某个虚拟专用网络(VPN,Virtual Private Network)的隧道。若上游节点是连接到Internet的路由器或交换机,或者是连接到某个分组数据网(PDN,Packet Data Network)网络的路由器或交换机,则在接口3不区分IP连接,亦即,所有从Internet或PDN网络来的数据都混合在一起发送给网关转发面功能,网关转发面功能需对数据包进行分类,以确定从哪个接口的哪个逻辑端口发送出去。

如图3所示,本发明较佳实施例提供的基于SDN的网关中控制报文的处理方法,包括:步骤11:在网关转发面功能和网关控制面功能之间为每个IP连接建立逻辑通道;步骤12:在网关转发面功能和网关控制面功能之间通过所述逻辑通道转发与所述IP连接相关的控制报文。

在较佳实施例中,控制报文包括:

用于通过IP连接且目的地是网关控制面功能的报文;或者,

用于通过IP连接且目的地是组播、任意播或广播地址的报文;或者,

用于网关控制面功能发给用户终端的报文;或者,

IP连接相关的GTP-U控制报文;或者,

IP连接相关的触发寻呼的数据报文。

于较佳实施例中,在步骤11的过程中,上述方法还包括:网关控制面功能通过SDN控制器为网关转发面功能设置控制报文的转发规则表。

于较佳实施例中,转发规则表至少包括规则和动作,其中,规则用于识别IP连接相关的控制报文,规则包括:

网关转发面功能收到的GTP-U数据包的GTP-U报文类型;和/或,

网关转发面功能收到的GTP-U数据包的GTP-U目的隧道ID;和/或,

网关转发面功能收到的用户数据包的源IP地址和/或目的IP地址;和/或,

网关转发面功能收到的用户数据包的类型,所述类型包括协议类型和用户数据报协议(UDP,User Datagram Protocol)或传输控制协议(TCP,Transmission Control Protocol)端口号或互联网控制报文协议(ICMP,Internet Control Message Protocol)类型,

其中,所述用户数据包是封装在隧道目的地是网关转发面功能的隧道内的IP数据包或无隧道封装的IP数据包;

所述动作用于对网关转发面功能收到的GTP-U数据包或用户数据包进行处理,所述动作包括:将网关转发面功能收到的数据包封装到网关转发面功能与网关控制面功能间的逻辑通道中发送给网关控制面功能。

此外,所述动作中还包括网关控制面功能的隧道信息和网关转发面功能的本端隧道信息。

参照图2,若逻辑端口对应的是隧道连接,则网关转发面功能的入端口使用隧道本端信息标识,网关转发面功能的出端口使用隧道对端信息标识。以接口1采用GTP-U隧道为例,接口1的入端口用网关转发面功能接口1的IP地址和网关转发面功能接口1逻辑端口的隧道ID(即TEID-U)标识,即,在接口1上,本端TEID-U标识一个入端口;接口1的出端口用下游节点的IP地址和下游节点的隧道ID(即TEID-U)标识,即,在接口1上,下游节点的IP地址和下游节点的隧道ID(即TEID-U)标识一个出端口。同样,在接口2上,本端隧道ID标识一个入端口,对端IP地址和隧道ID标识一个出端口。在接口3上,入端口可以是一个三层隧道,也可以是一个普通二层接口。

在网关转发面功能上的转发规则表分为上行和下行方向。其中,上行方向是指从下游节点收到数据发往上游节点或网关控制面设备;下行方向则从上游节点或网关控制面设备发往下游节点的数据包。网关转发面功能的上行转发规则表如表1所示:

表1

在上述转发规则表中,条目1根据入端口和目的地址决定下一跳,若目的地址是组播、广播、任意播、或者是网关控制面地址时,根据接口1的隧道ID选择下一跳。条目2中,网关转发面功能直接根据报文的目的IP地址决定要转发的下一跳,比如,一个发往Internet上某个服务器的数据包,根据数据包的IP地址决定合适的转发接口将之发送出去(其中,网关转发面功能可能有多个接口3)。条目3中,网关转发面功能根据接口1隧道ID决定下一跳,这种场景适用于一些特殊的连接,比如VPN,若终端请求建立的IP连接将用于VPN,则在终端的IP连接建立请求中将携带相应的指示,在移动网络中用接入点名称(APN,Access Point Name)指示所要建立的IP连接的类型。在网关转发面功能的转发规则表中,将接口1隧道ID与VPN隧道关联,所有来自接口1特定隧道中的数据都转发到指定的VPN隧道中。条目4中,GTP-U的类型是信令报文,对此类数据包根据接口1的隧道ID选择下一跳。

网关转发面功能的下行转发规则表如表2所示:

表2

在网关转发面功能的下行转发规则中,网关转发面功能可以直接根据接口2的隧道ID决定下一跳隧道信息;或者根据报文中的目的IP查询接口1的隧道信息;或者结合接口3的隧道IP和报文的目的IP查询接口1对端IP和对端隧道ID。

以下参照图4至图14对本发明较佳实施例加以详细说明。

图4为本发明第一实施例的流程图。在图4中,以移动网络为例,说明本发明较佳实施例中,网关转发面功能和网关控制面功能之间与IP连接相关的隧道的建立过程、网关控制面功能为网关转发面功能配置的转发规则表、以及网关转发面功能如何根据网关控制面功能的配置转发数据。

在图4中,eNB对应图1中的接入点,移动管理实体MME对应图1中的接入控制功能。本发明并不限定接入控制功能的命名。在实际网络中,可用其他名字命名接入控制功能。接入控制功能完成的功能包括:用户的接入认证、用户的移动性管理、用户IP连接的建立和管理等功能。在图4中,网关控制面功能和网关转发面功能构成了4G移动网络中的移动网关设备的服务网关(SGW,Serving Gateway)和分组数据网关(PGW,Packet Data Network Gateway)。图4所示为结合PGW和SGW一起的流程图。但是,在实际网络中,PGW和SGW可能是分开的,若PGW和SGW是分开部署的,则图4中的网关控制面功能对应的是PGW的控制面功能,网关转发面功能对应的是PGW的转发面功能。

下面对图4所示的各步骤加以详细说明:

步骤101a:UE给MME发送PDN连接建立请求。或者,步骤101b:在UE附着到网络(Attach)的过程中触发MME建立PDN连接。

步骤102:MME选择网关,并给该网关对应的网关控制面功能发送会话建立请求。在会话建立请求中,MME可将要建立的PDN的类型通知给网关控制面功能,以便网关控制面功能为UE选择合适的网关转发面资源。若在步骤101a或步骤101b收到UE发送的IP地址请求,MME也将UE的IP地址请求发送给网关控制面功能。

步骤103:网关控制面功能根据步骤102收到的PDN类型以及其他信息(如UE的位置信息、网关转发面功能的负荷信息等)为待建立的PDN连接选择网关转发面功能资源。网关控制面功能为待建立的PDN连接分配上行隧道信息,包括上行隧道的IP地址和GTP-U隧道的TEID-U,同时,网关控制面功能还为该PDN连接建立网关控制面功能到网关转发面功能之间的隧道(即逻辑通道),该隧道包括网关控制面功能的隧道ID和隧道IP及网关转发面功能对应的隧道ID和隧道IP。网关控制面功能为待建立的PDN连接分配IP地址。若IP地址池不是由网关控制面功能本地管理,网关控制面功能还需向管理IP地址池的功能实体获取IP地址。其中,一种常用的获取IP地址的方法是网关控制面功能作为DHCP客户端(Client)向DHCP服务器(Server)获取IP地址。

网关控制面功能生成该PDN连接对应的转发规则表,并将该转发规则表发送给网关转发面功能,以便网关转发面功能能按该转发规则表转发数据。具体转发规则表的内容参见表1和表2。

步骤104:网关转发面功能给网关控制面功能发送配置更新响应。

步骤105:网关控制面功能给MME发送会话建立响应。在该消息中,网关控制面功能将其为网关转发面功能分配的上行隧道ID和上行隧道IP发送给MME。若网关控制面功能为UE分配了IP地址或IPv6前缀,网关控制面功能也在该消息中将其为UE分配的IP地址或IPv6前缀发送给MME。

步骤106:MME请求eNB为新建立的PDN连接分配无线资源。在该消息中MME将网络接入服务器(NAS,Network Attached Server)消息(如PDN连接建立响应)捎带给UE。MME将网关转发面功能的上行隧道ID和隧道IP发送给eNB。

步骤107:eNB发起无线资源控制(RRC,Radio Resource Control)重 配置过程,为UE配置新建的PDN连接所需的无线资源,且将MME捎带的NAS消息发送给UE。

步骤108:eNB给MME发送承载分配响应。在该消息中,eNB将为该PDN连接分配的eNB下行隧道IP和隧道ID发送给MME。

步骤109:UE发送NAS消息(如PDN连接建立完成)给MME。

步骤110:MME发送更新承载请求给网关控制面功能,在该消息中MME将eNB的下行隧道IP和隧道ID发送给网关控制面功能。

步骤111:网关控制面功能更新转发规则表,并发送更新配置请求给网关转发面功能,更新网关转发面功能的转发规则表。

步骤112:网关转发面功能发送更新配置响应给网关控制面功能。

步骤113:网关控制面功能发送更新承载响应给MME。

步骤114:PDN连接建立完成后,UE发起IP地址配置流程。若UE采用IPv6无状态地址自动配置协议进行地址配置,UE可能会发送RS消息给网络。

步骤115:网关转发面功能收到UE发送的RS消息后,根据转发规则表确定该消息需通过该UE的PDN连接关联的隧道发送给网关控制面功能。

步骤116:若网关控制面功能收到UE的RS消息,或者网关控制面功能决定主动给UE发送地址广播,网关控制面功能通过网关转发面功能发送RA消息给UE。网关控制面功能根据收到RS消息的隧道,或根据UE的ID决定从哪个隧道将数据发送给网关转发面功能。

步骤117:网关转发面功能从网关控制面功能收到RA消息后,根据收到RA消息的隧道ID确定从哪个隧道将数据发送给UE。

图5为本发明第二实施例的流程图。在图5中,UE采用DHCP方式获取IP地址。其中,图5中的步骤201a~步骤213与图4中的步骤101a~步骤113相同,这里不再赘述。

步骤214:PDN连接建立完成后,UE发起IP地址配置流程。若UE采用DHCPv4方式配置地址,UE发送DHCP Discovery广播消息;若UE采用DHCPv6方式配置地址,UE发送DHCP Solicit消息给All_DHCP_Servers组 播地址或All_DHCP_Relay_Agents_and_Servers组播地址。

步骤215:网关转发面功能收到UE发来的DHCP Discovery或DHCP Solicit消息后,根据转发规则表确定该消息需通过该UE的PDN连接关联的隧道发送给网关控制面功能。网关转发面功能将DHCP Discovery或DHCP Solicit消息通过关联隧道发送给网关控制面功能。

步骤216:网关控制面功能收到DHCP Discovery或DHCP Solicit消息后,通过网关转发面功能给UE发送响应消息DHCP Offer(对应DHCPv4方式)或DHCP Advertisement(对应DHCPv6方式),该消息的源地址是网关控制面功能的IP地址,同时,将DHCP Server设为网关控制面功能。网关控制面功能将DHCP消息通过管理隧道发送给网关转发面功能。

步骤217:网关转发面功能收到DHCP Offer或DHCP Advertisement消息,根据入端口的隧道ID确定下一跳隧道信息,并通过该隧道将上述消息发送给UE。

步骤218:UE通过网关转发面功能发送DHCP(DHCPv4或DHCPv6)Request消息给网关控制面功能。

步骤219:网关转发面功能收到DHCP Request消息,判断目的地址是网关控制面功能后,网关转发面功能查询转发规则表,根据入端口查询下一跳隧道信息,并将DHCP Request消息封装到隧道中发送给网关控制面功能。

步骤220:网关控制面功能收到DHCP Request消息后将给UE分配的IP地址和网络配置参数封装到DHCP Reply消息中,并通过相应隧道将DHCP Reply消息发送给网关转发面功能。

步骤221:网关转发面功能收到DHCP Reply消息后,根据入端口的隧道ID确定下一跳隧道信息,并通过该隧道将上述消息发送给UE。

图6为本发明第一实施例或第二实施例中UE断开PDN连接或网络去附着的流程图。在图6中,网关控制面功能和网关转发面功能之间的隧道被拆除。下面对图6所示的各步骤加以详细说明:

步骤301a:UE给MME发送PDN连接断开请求。或者,步骤301b:在UE从网络去附着(Detach)的过程中触发MME断开PDN连接。

步骤302:MME向该PDN连接对应网关的网关控制面功能发送会话删除请求。

步骤303:网关控制面功能通过SDN控制器给网关转发面功能发送配置更新请求,将与上述PDN相关的转发表从网关转发面功能删除。

步骤304:网关转发面功能给网关控制面功能发送配置更新响应。

步骤305:网关控制面功能给MME发送会话删除响应。

步骤306:MME请求eNB删除该PDN连接对应的无线资源。

步骤307:eNB发起RRC重配置过程,删除该PDN连接对应的无线资源,且将MME捎带的NAS消息发送给UE。

步骤308:eNB给MME发送承载删除响应。

步骤309:UE发送NAS消息(如PDN连接断开完成)给MME。

图7为本发明第三实施例UE进入空闲态(IDLE)时的流程图。在该流程中,网关转发面功能和eNB间的服务于PDN承载的隧道被释放,网关转发面功能中该UE的PDN连接对应的下行流表需要修改为指向网关控制面功能。当网关转发面功能后续收到该UE的下行数据时,网关转发面功能将UE的下行数据发送给网关控制面功能,从而触发寻呼。同时网关转发面功能缓存数据,当寻呼结束,建立起网关转发面功能到eNB间的隧道时,网关转发面功能将缓存的数据发送给UE。在图7中,UE进入IDLE状态触发网关控制面功能为该UE的PDN连接修改网关转发面功能对应的流表,使之能缓存数据,并且能将空闲态的UE的下行数据发送给网关控制面功能。

下面对图7所示的各步骤加以详细描述:

步骤401:eNB决定UE进入IDLE态,eNB给MME发送S1释放请求。

步骤402:MME向网关控制面功能发送修改承载请求。

步骤403:网关控制面功能通过SDN控制器修改网关转发面功能的下行转发表,使之缓存收到的该UE的下行数据,并将收到的UE的下行数据发送给网关控制面功能。修改后的流表示例如下:

MATCH=UE IP,ACTION=Buffer(长度,时延),ENCAP_隧道(目 的MAC,源MAC,目的IP=网关控制面功能IP,源IP=网关转发面功能IP,目的隧道ID),output(outport)。

步骤404:网关转发面功能通过SDN控制器给网关控制面功能发送响应。

步骤405:网关控制面功能给MME发送修改承载响应。

步骤406:继续后续S1释放流程。

图8为本发明第三实施例UE处于IDLE态时,网关转发面功能收到UE的下行数据时的处理流程图。下面对图8所示的各步骤具体描述如下:

步骤501:网关转发面功能收到UE的下行数据包。

步骤502:网关转发面功能查找下行转发表,根据下行转发表的规则,网关转发面功能缓存该下行数据包,并将数据封装后发送给网关控制面功能。

步骤503:网关控制面功能收到UE的下行数据包后,根据目的IP地址和接收该数据包所在的隧道,判断该数据包是UE的下行数据包,网关控制面功能决定为该UE发起寻呼流程。网关控制面功能给MME发送寻呼请求。

步骤504:MME给eNB发送寻呼请求。

步骤505:eNB发送寻呼消息。

步骤506:UE收到寻呼消息后发起业务请求流程。

步骤507:在业务请求流程中,MME向网关控制面功能发送修改承载请求。

步骤508:网关控制面功能通过SDN控制器修改网关转发面功能的下行转发表,将该UE对应的下行转发表中的缓存功能删除,并将下行隧道指向eNB。修改后的下行转发表示例如下:

MATCH=UE IP,<其他匹配项>;ACTION=ENCAP_GTPU(source MAC,dst MAC,目的IP=eNB IP,源IP=网关转发面功能IP,eNB隧道TEID-U);output(outport)。

步骤509:网关转发面功能通过SDN控制器发送响应。

步骤510:网关控制面功能给MME发送修改承载响应。

步骤511:下行数据从网关转发面功能发送给eNB,再发送给UE。

图9为本发明第四实施例的流程图。在图9中,本地控制功能/全局控制功能(LCF/GCF)对应图1中的接入控制功能,NB对应图1中的接入点。与图4所示的第一实施例和图5所示的第二实施例不同的是,在图9中有2个网关,接入网关控制器(AGW-C)和接入网关(AGW)组合在一起相当于4G网络中的SGW,全局网关控制器(GGW-C)和全局网关(GGW)组合在一起的功能类似4G网络中的PGW。与4G网络不同的是,在图9中,AGW-C作为DHCP Server或者作为UE的缺省网关,负责为UE分配IP地址,但IP地址归属于GGW-C/GGW,GGW-C通过控制面信令流程将为UE分配的IP地址发送给AGW-C。在AGW和GGW间建立网元级隧道,用户的IP数据包从AGW通过该网元级隧道发送给GGW后再由GGW发送给外部PDN网络。AGW与NB间建立PDN级别的隧道,AGW收到来自GGW的下行数据时,根据数据包的目的IP地址查询下行隧道信息,将数据包封装到对应的隧道中发送给NB。

在图9中,AGW-C与GGW-C间无接口,隧道的建立均通过LCF/GCF分别与AGW-C和GGW-C间的信息交互过程建立。但是,在实际网络中不排除AGW-C与GGW-C间通过直接的接口建立AGW与GGW间隧道的方法。

下面对图9所示的各步骤加以详细说明:

步骤601a:UE给LCF/GCF发送PDN连接建立请求。或者,步骤601b:在UE附着到网络(Attach)的过程中触发LCF/GCF建立PDN连接。

步骤602:LCF/GCF选择AGW-C,并给选中的AGW-C发送会话建立请求。在会话建立请求中,LCF/GCF可将要建立的PDN的类型通知给AGW-C,以便AGW-C为UE选择合适的AGW。若在步骤601a或步骤601b收到UE发送的IP地址请求,LCF/GCF也将UE的IP地址请求发送给AGW-C。

AGW-C根据收到的PDN类型以及其他信息(如UE的位置信息、AGW 的负荷信息等)为待建立的PDN连接选择AGW。AGW-C为待建立的PDN连接分配上行隧道信息,包括上行隧道的IP地址和GTP-U隧道的TEID-U,同时,AGW-C还为该PDN连接建立AGW-C到AGW间的隧道,该隧道包括AGW-C的隧道ID和隧道IP及AGW对应的隧道ID和隧道IP。AGW-C分配AGW与GGW间的隧道信息,若AGW与GGW间是网元级隧道,AGW-C配置该隧道的AGW端IP地址。

步骤603:AGW-C发送会话建立响应给LCF/GCF,在该消息中AGW-C将AGW与GGW间的隧道的AGW端隧道信息(如AGW端隧道IP地址)、AGW对NB端隧道的AGW端隧道信息发送给LCF/GCF。

步骤604:LCF/GCF选择GGW-C,并给GGW-C发送会话建立请求。在该请求中,LCF/GCF将UE请求的APN和步骤603中获得的AGW与GGW间隧道的AGW端隧道信息发送给GGW-C。

步骤605:GGW-C为待建立的PDN连接分配IP地址。若IP地址池不是由GGW-C本地管理,GGW-C还需向管理IP地址池的功能实体获取IP地址。其中,一种常用的获取IP地址的方法是GGW-C作为DHCP Client向DHCP Server获取IP地址。

GGW-C生成该PDN连接对应的转发规则表,并将该转发规则表发送给GGW,以便GGW能按该转发规则表转发数据。具体转发规则表的内容参见:

下行方向:UE的IP地址:AGW端隧道IP,GGW端隧道IP;

上行方向:目的IP地址:下一跳。

步骤606:GGW向GGW-C发送配置响应。

步骤607:GGW-C给LCF/GCF发送会话建立响应。GGW-C将给UE分配的IP地址、GGW与AGW间隧道的GGW端隧道信息发送给LCF/GCF。

步骤608:LCF/GCF请求NB为新建立的PDN连接分配无线资源。在该消息中LCF/GCF将NAS消息(如PDN连接建立响应)捎带给UE。LCF/GCF将AGW的上行隧道ID和隧道IP发送给NB。

步骤609:NB发起RRC重配置过程,为UE配置新建的PDN连接所需 的无线资源,且将LCF/GCF捎带的NAS消息发送给UE。

步骤610:NB给LCF/GCF发送承载分配响应。在该消息中,NB将为该PDN连接分配的NB下行隧道IP和隧道ID发送给LCF/GCF。

步骤611:UE发送NAS消息(如PDN连接建立完成)给LCF/GCF。

步骤612:LCF/GCF发送更新会话请求给AGW-C,在该消息中LCF/GCF将NB的下行隧道IP和隧道ID发送给AGW-C。

步骤613:AGW-C为PDN连接生成转发规则表,并发送配置更新请求给AGW,更新AGW的转发规则表。AGW中的转发规则表例如参见表1和表2。

步骤614:AGW发送配置更新响应给AGW-C。

步骤615:AGW-C发送更新会话响应给LCF/GCF。

PDN连接建立完成后,在UE和AGW间建立了Per PDN的转发面隧道,该隧道用于传送从UE发出或发给UE的IP数据包。在上述流程完成后,UE发起IP地址配置流程。

步骤616:若UE采用IPv6无状态地址自动配置协议进行地址配置,UE发送RS消息给网络。

步骤617:AGW收到UE发送的RS消息后,根据转发规则表确定该消息需通过该UE的PDN连接关联的隧道发送给AGW-C。

步骤618:若AGW-C收到UE的RS消息,或者AGW-C决定主动给UE发送地址广播,AGW-C通过AGW发送RA消息给UE。AGW-C根据收到RS消息的隧道,或根据UE的ID决定从哪个隧道将数据发送给AGW。

步骤619:AGW从AGW-C收到RA消息后,根据收到RA消息的隧道ID确定从哪个隧道将数据发送给UE。

图10为本发明第五实施例的流程图。图10所示的第五实施例与图9所示的第四实施例的不同是:在图10中,UE采用DHCP方式获取IP地址。其中,图10所示的步骤701a~715与图9中的步骤601a~615相同,这里不再赘述。

步骤716:PDN连接建立完成后,UE发起IP地址配置流程。若UE采用DHCPv4方式配置地址,UE发送DHCP Discovery广播消息;若UE采用DHCPv6方式配置地址,UE发送DHCP Solicit消息给All_DHCP_Servers组播地址或All_DHCP_Relay_Agents_and_Servers组播地址。

步骤717:AGW收到UE发来的DHCP Discovery或DHCP Solicit消息后,根据转发规则表确定该消息需通过该UE的PDN连接关联的隧道发送给AGW-C。AGW将DHCP Discovery或DHCP Solicit消息通过关联隧道发送给AGW-C。

步骤718:AGW-C收到DHCP Discovery或DHCP Solicit消息后给UE发送响应消息DHCP Offer(对应DHCPv4方式)或DHCP Advertisement(对应DHCPv6方式),该消息的源地址是AGW-C的IP地址,同时,将DHCP Server设为AGW-C。AGW-C将DHCP消息通过管理隧道发送给AGW。

步骤719:AGW收到DHCP Discovery或DHCP Solicit消息后,根据入端口的隧道ID确定下一跳隧道信息,并通过隧道将上述消息发送给UE。

步骤720:UE发送DHCP Request消息给AGW-C,该数据包的目的地址是AGW-C的IP地址。

步骤721:AGW收到DHCP Request,判断目的地址是AGW-C,AGW查询转发规则表,根据入端口查询下一跳隧道信息,并将DHCP Request消息封装到隧道中发送给AGW-C。

步骤722:AGW-C收到DHCP request后将给UE分配的IP地址和网络配置参数封装到DHCP Reply消息中,并通过相应隧道将DHCP Reply消息发送给AGW。

步骤723:AGW收到DHCP Reply消息后,根据入端口的隧道ID确定下一跳隧道信息,并通过隧道将上述消息发送给UE。

图11为本发明第四实施例或第五实施例中UE断开PDN连接或网络去附着的流程图。在图11中,网关控制面功能和网关转发面功能之间的隧道被拆除。下面对图11所示的各步骤加以详细说明:

步骤801a:UE给LCF/GCF发送PDN连接断开请求。或者,步骤801b: 在UE从网络去附着(Detach)的过程中触发LCF/GCF断开PDN连接。

步骤802:LCF/GCF给该PDN连接对应的AGW-C发送会话删除请求。

步骤803:AGW-C通过SDN控制器给AGW发送更新配置请求,将该PDN连接对应的转发表删除。

步骤804:AGW给AGW-C发送更新配置响应。

步骤805:AGW-C发送会话删除响应给LCF/GCF。

步骤806:LCF/GCF给该PDN连接对应的GGW-C发送会话删除请求。

步骤807:若需更新GGW的转发规则表,GGW-C发送更新配置请求给GGW,删除该PDN连接对应的转发规则表。

步骤808:GGW发送更新配置响应给GGW-C。

步骤809:GGW-C给LCF/GCF发送会话删除响应。

步骤810:LCF/GCF请求NB删除PDN连接对应的无线资源。在该消息中LCF/GCF将NAS消息(如PDN连接删除响应)捎带给UE。

步骤811:NB发起RRC重配置过程,该PDN连接相关无线资源删除,且将LCF/GCF捎带的NAS消息发送给UE。

步骤812:NB给LCF/GCF发送承载删除响应。

步骤813:UE发送NAS消息(如PDN连接断开完成)给LCF/GCF。

图12为本发明第六实施例的流程图。在图12中,eNB对应图1中的接入点,MME对应图1中的接入控制功能。在图12中,eNB发送GTP-U控制报文给网关控制面功能,网关控制面功能对GTP-U控制报文进行处理。其中,图12所示的步骤901a~步骤913与图4中的步骤101a~113相同,在这里不再赘述。下面对图12中的步骤914~917加以详细说明:

步骤914:eNB发送GTP-U控制报文给网关转发面功能。其中,GTP-U控制报文可包括ECHO(应答)、ECHO响应、Error Indication(错误指示)、End Mark(结束标记)等。

步骤915:网关转发面功能根据收到的GTP-U控制报文的目的端口号查询出端口对应的网关控制面功能的隧道IP地址和端口号,以及出端口对应 的本端隧道IP地址。网关转发面功能将收到的GTP-U控制报文按出端口信息进行重新封装后发送给网关控制面功能。

步骤916:网关控制面功能发送GTP-U控制报文给网关转发面功能。其中,GTP-U控制报文可包括ECHO、Error Indication、End Mark等。

步骤917:网关转发面功能根据收到的GTP-U控制报文的目的端口号查询出端口对应的eNB的隧道IP地址和端口号,以及出端口对应的本端隧道IP地址。网关转发面功能将收到的GTP-U控制报文按出端口信息进行重新封装后发送给eNB。

图13为本发明第七实施例UE进入IDLE态时的流程图。在该流程中,AGW和NB间的服务于PDN承载的隧道被释放,AGW中该UE的PDN连接对应的下行流表需要修改为指向AGW-C。当AGW后续收到该UE的下行数据时,AGW将UE的下行数据发送给AGW-C,从而触发寻呼。同时AGW缓存数据,当寻呼结束,建立起AGW到NB间的隧道时,AGW将缓存的数据发送给UE。在图13中,UE进入IDLE状态触发AGW-C为该UE的PDN连接修改AGW对应的流表,使之能缓存数据,并且能将空闲态的UE的下行数据发送给AGW-C。

下面对图13所示的各步骤加以详细描述:

步骤1001:NB决定UE进入IDLE态,NB给LCF/GCF发送UE上下文释放请求。

步骤1002:LCF/GCF向AGW-C发送更新会话请求。

步骤1003:AGW-C通过SDN控制器修改AGW的下行转发表,使之后续缓存收到的该UE的下行数据,并将收到的该UE的下行数据发送给AGW-C。修改后的流表示例如下:

MATCH=UE IP,ACTION=Buffer(长度,时延),ENCAP_隧道(源MAC,目的MAC,目的IP=AGW-C IP,源IP=AGW IP,目的隧道ID),output(outport)。

步骤1004:AGW通过SDN控制器给AGW-C发送响应。

步骤1005:AGW-C给LCF/GCF发送修改会话响应。

步骤1006:继续后续UE上下文释放流程。

图14为本发明第七实施例UE处于空闲态时,AGW收到UE的下行数据时的处理流程图。下面对图14所示的各步骤加以具体描述:

步骤1101:AGW收到UE的下行数据包,该数据包可能来自GGW或者直接来自外部网络。

步骤1102:AGW查找下行转发表,根据找到的下行转发表的规则,AGW缓存该下行数据包,并将数据包封装后发送给AGW-C。

步骤1103:AGW-C收到UE的下行数据包后,根据目的IP地址和接收该数据包所在的隧道,判断该数据包是UE的下行数据包,AGW-C决定为该UE发起寻呼流程。AGW-C给LCF/GCF发送寻呼请求。

步骤1104:LCF/GCF给NB发送寻呼请求。

步骤1105:NB发送寻呼消息。

步骤1106:UE收到寻呼消息后发起业务请求流程。

步骤1107:在业务请求流程中,LCF/GCF向AGW-C发送修改承载请求。

步骤1108:AGW-C通过SDN控制器修改AGW的下行转发表,将该UE对应的下行转发表中的缓存功能删除,并将下行隧道指向NB。修改后的下行转发表示例如下:

MATCH=UE IP,<其他匹配项>;ACTION=ENCAP_GTPU(source MAC,dst MAC,目的IP=NB IP,源IP=AGW IP,目的隧道ID=NB隧道TEID-U);output(outport)。

步骤1109:AGW通过SDN控制器给AGW-C发送响应。

步骤1110:AGW-C给LCF/GCF发送修改会话响应。

步骤1111:下行数据从GGW/AGW发送给NB,再发送给UE。

在本发明的上述实施例中,接入点与网关转发面功能间的接入采用隧道方式,特别描述了GTP-U隧道模式。然而,本发明对此并不限定。在实际应用时,接入点与网关转发面功能间的逻辑链路也可采用其他形式,只要这 个逻辑链路能标识不同的IP连接即可。此外,采用其他方式区分不同IP连接的方法在本发明中不再赘述,本领域的技术人员可根据需要做出相应的改变。

此外,本发明较佳实施例还提供一种基于SDN的网关中控制报文的处理系统,设置于网关控制面功能,包括第一处理模块,用于在网关转发面功能和网关控制面功能之间为每个IP连接建立逻辑通道,其中,所述逻辑通道用于在网关转发面功能和网关控制面功能之间转发与所述IP连接相关的控制报文。

于较佳实施例中,所述控制报文包括:

用于通过所述IP连接且目的地是网关控制面功能的报文;或者,

用于通过所述IP连接且目的地是组播、任意播或广播地址的报文;或者,

用于网关控制面功能发给用户终端的报文;或者,

所述IP连接相关的GPRS通道协议-用户面GTP-U控制报文;或者,

所述IP连接相关的触发寻呼的数据报文。

于较佳实施例中,上述处理系统还包括第二处理模块,用于通过SDN控制器为所述网关转发面功能设置所述控制报文的转发规则表。所述转发规则表至少包括规则和动作,其中:所述规则用于识别所述IP连接相关的控制报文,所述规则包括:

网关转发面功能收到的GTP-U数据包的GTP-U报文类型;和/或,

网关转发面功能收到的GTP-U数据包的GTP-U目的隧道ID;和/或,

网关转发面功能收到的用户数据包的源IP地址和/或目的IP地址;和/或,

网关转发面功能收到的用户数据包的类型,所述类型包括协议类型和UDP或TCP端口号或ICMP类型,

其中,所述用户数据包是封装在隧道目的地是网关转发面功能的隧道内的IP数据包或无隧道封装的IP数据包;

所述动作用于对网关转发面功能收到的GTP-U数据包或用户数据包进行处理,所述动作包括:将网关转发面功能收到的数据包封装到网关转发面功能与网关控制面功能间的逻辑通道中发送给网关控制面功能。进一步地,所述动作中包括网关控制面功能的隧道信息和网关转发面功能的本端隧道信息。

另外,关于上述系统的具体处理过程同上述方法所述,故于此不再赘述。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。

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