欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种为业务流提供业务服务的方法和装置独创技术59544字

一种为业务流提供业务服务的方法和装置

2021-02-04 12:12:18

一种为业务流提供业务服务的方法和装置

  技术领域

  本申请涉及通信技术领域,特别是涉及一种为业务流提供业务服务的方法和装置。

  背景技术

  目前,为了能够给业务流提供不同的业务服务,业务流的报文需要按照不同的业务服务对应的格式来封装不同的流标识,这样在报文的转发过程中网络设备可以根据不同格式的流标识对报文进行相应的业务服务的操作。但是,当业务流的报文经过不同域时,若不同域内的网络设备需要为特定业务流的报文提供不同的业务服务,业务流的报文在不同域间互通时需要对封装的流标识进行格式转换或重新封装,因此,业务流在穿越不同类型域时的处理较为复杂。

  发明内容

  本申请实施例提供了一种为业务流提供业务服务的方法和装置,以改善业务流的处理性能。

  第一方面,本申请实施例提供了一种为业务流提供业务服务的方法。根据该方法,作为头节点或入口节点的网络设备确定收到的第一报文的报文特征匹配业务流的报文特征,则在该第一报文中加入业务流的指示标识得到第二报文并向中间节点发送第二报文。业务流的指示标识用于指示为所述业务流提供的业务。中间节点从收到的第二报文中获取业务流的指示标识,根据该指示标识和处理策略处理该第二报文。这样,中间节点可以直接识别该指示标识并执行相应的业务服务的操作,从而为业务流提供相应的业务服务,无需对封装的指示标识再进行格式转换,也无需进行多种格式的指示标识的冗余封装。

  第二方面,本申请实施例提供了一种为业务流提供业务服务的装置。根据该方案,作为头节点或入口节点的网络设备包括接收单元、封装单元和发送单元。接收单元用于接收第一报文,封装单元用于若所述第一报文特征匹配业务流的报文特征,将所述业务流的指示标识封装到所述第一报文中得到第二报文,所述业务流的指示标识用于指示为所述业务流提供的业务;发送单元用于发送所述第二报文。

  第三方面,本申请实施例提供了一种为业务流提供业务服务的装置。根据该方案,作为中间节点的装置包括接收单元、获取单元、执行单元和发送单元。接收单元用于接收第二报文,获取单元用于根据所述第二报文获取业务流的指示标识,所述业务流的指示标识用于指示为所述业务流提供的业务;执行单元用于根据所述指示标识与所述业务之间的映射关系,对所述第二报文执行所述业务对应的操作;发送单元用于发送所报文。

  第四方面,本申请实施例还提供了一种网络设备,该网络设备包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述中任一方法。

  第五方面,本申请实施例还提供了一种计算机程序产品,当其在计算机上运行时,使得计算机执行前述中任一方法。

  第六方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得该计算机或处理器执行前述中任一方法。

  在上述方案的一些实施例中,所述包括指示标识的报文为第六版互联网协议(英文:Internet Protocol Version 6,简称:IPv6)或多协议标签交换(英文:Multi-ProtocolLabel Switching,简称:MPLS)报文。

  基于以上技术方案,在一些实施例中,该指示标识包括业务的标识。该业务包括以下任意一种或多种业务:操作管理维护(英文:Operation Administration Maintenance,简称:OAM)、业务功能链(英文:Service Function Chaining,简称:SFC)、确定网络(英文:Deterministic Networking,简称:DetNet)。在执行这些业务时,比如当所述报文为IPv6报文时,所述IPv6报文包含的指示标识指示该IPv6报文需要执行OAM操作,则中间节点根据该指示标识和处理策略对该报文进行具体的OAM操作,比如进行丢包计数、抖动测量、延迟测量等中的一种或多种操作。

  基于以上技术方案,在一些实施例中,该指示标识还包括业务对应的操作的标识和/或第一报文中携带的序列号Sequence Number。

  基于以上技术方案,在一些实施例中,当所述第二报文为IPv6报文时,第二报文包括IPv6扩展头,IPv6扩展头包括指示标识。这样,可以将该指示标识封装在第二报文的IPv6扩展头中,中间节点解析收到的第二报文,从IPv6扩展头中获取所述指示标识,根据该指示标识及处理策略对该第二IPv6报文执行对应的业务操作,这可以有效改善中间节点对IPv6报文的处理效率。

  基于以上技术方案,在一些实施例中,对于IPv6网络,IPv6扩展头包括第二IPv6报文的逐跳选项Hop-by-Hop Option header字段或目的选项头Destination Optionsheader字段,Hop-by-Hop Option header字段或Destination Options header字段包括指示标识。

  基于以上技术方案,在一些实施例中,对于SRv6网络,第一IPv6报文和第二IPv6报文为IPv6段路由SRv6报文,网络设备支持SRv6,IPv6扩展头包括第二IPv6报文的分段路由扩展头SRH,SRH包括指示标识。其中,一种情况下,SRH包括段标识SID,SID包括指示标识;另一种情况下,SID包括参数Arguments字段,Arguments字段包括指示标识;再一种情况下,SRH包括Tag字段和/或Flags字段,Tag字段和/或Flags字段包括指示标识。

  基于以上技术方案,在一些实施例中,仍然对于SRv6网络,第一IPv6报文和第二IPv6报文为SRv6报文,网络设备支持SRv6,第二IPv6报文包括IPv6 Header,第二IPv6报文的IPv6 Header包括源地址SA字段,SA字段包括指示标识;或者,第一IPv6报文和第二IPv6报文为SRv6报文,网络设备支持SRv6尽力而为BE,第二IPv6报文的IPv6扩展头包括IPv6Header的目的地址DA字段,DA字段包括指示标识。

  基于以上技术方案,在一些实施例中,该第二IPv6报文包括IPv6 Header,所述IPv6 Header包括流标签Flow Label字段,所述Flow Label字段包括所述指示标识。

  基于以上技术方案,在一些实施例中,该指示标识还包括流标签或流标识。

  基于以上技术方案,在一些实施例中,所述第二报文为IPv6段路由SRv6报文,所述网络设备支持SRv6,所述第二报文包括SRv6的分段列表,所述SRv6的分段列表包括所述指示标识。

  基于以上技术方案,在一些实施例中,当第二报文为MPLS报文时,所述第二报文包括MPLS标签栈,所述标签栈包括所述业务流的指示标识。在一些实施例中,所述指示标识位于所述MPLS标签栈的最后一个标签。

  附图说明

  为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

  图1为本申请实施例中一应用场景所涉及的网络系统框架示意图;

  图2为本申请实施例中一种为业务流提供业务服务的方法的流程示意图;

  图3为本申请实施例中指示标识的格式示意图;

  图4为本申请实施例中一种IPv6 Header的格式示意图;

  图5a为本申请实施例中另一种IPv6 Header的格式示意图;

  图5b为本申请实施例中再一种IPv6 Header的格式示意图;

  图5c为本申请实施例中又一种IPv6 Header的格式示意图;

  图5d为本申请实施例中另一种IPv6 Header的格式示意图;

  图5e为本申请实施例中再一种IPv6 Header的格式示意图;

  图5f为本申请实施例中又一种IPv6 Header的格式示意图;

  图6为本申请实施例中一种SRH的格式示意图;

  图7为本申请实施例中一种SRv6报文的格式示意图;

  图8为本申请实施例中一种MPLS label的格式示意图;

  图9为本申请实施例中一种为业务流提供业务服务的方法的流程示意图;

  图10为本申请实施例中另一种为业务流提供业务服务的方法的流程示意图;

  图11为本申请实施例中再一种为业务流提供业务服务的方法的流程示意图;

  图12为本申请实施例中又一种为业务流提供业务服务的方法的流程示意图;

  图13为本申请实施例中一种为业务流提供业务服务的装置的结构示意图;

  图14为本申请实施例中另一种为业务流提供业务服务的装置的结构示意图;

  图15为本申请实施例中再一种为业务流提供业务服务的装置的结构示意图;

  图16为本申请实施例中又一种为业务流提供业务服务的装置的结构示意图。

  具体实施方式

  目前,业务服务的不断增多,而业务流的报文需要按照不同的业务服务对应的格式来封装不同的流标识,这样,在报文的转发过程中,网络设备可以根据不同格式的流标识对报文进行相应的业务服务的操作。

  但是,当业务流的报文经过不同域时,若不同域内的网络设备为业务流的报文提供不同的业务服务,业务流的报文在跨域后需要对封装的流标识进行格式转换,从而导致业务流的报文在穿越不同域时的处理较为复杂。而且,当同时为业务流的报文提供多种业务服务时,业务流的报文中可能封装了每种业务服务对应格式的流标识,即,该报文中同时包括了多种不同格式的流标识,造成业务流的报文中携带了冗余的流标识。

  基于此,在本申请实施例中,当需要在IPv6网络的各网络设备之间传输第一报文以提供业务服务时,具体可以由网络中的头节点接收第一报文,并确定该第一报文的报文特征与业务流的报文特征是否匹配,若匹配,则该头节点将该业务流对应的指示标识封装到第一报文中得到第二报文,其中,该业务流的指示标识用于指示为所述业务流提供的业务;接着,该头节点向其下一跳的中间节点发送第二报文,以便该中间节点基于该第二报文中的指示标识与业务之间的映射关系,对该第二报文执行相应的业务对应的操作;以此类推,直到向尾节点发送该第二报文。在一些实施例中,第二报文可以是IPv6报文或MPLS报文,第一报文可以是任何类型的报文。在一些实施例中,为所述业务流提供的业务,包括OAM、SFC、DetNet中的一种或多种。在一些实施例中,第二报文为IPv6报文,该指示标识可以携带在第二报文的IPv6扩展头、或第二报文的IPv6 Header的源地址SA字段或第二报文的IPv6 Header的目的地址DA字段。

  这样,通过本申请实施例中网络的头节点将业务流的指示标识封装在第一报文中,无需对每个业务服务都封装一个对应格式的流标识,即使该第一报文要实现跨域传输,也无需对封装的流标识再进行格式转换,各个域中的网络设备均可以识别该指示标识并执行相应的业务服务的操作,可以方便的提供相应的业务服务。

  举例来说,本申请实施例的场景之一,可以是应用到如图1所示的网络系统中。参见图1,为支持IPv6的网络的结构示意图,该网络包括头节点100、中间节点200、中间节点300和尾节点400。需要说明的是,头节点100、中间节点200、中间节点300和尾节点400具体可以是支持IPv6网络的网络设备,例如可以是支持IPv6段路由(英文:IPv6 SegmentRouting,简称:SRv6)的网络设备。可以理解的是,该头节点100、中间节点200、中间节点300和尾节点400,具体可以是路由器或者交换机等可以在网络中进行报文转发并提供业务服务的网络设备。

  在本申请中,头节点也可以成为入口节点或入节点,头节点作为一个网络域的入口节点。头节点可以是具有路由功能的设备,比如路由器。中间节点可以是具有路由功能的设备,比如路由器。

  可以理解的是,上述场景仅是本申请实施例提供的一个场景示例,本申请实施例并不限于此场景。

  下面结合附图,通过实施例来详细说明本申请实施例中提供业务服务的方法的具体实现方式。

  图2为本申请实施例中一种为业务流提供业务服务的方法的流程示意图。需要说明的是,图2所示的实施例可以应用于图1所示的网络架构中,由图1所示的各节点对应执行图2所示方法中的各步骤。具体实现时,该方法例如可以包括:

  步骤201,头节点根据标识封装策略,在业务流的报文中封装所述指示标识。

  为了让业务流所经过的节点能够提供不同的业务服务,需要网络中不同的节点对该业务流的报文进行该节点对应的处理操作,基于此,针对业务流所经过的不同节点上,均需要预先存在不同的策略,这些策略可以是直接在各节点上配置的标识封装策略和业务服务策略,也可以是在控制器上生成并分别下发给对应节点的标识封装策略和业务服务策略。具体实现时,当业务流的报文经过网络中的节点时,为了使得业务流所经过的各节点可以提供对应的业务服务,头节点可以根据配置或控制器下发的对应该业务流的标识封装策略,在该业务流的报文中封装指示标识,以便中间节点根据该指示标识和业务服务策略,执行对应业务服务的操作。

  为了让本实施例的说明更加清楚,在介绍步骤201的具体实现方式之前,先对标识封装策略和业务服务策略进行介绍。

  标识封装策略用于指示报文特征和指示标识的对应关系。标识封装策略包括业务流的报文特征与业务流的指示标识之间的映射关系。报文特征用于识别属于某一业务流的报文。头节点可以基于报文特征,识别出当前接收到的报文是否为某个或者哪个业务流的报文。作为一个示例,该报文特征可以包括报文的五元组(即,源IP地址、源端口、目的IP地址、目的端口和传输层协议)或者该报文特征中的某些特定字段。

  当头节点收到的报文为IPv6报文时,该报文特征可以包括报文的IPv6 Header的流标签(英文:Flow label)字段中的内容。再或者,该报文特征可以包括报文中的源地址和/或目的地址。再或者,该报文特征可以包括IPv6报文的流标识(英文:Flow ID)字段中的内容。或者,该报文特征可以包括该报文的Flow label、Flow ID、源地址、目的地址中的2个或3个或4个。指示标识,用于封装到匹配上报文特征的报文中,以指示为所述业务流提供的业务。在一些实施例中,所述Flow ID字段可以参考IETF RFC 1809的描述。在一些实施例中,所述Flow label字段可以参考IETF RFC 6437或RFC 8200的描述。

  业务服务策略用于表征指示标识和业务对应的操作的对应关系。业务服务策略包括业务流的指示标识与业务之间的映射关系。业务对应的操作,具体是指节点针对该业务流上发送的报文实现业务服务需要执行相应的处理操作,其中,业务服务例如可以是:业务功能链(英文:Service Function Chaining,简称:SFC)服务,确定网络(英文:Deterministic Networking,简称:DetNet)服务,基于明信片的遥测(英文:Postcardbased Telemetry,简称:PBT)服务,操作管理维护(英文:Operation AdministrationMaintenance,简称:OAM)等等。对于OAM,具体的操作可以包括报文计数、时延测量等具体的操作中的一种或多种。对于SFC,具体的操作可以包括网络地址转换(英文:networkaddress translation,简称:NAT)、防火墙过滤、深度报文检测(英文:deep packetinspection,简称:DPI)、入侵检测等中的一种或多种。对于DetNet服务,具体的操作可以包括多发选收和/或流识别。对于PBT服务,具体的操作可以包括性能数据的搜集和/或流识别。

  可以理解的是,对于标识封装策略以及业务服务策略中的指示标识,具体包括下述标识中的任意一种标识或者多种标识的组合:业务流的标识、业务的标识、和业务对应的操作的标识。其中,业务流的标识可以包括流标识(英文:Flow ID)或Flow label。携带相同业务流的标识的报文可以视作属于同一业务流。

  业务的标识具体可以包括标签(英文:Flag)或染色位(英文:Color)。一种情况下,业务流所经过的节点可以仅提供一种业务服务,那么,该指示标识中可以通过携带Color指示是否需要提供该种业务服务,例如:假设Flow ID=1对应的业务流所经过的节点只提供SFC服务,若配置指示标识中的Color=1,则视作该业务流所经过的节点执行SFC服务对应的操作,从而确保该业务流所经过的节点提供SFC服务;若配置Color=0,则视作该业务流所经过的节点不执行SFC服务对应的操作,从而确保该业务流所经过的节点不提供SFC服务。基于类似的原理,Color的值为0时也可以表示该业务流所经过的节点执行SFC服务对应的操作,Color的值为1时也可以表示该业务流所经过的节点不执行SFC服务对应的操作。在另一种情况下,业务流所经过的节点可以提供多种业务服务,那么,该指示标识中可以通过携带Flag指示具体提供的业务服务组合,例如:假设Flow ID=2对应的业务流所经过的节点可以提供SFC服务、DetNet服务和PBT服务,若配置指示标识中Flag=10000,则视作该业务流所经过的节点提供SFC服务;若配置Flag=11000,则视作该业务流所经过的节点提供SFC服务和DetNet服务;若配置Flag=01100,则视作该业务流所经过的节点提供SFC服务、DetNet服务和PBT服务。需要说明的是,Flag或者Color可以通过bit mask置位实现指示。

  业务对应的操作的标识,一种情况下,具体可以是模板标识(英文:Template ID),用于指示在处理该业务流的节点上对该业务流进行业务服务的操作。例如:若Template ID=1,则指示对该业务流进行SFC服务的操作;又例如:若Template ID=2,则指示对业务流进行DetNet和SFC服务的操作。另一种情况,业务对应的操作的标识,也可以是操作指示信息,例如:假设对于PBT服务,若业务对应的操作的标识携带入接口号、出接口号、入时间戳和出时间戳等操作指示信息中的一个或多个,则,该业务流所经过的节点提供PBT服务,具体执行业务服务的操作对应包括:上报入接口号、出接口号、入时间戳和出时间戳中的一个或多个。

  需要说明的是,指示标识中还可以携带报文的序列号(Sequence Number)。该Sequence Number用于标识节点接收到的报文的序列号,通常可用于计算业务流的丢包情况。例如:对于IPv6报文,头节点在该报文中标记Sequence Number后,该报文在该网络中传输时,所经过的各节点可以通过该报文中的Sequence Number判断是否出现丢包情况。

  可以理解的是,针对包括不同内容的指示标识,业务服务策略与之对应,存在多种可能的实现方式。作为一个示例,指示标识可以只包括Flow ID,那么,业务服务策略具体可以是该Flow ID与业务对应的操作之间的对应关系。作为再一个示例,指示标识也可以只包括Template ID,那么,业务服务策略具体可以是该Template ID与业务对应的操作之间的对应关系。作为另一个示例,指示标识也可以包括Flow ID和Flag,那么,业务服务策略具体可以是该Flow ID、Flag和业务对应的操作三者之间的对应关系。作为再一个示例,指示标识也可以包括Flow ID和Template ID,那么,业务服务策略具体可以是该Flow ID、Template ID和业务对应的操作三者之间的对应关系。作为又一个示例,指示标识也可以包括Flag和Template ID,那么,业务服务策略具体可以是该Flag、Template ID和业务对应的操作三者之间的对应关系。作为又一个示例,指示标识也可以包括Flow ID、Flag和Template ID,那么,业务服务策略具体可以是该Flow ID、Flag、Template ID和业务对应的操作四者之间的对应关系。其中,各示例中均可以在需要统计丢包情况的场景下,增加Sequence Number,此时,业务服务策略还可以包括该Sequence Number与业务对应的操作之间的对应关系。在一些实施例中,本段的Flow ID也可以替换为Flow label。

  需要说明的是,假设报文在隧道中进行转发,该隧道中各节点可以以标签栈作为转发该报文的策略。例如:该标签栈可以是MPLS标签栈,或者,也可以是SRv6的分段列表(英文:Segment list)。所述标签栈包括所述指示标识。具体地,所述MPLS标签栈或所述SRv6的分段列表包括所述指示标识。更具体地,所述MPLS标签栈的最后一个标签包括所述指示标识。具体实现时,该标签栈可以配置在隧道头节点上,或者由控制器生成并下发给隧道头节点,以便该隧道头节点将该标签栈封装在报文中,用于指导报文在该隧道中进行传输。这样,报文在隧道的每个节点传输时,可以不对报文中原有内容进行解析,而仅仅借助该标签栈就可以获知该隧道中有效的传输路径,提高了报文在隧道中的转发效率。

  在介绍完标识封装策略和业务服务策略之后,下面对步骤201中“头节点根据标识封装策略在业务流的报文中封装指示标识”进行详细说明。

  具体实现时,当头节点接收到报文时,首先,可以获取该报文的报文特征;然后,将该报文的报文特征与标识封装策略中携带的报文特征进行匹配,若匹配,则视作接收到的该报文属于该业务流的报文,那么,即可在该报文中封装在标识封装策略中与所匹配的报文特征对应的指示标识;反之,若不匹配,则视作接收到的该报文不属于该业务流的报文,那么,不在该报文中封装任何的指示标识,也不执行后续步骤202~步骤204。作为一个示例,匹配具体可以指接收到的报文的报文特征与标识封装策略中携带的某个报文特征一致,例如:接收到的报文中的五元组和某个业务流的五元组一致。

  例如:假设头节点接收到控制器下发的标识封装策略包括:报文特征A、Flow ID1和Template ID1之间的对应关系、报文特征B、Flow ID2和Template ID2之间的对应关系以及报文特征C、Flow ID3和Template ID3之间的对应关系。一种情况下,当该头节点接收到报文X时,获取到报文X的报文特征a,并确定该报文特征a与标识封装策略中的报文特征A匹配,那么,该头节点可以将报文特征A对应的指示标识Flow ID1和Template ID1封装在报文X中。另一种情况下,当该头节点接收到报文Y时,获取到报文Y的报文特征c,并确定该报文特征c与标识封装策略中的报文特征C匹配,那么,该头节点可以将报文特征C对应的指示标识Flow ID3和Template ID3之间封装在报文Y中。再一种情况下,当该头节点接收到报文Z时,获取到报文Z的报文特征d,并确定该报文特征d与标识封装策略中的报文特征A、B和C均不匹配,那么,该头节点不在报文Z中封装任何的指示标识。

  可以理解的是,指示标识理论上可以封装在报文的任何位置,但考虑到封装后的报文到达每个中间节点时,各中间节点均需要读取到该指示标识才可以提供对应的业务服务,而在报文中,有的位置是每个中间节点本身均会读取的位置,有的位置则不是每个中间节点均会读取的位置,那么,如果将指示标识封装在不是每个中间节点均会读取的位置,则需要配置额外的策略或者改造中间节点,才可以确保各中间节点均可以读取到该指示标识,如此,大大的提高了节点提供业务服务的成本;但是,如果将指示标识封装在每个中间节点本身就会读取的位置,则无需再配置额外的策略或者改造中间节点,就可以确保各中间节点均可以读取到该指示标识,如此,有效的降低了节点提供业务服务的成本。基于此,为了提高中间节点对报文处理的效率,可以将该指示标识封装在报文中每个中间节点本身就会读取的位置。

  对于IPv6网络,头节点收到报文后,可以将收到的报文封装为IPv6报文,可以将指示标识封装在IPv6扩展头中。例如:如图3所示的IPv6 Header的格式示意图,可以将指示标识封装在IPv6 Header下的扩展头:逐跳选项头(英文:Hop-by-Hop Option header)字段或目的选项头(英文:Destination Options header)字段中;又例如:如图4所示的另一IPv6Header的格式示意图,也可以将该指示标识封装在该IPv6头的Flow Label字段。可以理解的是,由于IPv6报文到达每个中间节点时,其IPv6扩展头的Hop-by-Hop Option header、Destination Options header以及IPv6头的Flow Label字段均会被读取,故,将指示标识封装于此,中间节点无需再额外对报文的其他位置进行读取等操作,即可获取到指示标识,为中间节点高效的完成业务流的业务对应的操作提供了数据基础。

  例如:参见图5所示,以将指示标识设置于IPv6扩展头的Hop-by-Hop Optionheader为例,该Hop-by-Hop Option header字段可以包括:Option Type、Opt Data Len和Option Data字段,指示标识可以填入Option Data字段中,一种情况下,指示标识的格式参见图5a所示,包括:Flow ID和Color;另一种情况下,指示标识的格式参见图5b所示,包括:Flow ID和Flag;再一种情况下,指示标识的格式参见图5c所示,包括:Flow ID、SequenceNumber、Color以及Template ID;再一种情况下,指示标识的格式参见图5d所示,包括:FlowID、Sequence Number、Flag以及Template ID;又一种情况下,指示标识的格式参见图5e所示,包括:Flow ID、Sequence Number以及Color;再一种情况下,指示标识的格式参见图5f所示,包括:Flow ID、Sequence Number以及Flag。

  需要说明的是,为了能使头节点从IPv6头/扩展头提取到指示标识中的相关信息,头节点可以通过协议通告的方式来获知IPv6头/扩展头中指示标识的格式,例如图3或图4所示格式,并根据该格式来读取相应信息。

  对于SRv6网络,若头节点可以将接收到的报文封装为IPv6段路由(英文:IPv6Segment Routing,简称:SRv6)报文,则,一种情况下,头节点可以将指示标识封装在SRv6报文的分段路由扩展头(英文:Segment Routing Header,简称:SRH)中,SRH的格式可以参见图6所示。关于SRv6中SRH的具体格式,可以详见IPv6Segment Routing Header(SRH)draft-ietf-6man-segment-routing-header-18草案。

  例如:可以将指示标识封装在SRH的每个段标识(英文:Segment ID,简称:SID)中Arguments(Args)字段中,这样,当该报文中被转发到各中间节点后,中间节点从SRH中读取该中间节点对应的SID即可获取到指示标识,无需额外读取其他信息,可以提高报文的转发效率。

  又例如:还可以将指示标识封装在SRH的Optional Type Length Value objects(简称:Option TLV)中或者指定的一个目标SID中,需要说明的是,目标SID可以是SRH中原有的任意一个SID,也可以是新增加在该SRH最后的一个SID,当将指示标识封装在目标SID中时,控制器还需要向各中间节点下发转发策略,指示各中间节点除了读取其对应的SID外,还读取该目标SID,以便获得该指示标识。如此,可以尽量减少该指示标识在多个位置被冗余封装,提高了报文的封装率。

  又例如:也可以将指示标识封装在SRH的Tag字段中或者Flags字段中,再或者,还可以封装在SRH的Tag字段和Flags字段中,各自存放部分指示标识,如:将Flow ID和Sequence Number封装在Tag字段中,将Flag(或Color)和Template ID封装在Flags字段中。

  对于SRv6网络,另一种情况下,参见图7所示的报文格式,头节点也可以将指示标识封装在IPv6 Header中没被使用的源地址(英文:Source Address,简称:SA)中,在报文到达各中间节点时,该中间节点读取SA中封装的指示标识。或者,在SRv6的尽力而为(英文:Best Effort,简称:BE)的场景下,SRv6的外层IPv6的目的地址(英文:DestinationAddress,简称:DA)为尾节点的SID,由于各节点之间的顺序不会变化,所以该IPv6DA始终不变,故,也可以用该IPv6 Header的DA来封装指示标识,这样,在报文到达各中间节点时,该中间节点读取DA中封装的指示标识。另外,对于SRv6网络,头节点也可以将指示标识携带在SRv6的分段列表中。

  对于通过多协议标签交换(英文:Multi-Protocol Label Switching,简称:MPLS)网络,头节点还可以将接收到的报文封装为MPLS报文,该头节点可以将指示标识封装在MPLS的标签栈中,例如:参见图8所示的MPLS label的格式,可以将指示标识封装在MPLS标签栈的最后一个Label字段中,以便在报文到达各中间节点时,该中间节点会读取最后一个label中封装的指示标识。其中,该通过MPLS进行转发的报文可以是第四版互联网协议(英文:Internet Protocol Version 4,简称:IPv4)报文,或者也可以是IPv6报文。

  需要说明的是,上述仅仅是示例性的说明了几种可以被各个节点读取的封装位置。

  需要说明的是,步骤201具体可以由图1中的头节点100执行,该头节点与下述实施例中的第一网络设备属于对相同设备的不同描述。

  可见,将指示标识封装在报文中各个节点可以共享到的封装位置中,且指示标识采用的是多种业务服务通用的格式,可以克服目前业务流提供不同业务服务时操作复杂、效率较低等问题。

  步骤202,头节点向中间节点发送业务流的报文。

  可以理解的是,步骤202中的中间节点,可以是指头节点的下一跳中间节点,例如图1中的中间节点200;业务流的报文是指封装了指示标识后的报文。

  步骤203,中间节点根据业务服务策略对业务流的报文进行业务对应的操作。

  具体实现时,当中间节点接收到封装了指示标识的业务流报文时,该中间节点可以根据该业务流的报文中获取指示标识,比如从该报文的特定位置读取报文中携带的指示标识,当然也可以通过其他方式计算出该报文的指示标识。根据业务服务策略确定与该指示标识对应的业务;对该业务流的报文进行所查询到的业务对应的操作。

  作为一个示例,若指示标识只包括Flow ID,业务服务策略包括该Flow ID与业务之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的Flow ID,并从FlowID与业务之间的对应关系中,确定与该Flow ID对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  作为再一个示例,若指示标识只包括Template ID,业务服务策略包括该TemplateID与业务之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的TemplateID,并从Template ID与业务之间的对应关系中,确定与该Template ID对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  作为另一个示例,若指示标识包括Flow ID和Flag,业务服务策略包括Flow ID、Flag和业务三者之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的Flow ID和Flag,并从Flow ID、Flag和业务三者之间的对应关系中,确定与该Flow ID和Flag对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  作为再一个示例,若指示标识包括Flow ID和Template ID,业务服务策略包括该Flow ID、Template ID和业务三者之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的Flow ID和Template ID,并从Flow ID、Template ID和业务三者之间的对应关系中,确定与该Flow ID和Template ID对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  作为又一个示例,若指示标识包括Flag和Template ID,业务服务策略包括Flag、Template ID和业务三者之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的Flag和Template ID,并从Flag、Template ID和业务三者之间的对应关系中,确定与该Flag和Template ID对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  作为又一个示例,若指示标识包括Flow ID、Flag和Template ID,业务服务策略包括Flow ID、Flag、Template ID和业务四者之间的对应关系,那么,中间节点可以读取所接收到的业务流报文中的Flow ID、Flag和Template ID,并从Flow ID、Flag、Template ID和业务四者之间的对应关系中,确定与该Flow ID、Flag和Template ID对应的具体的业务,即可对该业务流报文执行所确定的业务对应的操作。

  在一些具体的业务服务场景中,中间节点可以对接收到的业务流的报文执行不同的业务对应的操作,以提供不同的业务服务。

  若中间节点确定的业务服务为通过等价多路径路由(英文:Equal-cost multi-path routing,简称:ECMP)技术实现的负载均衡服务,那么,该中间节点执行的业务对应的操作具体可以是:将指示标识作为哈希算法的输入,根据其输出结果确定目标业务路径,实现对网络专供多条等价路径的负载分担。

  若中间节点确定的业务服务为SFC服务,那么,该中间节点执行的业务对应的操作具体可以是:中间节点根据报文中的指示标识确定携带的业务功能,并将该业务流的报文发送给该业务功能对应的业务功能处理模块SF上进行处理,在SF处理完成之后,再将该业务流的报文返回该中间节点,进行下一个业务功能的提供,例如,业务功能具体可以包括深度包检测(英文:Deep Packet Inspection,简称:DPI)、防火墙等。

  若中间节点确定的业务服务为DetNet服务,那么,该中间节点执行的业务对应的操作具体可以是:当头节点通过多条路径发送到中间节点的报文,中间节点通过封装在报文中的Sequence Number对该报文进行多发选收,也即,对于每个接收到的报文,中间节点根据Sequence Number确定是否已经收到过该报文,如果是,则将该重复接收到的报文删除。

  若中间节点确定的业务服务为Path Segment服务,那么,该中间节点执行的业务对应的操作具体可以是:根据指示标识确定该业务流所经过的业务路径分段。

  若中间节点确定的业务服务为PBT服务,那么,该中间节点执行的业务对应的操作具体可以是:根据指示标识识别出该业务流,然后开始收集并上报该业务流的相关性能信息,例如:入接口号、出接口号、入时间戳、出时间戳和丢包统计数据等。

  需要说明的是,对于每个中间节点,在接收到业务流的报文后,均执行步骤203对接收到的业务流报文进行处理;当该中间节点对业务流的报文完成相应的处理之后,将业务流的报文继续发送给下一跳的中间节点,由下一跳的中间节点再执行步骤203对接收到的业务流报文进行处理;以此类推,知道所有的中间节点完成步骤203,才执行下述步骤204。

  例如:假设路径上依次包括头节点1、隧道中间节点2、中间节点3和尾节点4,那么,头节点1将封装了指示标识的业务流报文R发送给中间节点2,该中间节点2根据业务服务策略对业务流报文R进行业务对应的操作后,中间节点2将业务流报文R发送给中间节点3;该中间节点3根据业务服务策略对业务流报文R进行业务对应的操作,完成处理之后,该中间节点3识别到其为路径上的最后一个中间节点,下一跳即为尾节点,那么,视作该次业务流提供的业务服务中步骤204执行完成。

  需要说明的是,步骤203具体可以依次由图1中的中间节点200和中间节点300执行。

  需要说明的是,若头节点上也存在业务服务策略,那么,该头节点也可以执行该步骤203,即,根据业务服务策略对业务流的报文进行业务对应的操作,具体实现可以参见中间节点的相关实现的描述。

  步骤204,中间节点向尾节点发送所述业务流的报文。

  具体实现时,当所有中间节点执行完上述步骤203后,最后一个中间节点即可将该业务流的报文发送给尾节点,该尾节点接收到业务流的报文后,可以对该业务流的报文进行解封装,例如:将该业务流的报文在步骤201中封装的指示标识,从该业务流的报文中解封装出来,得到头节点最初接收到的业务流的报文。如此,可以视作完成该次为业务流提供业务服务的过程。

  例如:当该路径上最后一个中间节点3根据业务服务策略对业务流报文R进行业务服务操作之后,该中间节点3可以将业务流报文R发送给尾节点4,由该尾节点4对该业务流的报文R进行解封装,即,将其中封装的指示标识从该业务流的报文R中解封装出来,得到头节点1最初接收到的业务流的报文,以完成该次为业务流提供的业务服务。

  需要说明的是,步骤204具体可以由图1中的尾节点400执行。

  需要说明的是,若尾节点上也存在业务服务策略,那么,该尾节点也可以执行该步骤203,即,根据业务服务策略对业务流的报文进行业务对应的操作,之后再对业务流的报文进行解封装等后续操作。

  这样,在本申请实施例提供的为业务流提供业务服务的方法中,引入各业务服务均可以识别的指示标识,指示需要为该业务流提供的业务服务;而且,将指示标识封装在各节点可以共享的位置(即,在接收到该业务流报文后可以直接读取的字段),确保各节点在接收到业务流报文后,无需进行额外的读取、查询、解析等操作,也无需在跨域传输时进行流标识的转换,就可以对该业务流的报文进行对应的业务服务的操作以提供对应的业务服务,如此,业务流所经过的节点可以简单、高效的提供各种业务服务。

  此外,本申请实施例还提供了一种为业务流提供业务服务的方法,该方法将指示标识封装到IPv6头/扩展头中,且将头节点作为执行该方法的网络设备,参见图9,该方法具体可以包括:

  步骤901,网络设备接收第一报文,该网络设备支持IPv6;

  步骤902,若第一报文的报文特征匹配业务流的报文特征,网络设备将业务流的指示标识封装到第一报文中得到第二IPv6报文,业务流的指示标识用于指示为所述业务流提供的业务;

  步骤903,网络设备发送第二IPv6报文。

  其中,该指示标识可以包括业务的标识。

  可以理解的是,业务具体可以包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  作为一个示例,指示标识还包括业务对应的操作的标识和/或第一报文中携带的序列号Sequence Number。

  可以理解的是,第二IPv6报文包括IPv6扩展头,IPv6扩展头包括指示标识。

  对于IPv6网络,IPv6扩展头包括第二IPv6报文的逐跳选项Hop-by-Hop Optionheader字段或目的选项头Destination Options header字段,Hop-by-Hop Option header字段或Destination Options header字段包括指示标识。

  对于SRv6网络,第二IPv6报文为IPv6段路由SRv6报文,网络设备支持SRv6,IPv6扩展头包括第二IPv6报文的分段路由扩展头SRH,SRH包括指示标识。一种情况下,SRH包括段标识SID,SID包括指示标识。另一种情况下,SID包括参数Arguments字段,Arguments字段包括指示标识。再一种情况下,SRH包括Tag字段和/或Flags字段,Tag字段和/或Flags字段包括指示标识。所述SRv6报文包括SRv6的分段列表(英文:Segment list)。所述SRv6的分段列表包括所述指示标识。更具体地,所述MPLS标签栈的最后一个标签包括所述指示标识。

  此外,第二IPv6报文为SRv6报文时,网络设备支持SRv6,第二IPv6报文包括IPv6Header,第二IPv6报文的IPv6 Header包括源地址SA字段,SA字段包括指示标识。在一种实施例中,第二IPv6报文为SRv6报文,网络设备支持SRv6尽力而为BE,第二IPv6报文的IPv6扩展头包括IPv6 Header的目的地址DA字段,DA字段包括指示标识。

  此外,第二IPv6报文包括IPv6 Header,所述IPv6 Header包括流标签Flow Label字段,所述Flow Label字段包括所述指示标识。

  作为另一个示例,指示标识还包括流标签或流标识。

  需要说明的是,图9所示的实施例的具体实现以及达到的效果,可以参见图2中步骤201~步骤202的相关描述。

  此外,本申请实施例还提供了一种为业务流提供业务服务的方法,该方法将指示标识封装到IPv6头/扩展头中,且将中间节点作为执行该方法的网络设备,参见图10,该方法具体可以包括:

  步骤1001,网络设备接收报文,该网络设备支持IPv6;

  步骤1002,网络设备从报文中获取业务流的指示标识,业务流的指示标识用于指示为所述业务流提供的业务;

  步骤1003,网络设备根据指示标识与业务之间的映射关系,对报文执行业务对应的操作;

  步骤1004,网络设备发送包括所述指示标识的报文。

  其中,指示标识包括业务的标识。

  可以理解的是,业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  作为一个示例,指示标识还包括业务对应的操作的标识和/或收到的报文的序列号Sequence Number。

  可以理解的是,所述包括所述指示标识的报文为IPv6报文,该IPv6报文包括IPv6扩展头,IPv6扩展头包括指示标识。IPv6扩展头包括IPv6报文的Hop-by-Hop Optionheader字段或Destination Options header字段,Hop-by-Hop Option header字段或Destination Options header字段包括指示标识。

  对于SRv6网络,所述包括所述指示标识的报文为IPv6段路由SRv6报文,网络设备支持SRv6,IPv6扩展头包括报文的SRH,SRH包括指示标识。一种情况下,SRH包括段标识SID,SID包括指示标识。另一种情况下,SID包括参数Arguments字段,Arguments字段包括指示标识。再一种情况下,SRH包括Tag字段和/或Flags字段,Tag字段和/或Flags字段包括指示标识。

  此外,所述包括所述指示标识的报文为SRv6报文,网络设备支持SRv6,SRv6报文包括IPv6 Header,IPv6 Header包括源地址SA字段,SA字段包括指示标识。在一些实施例中,网络设备支持SRv6 BE,SRv6报文包括IPv6 Header,SRv6报文的IPv6 Header包括目的地址DA字段,DA字段包括指示标识。

  此外,所述包括所述指示标识的报文包括IPv6 Header,所述IPv6 Header包括流标签Flow Label字段,所述Flow Label字段包括所述指示标识。

  作为另一个示例,指示标识还包括流标签或流标识。

  需要说明的是,图10所示的实施例的具体实现以及达到的效果,可以参见图2中步骤203~步骤204的相关描述。

  另外,本申请实施例还提供了一种为业务流提供业务服务的方法,该方法将指示标识封装到MPLS标签栈中,且将头节点作为执行该方法的网络设备,参见图11,该方法具体可以包括:

  步骤1101,网络设备接收第一报文;

  步骤1102,若第一报文的报文特征匹配业务流的报文特征,网络设备对第一报文封装业务流对应的多协议标签交换MPLS协议的标签栈得到第二报文,其中,标签栈包括业务流的指示标识,业务流的指示标识用于指示为所述业务流提供的业务;

  步骤1103,网络设备发送第二报文。

  其中,指示标识包括业务的标识。

  可以理解的是,业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  作为一个示例,指示标识还包括业务对应的操作的标识和/或第一报文中携带的序列号Sequence Number。

  可以理解的是,标签栈的最后一个标签包括指示标识。

  需要说明的是,图11所示的实施例的具体实现以及达到的效果,可以参见图2中步骤201~步骤202的相关描述。

  此外,本申请实施例还提供了一种为业务流提供业务服务的方法,该方法将指示标识封装到MPLS标签栈中,且将中间节点作为执行该方法的网络设备,参见图12,该方法具体可以包括:

  步骤1201,网络设备接收报文;

  步骤1202,网络设备从报文的标签栈中读取业务流的指示标识,业务流的指示标识用于指示为所述业务流提供的业务;

  步骤1203,网络设备根据指示标识与业务之间的映射关系,对报文执行业务对应的操作;

  步骤1204,网络设备发送报文。

  其中,指示标识包括业务的标识。

  其中,该标签栈可以是MPLS标签栈,或者,也可以是SRv6的分段列表(英文:Segment list)。所述标签栈包括所述指示标识。具体地,所述MPLS标签栈或所述SRv6的分段列表包括所述指示标识。更具体地,所述MPLS标签栈的最后一个标签包括所述指示标识。

  可以理解的是,业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  作为一个示例,指示标识还包括业务对应的操作的标识和/或报文的序列号Sequence Number。

  可以理解的是,标签栈的最后一个标签包括指示标识。

  需要说明的是,图12所示的实施例的具体实现以及达到的效果,可以参见图2中步骤203~步骤204的相关描述。

  图13为本申请实施例提供的一种为业务流提供业务服务的装置1300的结构示意图。该装置1300具体可以包括接收单元1301、封装单元1302和发送单元1303。其中接收单元1301用于接收第一报文。封装单元1302用于若第一报文的报文特征匹配业务流的报文特征,将业务流的指示标识封装到第一报文中得到第二报文,业务流的指示标识用于指示为所述业务流提供的业务。发送单元1303用于发送第二报文。

  在一些实施例中,所述第二报文为IPv6报文或MPLS报文。

  其中,指示标识包括业务的标识。该业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  作为一个示例,指示标识还包括业务对应的操作的标识和/或第一IPv6报文中携带的序列号Sequence Number。

  在一些实现方式中,第二报文为IPv6报文,第二报文包括IPv6扩展头,IPv6扩展头包括指示标识。这样,可以将该指示标识封装在报文中每个中间节点本身就会读取的IPv6扩展头中,提高了中间节点对报文处理的效率。

  在另一些实现方式中,对于IPv6网络,第二报文的IPv6扩展头包括第二报文的逐跳选项Hop-by-Hop Option header字段或目的选项头Destination Options header字段,Hop-by-Hop Option header字段或Destination Options header字段包括指示标识。

  在再一些实现方式中,对于SRv6网络,第二报文为IPv6段路由SRv6报文,装置1300支持SRv6,所述SRv6报文包括IPv6扩展头,IPv6扩展头包括第二报文的分段路由扩展头SRH,SRH包括指示标识。其中,一种情况下,SRH包括段标识SID,SID包括指示标识;另一种情况下,SID包括参数Arguments字段,Arguments字段包括指示标识;再一种情况下,SRH包括Tag字段和/或Flags字段,Tag字段和/或Flags字段包括指示标识。

  在另一些实现方式中,仍然对于SRv6网络,第二报文为SRv6报文,装置1300支持SRv6,第二报文包括IPv6 Header,第二报文的IPv6 Header包括源地址SA字段,SA字段包括指示标识。在一些实施例中,第二报文为SRv6报文,装置1300支持SRv6尽力而为BE,第二IPv6报文的IPv6扩展头包括IPv6 Header的目的地址DA字段,DA字段包括指示标识。

  此外,第二报文包括IPv6 Header,所述IPv6 Header包括流标签Flow Label字段,所述Flow Label字段包括所述指示标识。

  需要说明的是,该指示标识还包括流标签或流标识。

  可以理解的是,图13所示的装置1300的各种具体实施例方式,可以参见图9所示的实施例的介绍,本实施例不再赘述。

  图14为本申请实施例提供的一种为业务流提供业务服务的装置1400的结构示意图,该装置1400具体可以包括接收单元1401、获取单元1402、执行单元1403和发送单元1404。其中接收单元1401用于接收报文;获取单元1402用于根据收到的报文获取业务流的指示标识,业务流的指示标识用于指示为所述业务流提供的业务;执行单元1403用于根据指示标识与业务之间的映射关系,对报文执行业务对应的操作;发送单元1404用于发送包括所述指示标识的报文。

  其中,指示标识包括业务的标识。该业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  在一个示例中,指示标识还包括业务对应的操作的标识和/或所述收到的报文的序列号Sequence Number。

  在一些实现方式中,所述包括所述指示标识的报文为IPv6报文,所述包括所述指示标识的报文包括IPv6扩展头,IPv6扩展头包括指示标识。这样,可以将该指示标识封装在报文中每个中间节点本身就会读取的IPv6扩展头中,提高了中间节点对报文处理的效率。在另一些实现方式中,IPv6扩展头包括IPv6报文的Hop-by-Hop Option header字段或Destination Options header字段,Hop-by-Hop Option header字段或DestinationOptions header字段包括指示标识。

  在再一些实现方式中,对于SRv6网络,所述包括所述指示标识的报文为IPv6段路由SRv6报文,装置1400支持SRv6,IPv6扩展头包括报文的SRH,SRH包括指示标识。其中,一种情况下,SRH包括段标识SID,SID包括指示标识;另一种情况下,该SID包括参数Arguments字段,Arguments字段包括指示标识再一种情况下,SRH包括Tag字段和/或Flags字段,Tag字段和/或Flags字段包括指示标识。

  在另一些实现方式中,仍然对于SRv6网络,所述包括所述指示标识的报文为SRv6报文,装置1400支持SRv6,SRv6报文包括IPv6 Header,IPv6 Header包括源地址SA字段,SA字段包括指示标识。在一些实施例中,所述包括所述指示标识的报文为SRv6报文,装置1400支持SRv6 BE,SRv6报文包括IPv6 Header,SRv6报文的IPv6 Header包括目的地址DA字段,DA字段包括指示标识。

  在一些实施例中,所述包括所述指示标识的报文包括IPv6 Header,所述IPv6Header包括流标签Flow Label字段,所述Flow Label字段包括所述指示标识。

  需要说明的是,该指示标识还包括流标签或流标识。

  可以理解的是,图14所示的装置1400的各种具体实施例方式,可以参见图10所示的实施例的介绍,本实施例不再赘述。

  图15为本申请实施例提供的一种为业务流提供业务服务的装置1500的结构示意图,该装置1500包括接收单元1501、封装单元1502和发送单元1503。其中接收单元1501用于接收第一报文。封装单元1502用于若所述第一报文的报文特征匹配业务流的报文特征,对所述第一报文封装所述业务流对应的多协议标签交换MPLS协议的标签栈得到第二报文,其中,所述标签栈包括所述业务流的指示标识,所述业务流的指示标识用于指示为所述业务流提供的业务;发送单元1503用于发送所述第二报文。

  其中,指示标识包括业务的标识。该业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  在一个示例中,指示标识还包括业务对应的操作的标识和/或第一报文中携带的序列号Sequence Number。

  在一些实现方式中,标签栈的最后一个标签包括指示标识。

  可以理解的是,图15所示的装置1500的各种具体实施例方式,可以参见图11所示的实施例的介绍,本实施例不再赘述。

  图16为本申请实施例提供的一种为业务流提供业务服务的装置1600的结构示意图,该装置1600具体可以包括接收单元1601、获取单元1602、执行单元1603和发送单元1604。其中接收单元1601用于接收报文。获取单元1602,用于从所述报文的标签栈中读取业务流的指示标识,所述业务流的指示标识用于指示为所述业务流提供的业务。执行单元1603用于根据所述指示标识与所述业务之间的映射关系,对所述报文执行所述业务对应的操作。发送单元1604用于发送所述报文。该标签栈可以是MPLS标签栈,或者,也可以是SRv6的分段列表(英文:Segment list)。所述标签栈包括所述指示标识。具体地,所述MPLS标签栈或所述SRv6的分段列表包括所述指示标识。更具体地,所述MPLS标签栈的最后一个标签包括所述指示标识。

  其中,指示标识包括业务的标识。该业务包括以下任意一种或多种业务:操作管理维护OAM、业务功能链SFC、确定网络DetNet。

  在一个示例中,指示标识还包括业务对应的操作的标识和/或报文的序列号Sequence Number。

  在一些实现方式中,标签栈的最后一个标签包括指示标识。

  可以理解的是,图16所示的装置1600的各种具体实施例方式,可以参见图12所示的实施例的介绍,本实施例不再赘述。

  前述装置1300、装置1400、装置1500和装置1600中的任何一个,可以位于支持IPv6的网络设备。

  此外,本申请实施例还提供了一种计算机程序产品,当其在计算机上运行时,使得计算机执行前述图9~图12所示的方法中任意一种实现方式所述的为业务流提供业务服务的方法。

  此外,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得该计算机或处理器执行前述图9~图12所示的方法中任意一种可能的实现方式中所述的为业务流提供业务服务的方法。

  本申请实施例中提到的“第一IPv6报文”、“第一报文”等名称中的“第一”只是用来做名字标识,并不代表顺序上的第一。该规则同样适用于“第二”等。

  通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本申请各个实施例或者实施例的某些部分所述的方法。

  本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的方法、装置及设备实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

  以上所述仅是本申请示例性的实施方式,并非用于限定本申请的保护范围。

《一种为业务流提供业务服务的方法和装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)