一种数据处理方法、用户面功能及装置与流程

文档序号:29027077发布日期:2022-02-24 09:39阅读:77来源:国知局
1.本发明涉及通信
技术领域
:,尤其涉及一种数据处理方法、用户面功能及装置。
背景技术
::2.软件定义网络(sdn)的主要思想是控制平面和转发平面的分离;网络资源集中控制和调度;开放的可编程能力,允许应用对网络资源的编程调度,实现应用和网络资源的无缝结合。3.如图1所示,为sdn网络的架构示意图,sdn网络中的网络设备通常为openflow交换机,更广义上,网络设备可以包括所有转发规则受sdn控制器控制的转发设备。4.如图2所示,sdn网络中控制平面与转发平面分离。控制平面节点为sdncontroller(sdn控制器),负责网络拓扑计算,网络状态监测,路径计算,路径规则生成等。转发平面节点称为sdn交换机,负责根据流表中的表项进行数据转发,目前的sdn交换机均支持openflow协议。控制器和交换机之间的通信依赖于openflow协议,主要进行未知分组的上报,网络状态和流量统计的上报,流规则的下发等。5.sdn网络中数据转发机制与传统ip网络中的分组转发机制大不相同,sdn交换机在进行分组转发时,首先根据分组的包头信息进行流表匹配,包头信息主要有11个字段组成。6.如果sdn交换机找到该分组的匹配项,则sdn交换机会根据匹配项中的action(动作域)表项进行下一步动作,如drop,output,setqueue等。当数据分组被转发时,sdn交换机仅仅将该分组从相应的端口发送出去即完成转发。7.如果sdn交换机未找到分组的匹配表项,则sdn交换机需要将该分组,或者该分组的包头信息通过packetin消息发送给sdn控制器,由sdn控制器根据包头信息计算转发路径和相应规则。8.sdn控制器根据解析出的分组的mac地址,ip地址等信息,搜索保存的网络拓扑,获取最短路径信息,路径信息主要包括交换机标识,数据接收端口和转发端口等。然后sdn控制器根据路径信息计算出每个交换机对应的转发规则,并通过flow_mod消息发送给sdn交换机。sdn交换机收到流转发规则后,进行流表更新,随后可以根据流表进行转发。9.支持openflow协议的sdn交换机后续还能支持多流表转发,即在进行流表查询时需要进行多级流表匹配。10.在5g系统中,用户面功能upf可以采用上述sdn机制进行数据的转发处理,upf采用gtp-u协议进行数据转发,也就是转发网元upf根据gtp报文头部进行数据的处理(比如数据转发或者数据上报)。11.目前现有技术方案中没有给出具体的针对用户面采用gtp-u协议,如何简单快速实现sdn网络中基于数据报文的ip头部信息进行数据处理(比如数据转发或者数据分流或者流检测)、且不增加系统的复杂性的详细方案,是需要解决的问题。技术实现要素:12.本发明实施例提供了一种数据处理方法、用户面功能及装置。可以解决用户面功能upf如何根据数据报文的ip头部信息进行数据传输处理的问题。13.为解决上述技术问题,本发明的实施例提供如下技术方案:14.一种数据处理方法,应用于基于软件定义网络sdn用户面功能upf,所述方法包括:15.所述upf的sdn交换机接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;16.所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理。17.可选的,所述流表项是由所述sdn控制器从会话管理功能smf接收路径信息、流转发规则和流检测规则中的至少一项,并根据所述路径信息、流转发规则和流检测规则中的至少一项,生成的。18.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:19.所述sdn交换机接收所述sdn控制器根据路径信息和流转发规则,生成并下发的所述至少一级流表项。20.可选的,所述流转发规则包括:先把接收到的gtp数据报文的头部删除得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作。21.可选的,所述至少一级流表项包括:22.第一流表项:第一匹配域和第一动作域,其中,第一匹配域包括gtp报文头部信息,第一动作域包括删除gtp报文头部和要执行的下一级表项信息;23.第二流表项:第二匹配域和第二动作域,其中,所述第二匹配域包括数据报文的ip头部信息,所述第二动作域包括增加gtp报文头部。24.可选的,对于支持上行链路分流ulcl功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:25.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;26.所述sdn交换机根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的ip地址或ip前缀进行第二流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部,并转发出去。27.可选的,对于支持上行分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:28.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文并转到下一级流表项;29.根据删除gtp数据报文后得到的ip数据报文的头部信息中的源ip前缀进行流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部信息,并转发出去。30.可选的,对于支持下行链路分流ulcl功能和分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:31.所述sdn交换机接收到要发送到终端数据时,根据收到的gtp数据报文的头信息,进行流表匹配,如果能找到匹配项,则匹配项的动作域为修改gtp头部并转发出去。32.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:33.所述sdn交换机接收所述sdn控制器根据流检测规则和流转发规则生成并下发的流表项。34.可选的,所述流转发规则包括:35.所述sdn交换机把接收到gtp数据报文头部删除,得到ip数据报文;根据所述ip数据报文的头部信息确定所述ip数据报文是否上报给smf;若需要上报,所述sdn交换机通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。36.可选的,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:37.所述sdn交换机通过所述sdn控制器接收所述smf根据所述ip数据报文的头部信息确定流处理规则,以及所述流处理规则对应的至少一级流表项;38.所述sdn交换机对接收到的gtp数据报文的头信息进行流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin;通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。39.本发明的实施例还提供一种用户面功能upf,包括:收发机,处理器,存储器,所述存储器上存有所述处理器可执行的程序;所述处理器执行所述程序时实现:所述upf的sdn交换机接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理。40.可选的,所述流表项是由所述sdn控制器从会话管理功能smf接收路径信息、流转发规则和流检测规则中的至少一项,并根据所述路径信息、流转发规则和流检测规则中的至少一项,生成的。41.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:42.所述sdn交换机接收所述sdn控制器根据路径信息和流转发规则,生成并下发的所述至少一级流表项。43.可选的,所述流转发规则包括:先把接收到的gtp数据报文的头部删除得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作。44.可选的,所述至少一级流表项包括:45.第一流表项:第一匹配域和第一动作域,其中,第一匹配域包括gtp报文头部信息,第一动作域包括删除gtp报文头部和要执行的下一级表项信息;46.第二流表项:第二匹配域和第二动作域,其中,所述第二匹配域包括数据报文的ip头部信息,所述第二动作域包括增加gtp报文头部。47.可选的,对于支持上行链路分流ulcl功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:48.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;49.所述sdn交换机根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的ip地址或ip前缀进行第二流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部,并转发出去。50.可选的,对于支持上行分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:51.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文并转到下一级流表项;52.根据删除gtp数据报文后得到的ip数据报文的头部信息中的源ip前缀进行流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部信息,并转发出去。53.可选的,对于支持下行链路分流ulcl功能和分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:54.所述sdn交换机接收到要发送到终端数据时,根据收到的gtp数据报文的头信息,进行流表匹配,如果能找到匹配项,则匹配项的动作域为修改gtp头部并转发出去。55.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:56.所述sdn交换机接收所述sdn控制器根据流检测规则和流转发规则生成并下发的流表项。57.可选的,所述流转发规则包括:58.所述sdn交换机把接收到gtp数据报文头部删除,得到ip数据报文;根据所述ip数据报文的头部信息确定所述ip数据报文是否上报给smf;若需要上报,所述sdn交换机通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。59.可选的,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:60.所述sdn交换机通过所述sdn控制器接收所述smf根据所述ip数据报文的头部信息确定流处理规则,以及所述流处理规则对应的至少一级流表项;61.所述sdn交换机对接收到的gtp数据报文的头信息进行流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin;通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。62.本发明的实施例还提供一种数据传输处理装置,应用于用户面功能upf,所述装置包括:63.收发模块,用于接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;64.处理模块,用于根据所述至少一级流表项,对接收到的gtp数据报文进行处理。65.本发明的实施例还提供一种处理器可读存储介质,所述处理器可读存储介质存储有处理器可执行指令,所述处理器可执行指令用于使所述处理器执行如上所述的方法。66.本发明实施例的有益效果是:67.本发明的上述实施例,通过基于sdn网络技术的所述upf的sdn交换机接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理。解决了sdn网络中用户面采用gtp-u协议,upf可以根据ip数据报文的头部信息进行数据处理。附图说明68.图1为sdn网络的架构示意图;69.图2为sdn网络中控制平面与转发平面分离示意图;70.图3为5g网络中pdu会话的用户面协议栈示意图;71.图4为gtp数据报文的格式图;72.图5为pdu会话的数据路径上插入ulcl的情形示意图;73.图6为multi-homedpdu会话用于支持业务连续性示意图;74.图7为multi-homedpdu会话本地接入示意图;75.图8为控制平面与用户面节点之间的控制面协议栈示意图;76.图9为控制平面与用户面节点之间的用户面协议栈示意图;77.图10为基于sdn的5g网络的系统架构示意图;78.图11为基于sdn的5g网络的系统架构示意图;79.图12为本发明的实施例数据处理方法的流程示意图;80.图13为数据转发或者数据分流的场景示意图;81.图14为pdu会话的数据路径上插入ulcl的示意图;82.图15为multi-homedpdu会话业务连续性场景示意图;83.图16为multi-homedpdu会话本地接入不同dn的场景示意图;84.图17为流检测场景的示意图;85.图18为multi-homedpdu会话业务连续性场景示意图;86.图19为multi-homedpdu会话本地接入不同一个dn的场景示意图;87.图20为需要upf上报数据给smf的场景示意图;88.图21为upf的架构示意图;89.图22为本发明的数据传输处理装置的模块示意图。具体实施方式90.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。91.如图3所示,5g网络中pdu会话的用户面协议栈,具体如下:92.在5g系统中,upf通常使用gtp隧道来实现,gtp隧道是双向的,由gtp四元组(源ip地址,源gtpteid,目的ip地址,目的gtpteid)来标识;gtpteid(gprstunnelingprotocol,tunnelendpointidentifier)分别有隧道两端的网元分配。一个会话由多段gtp隧道组成,每段gtp隧道只与一个会话对应。在数据转发过程中,转发网元是根据数据包中的gtp报文头部来确定的,若是,则将该数据包中的gtp报文头部替换为下一段隧道的gtp报文头部,并转发出去。93.如图4所示,为gtp数据报文的格式。5g网络的单个pdu会话的多pdu会话锚点支持,为了支持选择性流量路由或者支持sscmode3,smf可控制pdu会话的数据路径以保证pdu会话可同时去往多个n6接口。作为这些接口终结点的upf被称为pdu会话锚点。94.1)pdu会话使用ul-cl:当pdu会话类型为ipv4或ipv6或或ipv4v6或ethernet时,smf可能决定在pdu会话的数据路径中插入一个"ulcl"(uplinkclassifier)。支持ulcl功能的upf通过匹配smf提供的流过滤器将某些流量进行分流。ulcl的插入和删除是由smf决定的,且smf通过n4接口和upf能力进行控制。在pdu会话建立过程中或者建立后,smf可能决定在pdu会话的数据路径上插入一个支持ulcl功能的upf;或者在pdu会话建立之后删除pdu会话的数据路径上支持ulcl功能的upf。smf可能在pdu会话数据路径上包含多个支持ulcl功能的upf。当ulcl功能被插入到一个pdu会话的数据路径上时,则该pdu会话存在多个pdu会话锚点。这些pdu会话锚点提供到同一个dn的不同接入。95.ulcl提供到不同的pdu会话锚点的上行流量的分流和到ue的下行流量的聚合,即聚合从不同pdu会话锚点发送到ue的流量。分流和聚合是根据smf提供的流检测和流转发规则来实现的。96.ulcl采用流过滤规则(例如检查ue发送的上行ip数据包的目的ip地址/前缀)来决定数据包如何路由。97.图5描述了pdu会话的数据路径上插入ulcl的情形。98.2)pdu会话使用ipv6multi-homing:一个pdu会话可能关联多个ipv6前缀,这就是multi-homedpdu会话。multi-homedpdu会话提供通过多个pdu会话锚点到dn的接入。到不同pdu会话锚点的不同的用户面路径在“common”upf形成分支,公共的upf被称为支持“branchingpoint”功能的upf。branchingpoint转发上行流量到不同pdu会话锚点,并聚合发送到ue的下行流量,即,聚合从不同pdu会话锚点发送到ue的流。99.smf通过配置支持branchingpoint功能的upf来实现基于ue源前缀的上行流量在pdu会话锚点之间的分流(源前缀可能由ue基于从网络接收到的路由信息和偏好进行选择)。100.ue应使用决定multi-homedpdu会话用于支持下图6所示的业务连续性,或者用于支持图7中的本地接入。101.控制平面与用户面节点之间的接口:1.控制平面与用户面节点之间的控制面协议栈如图8所示;2.控制平面与用户面节点之间的用户面协议栈如图9所示。102.如图10和图11所示,为基于sdn的5g网络的系统架构。103.如图12所示,本发明的实施例提供一种数据处理方法,应用于基于软件定义网络sdn技术的用户面功能upf,所述方法包括:104.步骤121,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;105.步骤122,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理。106.本发明的该实施例,在基于sdn的5g网络中,sdn控制器通过给底层的转发设备(即交换机)下发多级流表项,来解决gtp数据报文的多重处理以实现数据的正确处理,也就是sdn控制器根据接收到的路径信息、流转发规则或/和流检测规则,对需要基于ip数据报文的头部信息进行数据处理的sdn交换机,下发多级流表项。107.本发明的一可选的实施例中,所述流表项是由所述sdn控制器从会话管理功能smf接收路径信息、流转发规则和流检测规则中的至少一项,并根据所述路径信息、流转发规则和流检测规则中的至少一项,生成的。108.本发明的一可选的实施例中,步骤101可以包括:109.所述sdn交换机接收所述sdn控制器根据路径信息和流转发规则,生成并下发的所述至少一级流表项。110.可选的,所述流转发规则包括:所述流转发规则包括:先把接收到的gtp数据报文的头部删除得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作。111.这里,所述至少一级流表项包括:112.第一流表项:第一匹配域和第一动作域,其中,第一匹配域包括gtp报文头部信息,第一动作域包括删除gtp报文头部和要执行的下一级表项信息;113.第二流表项:第二匹配域和第二动作域,其中,所述第二匹配域包括数据报文的ip头部信息,所述第二动作域包括增加gtp报文头部。114.具体实施时,如图13所示,数据转发或者数据分流的场景:115.sdn控制器根据接收到的路径信息和流转发规则,计算出需要基于ip数据报文的头部信息进行数据转发的sdn交换机应配置的流转发规则:先把接收到的gtp数据报文头部剥离得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作(由于用户面采用gtp-u协议,则在转发动作中包括重新封装gtp数据报文)。116.由于需要sdn交换机对接收到的gtp数据报文进行两次处理,所以sdn控制器给sdn交换机下发的流表项:上行流表项1(即上述第一流表项):匹配域为gtp报文头部信息(ip地址、udp端口号、teid中的全部项或者部分项),动作域为剥离gtp数据报文头部和去执行下一个流表项2;上行流表项2(即上述第二流表项):匹配域为数据报文的ip头部信息,动作域为增加gtp数据报文头部(重新封装成gtp数据报文)并转发出去。117.本发明的一可选的实施例中,对于支持上行链路分流ulcl功能的upf,步骤122可以包括:118.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;119.所述sdn交换机根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的ip地址或ip前缀进行第二流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部,并转发出去。120.具体实施时,如图14所示,对于pdu会话的数据路径上插入ulcl的情形,对于上行数据:pdu会话:业务连续性场景,图19为multi-homedpdu会话:本地接入不同一个dn的场景:136.支持ulcl功能和bp功能的sdn交换机接收到要发送到ue数据时,根据收到的gtp数据报文的头信息(ip地址、udp端口号、teid中的全部项或者部分项),需要进行流表项匹配,如果能找到匹配项,则匹配项的动作域为修改gtp头部(重新封装成gtp数据报文)并转发出去。这里的流表项可以如图13中的下行流表项,具体的流规则如下表:137.matchactionsgtp数据报文头部信息1modifygtp数据报文头部信息,outputtoportx·gtp报文头部信息2modifygtp数据报文头部信息,outputtoportx·138.本发明的一可选的实施例中,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:139.所述sdn交换机接收所述sdn控制器根据流检测规则和流转发规则生成并下发的流表项。140.这里,所述流转发规则包括:所述sdn交换机把接收到gtp数据报文头部删除,得到ip数据报文;根据所述ip数据报文的头部信息确定所述ip数据报文是否上报给smf;若需要上报,所述sdn交换机通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。141.其中,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:142.所述sdn交换机通过所述sdn控制器接收所述smf根据所述ip数据报文的头部信息确定流处理规则,以及所述流处理规则对应的至少一级流表项;143.所述sdn交换机对接收到的gtp数据报文的头信息进行流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin;通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。144.具体实施时,如图20所示,针对需要upf上报数据给smf的场景,sdn接收到smf发送的流检测规则和流转发规则,计算出需要基于ip数据报文的头信息进行数据检测的sdn交换机应配置的流转发规则:先把接收到gtp数据报文头部剥离得到的ip数据报文的头部信息,根据ip数据报文的头部信息确定出该报文的是否上报给smf。若需要上报,交换机通过packetin消息把此ip数据报文上报到控制器,控制器调用北向接口把数据报文发送给smf。smf接收到此ip数据报文,根据ip数据报文的头部信息进行流处理规则的确定,再把流处理规则发送到控制器,sdn控制器下发对应的流表项到sdn交换机。sdn交换机按照流表项进行数据流处理。145.由于需要sdn交换机对接收到的gtp数据报文进行两次处理,所以sdn控制器给sdn交换机下发的流表项:流表项1:匹配域为gtp数据报文头部信息(ip地址、udp端口号、teid中的全部项或者部分项),动作域为剥离gtp数据报文头部和去执行下一个流表项2;流表项2:匹配域为ip数据报文的头部信息,动作域为packetin到控制器。146.对于流检测场景,当sdn交换机接收到要发送到dn数据时,根据收到的gtp数据报文的头信息(ip地址、udp端口号、teid中的全部项或者部分项),需要进行流表匹配,如果能找到匹配项,则匹配项的动作域为剥离gtp数据报文头部并转到下一级流表项。根据剥离gtp数据报文头部得到的ip数据报文的头部信息(ip5-tuples)中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin。具体的流规则如下表:147.matchactionsgtp数据报文头部deletegtp数据报文头部,·gototablen148.tablen:149.matchactionsip数据报文的目的端口号packetin150.当sdn控制器接收到packetin后,把packetin消息携带的ip数据报文转发给smf,smf根据ip数据报文头部信息进行数据处理,并下发流处理规则给sdn控制器,而后sdn控制器根据流处理规则给sdn交换机下发合适的流表项。交换机接收到流表项后进行配置,并根据流表项进行数据处理。151.在如10或者图11所示的网络架构下,sdn控制器自身提供北向接口。对于上述的流检测类似场景,交换机根据实施例4的执行结果获得ip数据报文,不需要对ip报文进行处理,比如再次封装成gtp数据报文等,就可以向控制器发送packetin,携带的消息里包括此ip数据报文等。控制器接收到此ip数据报文后,调用自身提供的通用的北向接口就可以把此数据报文发送给smf。smf根据此数据报文,下发正确的流处理规则给控制器。而后控制器根据流处理规则,给交换机下发流表项。交换机配置流表项和对此数据流根据流表项进行处理,包括转发、丢弃等等。152.本发明的上述实施例,可以解决sdn网络中用户面采用gtp-u协议,upf如何实现根据ip数据报文的头部信息进行数据处理的方案,比如单个pdu会话的多pdu会话锚点支持的数据分流场景和基于数据报文的ip头信息进行流检测的数据处理场景。采用多级流表项的思想,实现简单、快速,且不增加系统(包括sdn控制器和交换机)的处理复杂度。实现了基于sdn的5g网络核心网用户面的实施。对于流检测类似场景,在基于sdn的5g网络中,需要流检测的upf不需要对报文进行处理,可以直接调用sdn控制器提供的北向接口发送到应用层的smf。这样降低了底层交换机和控制器的处理复杂度。同时也不需要smf对数据报文进行解封装和封装,降低了smf的复杂度。153.如图21所示,本发明的实施例还提供一种用户面功能upf210,包括:收发机211,处理器212,存储器213,所述存储器213上存有所述处理器212可执行的程序;所述处理器212执行所述程序时实现:所述upf的sdn交换机接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理。154.可选的,所述流表项是由所述sdn控制器从会话管理功能smf接收路径信息、流转发规则和流检测规则中的至少一项,并根据所述路径信息、流转发规则和流检测规则中的至少一项,生成的。155.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:156.所述sdn交换机接收所述sdn控制器根据路径信息和流转发规则,生成并下发的所述至少一级流表项。157.可选的,所述流转发规则包括:先把接收到的gtp数据报文的头部删除得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作。158.可选的,所述至少一级流表项包括:159.第一流表项:第一匹配域和第一动作域,其中,第一匹配域包括gtp报文头部信息,第一动作域包括删除gtp报文头部和要执行的下一级表项信息;160.第二流表项:第二匹配域和第二动作域,其中,所述第二匹配域包括数据报文的ip头部信息,所述第二动作域包括增加gtp报文头部。161.可选的,对于支持上行链路分流ulcl功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:162.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;163.所述sdn交换机根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的ip地址或ip前缀进行第二流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部,并转发出去。164.可选的,对于支持上行分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:165.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文并转到下一级流表项;166.根据删除gtp数据报文后得到的ip数据报文的头部信息中的源ip前缀进行流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部信息,并转发出去。167.可选的,对于支持下行链路分流ulcl功能和分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:168.所述sdn交换机接收到要发送到终端数据时,根据收到的gtp数据报文的头信息,进行流表匹配,如果能找到匹配项,则匹配项的动作域为修改gtp头部并转发出去。169.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:170.所述sdn交换机接收所述sdn控制器根据流检测规则和流转发规则生成并下发的流表项。171.可选的,所述流转发规则包括:172.所述sdn交换机把接收到gtp数据报文头部删除,得到ip数据报文;根据所述ip数据报文的头部信息确定所述ip数据报文是否上报给smf;若需要上报,所述sdn交换机通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。173.可选的,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:174.所述sdn交换机通过所述sdn控制器接收所述smf根据所述ip数据报文的头部信息确定流处理规则,以及所述流处理规则对应的至少一级流表项;175.所述sdn交换机对接收到的gtp数据报文的头信息进行流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin;通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。176.需要说明的是,该实施例中的upf是与上述图12所示的方法对应的upf,上述各实施例中的实现方式均适用于该upf的实施例中,也能达到相同的技术效果。该upf中,收发机211与存储器213,以及收发机211与处理器212均可以通过总线接口通讯连接,处理器212的功能也可以由收发机211实现,收发机211的功能也可以由处理器212实现。在此需要说明的是,本发明实施例提供的上述终端,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。177.如图22所示,本发明的实施例还提供一种数据传输处理装置220,应用于用户面功能upf,所述装置包括:178.收发模块221,用于接收sdn控制器下发的至少一级流表项;所述sdn交换机是需要基于ip数据报文的头部信息进行数据处理的sdn交换机;179.处理模块222,用于根据所述至少一级流表项,对接收到的gtp数据报文进行处理。180.可选的,所述流表项是由所述sdn控制器从会话管理功能smf接收路径信息、流转发规则和流检测规则中的至少一项,并根据所述路径信息、流转发规则和流检测规则中的至少一项,生成的。181.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:182.所述sdn交换机接收所述sdn控制器根据路径信息和流转发规则,生成并下发的所述至少一级流表项。183.可选的,所述流转发规则包括:先把接收到的gtp数据报文的头部删除得到ip数据报文,根据ip数据报文的头部信息确定出该报文的转发动作。184.可选的,所述至少一级流表项包括:185.第一流表项:第一匹配域和第一动作域,其中,第一匹配域包括gtp报文头部信息,第一动作域包括删除gtp报文头部和要执行的下一级表项信息;186.第二流表项:第二匹配域和第二动作域,其中,所述第二匹配域包括数据报文的ip头部信息,所述第二动作域包括增加gtp报文头部。187.可选的,对于支持上行链路分流ulcl功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:188.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;189.所述sdn交换机根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的ip地址或ip前缀进行第二流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部,并转发出去。190.可选的,对于支持上行分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:191.所述sdn交换机接收到要发送到数据网络dn数据时,根据收到的gtp数据报文头信息,进行第一流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文并转到下一级流表项;192.根据删除gtp数据报文后得到的ip数据报文的头部信息中的源ip前缀进行流表匹配,如果能找到匹配项,则匹配项的动作域为添加gtp数据报文头部信息,并转发出去。193.可选的,对于支持下行链路分流ulcl功能和分支点bp功能的upf,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:194.所述sdn交换机接收到要发送到终端数据时,根据收到的gtp数据报文的头信息,进行流表匹配,如果能找到匹配项,则匹配项的动作域为修改gtp头部并转发出去。195.可选的,所述upf的sdn交换机接收sdn控制器下发的至少一级流表项,包括:196.所述sdn交换机接收所述sdn控制器根据流检测规则和流转发规则生成并下发的流表项。197.可选的,所述流转发规则包括:198.所述sdn交换机把接收到gtp数据报文头部删除,得到ip数据报文;根据所述ip数据报文的头部信息确定所述ip数据报文是否上报给smf;若需要上报,所述sdn交换机通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。199.可选的,所述sdn交换机根据所述至少一级流表项,对接收到的gtp数据报文进行处理,包括:200.所述sdn交换机通过所述sdn控制器接收所述smf根据所述ip数据报文的头部信息确定流处理规则,以及所述流处理规则对应的至少一级流表项;201.所述sdn交换机对接收到的gtp数据报文的头信息进行流表匹配,如果能找到匹配项,则匹配项的动作域为删除gtp数据报文头部并转到下一级流表项;根据删除gtp数据报文头部得到的ip数据报文的头部信息中的目的端口号进行流表匹配,如果能找到匹配项,则匹配项的动作域为packetin;通过packetin消息把所述ip数据报文上报到sdn控制器,由所述sdn控制器调用北向接口把所述ip数据报文发送给smf。202.需要说明的是,该实施例中的装置是与上述图12所示的方法对应的装置,上述各实施例中的实现方式均适用于该装置的实施例中,也能达到相同的技术效果。在此需要说明的是,本发明实施例提供的上述装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。203.本发明的实施例还提供一种处理器可读存储介质,所述处理器可读存储介质存储有处理器可执行指令,所述处理器可执行指令用于使所述处理器执行如上所述的方法。上述方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。204.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。205.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。206.在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。207.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。208.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。209.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。210.此外,需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行,某些步骤可以并行或彼此独立地执行。对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。211.因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。还需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。212.以上所述的是本发明的优选实施方式,应当指出对于本
技术领域
:的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1