一种处理报文的方法和装置与流程

文档序号:13521450阅读:121来源:国知局
一种处理报文的方法和装置与流程
本发明涉及通信领域,尤其涉及一种处理报文的方法和装置。

背景技术:
在传统的通信网络中,增值业务设备,如防火墙、负载均衡器(英文:loadbalancer,缩写:LB)、入侵防御系统(英文:intrusionpreventionsystem,缩写:IPS)、入侵检测系统(英文:IntrusionDetectionSystem,缩写:IDS)、数据丢失防护(英文:datalossprevention,缩写:DLP)设备、防病毒(英文:anti-virus,缩写:AV)设备等的部署位置通常和网络拓扑是强相关的,即增值业务设备一般部署在需要该增值业务设备处理的业务流的正常转发路径上,或者旁挂在正常转发路径上的网络设备(例如路由器或交换机)上。采用上述的增值业务设备和业务流转发紧密耦合带来的问题是业务处理路径不灵活。例如,在一条转发路径上,正常转发的报文都会经过防火墙和IPS。但经过该转发路径的业务流,有些可能只需要防火墙进行处理,有些则需要防火墙和IPS都进行处理。在传统部署模式下,不需要IPS处理的业务流也必须经过IPS,浪费了IPS的处理能力。为了解决上述问题,现有技术中提出了业务链(英文:servicechain)的概念。其基本思路是在一个网络节点上对业务流指定需要进行的增值业务处理及顺序,然后通过隧道技术使该业务流中的报文依次经过各个增值业务设备。通过采用业务链,可以实现增值业务部署位置和网络拓扑的解耦,避免对增值业务设备能力的浪费。在使用业务链的场景中,需要选择业务路径和识别业务路径,使当前增值业务设备能够将处理后的报文送到业务路径中的下一跳增值业务设备。所述业务路径,是指由特定业务流需要经过的增值业务设备组成的路径。现有技术提出了一种在报文转发过程中使用标准隧道头中的字段作为业务路径标识来识别业务路径的方法,例如,使用通用路由封装(英文:genericroutingencapsulation缩写:GRE)中的关键字(英文:key)字段,MAC-in-MAC封装中的业务实例虚拟局域网标识(英文:ServiceInstanceVLANID,缩写:I-SID)字段,网络虚拟化通用路由封装(英文:networkvirtualizationusinggenericroutingencapsulation,缩写:NVGRE)中的虚拟子网标识(英文:virtualsubnetidentifier,缩写:VSID)或者虚拟可扩展局域网(英文:virtualextensiblelocalareanetwork,缩写:VXLAN)封装中的虚拟网络标识(英文:virtualnetworkidentifier,缩写:VNID)来标识业务路径。然而,标准隧道头中的字段在现有网络中已经有了特定用途,用这些字段来标识业务链中的业务路径,会引起业务冲突。此外,该方法要求业务路径上的网络设备(包括流分发点和增值业务设备)都必须支持相应的隧道功能,以在业务流的转发过程中进行隧道的封装和解封装,增加了网络设备的负担。

技术实现要素:
本发明的目的在于提供一种处理报文的方法和装置,以避免在处理报文的过程中使用标准隧道头中的字段来标识业务路径引起的业务冲突,减轻业务路径上的网络设备的负担。第一方面提供一种处理报文的方法,包括:获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括业务路径标识,所述业务路径标识用于标识业务路径;根据所述业务路径选项获取所述业务路径标识;根据所述业务路径标识以及本地存储的转发表处理所述添加报文。在所述第一方面的第一种实现方式中,所述获取添加报文之前,所述方法还包括:接收管理设备发送的业务路径信息,所述业务路径信息包括所述业务路径标识;根据所述业务路径信息更新所述转发表。结合所述第一方面的第一种实现方式,在所述第一方面的第二种实现方式中,所述转发表为第一转发表,所述业务路径信息还包括业务流标识以及下一跳,所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新所述第一转发表,所述第一转发表包括所述业务流标识、所述业务路径标识以及所述下一跳的对应关系。结合所述第一方面的第二种实现方式,在所述第一方面的第三种实现方式中,所述获取添加报文包括:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加所述业务路径选项,得到所述添加报文。结合所述第一方面的第三种实现方式,在所述第一方面的第四种实现方式中,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。结合所述第一方面的第二种实现方式,在所述第一方面的第五种实现方式中,所述业务路径信息还包括所述业务路径标识对应的业务路径的节点数,所述第一转发表包括所述业务流标识、所述业务路径标识、所述下一跳以及所述节点数的对应关系。结合所述第一方面的第五种实现方式,在所述第一方面的第六种实现方式中,所述获取添加报文包括:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识以及所述节点数,根据所述业务路径标识及所述节点数在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识以及生存时间,所述生存时间的值为所述节点数。结合所述第一方面的第六种实现方式,在所述第一方面的第七种实现方式中,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:将所述业务路径选项中的生存时间的值减1后,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。结合所述第一方面的第一种实现方式,在所述第一方面的第八种实现方式中,所述转发表为第二转发表,所述业务路径信息还包括下一跳,所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新所述第二转发表,所述第二转发表包括所述业务路径标识以及所述下一跳的对应关系。结合所述第一方面的第八种实现方式,在所述第一方面的第九种实现方式中,所述获取添加报文包括:接收上一跳设备发送的所述添加报文,所述上一跳设备包括流分发点或者上一跳增值业务设备。结合所述第一方面的第八种或第九种实现方式,在所述第一方面的第十种实现方式中,所述根据所述业务路径选项获取所述业务路径标识之前,所述方法还包括:对所述添加报文进行增值业务处理,得到处理后的添加报文。结合所述第一方面的第十种实现方式,在所述第一方面的第十一种实现方式中,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,当所述下一跳为终止标识时,删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发;或当所述业务路径选项中还包括生存时间,且所述生存时间的值大于1时,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:将所述业务路径选项中的所述生成时间的值减1,根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,向所述下一跳转发所述处理后的添加报文;或当所述业务路径选项中还包括生存时间,且所述生存时间的值为1时,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发。第二方面提供一种处理报文的装置,包括:第一获取单元,用于获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括所述业务路径标识,所述业务路径标识用于标识业务路径;第二获取单元,用于根据所述业务路径选项获取所述业务路径标识;存储单元,用于存储转发表;处理单元,用于根据所述业务路径标识以及所述转发表处理所述添加报文。在所述第二方面的第一种实现方式中,所述装置还包括:接收单元,用于接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识;更新单元,用于根据所述业务路径信息更新所述转发表。结合所述第二方面的第一种实现方式,在所述第二方面的第二种实现方式中,所述业务路径信息还包括业务流标识以及下一跳,所述更新单元用于:根据所述业务路径信息更新所述第一转发表,所述第一转发表包括所述业务流标识、所述业务路径标识以及所述下一跳的对应关系。结合所述第二方面的第二种实现方式,在所述第二方面的第三种实现方式中,所述第一获取单元用于:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到所述添加报文。结合所述第二方面的第三种实现方式,在所述第二方面的第四种实现方式中,所述处理单元用于:根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。结合所述第二方面的第二种实现方式,在所述第二方面的第五种实现方式中,所述业务路径信息还包括所述业务路径标识对应的业务路径的节点数,所述第一转发表包括所述业务流标识、所述业务路径标识、所述下一跳以及所述节点数的对应关系。结合所述第二方面的第五种实现方式,在所述第二方面的第六种实现方式中,所述第一获取单元用于:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识以及所述节点数,根据所述业务路径标识及所述节点数在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识以及生存时间,所述生存时间的值为所述节点数。结合所述第二方面的第六种实现方式,在所述第二方面的第七种实现方式中,所述处理单元用于:将所述业务路径选项中的生存时间的值减1后,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。结合所述第二方面的第一种实现方式,在所述第二方面的第八种实现方式中,所述业务路径信息还包括下一跳,所述更新单元用于:根据所述业务路径信息更新所述第二转发表,所述第二转发表包括所述业务路径标识以及所述下一跳的对应关系。结合所述第二方面的第八种实现方式,在所述第二方面的第九种实现方式中,所述第一获取单元用于:接收上一跳设备发送的所述添加报文,所述上一跳设备包括流分发点或者上一跳增值业务设备。结合所述第二方面的第八种或第九种实现方式,在所述第二方面的第十种实现方式中,所述装置还包括:增值业务处理单元,用于对所述添加报文进行增值业务处理,得到处理后的添加报文。结合所述第二方面的第十种实现方式,在所述第二方面的第十一种实现方式中,所述处理单元用于:根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或所述处理单元用于:根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,当所述下一跳为终止标识时,删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发;或当所述业务路径选项中还包括生存时间,且所述生存时间的值大于1时,所述处理单元用于:将所述业务路径选项中的所述生成时间的值减1,根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,向所述下一跳转发所述处理后的添加报文;或当所述业务路径选项中还包括生存时间,且所述生存时间的值为1时,所述处理单元用于:删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发。上述方案中,通过根据管理设备发送的包括业务路径标识的业务路径信息更新存储的转发表,并根据该转发表转发在业务报文的IP头中添加业务路径选项后得到的添加报文,实现了报文转发过程中业务路径标识与标准隧道头中的字段的解耦,避免了使用标准隧道头中的字段来标识业务路径引起的业务冲突。并且,上述方案不需要所述处理报文的装置承担额外的隧道功能,减轻了所述装置的负担。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的一种网络系统结构示意图;图2是本发明实施例中提供的配置业务路径标识的方法的流程示意图;图3是本发明实施例中提供的一种处理报文的方法的流程示意图;图4a和图4b是本发明实施例提供的第一转发表的结构示意图;图5a是IP头的结构示意图;图5b是本发明实施例提供的业务路径选项的结构示意图;图6是本发明实施例中提供的另一种处理报文的方法的流程示意图;图7是本发明实施例中提供的再一种处理报文的方法的结构示意图;图8是本发明实施例中提供的一种处理报文的装置的结构示意图;图9是本发明实施例中提供的另一种处理报文的装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供了一种网络系统。如图1所示,所述网络系统10包括管理设备11,流分发点12以及增值业务设备13,所述增值业务设备可以有一个或多个,图中示出了多个增值业务设备13a-n。其中,所述管理设备11,流分发点12以及增值业务设备13均可以是网络中的虚拟节点,虚拟功能模块或者硬件物理实体。所述管理设备11管理所述流分发点11和所述多个增值业务设备13a-n,根据接收的业务需求确定业务路径以及相应的业务路径标识,向所述流分发点11上和所述增值业务设备13上分别发送包括所述业务路径标识上的业务路径信息。所述流分发点12位于所述网络系统的入口处,用于根据本地存储的第一转发表为接收到的业务报文选择业务路径,并在为所述业务报文的IP头中添加业务路径选项获得添加报文后,将所述添加报文发送到所述选择的业务路径,所述业务路径包括一个或多个增值业务设备,例如,图1中示出了包括增值业务设备13a,13b,13c以及13d的业务路径1和包括增值业务设备13a,13b以及13n的业务路径2。所述增值业务设备13用于在接收到添加报文时,对该添加报文进行相应的增值业务处理,并根据本地存储的第二转发表,将经过处理后的业务报文发送到下一跳。基于图1所示的网络系统,本发明实施例提供了一种配置业务路径标识的方法。所述方法的执行主体为所述管理设备11。如图2所示,在步骤201中,所述管理设备接收用户的业务需求,所述业务需求包括业务流标识和业务规格。一方面,所述用户的业务需求可以由所述用户直接发送给所述管理设备;另一方面,所述用户的业务需求可以由网络管理系统配置,并由所述网络管理系统发送给所述管理设备。所述业务流标识用于识别需要处理的业务流。所述业务规格包括所述业务流需要的增值业务及其顺序。所述业务规格还可以进一步包括增值业务性能,所述增值业务性能为对增值业务设备的性能要求,例如网络吞吐量,并发连接数等。在步骤202中,所述管理设备根据所述业务需求选择增值业务设备,确定业务路径,所述业务路径包括所述业务流标识对应的业务流在传输过程中需要经过的增值业务设备。所述管理设备根据所述业务需求选择相应的增值业务设备,具体可以是,根据所述业务需求中的业务规格选择每个增值业务对应的增值业务设备。当所述业务规格中还包括增值业务性能时,所述管理设备根据业务规格中的增值业务以及增值业务性能选择增值业务设备。当所述业务规格中包括多个增值业务时,所述业务规格中可以包括对应一种或多种增值业务的增值业务性能。例如,当所述业务规格包括防火墙的性能时,表明处理所述业务流需要相应性能的防火墙,因此,所述管理设备从多个防火墙中选择符合所述性能的防火墙。选择增值业务设备后,所述管理设备根据所述业务规格中的所述增值业务的顺序,确定业务路径,所述业务路径包括所述业务流在传输过程中需要顺序经过的增值业务设备。例如,所述业务需求表明业务流需要依次经过过滤处理、入侵检测和负载均衡处理,那么所述业务路径可以包括:防火墙、IDS和负载均衡器。在步骤203中,所述管理设备确定所述业务路径的业务路径标识。所述管理设备上存储有业务路径数据库。所述业务路径数据库中包括业务路径标识和业务路径。所述管理设备确定所述业务路径标识包括:所述管理设备根据所述业务路径查找所述业务路径数据库,在一个实现方式中,如果所述业务路径数据库中存储有所述业务路径,获取所述业务路径的业务路径标识;在另一个实现方式中,如果所述业务路径数据库中没有存储所述业务路径时,为所述业务路径分配业务路径标识,并在所述业务路径数据库中记录所述业务路径及所述业务路径标识。所述业务路径标识用于标识业务路径。在步骤204中,所述管理设备向其所管理的网络节点发送业务路径信息,所述业务路径信息包括所述业务路径标识。所述网络节点包括所述流分发点11以及所述增值业务设备13。在一个实现方式中,所述管理设备向所述流分发点发送业务路径信息,所述业务路径信息用于使所述流分发点更新第一转发表。所述业务路径信息除所述业务路径标识外,还包括业务流标识以及所述业务路径上所述流分发点的下一跳(即所述业务路径上的第一个增值业务设备)。所述第一转发表包括业务流标识,业务路径标识以及下一跳的对应关系。可选地,所述业务路径信息还可以进一步包括所述业务路径的节点数,即所述业务路径上增值业务设备的数量。例如,图1中,业务流1对应业务路径1,业务路径1的节点数为4,业务路径2的节点数为3。这种情况下,所述第一转发表包括业务流标识,业务路径标识,节点数以及下一跳的对应关系。在另一个实现方式中,所述管理设备向所述增值业务设备发送业务路径信息,所述业务路径信息用于使所述增值业务设备更新第二转发表。所述业务路径信息除所述业务路径标识外,还包括所述业务路径上所述增值业务设备的下一跳。所述第二转发表包括业务路径标识以及下一跳的对应关系。在另一实现方式中,当所述增值业务设备为所述业务路径标识对应的业务路径上的最后一个增值业务设备时,所述下一跳为终止标识。所述终止标识用于表示所述增值业务设备为所述业务路径标识对应的业务路径的最后一跳。当所述业务路径包括多个增值业务设备时,所述管理设备需要为所述业务路径上的每个增值业务设备分别配置配置业务路径信息。配置完成后,每个增值业务设备针对所述业务路径标识,生成不同的第二转发表项。例如,在图1所示的网络系统中,针对业务路径1,增值业务设备13a的第二转发表项为(业务路径1,13b),增值业务设备13b的第二转发表项为(业务路径1,13c),其他增值业务上的配置类似。本发明上述实施例中,管理设备根据用户的业务需求为所述用户的业务流确定业务路径,并为所述业务路径确定业务路径标识,然后将在流分发点和增值业务设备上配置所述业务路径标识。由于所述业务路径标识与标准隧道头中的字段无关,因此,在网络中使用所述业务路径标识,不会引起业务的冲突。进一步地,上述实施例中,流分发点上和增值业务设备上只要分别增加一个第一转发表或第二转发表就能实现业务流的识别和转发,与使用标准隧道头中的字段标识业务路径相比,增值业务设备不需要承担额外的隧道功能,减轻了增值业务设备的负担。基于图1所示的网络系统,本发明另外提供了一种如图3所示的处理报文的方法。所述方法的执行主体为流分发点12或增值业务设备13。如图3所示,在步骤301中,接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识。在一个实现方式中,流分发点接收管理设备发送的业务路径信息,所述业务路径信息除所述业务路径标识外,还包括业务流标识以及下一跳,或者还包括业务流标识,下一跳以及以及所述业务路径标识对应的业务路径的节点数。在另一个实现方式中,增值业务设备接收管理设备发送的业务路径信息,所述业务路径信息除所述业务路径标识外,还包括下一跳。在另一实现方式中,当所述增值业务设备为所述业务路径标识对应的业务路径上的最后一个增值业务设备时,所述下一跳为终止标识。所述终止标识用于表示所述增值业务设备为所述业务路径标识对应的业务路径的最后一跳。在步骤302中,根据所述业务路径信息更新本地存储的转发表。在一个实现方式中,所述步骤302由流分发点执行。所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新所述流分发点本地存储的第一转发表。当所述业务路径信息除所述业务路径标识外,还包括业务流标识以及下一跳时,所述第一转发表如图4a所示,包括业务流标识,业务路径标识以及下一跳的对应关系。进一步地,当所述业务路径信息除所述业务路径标识外,还包括业务流标识、下一跳以及所述业务路径标识对应的业务路径的节点数(即所述业务路径上增值业务设备的数量)时,所述第一转发表如图4b所示,包括业务流标识,业务路径标识,下一跳以及节点数的对应关系。在另一个实现方式中,所述步骤302由增值业务设备执行。所述业务路径信息除所述业务路径标识外,还包括下一跳。所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新所述增值业务设备本地存储的第二转发表,所述第二转发表包括业务路径标识以及下一跳的对应关系。所述的更新转发表,包括生成所述转发表,为所述转发表生成新的表项,或者替换掉所述转发表中原有的表项中的任意一种。在本发明实施例中,上述步骤301和302是可选的,上述业务路径信息中的信息还可以通过其他方式发送给所述流分发点或者增值业务设备,例如,由管理设备将业务路径信息发送给所述流分发点,再由所述流分发点发送给所述增值业务设备;或者,由管理设备直接将转发表下发送流分发点或者增值业务设备。在步骤303中,获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括所述业务路径标识。如前所述,所述业务路径标识用于标识业务路径。如图5a所示,为IP头结构示意图。可以看出,除了标准定义的字段外,在IP头中还可以包括一系列选项(英文:option)。本发明实施例的业务路径选项,即为IP头中的一个扩展选项。如图5b所示,为本发明实施例中业务路径选项的结构示意图,其中类型(type)表示该选项为业务路径选项,例如,可以是250;长度(length)表示该业务路径选项的总长度,生存时间(英文:time-to-live,缩写:TTL)用于表示该报文可以经过的增值业务设备的数量(简称为节点数),路径ID(pathID)表示业务路径标识。所述业务路径选项中可以只包括业务路径标识,也可以包括业务路径标识和TTL。在一个实施例中,步骤303由流分发点执行。所述获取添加报文包括:所述流分发点接收业务报文,所述业务报文属于所述业务流标识对应的业务流,根据所述业务流标识以及查找所述第一转发表以获取所述业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识;或所述流分发点接收业务报文,所述业务报文属于所述业务流标识对应的业务流,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识及节点数,根据所述业务路径标识及节点数在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识以及生存时间,所述生存时间的值为所述节点数。在另一个实施例中,步骤303由增值业务设备执行。所述获取添加报文包括:所述增值业务设备接收上一跳设备发送的所述添加报文,所述上一跳设备可以为所述流分发点或者所述增值业务设备的上一跳增值业务设备。在步骤304中,根据所述业务路径选项获取所述业务路径标识。具体来说,所述流分发点或者增值业务设备解析所述添加报文,得到所述业务路径选项,从所述业务路径选项中获取所述业务路径标识。在步骤305中,根据所述业务路径标识以及所述本地存储的转发表处理所述添加报文。在一个实施例中,所述步骤305由流分发点执行。当所述业务路径选项中只包括所述业务路径标识时,所述流分发点根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文;当所述业务路径选项中还包括生存时间时,所述流分发点将所述生存时间的值减1,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。由于流分发点中生成添加报文的功能模块(或进程)和发送所述添加报文的功能模块(或进程)不同,因此在发送添加报文之前,流分发点还需要获取该业务路径选项中的业务路径标识,并根据该业务路径标识对所述添加报文进行相应的处理。在另一个实施例中,所述步骤305由增值业务设备执行。则在步骤303和步骤304之间,所述方法还包括:所述增值业务设备对所述添加报文进行增值业务处理,得到处理后的添加报文。此后,所述增值业务设备根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或所述增值业务设备根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,当所述下一跳为终止标识时,删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发;或当所述业务路径选项中还包括生存时间,且所述生存时间的值大于1时,所述增值业务设备将所述业务路径选项中的所述生成时间的值减1后,根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或当所述业务路径选项中包括所述业务路径标识以及生成时间,且所述生成时间的值为1时,所述增值业务设备删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发,即根据所述处理后的业务报文的目的地址对所述业务报文进行二层或者三层转发。所述生存时间的值为所述业务路径上所述添加报文需要经过的增值业务设备(包括当前接收所述添加报文的增值业务设备)的数量。例如,增值设备13b收到的添加报文中的业务路径选项中,业务路径标识为1,生存时间的值为3。上述实现方式中,由于所述添加报文是通过在业务报文的IP头的选项添加业务路径选项得到的,所述业务路径选项的添加,既不会影响所述业务报文的IP头中的其他信息,也不会影响所述业务报文的载荷。因此,增值业务设备对该添加报文的处理,相当于对该业务报文的处理。因此,从处理后的添加报文中删除所述业务路径选项后,得到的就是处理后的业务报文。基于图1所示的网络系统,以下从流分发点12的角度,对本发明图3所示上述方法实施例作进一步说明。如图6所示,在步骤601中,流分发点接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识。在步骤602中,所述流分发点根据所述业务路径信息更新第一转发表。在一个实现方式中,所述业务路径信息包括业务流标识,业务路径标识以及所述流分发点的下一跳。所述流分发点根据所述业务路径信息,更新本地存储的第一转发表,如图4a所示,所述第一转发表包括业务流标识,业务路径标识以及下一跳的对应关系。可选地,所述业务路径信息还可以包括所述业务路径的节点数,即所述业务路径上增值业务设备的数量。例如,图1中,业务路径1的节点数为4,业务路径2的节点数为3。这种情况下,如图4b所示,所述第一转发表包括业务流标识,业务路径标识,节点数以及下一跳的对应关系。在步骤603中,所述流分发点接收业务报文,所述业务报文属于所述业务流标识对应的业务流,根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到添加报文。所述业务报文为经过所述流分发点进入所述网络系统的,需要进行增值业务处理的报文。所述业务流标识可以是五元组,IPv6地址前缀,或者其他可以唯一标识业务流的信息。在一个实现方式中,流分发点根据获取的业务流标识查找本地存储的第一转发表以获取业务路径标识,所述流第二转发表包括业务流标识,业务路径标识以及下一跳的对应关系。所述流分发点根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到所述添加报文。所述业务路径选项包括所述业务路径标识。在另一个实现方式中,所述流分发点根据获取的业务流标识查找本地存储的第一转发表以获取路径标识以及节点数,所述第一转发表包括业务流标识,业务路径标识,节点数以及下一跳的对应关系,所述流分发点根据所述业务路径标识以及所述节点数在所述业务报文的IP头中添加业务路径选项,所述业务路径选项包括所述业务路径标识以及生存时间(英文:time-to-live,缩写:TTL),所述生存时间的值为所述节点数。在步骤604中,所述流分发点根据根据所述业务路径选项获取所述业务路径标识,根据所述业务路径标识以及所述第一转发表处理所述添加报文。在一个实现方式中,当所述业务路径选项中只包括所述业务路径标识时,所述流分发点根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。在另一个实现方式中,当所述业务路径选项中还包括生存时间时,所述流分发点将所述生存时间的值减1后,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。基于图1所示的网络系统,以下从增值业务设备13的角度,对本发明图3所示上述方法实施例作进一步说明。如图7所示,在步骤701中,增值业务设备接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识。在步骤702中,所述增值业务设备根据所述业务路径信息更新第二转发表。具体地,所述业务路径信息包括业务路径标识以及所述增值业务设备的下一跳,所述增值业务设备根据所述业务路径信息更新本地存储的第二转发表,所述第二转发表包括业务路径标识以及下一跳的对应关系。当所述增值业务设备为所述业务路径标识对应的业务路径上的最后一个增值业务设备时,所述下一跳为终止标识。在步骤703中,所述增值业务设备获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括所述业务路径标识。所述增值业务设备可以是从流分发点接收所述添加报文,也可以是从上一跳增值业务设备接收所述添加报文。在一个实现方式中,所述业务路径选项包括业务路径标识。在另一个实现方式中,所述业务路径选项包括业务路径标识和生存时间。在步骤704中,所述增值业务设备对所述添加报文进行增值业务处理,得到处理后的添加报文。在步骤705中,所述增值业务设备根据所述业务路径选项获取所述业务路径标识,根据所述业务路径标识以及所述第二转发表处理所述处理后的添加报文。其中,所述增值业务设备根据所述业务路径标识查找所述增值业务设备本地存储的第二转发表,获取所述业务路径标识对应的下一跳,并根据所述下一跳转发所述处理后的添加报文。在一个实现方式中,所述业务路径选项中只包括业务路径标识,所述增值业务设备直接将所述处理后的添加报文发送给所述下一跳。在另一个实现方式中,当所述下一跳为终止标识时,所述增值业务设备删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发。在另一个实现方式中,所述业务路径选项除了业务路径标识外还包括生存时间,如果所述生存时间的值大于1,则所述增值业务设备将所述生存时间的值减1后,将所述处理后的添加报文发送给所述下一跳;如果所述生存时间的值等于1,则所述增值业务设备删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,并所述处理后的业务报文发送给所述下一跳。本发明上述实施例中,流分发点和增值业务设备根据管理设备发送的包括业务路径标识的业务路径信息分别更新各自存储的转发表,并根据该转发表转发在业务报文的IP头中添加业务路径选项后得到的添加报文,实现了报文转发过程中业务路径标识与标准隧道头中的字段的解耦,避免了使用标准隧道头中的字段来标识业务路径引起的业务冲突。并且,本发明上述实施例不需要流分发点和增值业务设备承担额外的隧道功能,减轻了流分发点和增值业务设备的负担。本发明实施例另外提供了一种处理报文的装置,如图8所示,所述装置包括:接收单元801、更新单元802、存储单元803、第一获取单元804以、第二获取单元805以及处理单元806。其中,接收单元801和更新单元802对于本发明实施例来说是可选的。所述接收单元801用于接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识。在一个实现方式中,所述处理报文的装置为流分发点,所述接收单元801接收管理设备发送的业务路径信息,所述业务路径信息除所述业务路径标识外,还包括业务流标识以及下一跳,或者还包括业务流标识,下一跳以及以及所述业务路径标识对应的业务路径的节点数。在另一个实现方式中,所述处理报文的装置为增值业务设备,所述接收单元801接收管理设备发送的业务路径信息,所述业务路径信息除所述业务路径标识外,还包括下一跳。在另一实现方式中,当所述增值业务设备为所述业务路径标识对应的业务路径上的最后一个增值业务设备时,所述下一跳为终止标识。所述更新单元802用于根据所述业务路径信息更新转发表。所述更新转发表存储在所述存储单元803上。在一个实现方式中,所述处理报文的装置为流分发点,所述更新单元802用于:根据所述业务路径信息更新流分发点的存储单元803上存储的第一转发表。当所述业务路径信息除所述业务路径标识外,还包括业务流标识以及下一跳时,所述第一转发表如图4a所示,包括业务流标识,业务路径标识以及下一跳的对应关系。进一步地,当所述业务路径信息除所述业务路径标识外,还包括业务流标识、下一跳以及所述业务路径标识对应的业务路径的节点数(即所述业务路径上增值业务设备的数量)时,所述第一转发表如图4b所示,包括业务流标识,业务路径标识,节点数以及下一跳的对应关系。在另一个实现方式中,所述处理报文的装置为增值业务设备,所述业务路径信息除所述业务路径标识外,还包括下一跳。所述更新单元802用于:根据所述业务路径信息更新增值业务设备的所述存储单元803上存储的第二转发表。所述第二转发表包括业务路径标识以及下一跳的对应关系。所述第一获取单元804用于获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括所述业务路径标识。所述业务路径标识用于标识业务路径。如图5a所示,为IP头结构示意图。可以看出,除了标准定义的字段外,在IP头中还可以包括一系列选项(英文:option)。本发明实施例的业务路径选项,即为IP头中的一个扩展选项。如图5b所示,为本发明实施例中业务路径选项的结构示意图,其中类型(英文:type)表示该选项为业务路径选项,例如,可以是250;长度(英文:length)表示该业务路径选项的总长度,生存时间(英文:time-to-live,缩写:TTL)用于表示该报文可以经过的增值业务设备的数量(简称为节点数),路径ID(英文:pathID)表示业务路径标识。所述业务路径选项中可以只包括业务路径标识,也可以包括业务路径标识和TTL。在一个实施例中,所述处理报文的装置为流分发点,所述第一获取单元804用于接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识;或所述第一获取单元804用于接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流,根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识及节点数,根据所述业务路径标识及节点数在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识以及生存时间,所述生存时间的值为所述节点数。在另一个实施例中,所述处理报文的装置为增值业务设备,所述第一获取单元804用于:接收上一跳设备发送的添加报文,所述上一跳设备可以为流分发点或者所述处理报文的装置的上一跳增值业务设备。所述第二获取单元805用于根据所述业务路径选项获取所述业务路径标识。具体来说,所述第二获取单元解析所述添加报文,得到所述业务路径选项,从所述业务路径选项获取所述业务路径标识。所述处理单元806用于根据所述业务路径标识以及所处存储单元803存储的转发表处理所述添加报文。在一个实施例中,所述处理报文的装置为流分发点,当所述业务路径选项中只包括所述业务路径标识时,所述处理单元806用于根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文;当所述业务路径选项中还包括生存时间时,所述处理单元806用于将所述生存时间的值减1后,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。在另一个实施例中,所述处理报文的装置为增值业务设备,所述装置还包括增值业务处理单元,于对所述添加报文进行增值业务处理,得到处理后的添加报文。所述处理单元806用于根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或,所述处理单元806用于根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,当所述下一跳为终止标识时,删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发;或,当所述业务路径选项中还包括生存时间,且所述生存时间的值大于1时,所述处理单元806用于将所述业务路径选项中的所述生成时间的值减1,根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;当所述业务路径选项中包括所述业务路径标识以及生成时间,且所述生成时间的值为1时,所述处理单元806用于删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发,即根据所述处理后的业务报文的目的地址对所述业务报文进行二层或者三层转发。所述生存时间的值为所述业务路径上所述添加报文需要经过的增值业务设备(包括当前接收所述添加报文的增值业务设备)的数量。例如,增值设备13b收到的添加报文中的业务路径选项中,业务路径标识为1,生存时间的值为3。请参阅图9,图9为本发明实施例中另一种处理报文的装置的结构示意图。如图9所示,所述装置包括:通信端口901、存储器902和处理器903,当然,所述装置还可以包括其它的通用部件,本发明实施例在此不作任何限制。其中,存储器902中存储一组程序代码,处理器903用于调用存储器902中存储的程序代码,以执行以下操作:获取添加报文,所述添加报文为在业务报文的IP头中添加业务路径选项后得到的报文,所述业务路径选项包括业务路径标识,所述业务路径标识用于标识业务路径;根据所述业务路径选项获取所述业务路径标识;根据所述业务路径标识以及本地存储的转发表处理所述添加报文。在一个实施方式中,所述操作还包括:接收管理设备发送的业务路径信息,所述业务路径信息包括业务路径标识;根据所述业务路径信息更新所述转发表。在一个实现方式中,所述装置用于实现流分发点的功能。所述业务路径信息还包括业务流标识以及下一跳,所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新本地存储的第一转发表,所述第一转发表包括所述业务流标识、所述业务路径标识以及所述下一跳的对应关系。所述获取添加报文包括:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识,根据所述业务路径标识在所述业务报文的IP头中添加业务路径选项,得到所述添加报文。所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。在另一实现方式中,所述装置用于实现另一种流分发点的功能。所述业务路径信息还包括业务流标识、下一跳以及所述业务路径标识对应的业务路径的节点数,所述第一转发表包括所述业务流标识、所述业务路径标识、所述下一跳以及所述节点数的对应关系。所述获取添加报文包括:接收所述业务报文,所述业务报文属于所述业务流标识对应的业务流;根据所述业务报文获取所述业务流标识,根据所述业务流标识查找所述第一转发表以获取所述业务路径标识以及所述节点数,根据所述业务路径标识及所述节点数在所述业务报文的IP头中添加业务路径选项,得到所述添加报文,所述业务路径选项包括所述业务路径标识以及生存时间,所述生存时间的值为所述节点数。所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:将所述业务路径选项中的生存时间的值减1后,根据所述业务路径标识查找所述第一转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述添加报文。在另一个实现方式中,所述装置用于实现增值业务设备的功能。所述业务路径信息还包括下一跳,所述根据所述业务路径信息更新转发表包括:根据所述业务路径信息更新本地存储的第二转发表,所述第二转发表包括所述业务路径标识以及所述下一跳的对应关系。所述获取添加报文包括:接收上一跳设备发送的所述添加报文,所述上一跳设备包括流分发点或者上一跳增值业务设备。然后,所述操作还包括:对所述添加报文进行增值业务处理,得到处理后的添加报文。所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,并向所述下一跳转发所述处理后的添加报文;或根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,当所述下一跳为终止标识时,删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发;或当所述业务路径选项中还包括生存时间,且所述生存时间的值大于1时,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:将所述业务路径选项中的所述生成时间的值减1,根据所述业务路径标识查找所述第二转发表,得到对应所述业务路径标识的下一跳,向所述下一跳转发所述处理后的添加报文;或当所述业务路径选项中还包括生存时间,且所述生存时间的值为1时,所述根据所述业务路径标识以及本地存储的转发表处理所述添加报文包括:删除所述处理后的添加报文中的所述业务路径选项,得到处理后的业务报文,对所述处理后的业务报文进行正常转发,即根据所述处理后的业务报文的目的地址对所述业务报文进行二层或者三层转发。上述图8以及图9所示的装置用于实现上述图3、图6以及图7所述的方法。因此,本实施例中没有详细描述的描述,可以参考上述对于图3、图6以及图7的说明。本发明上述实施例中,处理报文的装置根据管理设备发送的包括业务路径标识的业务路径信息更新存储的转发表,并根据该转发表转发报文,实现了报文转发过程中业务路径标识与标准隧道头中的字段的解耦,避免了使用标准隧道头中的字段来标识业务路径引起的业务冲突。并且,本发明上述实施例不需要所述处理报文的装置承担额外的隧道功能,减轻了所述装置的负担。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1