一种业务处理的方法、转发器及分类器的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种业务处理的方法、转发器及分类器。
【背景技术】
[0002]为了摆脱运营商成为“哑管道”的命运,实现全业务运营的资源联动优势,提升流量经营能力,近年来,SDN( Sof tware Defined Network,软件定义网络)及NFV(NetworkFunct1n Virtualizat1n,网络功能虚拟化)技术的逐步发展和落地,为运营商网络的转型和变革带来了新的机遇,新的数据中心网络和云架构需要部署更灵活的业务功能,向虚拟平台的迀移需要敏捷的业务嵌入模型以提供动态弹性的业务交付。Service Funct1nChaining(SFC,业务功能链)技术正是基于SDN/NFV技术将多个业务功能通过业务功能链串联起来形成不同的业务功能组合,满足不同的需求和部署场景。
[0003]目前SFC技术可以基于源路由实现,即在数据源就决定好需要经过哪些业务节点,然后把这些业务节点的标识都封装在报文中,形成类似MPLS(Mult1-ProtocoI LabelSwi tching,多协议标签交换)的叠加隧道封装。中间网络节点可以根据报文的指定标识进行转发处理。在这种方法中,服务路径(SP,SerVice Path)信息被附加到每一个数据包作为头部被转发,这就要求SF(Service Funct1n,业务功能)能够识别数据包的头部。由于业务类型的增多和SF的增多,使得越来越多的SF需要被配置有识别数据包头的功能,导致网络配置十分复杂。
【发明内容】
[0004]本发明的实施例提供一种业务处理的方法、转发器及分类器,用以简化网络配置。
[0005]为达到上述目的,本发明的实施例采用如下技术方案:
[0006]本发明实施例提供了一种业务处理的方法,包括:
[0007]转发器从分类器中接收待处理数据包;
[0008]所述转发器从所述待处理数据包中提取业务标签,所述业务标签携带有业务路径头部信息,所述业务路径头部信息携带有路径标识字段和位置信息字段;
[0009]所述转发器根据所述路径标识字段,确定当前需要使用的服务路径,以及,根据所述位置信息字段,确定在所述服务路径上的当前服务功能模块;
[0010]所述转发器将所述待处理数据包发送至所述当前服务功能模块,以使得所述当前服务功能模块对所述待处理数据包进行处理;
[0011]所述转发器接收到所述当前服务功能模块的处理结果后,根据所述服务路径,将所述位置信息字段中指示的当前服务功能模块修改为下一跳服务功能模块;
[0012]所述转发器将所述当前服务功能模块的处理结果发送至所述下一跳服务功能模块,以使得所述下一跳服务功能模块对所述待处理数据包进行处理;
[0013]以此类推,直至所述转发器接收到所述服务路径上最后一跳服务功能模块的处理结果后,所述转发器将所述业务标签从所述最后一跳服务功能模块的处理结果中去除。
[0014]本发明实施例还提供了一种转发器,包括:
[0015]接收单元,用于从分类器中接收待处理数据包;
[0016]提取单元,用于从所述待处理数据包中提取业务标签,所述业务标签携带有业务路径头部信息,所述业务路径头部信息携带有路径标识字段和位置信息字段;
[0017]确定单元,用于根据所述路径标识字段,确定当前需要使用的服务路径,以及,根据所述位置信息字段,确定在所述服务路径上的当前服务功能模块;
[0018]发送单元,用于将所述待处理数据包发送至所述当前服务功能模块,以使得所述当前服务功能模块对所述待处理数据包进行处理;
[0019]修改单元,用于接收到所述当前服务功能模块的处理结果后,根据所述服务路径,将所述位置信息字段中指示的当前服务功能模块修改为下一跳服务功能模块;
[0020]所述发送单元,用于将所述当前服务功能模块的处理结果发送至所述下一跳服务功能模块,以使得所述下一跳服务功能模块对所述待处理数据包进行处理;
[0021 ]去除单元,用于在所述转发器接收到所述服务路径上最后一跳服务功能模块的处理结果后,所述转发器将所述业务标签从所述最后一跳服务功能模块的处理结果中去除。
[0022]本发明实施例还提供了一种分类器,包括:
[0023]分配单元,用于根据分类规则,为每一个原始数据包分配一个业务标签;
[0024]添加单元,用于将已分配的业务标签添加相应的原始数据包中,得到待处理数据包。
[0025]本发明实施例提供的业务处理的方法、转发器和分类器,实现了基于业务标签的SFC转发方式,不同于现有技术的源路由转发方法,这种方法为每一条服务链定义一个标签,并附加到每一个数据包中,如此省略了每个SF所需配置的流表,而且数据包的转发由转发器统一控制,不需要额外下达对转发器或SF的转发配置信息以实现数据包在业务路径上的转发,这样使得网络配置更为简单、准确。
【附图说明】
[0026]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]图1为本发明实施例提供的一种业务处理网络的组成框图;
[0028]图2为本发明实施例提供的一种业务处理的方法流程图;
[0029]图3为本发明实施例提供的另一种业务处理的方法流程图;
[0030]图4为本发明实施例提供的一种转发器的组成框图;
[0031 ]图5为本发明实施例提供的一种分类器的组成框图。
【具体实施方式】
[0032]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0033]本发明实施例提供了一种业务处理的方法,适用于如图1所示的网络架构中。
[0034]在该网络架构中,分类器用于根据分类规则,对不同数据包添加不同业务标签;
[0035]转发器为下述实施例的执行主体,用于识别业务标签,并基于业务标签实现对数据包的转发;
[0036]服务功能(SF)模块,用于对数据包进行业务处理。
[0037]基于该网络结构,本发明实施例提供的业务处理方法,如图2所示,包括:
[0038]11、转发器从分类器中接收待处理数据包。
[0039]102、所述转发器从所述待处理数据包中提取业务标签,所述业务标签携带有业务路径头部信息,所述业务路径头部信息携带有路径标识字段和位置信息字段。
[0040]为避免数据包的超出网络最小可用的MTU值限制,造成该数据包被进行分片传输,以致网络转发压力和数据丢包概率的增大。除业务路径头部信息外,本发明实施例对于业务标签还设置有基本头部信息及上下文头部信息。基本头部信息、业务路径头部信息和上下文头部信息均可以使用4个字节。
[0041 ]业务路径头部信息携带有路径标识字段和位置信息字段;
[0042]路径标识字段占3个字节,用于识别服务路径;
[0043]位置信息字段占I个字节,用于标识业务功能路径的位置,即具体的业务服务模块;
[0044]所述基本头部信息携带有服务头部字段、负载协议字段以及包长指示字段;
[0045]所述服务头部字段用于指示所述业务标签的字段长度;
[0046]所述负载协议字段用于指示对具有所述业务标签的原始数据包进行解析时需要使用的协议;
[0047]所述包长指示字段用于指示所述上下文头部信息的字段长度是否允许被更改;
[0048]包长指示字段中定义了两种类型,当类型设置为Oxl时,表明业务标签中包含固定长度的上下文头部信息;当类型设置为0x2时,表明业务标签中包含可选择的可变长度的上下文头部信息。
[0049]所述上下文头部信息携带有元数据信息字段和可变长编码信息字段;
[0050]所述元数据信息字段用于指示具有所述业务标签的原始数据包的数据属性;
[0051 ]所述可变长编码信息字段为允许被修改字段长度的扩展字段。
[0052]103、所述转发器根据所述路径标识字段,确定当前需要使用的服务路径,以及,根据所述位置信息字段,确定在所述服务路径上的当前服务功能模块。
[0053]104、所述转发器将所述待处理数据包发送至所述当前服务功能模块,以使得所述当前服务功能模块对所述待处理数据包进行处理。
[0054]105、所述转发器接收到所述当前服务功能模块的处理结果后,根据所述服务路径,将所述位置信息字段中指示的当前服务功能模块修改为下一跳服务功能模块。
[0055]对于服务功能模块的修改根本上就是对位置信息字段中携带的内容进行修改,例如,当前服务功能模块为业务路径的第一跳,那么位置信息字段可以设置为I,那么下一跳服务功能模块就应该修改为2。当然也可以根据需要设置其它步长来进行地址指向的调整。
[0056]106、所述转发器将所述当前服务功能模块的处理结果发送至所述下一跳服务功能模块,以使得所述下一跳服务功能模块对所述待处理数据包进行处理。
[0057]107、以此类推,直至所述转发器接收到所述服务路径上最后