CN104702505B - 一种报文传输方法和节点 - Google Patents

一种报文传输方法和节点 Download PDF

Info

Publication number
CN104702505B
CN104702505B CN201310648800.XA CN201310648800A CN104702505B CN 104702505 B CN104702505 B CN 104702505B CN 201310648800 A CN201310648800 A CN 201310648800A CN 104702505 B CN104702505 B CN 104702505B
Authority
CN
China
Prior art keywords
message
service
node
addition
context tag
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310648800.XA
Other languages
English (en)
Other versions
CN104702505A (zh
Inventor
杨坚锐
杨继尚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Ordnance Equipment Group Ordnance Equipment Research Institute
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310648800.XA priority Critical patent/CN104702505B/zh
Publication of CN104702505A publication Critical patent/CN104702505A/zh
Application granted granted Critical
Publication of CN104702505B publication Critical patent/CN104702505B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明实施例公开了一种报文传输方法和节点,该方法可包括:当前节点获得包括UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加UDP头和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径的路径信息,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;当前节点从所述上下文tag中获取路径信息,并根据所述路径信息处理添加报文。本发明实施例可以提高设备资源利用率。

Description

一种报文传输方法和节点
技术领域
本发明涉及通信领域,尤其涉及一种报文传输方法和节点。
背景技术
随着通信技术的发展目前通信网络中出现了大量的增值业务设备,例如:防火墙、负载均衡器、入侵防御系统(英文:Intrusion Prevention System,缩写:IPS)、入侵检测系统(英文:Intrusion Detection System,缩写:IDS)、分布式拒绝服务攻击(英文:Distributed Deny of Service,缩写:DDOS)和防病毒(英文:Anti-virus,缩写:AV)设备等。这些增值业务设备可以是虚拟的设备也可以是物理硬件设备。目前的通信网络中的增值业务设备的部署一般是和网络拓扑紧密耦合的,即增值业务设备一般部署在业务报文正常转发路径上或者旁挂在正常转发路径上的网络节点上。这样业务报文的正常转发路径可能就会包括所有增值业务设备。但有些业务报文可能只需要部分增值业务设备处理就可以,但该业务报文的正常转发路径却经过所有增值业务设备,从而会浪费部分增值业务设备的能力。例如:在实际应用中很多业务报文需要做防火墙和IPS处理,因此在报文的转发路径上部署了防火墙和IPS设备。但其中有些业务报文是不需要做IPS处理的,然而由于IPS设备部署在这些业务报文的正常转发路径上,这些业务报文还是要经过IPS设备,从而浪费了IPS设备的能力。
可见,目前增值业务设备的能力利用率不高。
发明内容
本发明提供了一种报文传输方法和节点,可以解决增值业务设备的能力利用率不高的问题。
第一方面,本发明提供一种报文传输方法,包括:
当前节点获得包括用户数据包协议(User Datagram Protocol,UDP)头和上下文标签(tag)的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。
在第一方面的第一种可能的实现方式中,所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文,包括:
所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳;或者
所述当前节点根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述业务报文为非隧道封装报文,所述添加报文为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,且所述业务报文包括隧道头和原始报文,其中,所述隧道头为IP头;所述添加报文为在所述业务报文的隧道头与原始报文之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,所述业务报文包括隧道头和原始报文,其中,所述隧道头不包含IP头;所述添加报文为在所述原始报文的报文头和载荷之间添加所述UDP头和所述上下文tag的报文。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述当前节点获得包括UDP头和上下文标签tag的添加报文,包括:
所述当前节点获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
结合第一方面的第一至三种可能的实现方式中的任意一种,在第一方面的第四种可能的实现方式中,所述路径信息包括路径标识;
所述当前节点根据所述路径信息将所述添加报文传输至下一节点,包括:
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述添加报文传输至该下一跳;或者
所述当前节点根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,包括:
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述路径标识为局部唯一的路径标识;
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳,包括:
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;
所述当前节点将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,并根据所述下一跳的标识将所述更新后的添加报文发送至该下一跳。
第二方面,本发明提供一种报文传输节点,所述节点包括:获取单元和处理单元,其中:
所述获取单元,用于获得包括UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP头和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
所述处理单元,用于从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。
在第二方面的第一种可能的实现方式中,所述处理单元用于从所述上下文tag中获取所述路径信息,并根据所述路径信息将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳;或者
所述处理单元用于根据所述上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳。
结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述业务报文为非隧道封装报文,所述添加报文为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,且所述业务报文包括隧道头和原始报文,其中,所述隧道头为IP头;所述添加报文为在所述业务报文的隧道头与原始报文之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,所述业务报文包括隧道头和原始报文,其中,所述隧道头不包含IP头;所述添加报文为在所述原始报文的报文头和载荷之间添加所述UDP头和所述上下文tag的报文。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述获取单元用于获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
结合第二方面的第一至三种可能的实现方式中的任意一种,在第二方面的第四种可能的实现方式中,所述路径信息包括路径标识;
所述处理单元用于根据所述目的端口号识别所述上下文tag,从所述上下文tag中获取所述路径信息,并根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,再根据所述下一跳的标识将所述添加报文传输至该下一跳;或者
所述处理单元用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,再根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述路径标识为局部唯一的路径标识;所述处理单元用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,对所述载荷进行增值业务处理;以及根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;以及将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,再根据所述下一跳的标识将所述更新后的添加报文发送至该下一跳。
上述技术方案中,当前节点获取包括用户UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径的路径信息,所述上下文tag包括的协议类型为所述业务报文的载荷的协议;当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。这样可以实现当前节点根据该传输路径处理业务报文,这样业务报文就不会传输至该业务报文不相关的增值业务设备,从而可以提高增值业务设备的能力利用率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种报文传输方法的流程示意图;
图2是本发明实施例提供的另一种报文传输方法的流程示意图;
图3-6是本发明实施例提供的可选的报文结构示意图;
图7是本发明实施例提供的另一种报文传输方法的流程示意图;
图8是本发明实施例提供的另一种报文传输方法的示意图;
图9是本发明实施例提供的可选的场景示意图;
图10是本发明实施例提供的另一种报文传输方法的示意图;
图11是本发明实施例提供的一种报文传输节点的结构示意图;
图12是本发明实施例提供的另一种报文传输节点的结构示意图;
图13是本发明实施例提供的另一种报文传输节点的结构示意图;
图14是本发明实施例提供的另一种报文传输节点的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,业务报文具体可以是两节点(例如:当前节点和下一节点)之间传输协议封装的原始报文,例如:业务报文可以是因特网协议(英文:InternetProtocol,缩写:IP)报文,或者业务报文可以是以太网(英文:Ethernet)报文。另外,当两节点之间通过隧道传输报文时,上述业务报文具体可以是对上述原始报文添加隧道封装后的报文,例如:多协议标签交换(英文:Multi-protocol Label Switch,缩写:MPLS)隧道封装报文或者IP隧道封装报文或者虚拟可扩展VLAN(英文:Virtual Extensible VLAN,缩写:VXLAN)隧道封装报文。
本发明实施例中,对节点不作限定,该节点具体可以是虚拟的节点,也可以是物理硬件节点。另外,节点具体可以是增值业务设备或者流分发节点等。
请参阅图1,图1是本发明实施例提供的一种报文传输方法的流程示意图,如图1所示,包括以下步骤:
101、当前节点获得包括UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,上述添加报文具体可以是在业务报文中除报文头和载荷之外的任意位置中添加上述UDP头和上下文tag得到的报文。例如:在报文头和载荷之间添加上述UDP头和上下文tag。
可选的,当前节点获取上述添加报文具体可以是当前节点在上述业务报文上添加上述UDP头和上下文tag得到所述添加报文,或者可以是当前节点接收上述传输路径中的当前节点的上一跳发送的上述添加报文。
可选的,上述传输路径具体可以是根据上述业务报文需要经过的业务处理类型和业务处理顺序而设置的传输路径,例如,上述业务报文需要经过过滤处理、入侵检测和负载均衡处理,那么上述传输路径可以包括:流分发节点、防火墙、IDS和负载均衡器。另外,上述传输路径还可以是根据业务报文要求的业务处理性能规格设置的,例如:业务报文所在的系统中包括多个防火墙,且这多个防火墙的性能规格不同,这样就可以根据业务报文要求的业务处理性能规格,从这多个防火墙中选择一个性能规格满足业务报文要求的业务处理性能规格的防火墙。上述业务报文需要经过的业务处理类型和业务处理顺序以及业务报文要求的业务处理性能规格可以统称为业务需求。所述业务需求具体可以是用户通过操作设定的。例如,管理节点或者流分发节点接收用户输入的业务需求生成上述传输路径,其中,上述管理节点为用于管理特定网络系统中所有增值业务设备和流分发节点的设备。
可选的,上述UDP头和上下文tag在上述添加报文中的位置具体可以是上下文tag位于UDP头之后。由于上下文tag加在UDP头后,可以避免地址不是上述业务报文的目的地址的当前节点将所述业务报文捕获并上送CPU处理。
可选的,上述添加报文的报文头中的协议类型为UDP,这样通过该报文头就可以知道添加的UDP头的协议类型,以根据该协议类型(即UDP协议)读取该UDP头。上述上下文tag包括的协议类型为所述业务报文的载荷的协议,这样当当前节点需要处理所述业务报文的载荷时,就可以根据该协议类型字段的内容解析业务报文的载荷。
102、当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。
可选的,当前节点获取到上述添加报文后,就可以对该添加报文进行解封装,以得到上述目的端口号,由于该目的端口是用于标识上述上下文tag的(例如:该目的端口标识上述上下文tag在添加报文的位置)。这样当前节点就可以根据该目标端口号,读取到上述上下文tag,再从该上下文tag中获取到上述路径信息。这样当前节点就可以根据该路径信息处理上述添加报文。其中,当前节点具体可以是将上述添加报文传输至下一节点;或者对上述业务报文的载荷进行增值业务处理(例如:过滤处理、入侵检测和负载均衡处理),再将增值业务处理后的添加报文传输至下一节点;或者对上述业务报文的载荷进行增值业务处理(例如:过滤处理、入侵检测和负载均衡处理),再去掉UDP头和上下文tag,得到处理后的业务报文,然后再正常转发。其中,当前节点与下一节点之间具体可以是通过隧道进行传输报文。由于添加报文与业务报文相比,载荷部分并没有发生变化,因此,对业务报文的载荷进行增值业务处理,相当于对添加报文的载荷进行增值业务处理。
可选的,上述方法具体可以应用于流分发节点和增值业务处理设备。
上述技术方案中,当前节点获取包括用户UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。这样可以实现当前节点根据该传输路径处理业务报文,这样业务报文就不会传输至该业务报文不相关的设备,从而可以提高设备资源的利用率。
请参阅图2,图2是本发明实施例提供的另一种报文传输方法的流程示意图,如图2所示,包括以下步骤:
201、当前节点获得包括UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,上述UDP头中的源端口号可以为影响当前节点选择到下一节点的路径的因子之一;其中,所述源端口号为所述业务报文的载荷的协议头通过特定运算得到的端口号,或者所述源端口号为预先设定的端口号。例如,上述业务报文为IP报文,上述源端口号就可以是IP报文的载荷的传输控制协议(英文:Transmission Control Protocol,缩写:TCP)头或者用户数据包协议(英文:User Datagram Protocol,缩写:UDP)头经过哈希运算得到的端口号。上述载荷的协议为非TCP或者UDP时,上述源端口就可以采用一个固定的UDP端口号。
可选的,所述业务报文可以为非隧道封装报文,所述添加报文具体可以为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的报文头。例如:上述业务报文为IP报文,那么添加报文就是在该IP报文的IP头和载荷之间添加上述UDP头和上下文tag,该IP报文的IP头中的协议类型为UDP,如图3-1所示,在该IP报文的IP头和载荷之间添加上述UDP头和上下文tag。当上述业务报文为IP报文时,该报文的IP头协议类型为UDP,而上述上下文tag包括的协议类型为该IP报文的载荷的协议。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头包含IP头,所述添加报文具体可以为在所述隧道头和原始报文之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的隧道头。例如:当前节点和上述下一节点之间通过IP隧道或者VXLAN隧道进行传输报文,即上述业务报文可以是IP隧道或者VXLAN隧道封装报文。那么可以如图3-2所示,在该隧道封装报文的隧道头和原始报文(例如:IP报文或者Ethernet报文)之间添加上述UDP头和上下文tag。其中,当业务报文为IP隧道封装报文时,该报文的隧道头中的协议类型为UDP,上述上下文tag包括的协议类型为所述原始报文的协议(例如:IP或者Ethernet协议)。需要说明的是,包括IP隧道头的隧道封装报文并不等于IP隧道封装,例如:包括IP隧道头的隧道封装报文可以是IP隧道封装报文或者VXLAN隧道封装报文。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头不包含IP头,上述添加报文具体可以是在该业务报文包括的原始报文的报文头与载荷之间添加所述UDP头和所述上下文tag得到的报文。另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该原始报文的报文头。例如:当前节点和上述下一节点之间可以通过隧道(例如:MPLS隧道)进行传输报文,即上述业务报文就为隧道封装报文(例如:MPLS隧道封装报文),那么,所述添加报文可以为在原始报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文。其中,MPLS封装报文的原始报文的报文头的协议类型为UDP,上述上下文tag包括的协议类型为所述原始报文的载荷的协议类型。
可选的,上述上下文tag的结构可以如图4所示,第0-第15位为长度(Length)字段、第16-第31位为协议类型(Protocol Type)字段,另外,上下文tag还包括至少一个选项(Option)字段。例如:第32-第63位为Option字段1,第64-第95位为Option字段2等。其中,Length字段用于表示上下文tag的总长度,Protocol Type字段用于表示业务报文的载荷的协议类型。上述Option字段的结构可以如图5所示,其中,第16-23位为Option Length字段,第24-31位为Option Type字段,另外,Option字段还包括Option值(Value)字段,OptionValue字段的内容随Option type不同而不同。其中,上述Option Length字段用于表示Option字段的总长度,Option Type字段用于表示Option字段的类型,Option Value字段的结构可以如图6-1所示,第0-第3位为路径(Path)TTL,第4-第15位为保留字段,另外,OptionValue字段还包括Path ID字段,其中,Path TTL用于控制报文经过的业务增值设备的数量,该Path TTL在流分发节点设置,每经过一个增值业务设备则减1,如果减到0,则添加报文中的UDP头和上下文tag被删除,Path ID字段用于唯一标识一条传输路径),Path ID字段具体可以是传输路径的局部唯一的标识(例如:ID信息),也可以是传输路径的整个网络全局唯一的标识(例如:ID信息),即当前节点通过该Path ID字段可以确定唯一的下一节点。Option Value字段的结构还可以如图6-2所示,第8-第15位为指针(Pointer)字段,该Pointer字段用于指示下一节点地址的首字节;另外,Option Value字段还包括路由数据(Route Data)字段,Route Data字段包含业务报文需要经过的增值业务设备的地址信息。
需要说明的是,当上述Option Value字段为Path ID字段时,当前节点预先可以配置与Path ID字段中的路径标识对应的下一跳的标识,这样当前节点就可以根据Path ID字段中的路径标识查找到下一跳的标识,即根据该标识将该下一跳作为当前节点的下一节点。其中,上述预先配置与Path ID字段包括的路径标识对应的下一跳的标识具体可以是预先接收管理节点发送的下一跳信息,该下一跳信息包括路径标识和该路径标识对应的下一跳的标识。
需要说明的是,当上述Option Value字段为Route Data字段时,当前节点就可以将Pointer字段所指示的Route Data字段中某一地址信息作为下一节点的地址信息,从而查找到下一节点。其中,上述Pointer字段是每经过一个节点就指向Route Data字段中的下一个节点的地址信息。
可选的,步骤201具体可以包括:
当前节点获取业务报文,并在所述业务报文上添加所述目的端口号和上下文tag,以得到添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
可选的,上述路径信息具体可以是上述传输路径中各节点的地址信息,所述上下文tag是根据所述地址信息生成的。其中,上述各节点的地址信息可以是管理节点发送的地址信息。另外,当上述上下文tag的结构为上面介绍的图6-2所示的结构时,即上下文tag的Option Value字段会包括Route Data字段,这样在生成上下文tag时,就可以在该OptionValue字段中的Route Data字段添加上述传输路径中各节点的地址信息。
可选的,上述路径信息具体可以是上述传输路径的路径标识,这样就可以根据这些路径标识生成上述上下文tag。其中,该路径标识可以是管理节点发送的路径标识。另外,当上述上下文tag的结构为上面介绍的图6-1所示的结构时,即上下文tag中的OptionValue字段包括Path ID字段,这样在生成上下文tag时,就可以在该Option Value字段中的Path ID字段添加上述传输路径的路径标识。另外,上述路径标识具体可以是局部唯一的标识,即该路径标识可以是当前节点使用的标识;或者是整个网络全局唯一的标识,即所有节点使用的标识。
202、当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳。
可选的,当上述路径信息为上述传输路径的路径标识时,上述当前节点根据所述路径信息将所述添加报文传输至下一节点,具体可以包括:
当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述添加报文传输至该下一跳。
当前节点预先可以配置与上述路径标识对应的下一跳的标识,这样当前节点就可以根据上下文tag包括的路径标识查找到下一跳的标识,即根据该标识将该下一跳作为当前节点的下一节点。
可选的,图2所示实施例介绍的方法具体可以应用于流分发节点。
该技术方案中,在图1所示实施例的基础上实现了多种可选的实施方式,可以提高设备资源的利用率。
请参阅图7,图7是本发明实施例提供的另一种报文传输方法的流程示意图,如图7所示,包括以下步骤:
701、当前节点获得包括UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,当前节点具体可以是接收上述传输路径中当前节点的上一跳发送的上述添加报文,其中,该上一跳可以是流分发节点或者增值业务设备。
可选的,上述添加报文的结构可以参考上面实施例描述的添加报文,此处不作重复说明。
可选的,步骤701具体可以包括:
当前节点接收流分发节点发送的包括UDP头和上下文tag的添加报文。
可选的,上述上下文tag包括的路径信息具体可以是上述传输路径的各节点的地址信息,或者上述上下文tag包括的路径信息具体可以是上述传输路径的路径标识。
702、当前节点根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳。
可选的,上述增值业务处理具体可以是当前节点所具备的增值业务功能所作的增值业务处理。例如,上述当前节点为防火墙,那么上述增值业务处理就可以为过滤处理;上述当前节点为IPS,那么上述增值业务处理就为入侵防御;上述当前节点为IDS,那么上述增值业务处理就为入侵检测;上述当前节点为DDOS,那么上述增值业务处理就为分布式拒绝服务攻击;上述当前节点为负载均衡器,那么上述增值业务处理就为负载均衡;上述当前节点为AV,那么上述增值业务处理就为防病毒处理。
可选的,当所述路径信息包括路径标识时,上述当前节点根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,具体可以包括:
当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳。
可选的,当路径标识为局部唯一的路径标识时,上述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳,具体可以包括:
当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;
当前节点将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,并根据所述下一跳的标识将所述更新后的添加报文发送至该下一跳。
可选的,当前节点具体可以是预先获取管理节点发送的下一跳信息,该下一跳信息包括路径标识和该路径标识对应的下一跳的标识,以及该下一跳的标识绑定更新路径标识。由于上述路径标识为局部唯一的路径标识,这样上下文tag中的路径标识就只能被当前节点识别,当前节点向下一跳发送添加报文时,就需要将更新路径标识更新至添加报文中,以让下一跳能够识别上下文tag中的路径标识。
可选的,图7所示实施例介绍的方法具体可以应用于增值业务设备。
该技术方案中,在图1所示实施例的基础增加了当前节点对业务报文的载荷进行增值业务处理,可以提高设备资源的利用率。
请参阅图8,图8是本发明实施例提供的另一种报文传输方法的示意图,如图8所示,包括以下步骤:
801、管理节点接收业务需求,并根据该业务需求建立业务报文的传输路径,其中,该业务需求可以包括业务报文需要经过的业务处理类型和业务处理顺序,以及业务报文要求的业务处理性能规格。另外,该管理节点具体可以是业务链(Service Chain)管理设备。
802、管理节点向流分发节点发送上述传输路径;其中,该传输路径具体可以是该传输路径上各节点的地址信息;
803、流分发节点接收业务报文,并根据该传输路径在该业务报文中添加UDP头和上下文tag,以得到添加报文;
804、流分发节点将所述添加报文发送至增值业务设备;
805、增值业务设备根据添加报文中的上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳。
需要说明的是,步骤805仅介绍了一个增值业务设备的处理过程,当上述传输路径中包括多个增值业务设备时,每个增值业务设备都按照步骤805介绍的处理过程对添加报文进行处理。当上述传输路径中的最后一个增值业务设备对业务报文的载荷进行增值业务处理后,就可以去掉添加报文中的UDP头和上下文tag,得到处理后的业务报文,并对所述处理后的业务报文进行正常转发。
可选的,该实施例具体应用了如图6-2所示的上下文tag,即上下文tag中的OptionValue字段为Route Data字段,即在该Route Data字段添加各节点的地址信息,以表示上述传输路径的信息。
可选的,图8所示实施例介绍的方法具体可以应用于图9所示的场景,传输路径可以为如图9所示的传输路径,该场景中增值业务设备可以是不同的功能的增值业务设备。
请参阅图10,图10是本发明实施例提供的另一种报文传输方法的示意图,如图10所示,包括以下步骤:
1001、管理节点接收业务需求,并根据该业务需求建立业务报文的传输路径,其中,该业务需求可以包括业务报文需要经过的业务处理类型和业务处理顺序,以及业务报文要求的业务处理性能规格。另外,该管理节点具体可以是业务链(Service Chain)管理设备。
1002、管理节点向上述传输路径中每个节点发送该传输路径的路径标识以及该节点在所述传输路径中的下一跳;
1003、流分发节点接收业务报文,并根据接收的路径标识在该业务报文中添加UDP头和上下文tag,以得到添加报文,以及将该添加报文添加到传输增值业务设备的隧道;
1004、流分发节点将所述添加报文发送至增值业务设备;
1005、增值业务设备根据添加报文中的上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,并根据业务报文中的路径标识将所述增值业务处理后的添加报文传输至该下一跳。
需要说明的是,步骤1005仅介绍了一个增值业务设备的处理过程,当上述传输路径中包括多个增值业务设备时,每个增值业务设备都按照步骤1005介绍的处理过程对添加报文进行处理。当上述传输路径中的最后一个增值业务设备对业务报文的载荷进行增值业务处理后,就可以去掉添加报文的UDP头和上下文tag,得到所述业务报文,对所述业务报文进行正常转发。
可选的,该实施例具体可以使用如图6-1所示的上下文tag,即上下文tag中的Option Value字段为Path ID字段,即在该Path ID字段添加路径标识,以表示上述传输路径的信息。
可选的,图10所示实施例介绍的方法具体可以应用于图9所示的场景,传输路径可以为如图9所示的传输路径,该场景中增值业务设备可以是不同的功能的增值业务设备。
下面为本发明装置实施例,本发明装置实施例用于执行本发明上述各方法实施例,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明上述各方法实施例。
请参阅图11,图11是本发明实施例提供的一种报文传输节点的结构示意图,如图11所示,包括:获取单元111和处理单元112,其中:
获取单元111,用于获得包括用户数据包协议UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,上述添加报文具体可以是在业务报文中除报文头和载荷之外的任意位置中添加上述UDP头和上下文tag得到的报文。例如:在报文头和载荷之间添加上述UDP头和上下文tag。
可选的,报文传输节点获取上述添加报文具体可以是报文传输节点在上述业务报文上添加上述UDP头和上下文tag得到所述添加报文,或者可以是当前节点接收上述传输路径中的当前节点的上一跳发送的上述添加报文。
可选的,上述传输路径具体可以是根据上述业务报文需要经过的业务处理类型和业务处理顺序而设置的传输路径,例如,上述业务报文需要经过过滤处理、入侵检测和负载均衡处理,那么上述传输路径可以包括:流分发节点、防火墙、IDS和负载均衡器。另外,上述传输路径还可以是根据业务报文要求的业务处理性能规格设置的,例如:业务报文所在的系统中包括多个防火墙,且这多个防火墙的性能规格不同,这样就可以根据业务报文要求的业务处理性能规格,从这多个防火墙中选择一个性能规格满足业务报文要求的业务处理性能规格的防火墙。上述业务报文需要经过的业务处理类型和业务处理顺序以及业务报文要求的业务处理性能规格可以统称为业务需求。所述业务需求具体可以是用户通过操作设定的。例如,管理节点或者流分发节点接收用户输入的操作生成上述传输路径,其中,上述管理节点为用于管理特定网络系统中所有增值业务设备和流分发节点的设备。
可选的,上述UDP头和上下文tag在上述添加报文中的位置具体可以是上下文tag位于UDP头之后。由于上下文tag加在UDP头后,可以避免地址不是上述业务报文的目的地址的报文传输节点将所述业务报文捕获并上送CPU处理。
可选的,上述添加报文的报文头中的协议类型为UDP,这样通过该报文头就可以知道添加的UDP头的协议类型,以根据该协议类型(即UDP协议)读取该UDP头。。上述上下文tag包括的协议类型为所述业务报文的载荷的协议,这样当报文传输节点需要处理所述业务报文的载荷时,就可以根据该协议类型字段的内容解析业务报文的载荷。
处理单元112,用于从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。
可选的,报文传输节点获取到上述添加报文后,就可以对该添加报文进行解封装,以得到上述目的端口号,由于该目的端口是用于标识上述上下文tag的)例如:该目的端口标识上述上下文tag的在添加报文的位置)。这样当前节点就可以根据该目标端口号,读取到上述上下文tag,再从该上下文tag中获取到上述路径信息。这样报文传输节点就可以根据该路径信息处理上述业务报文。
可选的,上述报文传输节点具体可以是流分发节点和增值业务处理设备。
上述技术方案中,报文传输节点获取包括用户UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述业务报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径的路径信息,所述上下文tag包括的协议类型为所述业务报文的载荷的协议;所述报文传输节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。这样可以实现报文传输节点根据该传输路径处理业务报文,这样业务报文就不会传输至该业务报文不相关的设备,从而可以提高设备资源的利用率。
请参阅图12,图12是本发明实施例提供的另一种报文传输节点的结构示意图,如图12所示,包括:获取单元121和处理单元122,其中:
获取单元121,用于获得包括用户数据包协议UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,上述UDP头中的源端口号可以为影响当前节点选择到下一节点的路径的因子之一;其中,所述源端口号为所述业务报文的载荷的协议头通过特定运算得到的端口号,或者所述源端口号为预先设定的端口号。例如,上述业务报文为IP报文,上述源端口号就可以是IP报文的载荷的TCP头或者UDP头经过哈希运算得到的端口号。上述载荷的协议为非TCP或者UDP时,上述源端口就可以采用一个固定的UDP端口号。
可选的,所述业务报文可以为非隧道封装报文,所述添加报文具体可以为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的报文头。例如:上述业务报文为IP报文,那么添加报文就是在该IP报文的IP头和载荷之间添加上述UDP头和上下文tag,该IP报文的IP头中的协议类型为UDP,如图3-1所示,在该IP报文的IP头和载荷之间添加上述UDP头和上下文tag。当上述业务报文为IP报文时,该报文的IP头协议类型为UDP,而上述上下文tag包括的协议类型为该IP报文的载荷的协议。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头包含IP头,所述添加报文具体可以为在所述隧道头和原始报文之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的隧道头。例如:当前节点和上述下一节点之间通过IP隧道或者VXLAN隧道进行传输报文,即上述业务报文可以是IP隧道或者VXLAN隧道封装报文。那么可以如图3-2所示,在该隧道封装报文的隧道头和原始报文(例如:IP报文或者Ethernet报文)之间添加上述UDP头和上下文tag。其中,当业务报文为IP隧道封装报文时,该报文的隧道头中的协议类型为UDP,上述上下文tag包括的协议类型为所述原始报文的协议(例如:IP或者Ethernet协议)。需要说明的是,包括IP隧道头的隧道封装报文并不等于IP隧道封装,例如:包括IP隧道头的隧道封装报文可以是IP隧道封装报文或者VXLAN隧道封装报文。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头不包含IP头,上述添加报文具体可以是在该业务报文包括的原始报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文得到的报文。另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该原始报文的报文头。例如:当前节点和上述下一节点之间可以通过隧道(例如:MPLS隧道)进行传输报文,即上述业务报文就为隧道封装报文(例如:MPLS隧道封装报文),那么,所述添加报文可以为在原始报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文。其中,MPLS封装报文的原始报文的报文头的协议类型为UDP,上述上下文tag包括的协议类型为所述原始报文的载荷的协议类型。
可选的,上述上下文tag的结构具体可以如图4-图6所示的上下文tag,此处不作重复说明。
可选的,获取单元121具体可以用于获取业务报文,并在所述业务报文上添加所述目的端口号和上下文tag,以得到添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
可选的,上述路径信息具体可以是上述传输路径中各节点的地址信息,所述上下文tag是根据所述地址信息生成的。其中,上述各节点的地址信息可以是管理节点发送的地址信息。另外,当上述上下文tag的结构为上面介绍的图6-2所示的结构时,即上下文tag的Option Value字段会包括Route Data字段,这样在生成上下文tag时,就可以在该OptionValue字段中的Route Data字段添加上述传输路径中各节点的地址信息。
可选的,上述路径信息具体可以是上述传输路径的路径标识,这样就可以根据这些路径标识生成上述上下文tag。其中,该路径标识可以是管理节点发送的路径标识。另外,当上述上下文tag的结构为上面介绍的图6-1所示的结构时,即上下文tag中的OptionValue字段包括Path ID字段,这样在生成上下文tag时,就可以在该Option Value字段中的Path ID字段添加上述传输路径的路径标识。另外,上述路径标识具体可以是局部唯一的标识,即该路径标识可以是当前节点使用的标识;或者是整个网络全局唯一的标识,即所有节点使用的标识。
处理单元122,用于从所述上下文tag中获取所述路径信息,并根据所述路径信息将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳。
可选的,当上述路径信息为上述传输路径的路径标识时,处理单元122具体可以用于根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述添加报文传输至该下一跳。
报文传输节点预先可以配置与上述路径标识对应的下一跳的标识,这样处理单元122就可以根据上下文tag包括的路径标识查找到下一跳的标识,即根据该标识将该下一跳作为当前节点的下一节点。
可选的,本实施例介绍的节点具体可以是流分发节点。
该技术方案中,在上面图11实施例的基础上实现了多种可选的实施方式,可以提高设备资源的利用率。
请参阅图13,图13是本发明实施例提供的另一种报文传输节点的结构示意图,如图13所示,包括:获取单元131和处理单元132,其中:
获取单元131,用于获得包括用户数据包协议UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型。
可选的,报文传输节点具体可以是接收上述传输路径中报文传输节点的上一跳发送的上述添加报文,其中,该上一跳可以是流分发节点或者增值业务设备。
可选的,上述添加报文的结构可以参考上面实施例描述的添加报文,此处不作重复说明。
可选的,获取单元131具体可以用于接收流分发节点发送的包括UDP头和上下文tag的添加报文。
可选的,上述上下文tag包括的路径信息具体可以是上述传输路径的各节点的地址信息,或者上述上下文tag包括的路径信息具体可以是上述传输路径的路径标识。
处理单元132,用于根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳。
可选的,上述增值业务处理具体可以是报文传输节点所具备的增值业务功能所作的增值业务处理。例如,上述报文传输节点为防火墙,那么上述增值业务处理就可以为过滤处理;上述报文传输节点为IPS,那么上述增值业务处理就为入侵防御;上述报文传输节点为IDS,那么上述增值业务处理就为入侵检测;上述报文传输节点为DDOS,那么上述增值业务处理就为分布式拒绝服务攻击;上述报文传输节点为负载均衡器,那么上述增值业务处理就为负载均衡;上述报文传输节点为AV,那么上述增值业务处理就为防病毒处理。
可选的,当所述路径信息包括路径标识时,处理单元132具体可以用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,再根据所述下一跳的标识将所述增值业务处理后的添加报文传输至该下一跳。
可选的,当路径标识为局部唯一的路径标识时,处理单元132具体可以用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理;以及根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;以及将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,并根据所述下一跳的标识将所述更新后的添加报文发送至该下一跳。
可选的,本实施例介绍的节点具体可以是增值业务设备。
该技术方案中,在图11所示实施例的基础增加了报文传输节点对业务报文的载荷进行增值业务处理的功能,可以提高设备资源的利用率。
请参阅图14,图14是本发明实施例提供的另一种报文传输节点的结构示意图,如图14所示,包括:接收器141、发射器142和存储器143,以及分别与接收器141、发射器142和存储器143连接的处理器144,其中,所述存储器143用于存储一组程序代码,处理器144用于调用存储器143存储的程序执行如下操作:
通过接收器141获得包括UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
从所述上下文tag中获取所述路径信息,并根据所述路径信息通过发射器142处理所述添加报文。
可选的,上述添加报文具体可以是在业务报文中除报文头和载荷之外的任意位置中添加上述UDP头和上下文tag得到的报文。例如:在报文头和载荷之间添加上述UDP头和上下文tag。
可选的,报文传输节点获取上述添加报文具体可以是报文传输节点在上述业务报文上添加上述UDP头和上下文tag得到所述添加报文,或者可以是报文传输节点接收上述传输路径中的报文传输节点的上一跳发送的上述添加报文。
可选的,上述传输路径具体可以是根据上述业务报文需要经过的业务处理类型和业务处理顺序而设置的传输路径,例如,上述业务报文需要经过过滤处理、入侵检测和负载均衡处理,那么上述传输路径可以包括:流分发节点、防火墙、IDS和负载均衡器。另外,上述传输路径还可以是根据业务报文要求的业务处理性能规格设置的,例如:业务报文所在的系统中包括多个防火墙,且这多个防火墙的性能规格不同,这样就可以根据业务报文要求的业务处理性能规格,从这多个防火墙中选择一个性能规格满足业务报文要求的业务处理性能规格的防火墙。上述业务报文需要经过的业务处理类型和业务处理顺序以及业务报文要求的业务处理性能规格可以统称为业务需求。所述业务需求具体可以是用户通过操作设定的。例如,管理节点或者流分发节点接收用户输入业务需求生成上述传输路径,其中,上述管理节点为用于管理特定网络系统中所有增值业务设备和流分发节点的设备。
可选的,上述UDP头和上下文tag在上述添加报文中的位置具体可以是上下文tag位于UDP头之后。由于上下文tag加在UDP头后,可以避免地址不是上述业务报文的目的地址的报文传输节点将所述业务报文捕获并上送CPU处理。
可选的,上述添加报文的报文头中的协议类型为UDP,这样通过该报文头就可以知道添加的UDP头的协议类型,以根据该协议类型(即UDP协议)读取该UDP头。上述上下文tag包括的协议类型为所述业务报文的载荷的协议,这样当当前节点需要处理所述业务报文的载荷时,就可以根据该协议类型字段的内容解析业务报文的载荷。
该实施例中,所述报文传输节点具体可以是流分发节点或者增值业务设备。
在另一个实施例中,处理器144还用于执行如下操作:
通过接收器141获得包括UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
从所述上下文tag中获取所述路径信息,并根据所述路径信息通过发射器142将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳。
可选的,所述业务报文可以为非隧道封装报文,所述添加报文具体可以为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的报文头。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头包含IP头,所述添加报文具体可以为在所述隧道头和原始报文之间添加所述UDP头和所述上下文tag的报文;另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该业务报文的隧道头。
可选的,上述业务报文可以为隧道封装报文,且所述业务报文包括隧道头和原始报文(例如:IP报文或者Ethernet报文),其中,所述隧道头不包含IP头,上述添加报文具体可以是在该业务报文包括的原始报文的报文头与载荷之间添加所述UDP头和所述上下文tag得到的报文。另外,所述添加报文的报文头中的协议类型为UDP,其中,该添加报文的报文头为该原始报文的报文头。
可选的,上述上下文tag的结构可以采用上面实施例描述的上下文tag的结构,此处不作重复说明。
可选的,处理器144执行的通过接收器141获得包括UDP头和上下文tag的添加报文的操作,可以包括:
通过接收器141获取业务报文,并在所述业务报文上添加所述目的端口号和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
可选的,上述路径信息具体可以是上述传输路径中各节点的地址信息,所述上下文tag是根据所述地址信息生成的。其中,上述各节点的地址信息可以是管理节点发送的地址信息。另外,当上述上下文tag的结构为上面介绍的图6-2所示的结构时,即上下文tag的Option Value字段会包括Route Data字段,这样在生成上下文tag时,就可以在该OptionValue字段中的Route Data字段添加上述传输路径中各节点的地址信息。
可选的,上述路径信息具体可以是上述传输路径的路径标识,这样就可以根据这些路径标识生成上述上下文tag。其中,该路径标识可以是管理节点发送的路径标识。另外,当上述上下文tag的结构为上面介绍的图6-1所示的结构时,即上下文tag中的OptionValue字段包括Path ID字段,这样在生成上下文tag时,就可以在该Option Value字段中的Path ID字段添加上述传输路径的路径标识。另外,上述路径标识具体可以是局部唯一的标识,即该路径标识可以是当前节点使用的标识;或者是整个网络全局唯一的标识,即所有节点使用的标识。另外,处理器144执行的根据所述路径信息通过发射器142将所述添加报文传输至下一节点,具体可以包括:
处理器144根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识通过发射器142将所述添加报文传输至该下一跳。
报文传输节点预先可以配置与上述路径标识对应的下一跳的标识,这样报文传输节点就可以根据上下文tag包括的路径标识查找到下一跳的标识,即根据该标识将该下一跳作为报文传输节点的下一节点。
可选的,该实施例的报文传输节点具体可以是应用于流分发节点。
在另一个实施例中,处理器144还用于执行如下操作:
通过接收器141获得包括UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息通过发射器142将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳。
可选的,上述增值业务处理具体可以是报文传输节点所具备的增值业务功能所作的增值业务处理。例如,上述报文传输节点为防火墙,那么上述增值业务处理就可以为过滤处理;上述报文传输节点为IPS,那么上述增值业务处理就为入侵防御;上述报文传输节点为IDS,那么上述增值业务处理就为入侵检测;上述报文传输节点为DDOS,那么上述增值业务处理就为分布式拒绝服务攻击;上述报文传输节点为负载均衡器,那么上述增值业务处理就为负载均衡;上述报文传输节点为AV,那么上述增值业务处理就为防病毒处理。
可选的,处理器144执行的通过接收器141获得包括UDP头和上下文标签tag的添加报文的操作,可以包括:
通过接收器141接收流分发节点发送的包括UDP头和上下文tag的添加报文。
可选的,上述上下文tag包括的路径信息具体可以是上述传输路径的各节点的地址信息,或者上述上下文tag包括的路径信息具体可以是上述传输路径的路径标识。
可选的,当所述路径信息包括路径标识时,处理器144执行的根据所述上下文tag中的路径信息通过发射器142将所述增值业务处理后的添加报文传输至下一节点的操作,具体可以包括:
根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识通过发射器142将所述增值业务处理后的添加报文传输至该下一跳。
可选的,当路径标识为局部唯一的路径标识时,处理器144执行的根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识通过发射器142将所述增值业务处理后的添加报文传输至该下一跳的操作,具体可以包括:
根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;
将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,并根据所述下一跳的标识通过发射器142将所述更新后的添加报文发送至该下一跳。
可选的,报文传输节点具体可以是预先获取管理节点发送的下一跳信息,该下一跳信息包括路径标识和该路径标识对应的下一跳的标识,以及该下一跳的标识绑定更新路径标识。由于上述路径标识为局部唯一的路径标识,这样上下文tag中的路径标识就只能被报文传输节点识别,报文传输节点向下一跳发送添加报文时,就需要将更新路径标识更新至添加报文中,以让下一跳能够识别上下文tag中的路径标识。
可选的,上述报文传输节点具体可以是应用于增值业务设备。
上述技术方案中,报文传输节点获取包括用户UDP头和上下文tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头包括目的端口号,所述目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径的路径信息,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;报文传输节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文。这样可以实现报文传输节点根据该传输路径处理业务报文,这样业务报文就不会传输至该业务报文不相关的设备,从而可以提高设备资源的利用率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (12)

1.一种报文传输方法,其特征在于,
当前节点获得包括用户数据包协议UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP头和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文;
其中,所述路径信息包括路径标识,所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文,包括:
所述当前节点从所述上下文tag中获取所述路径信息,并根据所述路径信息获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳;或者
所述当前节点根据所述上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述当前节点的下一跳。
2.如权利要求1所述的方法,其特征在于,所述业务报文为非隧道封装报文,所述添加报文为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,且所述业务报文包括隧道头和原始报文,其中,所述隧道头为IP头;所述添加报文为在所述业务报文的隧道头与原始报文之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,所述业务报文包括隧道头和原始报文,其中,所述隧道头不包含IP头;所述添加报文为在所述原始报文的报文头和载荷之间添加所述UDP头和所述上下文tag的报文。
3.如权利要求1所述的方法,其特征在于,所述当前节点获得包括UDP头和上下文标签tag的添加报文,包括:
所述当前节点获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
4.如权利要求2所述的方法,其特征在于,所述当前节点获得包括UDP头和上下文标签tag的添加报文,包括:
所述当前节点获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
5.如权利要求1-4中任意一项所述的方法,其特征在于,所述路径标识为局部唯一的路径标识;
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,并根据所述下一跳的标识将所述增值业务处理后的添加报文传输至所述下一跳,包括:
所述当前节点根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;
所述当前节点将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,并根据所述下一跳的标识将所述更新后的添加报文发送至所述下一跳。
6.一种报文传输节点,其特征在于,所述节点包括:获取单元和处理单元,其中:
所述获取单元,用于获得包括用户数据包协议UDP头和上下文标签tag的添加报文,其中,所述添加报文是在业务报文上添加所述UDP头和上下文tag所得到的报文;所述添加报文的报文头中的协议类型为UDP,所述UDP头中的目的端口号用于标识所述上下文tag;所述上下文tag包括路径信息和协议类型,所述路径信息用于表示所述添加报文的传输路径,所述上下文tag包括的协议类型为所述业务报文的载荷的协议类型;
所述处理单元,用于从所述上下文tag中获取所述路径信息,并根据所述路径信息处理所述添加报文;
其中,
所述处理单元用于从所述上下文tag中获取所述路径信息,并根据所述路径信息将所述添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳;或者
所述处理单元用于根据所述上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,再根据所述上下文tag中的路径信息将所述增值业务处理后的添加报文传输至下一节点,所述下一节点为所述传输路径中所述报文传输节点的下一跳;
其中,所述路径信息包括路径标识;
所述处理单元用于根据所述目的端口号识别所述上下文tag,从所述上下文tag中获取所述路径信息,并根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,再根据所述下一跳的标识将所述添加报文传输至所述下一跳;或者
所述处理单元用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,并对所述载荷进行增值业务处理,根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识,再根据所述下一跳的标识将所述增值业务处理后的添加报文传输至所述下一跳。
7.如权利要求6所述的节点,其特征在于,所述业务报文为非隧道封装报文,所述添加报文为在所述业务报文的报文头与载荷之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,且所述业务报文包括隧道头和原始报文,其中,所述隧道头为IP头;所述添加报文为在所述业务报文的隧道头与原始报文之间添加所述UDP头和所述上下文tag的报文;或者
所述业务报文为隧道封装报文,所述业务报文包括隧道头和原始报文,其中,所述隧道头不包含IP头;所述添加报文为在所述原始报文的报文头和载荷之间添加所述UDP头和所述上下文tag的报文。
8.如权利要求6所述的节点,其特征在于,所述获取单元用于获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
9.如权利要求7所述的节点,其特征在于,所述获取单元用于获取业务报文,并在所述业务报文上添加所述UDP头和上下文tag,以得到所述添加报文,并将所述添加报文的报文头中的协议类型修改为UDP。
10.如权利要求6-9任意一项所述的节点,其特征在于,所述路径标识为局部唯一的路径标识;所述处理单元用于根据所述目的端口号识别所述上下文tag,并根据上下文tag包括的协议类型解析所述业务报文的载荷,对所述载荷进行增值业务处理;以及根据所述路径标识获取预先配置的与所述路径标识对应的下一跳的标识;所述下一跳的标识绑定更新路径标识;以及将所述增值业务处理后的添加报文中的路径标识更新为所述更新路径标识,再根据所述下一跳的标识将所述更新后的添加报文发送至所述下一跳。
11.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质存储有计算机程序,所述计算机程序用于指令相关的硬件来执行权利要求1至5任意一项所述的方法。
12.一种报文传输节点,其特征在于,包括:接收器、发射器和存储器,以及分别与接收器、发射器和存储器连接的处理器,其中,所述存储器用于存储一组程序代码,处理器用于调用存储器存储的程序,以执行权利要求1至5任意一项所述的方法。
CN201310648800.XA 2013-12-04 2013-12-04 一种报文传输方法和节点 Active CN104702505B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310648800.XA CN104702505B (zh) 2013-12-04 2013-12-04 一种报文传输方法和节点

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310648800.XA CN104702505B (zh) 2013-12-04 2013-12-04 一种报文传输方法和节点

Publications (2)

Publication Number Publication Date
CN104702505A CN104702505A (zh) 2015-06-10
CN104702505B true CN104702505B (zh) 2018-03-27

Family

ID=53349288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310648800.XA Active CN104702505B (zh) 2013-12-04 2013-12-04 一种报文传输方法和节点

Country Status (1)

Country Link
CN (1) CN104702505B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938426A (zh) 2016-11-02 2022-01-14 华为技术有限公司 一种报文处理方法以及网络设备
CN107196879B (zh) * 2017-05-18 2020-10-09 杭州敦崇科技股份有限公司 Udp报文的处理方法、装置以及网络转发装置
CN111787032B (zh) * 2020-08-05 2022-10-25 北京北斗弘鹏科技有限公司 一种抵御网络通信监听的数据发送和接收方法以及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158409A (zh) * 2011-04-02 2011-08-17 杭州华三通信技术有限公司 一种ip报文转发控制方法及其设备
CN102571602A (zh) * 2012-02-13 2012-07-11 华为技术有限公司 业务路由网络及业务处理的方法、设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5035120B2 (ja) * 2008-05-30 2012-09-26 富士通株式会社 伝送装置、伝送方法および伝送プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158409A (zh) * 2011-04-02 2011-08-17 杭州华三通信技术有限公司 一种ip报文转发控制方法及其设备
CN102571602A (zh) * 2012-02-13 2012-07-11 华为技术有限公司 业务路由网络及业务处理的方法、设备

Also Published As

Publication number Publication date
CN104702505A (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
US11374848B2 (en) Explicit routing with network function encoding
KR102569305B1 (ko) 데이터 메시지 검출 방법, 디바이스 및 시스템
US10972391B2 (en) Full-path validation in segment routing
CN108702331B (zh) Sr应用段与服务功能链(sfc)报头元数据的集成
EP3958521A1 (en) Method and apparatus for providing service for service flow
CN102136989B (zh) 报文传输的方法、系统和设备
CN105024985A (zh) 一种报文处理方法及装置
CN104601467B (zh) 一种发送报文的方法和装置
CN107968750A (zh) 报文传输方法、装置及节点
US10693777B2 (en) In-situ operations, administration, and maintenance (iOAM) for software defined architectures (SDAs)
CN109088821B (zh) 报文传输方法、业务链系统以及计算机可读存储介质
WO2018036254A1 (zh) 报文转发方法及装置
CN108270673A (zh) 报文发送方法、装置以及系统
CN109936492A (zh) 一种通过隧道传输报文的方法、装置和系统
EP3965382A1 (en) Method and device for implementing service function processing
CN104702505B (zh) 一种报文传输方法和节点
CN114205282B (zh) SRv6 Policy的调度方法、系统、路由器和控制器
JP6222505B2 (ja) 入力パラメータを生成するための方法および装置
CN105009542B (zh) 一种处理报文的方法和装置
CN107948082A (zh) 以太网上的点对点协议的处理方法和系统以及代理装置
CN108696415B (zh) 一种发送和接收信息的方法及设备
CN107707473B (zh) 一种报文转发方法及装置
CN116057911A (zh) 使用多协议标签交换的服务功能链中的负载均衡和oam
KR20160062688A (ko) 오버레이 네트워크 기반에서의 오리지널 패킷 플로우 매핑 장치 및 그 방법
CN106067864B (zh) 一种报文处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211213

Address after: 215010 room 704, building 5, No. 556, Changjiang Road, high tech Zone, Suzhou, Jiangsu

Patentee after: SUZHOU YUDESHUI ELECTRICAL TECHNOLOGY Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

Effective date of registration: 20211213

Address after: Room 2011, building 1, No.35, Shishan Road, high tech Zone, Suzhou, Jiangsu 215000

Patentee after: SUZHOU XIQUAN SOFTWARE TECHNOLOGY Co.,Ltd.

Address before: 215010 room 704, building 5, No. 556, Changjiang Road, high tech Zone, Suzhou, Jiangsu

Patentee before: SUZHOU YUDESHUI ELECTRICAL TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221222

Address after: No. 155, Chemical Road, Boxing Economic Development Zone, Boxing County, Binzhou City, Shandong Province, 256599

Patentee after: Shandong rongzhixin Enterprise Consulting Service Co.,Ltd.

Address before: Room 2011, building 1, No.35, Shishan Road, high tech Zone, Suzhou, Jiangsu 215000

Patentee before: SUZHOU XIQUAN SOFTWARE TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230920

Address after: No. 57 Maxing Road, Changping District, Beijing 102200

Patentee after: CHINA ORDNANCE EQUIPMENT GROUP ORDNANCE EQUIPMENT Research Institute

Address before: No. 155, Chemical Road, Boxing Economic Development Zone, Boxing County, Binzhou City, Shandong Province, 256599

Patentee before: Shandong rongzhixin Enterprise Consulting Service Co.,Ltd.

TR01 Transfer of patent right