Nothing Special   »   [go: up one dir, main page]

CN104488237A - 一种报文处理的方法、报文设备和系统 - Google Patents

一种报文处理的方法、报文设备和系统 Download PDF

Info

Publication number
CN104488237A
CN104488237A CN201380036284.3A CN201380036284A CN104488237A CN 104488237 A CN104488237 A CN 104488237A CN 201380036284 A CN201380036284 A CN 201380036284A CN 104488237 A CN104488237 A CN 104488237A
Authority
CN
China
Prior art keywords
message
address
hop
service node
mac address
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.)
Granted
Application number
CN201380036284.3A
Other languages
English (en)
Other versions
CN104488237B (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.)
Huawei Technologies Co Ltd
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
Publication of CN104488237A publication Critical patent/CN104488237A/zh
Application granted granted Critical
Publication of CN104488237B publication Critical patent/CN104488237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明实施例公开报文处理的方法,包括:业务分发节点接收控制器发来的业务路由信息,所述业务路由信息包括:流标识,业务标识和下一跳地址,所述流标识用于识别报文流;所述业务标识用于标识处理所述报文流的业务节点实例的序列,所述下一跳地址用于标识处理所述报文流的业务节点实例;所述业务分发节点接收第一报文;所述业务分发节点根据所述第一报文获取第一流标识,根据所述第一流标识查找所述业务路由信息,获取匹配的业务标识和匹配的下一跳地址;所述业务分发节点向拥有所述匹配的下一跳地址的第一业务节点实例发送第二报文,所述第二报文为将所述匹配的业务标识添加到所述第一报文中形成的,实现了对报文流的业务处理。

Description

一种报文处理的方法、 报文设备和系统 技术领域
本发明涉及通讯领域, 报文尤其涉及一种报文处理的方法、 设 备和系统。
背景技术
在数据中心网络中, 通常需要对报文流进行基于开放系统互连
(open systems interconnection , OSI)分层中 4层到 7层的业务处理, 举例来说, 业务处理通常包括提供防火墙, 网络地址转换 ( Network Address Translation , NAT ) , 家庭控制等。 不同的报文流可能要求提 供不同的业务处理, 且通常报文流不仅只进行一种业务处理, 而是 会要求提供多种业务处理, 比如某些报文流可能需要进行防火墙和 NAT处理,而另外一些报文流可能希望进行防火墙和家庭控制处理, 这样, 如何实现对报文流的业务处理是需要解决的问题。 发明内容
本发明的实施例提供一种报文处理的方法、 装置和系统, 能实 现对报文流的业务处理, 尤其是高效实现对报文流的多业务处理。
为达到上述目的, 本发明的实施例采用如下技术方案:
第一方面, 本发明实施例提供一种报文处理方法, 包括: 业务分发节点接收控制器发来的业务路由信息, 所述业务路由 信息包括: 流标识, 业务标识和下一跳地址, 其中所述流标识用于 识别报文流; 所述业务标识用于标识处理所述报文流的业务节点实 例的序列, 所述下一跳地址用于标识处理所述^艮文流的业务节点实 例;
所述业务分发节点接收第一报文;
所述业务分发节点根据所述第一报文获取第一流标识,根据所 述第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹配 的下一跳地址;
所述业务分发节点向拥有所述匹配的下一跳地址的第一业务节 点实例发送第二报文, 所述第二报文为将所述匹配的业务标识添加 到所述第一报文中形成的。
结合第一方面, 在第一种可能的实现方式中, 所述下一跳地址 为下一兆 MAC地址或下一跳 IP地址。
第二方面, 本发明实施例提供一种报文处理方法, 包括: 第一业务节点实例接收控制器发送的业务路由信息, 所述业务 路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用于标 识处理报文流的业务节点实例的序列;
所述第一业务节点实例接收业务分发节点发来的第一报文, 其 中所述第一报文携带所述第一报文匹配的业务标识;
所述第一业务节点实例处理所述第一报文形成第二报文, 其中 所述第二报文携带所述第一报文匹配的业务标识;
所述第一业务节点实例根据所述第一报文匹配的业务标识查找 所述业务路由信息, 获取第一下一跳地址, 第一下一跳地址为与所 述第一 文匹配的业务标识匹配的下一跳地址;
如果所述第一下一跳地址为可达的地址,所述第一业务节点实 例向拥有所述第一下一跳地址的设备发送所述第二报文。
结合第二方面, 在第一种可能的实现中, 所述第一报文为第一
IP报文, 所述第一下一跳地址为第一下一跳 IP地址, 所述第一业务 节点实例向拥有所述第一下一跳 IP地址的设备发送所述第二报文包 括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第二报文进行以太网封装形成第一以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第一以太报文。
结合第二方面, 在第二种可能的实现中, 所述第一报文为第一 以太报文, 所述第一下一跳地址为第一下一跳 IP地址, 所述第一业 务节点实例向拥有所述第一下一跳 IP地址的设备发送所述第二报文 包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第二报 文中的目 的 MAC地址形成第二以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第二以太报文。
结合第二方面及上述可能的实现方式, 在第三种可能的实现方式中, 所述第一报文为第一 IP 报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述第一业务节点实例向拥有所述第一下一跳 MAC地 址的设备发送所述第二报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 MAC地址对所述第二报文进行以太网封装形成第三以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第三以太报文。
结合第二方面以及上述可能的实现方式, 在第四种可能的实现 方式中, 所述第一报文为第一以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳 MAC地址的设备发送所述第二报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第二报文中的目的 MAC地址形成第四以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第四以太报文。
结合第二方面以及上述可能的实现方式, 在第五种可能的实现 方式中, 所述方法还包括:
如果所述第一下一跳地址为不可达的 IP地址, 则所述第一业务 节点实例根据所述第二报文中的目 的 IP地址查找路由表, 获取第二 下一跳 IP地址, 所述第二下一跳 IP地址为所述目的 IP地址在所述 路由表中匹配的下一跳 IP地址;
所述第一业务节点实例向拥有所述第二下一跳 IP 地址的设备 发送第三报文, 所述第三报文为去除所述第二报文中携带的所述第 一 4艮文匹配的业务标识形成的。
结合第二方面以及上述可能的实现方式, 在第六种可能的实现 方式中, 所述第一报文为第一 IP报文, 所述第一业务节点实例向拥 有所述第二下一跳 I P地址的设备发送第三报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第三报文进行以太网封装形成第五以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第五以太报文。
结合第二方面以及上述可能的实现方式, 在第七种可能的实现 方式中, 所述第一报文为第一以太报文, 所述第一业务节点实例向 拥有所述第二下一跳 I P地址的设备发送第三报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第三报 文中的目 的 MAC地址形成第六以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第六以太报文。
结合第二方面以及上述可能的实现方式, 在第八种可能的实现 方式中, 所述第一报文为 IP报文, 所述第一下一跳地址为第一下一 跳 MAC地址, 所述方法还包括:
如果所述第一下一跳 MAC地址为不可达的 MAC地址, 则所述 第一业务节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为与所述目的 IP 地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例将所述第一 MAC地址作为目 的 MAC地 址对所述第二报文进行以太网封装形成第七以太报文, 所述第七以 太报文不携带所述第一报文匹配的业务标识;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第七以太报文。
结合第二方面以及上述可能的实现方式, 在第九种可能的实现 方式中, 所述第一报文为以太报文, 所述第一下一跳地址为第一下 一跳 MAC地址, 所述所述方法还包括:
如果所述第一下一跳 MAC地址为不可达的 MAC地址, 则所述 第一业务节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为与所述目的 IP 地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例用所述第一 MAC 地址替换所述第二报 文中的 MAC地址形成第八以太报文,所述第八以太报文不携带所述 第一报文匹配的业务标识; 所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所述第八以太报文。
结合第二方面以及上述可能的实现方式, 在第十种可能的实现 方式中, 所述业务路由信息还包括控制标志信息, 所述控制标志信 息用于标识所述报文流是否已经到达最后一个业务节点实例并需要 经过正常路由转发; 所述方法还包括:
所述第一业务节点实例查找所述业务路由信息, 获取匹配的控 制标志信息;
如果所述匹配的控制标志信息标识为所述第一报文已经到达最 后一个业务节点实例并需要经过正常路由转发, 所述第一业务节点 实例向拥有所述第一下一跳地址的设备发送所述第二报文,包括:所 述第一业务节点实例向拥有所述第一下一跳地址的设备发送第四报 文, 所述第四报文为去除所述第二报文中携带的所述第一报文匹配 的业务标识形成的。
结合第二方面以及上述可能的实现方式, 在第十一种可能的实 现方式中, 所述第一报文为第一 IP报文, 所述第一下一跳地址为第 一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一跳地 址的设备发送第四报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第二 MAC地址作为目的 MAC地 址对所述第四报文进行以太网封装形成第九以太报文;
所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第九以太报文。
结合第二方面以及上述可能的实现方式, 在第十二种可能的实 现方式中, 所述第一报文为第一以太报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一跳 地址的设备发送第四报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第二 MAC 地址替换所述第四报 文中的目 的 MAC地址形成第十以太报文; 所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第十以太报文。
结合第二方面以及上述可能的实现方式, 在第十三种可能的实 现方式中, 所述第一报文为 IP报文, 所述第一下一跳地址为第一下 一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳地址 的设备发送第四报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 地址对所述第四报文进行以太网封装形成第十一以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十一以太报文。
结合第二方面以及上述可能的实现方式, 在第十四种可能的实 现方式中, 所述第一报文为以太报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳地 址的设备发送第四报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第二报文中的目的 MAC地址形成第十二以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十二以太报文。
第三方面, 本发明实施例提供一种业务分发节点, 所述业务分 发节点包括接收单元, 处理单元和发送单元:
所述接收单元, 用于接收控制器发来的业务路由信息, 所述业 务路由信息包括: 流标识, 业务标识和下一跳地址, 其中所述流标 识用于识别 文流; 所述业务标识用于标识处理所述^艮文流的业务 节点实例的序列, 所述下一跳地址用于标识处理所述^艮文流的业务 节点实例;
所述接收单元, 还用于接收第一报文;
所述处理单元, 用于根据所述第一报文获取第一流标识, 根据 所述第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹 配的下一跳地址; 触发所述发送单元向拥有所述匹配的下一跳地址 对应的第一业务节点实例发送第二报文, 所述第二报文为将所述匹 配的业务标识添加到所述第一 文中形成的;
所述发送单元, 用于向拥有所述匹配的下一跳地址的第一业务 节点实例发送所述第二报文。
第四方面, 本发明实施例提供一种业务节点实例, 所述业务节 点实例包括: 接收单元, 处理单元和发送单元;
所述接收单元, 用于接收控制器发送的业务路由信息, 所述业 务路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用于 标识处理所述报文流的业务节点实例的序列;
所述接收单元, 还用于接收业务分发节点发来的第一报文, 其 中所述第一报文携带所述第一报文匹配的业务标识;
所述处理单元, 用于处理所述第一报文形成第二报文, 其中所 述第二报文携带所述第一报文匹配的业务标识; 根据所述第一报文 匹配的业务标识查找所述业务路由信息, 获取第一下一跳地址, 第 一下一跳地址为与所述第一 文匹配的业务标识匹配的下一跳地址; 如果所述第一下一跳地址为可达的地址,触发所述发送单元向拥有 所述第一下一跳地址的设备发送第二报文;
所述发送单元, 用于向拥有所述第一下一跳地址的设备发送所 述第二报文。
结合第四方面, 在第一种可能的实现方式中, 所述第一报文为 第一 IP报文, 所述第一下一跳地址为第一下一跳 IP地址; 所述处 理单元触发所述发送单元向拥有所述第一下一跳地址的设备发送第 二报文包括:
所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹 配的 MAC地址;
所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第二报文进行以太网封装形成第一以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第一以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一 MAC 地址的设备发送所述 第一以太报文。
结合第四方面, 在第二种可能的实现方式中, 所述第一报文为 第一以太报文, 所述第一下一跳地址为第一下一跳 IP地址, 所述处 理单元触发所述发送单元向拥有所述第一下一跳地址的设备发送第 二报文包括:
所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹 配的 MAC地址;
所述处理单元用所述第一 MAC 地址替换所述第二报文中的目 的 MAC地址形成第二以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第二以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一 MAC 地址的设备发送所述 第二以太报文。
结合第四方面以及上述可能的实现方式, 在第三种可能的实现 方式中, 所述第一报文为第一 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第一 下一跳地址的设备发送第二报文包括:
所述处理单元将所述第一下一跳 MAC地址作为目的 MAC地址 对所述第二报文进行以太网封装形成第三以太报文;
所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC 地址的设备发送所述第三以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第三以太报文。
结合第四方面以及上述可能的实现方式, 在第四种可能的实现 方式中, 所述第一报文为第一以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第 一下一跳地址的设备发送第二报文包括:
所述处理单元用所述第一下一跳 MAC 地址替换所述第二报文 中的目 的 MAC地址形成第四以太报文;
所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC 地址的设备发送所述第四以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第四以太报文。
结合第四方面以及上述可能的实现方式, 在第五种可能的实现 方式中, 所述处理单元还用于: 如果所述第一下一跳地址为不可达 的 IP地址, 则根据所述第二报文中的目 的 IP地址查找路由表, 获 取第二下一跳 IP地址, 所述第二下一跳 IP地址为所述目的 IP地址 在所述路由表中匹配的下一跳 IP地址; 触发所述发送单元向拥有所 述第二下一跳 IP地址的设备发送第三报文, 所述第三报文为去除所 述第二报文中携带的所述第一报文匹配的业务标识形成的;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文。
结合第四方面以及上述可能的实现方式, 在第六种可能的实现 方式中, 所述第一报文为第一 IP报文, 所述处理单元触发所述发送 单元向拥有所述第二下一跳 IP地址的设备发送第三报文包括:
所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹 配的 MAC地址;
所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第三报文进行以太网封装形成第五以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第五以太报文;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述发送单元还用于向拥有所述第一 MAC 地址的设备发送所 述第五以太报文。
结合第四方面以及上述可能的实现方式, 在第七种可能的实现 方式中, 所述第一报文为第一以太报文, 所述处理单元触发所述发 送单元向拥有所述第二下一跳 I P地址的设备发送第三报文包括: 所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹 配的 MAC地址;
所述处理单元用所述第一 MAC 地址替换所述第三报文中的目 的 MAC地址形成第六以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第六以太报文;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述发送单元向拥有所述第一 MAC 地址的设备发送所述第六 以太报文。
结合第四方面以及上述可能的实现方式, 在第八种可能的实现 方式中, 所述第一报文为 IP报文, 所述第一下一跳地址为第一下一 跳 MAC地址, 所述处理单元还用于: 如果所述第一下一跳 MAC地 址为不可达的 MAC地址, 则根据所述第二报文中的目的 IP地址查 找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为与 所述目 的 IP 地址匹配的下一跳 IP 地址; 查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC 地址; 将所述第一 MAC地址作为目的 MAC地址对所述第二 报文进行以太网封装形成第七以太报文, 所述第七以太报文不携带 所述第一报文匹配的业务标识; 触发所述发送单元向拥有所述第一 MAC地址的设备发送所述第七以太报文;
相应地, 所述发送单元还用于向拥有所述第一 MAC 地址的设 备发送所述第七以太报文。
结合第四方面以及上述可能的实现方式, 在第九种可能的实现 方式中, 所述第一报文为以太报文, 所述第一下一跳地址为第一下 一跳 MAC地址, 所述处理单元还用于: 如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC 地址; 用所述第一 MAC地址替换所述第二报文中的 MAC地 址形成第八以太报文, 所述第八以太报文不携带所述第一报文匹配 的业务标识;触发所述发送单元向拥有所述第一 MAC地址的设备发 送所述第八以太报文;
相应地, 所述发送单元还用于向拥有所述第一 MAC 地址的设 备发送所述第八以太报文。
结合第四方面以及上述可能的实现方式, 在第十种可能的实现 方式中, 所述业务路由信息还包括控制标志信息, 所述控制标志信 息用于标识所述报文流是否已经到达最后一个业务节点实例并需要 经过正常路由转发; 所述处理单元, 还用于: 查找所述业务路由信 息时, 获取匹配的控制标志信息; 如果所述匹配的控制标志信息标 识为所述第一报文已经到达最后一个业务节点实例并需要经过正常 路由转发, 触发所述发送单元向拥有所述第一下一跳地址的设备发 送第四报文, 所述第四报文为去除所述第二报文中携带的所述第一 4艮文匹配的业务标识形成的; 相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文。
结合第四方面以及上述可能的实现方式, 在第十一种可能的实 现方式中, 所述第一报文为第一 IP报文, 所述第一下一跳地址为第 一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述第一 下一跳地址的设备发送第四报文包括: 所述处理单元根据所述第一 下一跳 IP地址查找 ARP表以获取第二 MAC地址, 所述第二 MAC 地址为与所述第一下一跳 IP 地址匹配的 MAC 地址; 将所述第二 MAC地址作为目 的 MAC地址对所述第四 ^艮文进行以太网封装形成 第九以太报文;触发所述发送单元向拥有所述第二 MAC地址的设备 发送所述第九以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述发送单元还用于向拥有所述第二 MAC地 址的设备发送所述第九以太报文。
结合第四方面以及上述可能的实现方式, 在第十二种可能的实 现方式中, 所述第一报文为第一以太报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述第 一下一跳地址的设备发送第四报文包括: 所述处理单元根据所述第 一下一跳 IP地址查找 ARP表以获取第二 MAC地址,所述第二 MAC 地址为与所述第一下一跳 IP 地址匹配的 MAC 地址; 用所述第二 MAC地址替换所述第四报文中的目 的 MAC地址形成第十以太报文; 触发所述发送单元向拥有所述第二 MAC 地址的设备发送所述第十 以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述发送单元还用于向拥有所述第二 MAC地 址的设备发送所述第十以太报文。
结合第四方面以及上述可能的实现方式, 在第十三种可能的实 现方式中, 所述第一报文为 IP报文, 所述第一下一跳地址为第一下 一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第一下 一跳地址的设备发送第四报文包括: 所述处理单元将所述第一下一 跳 MAC 地址作为目 的地址对所述第四报文进行以太网封装形成第 十一以太报文;触发所述发送单元向拥有所述第一下一跳 MAC地址 的设备发送所述第十一以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳
MAC地址的设备发送所述第十一以太报文。
结合第四方面以及上述可能的实现方式, 在第十四种可能的实 现方式中, 所述第一报文为以太报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第一 下一跳地址的设备发送第四报文包括: 所述处理单元用所述第一下 一跳 MAC地址替换所述第二报文中的目 的 MAC地址形成第十二以 太报文;触发所述发送单元向拥有所述第一下一跳 MAC地址的设备 发送所述第十二以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十二以太报文。
第五方面, 本发明实施例提供一种报文处理系统, 所述系统包 括: 控制器, 业务分发节点, 第一业务节点实例;
所述控制器,用于向所述业务分发节点发送第一业务路由信息, 所述第一业务路由信息包括: 流标识, 业务标识和下一跳地址, 其 中所述流标识用于识别 文流; 所述业务标识用于标识处理所述 艮 文流的业务节点实例的序列, 所述下一跳地址用于标识处理所述 艮 文流的业务节点实例;
所述业务分发节点,用于接收控制器发来的第一业务路由信息; 所述业务分发节点还用于接收第一报文, 根据所述第一报文获 取第一流标识,根据所述第一流标识查找所述第一业务路由信息, 获 取匹配的业务标识和匹配的下一跳地址; 向拥有所述匹配的下一跳 地址的第一业务节点实例发送第二报文, 所述第二报文为将所述匹 配的业务标识添加到所述第一 文中形成的;
所述第一业务节点实例, 用于接收所述第二报文。
结合第五方面, 在第一种可能的实现方式中, 所述控制器, 还 用于向所述第一业务节点实例发送第二业务路由信息; 所述业务分 发节点还用于接收所述第二业务路由信息, 处理所述第二报文形成 第三报文, 其中所述第三报文携带所述第一报文匹配的业务标识; 根据所述第一报文匹配的业务标识查找所述第二业务路由信息, 获 取第一下一跳地址, 第一下一跳地址为与所述第一报文匹配的业务 标识匹配的下一跳地址, 如果所述第一下一跳地址为可达的地址,向 拥有所述第一下一跳地址的设备发送所述第二报文。
在本发明实施例提供的报文处理系统中, 控制器向业务分发节 点和业务节点实例分别发送业务路由信息,所述业务路由信息包括 流标识, 业务标识和下一跳地址; 其中, 所述流标识用于识别 ^艮文 流, 所述业务标识用于标识处理所述报文流的业务节点实例的序列 这样, 业务分发节点和业务节点实例分别根据接收到的业务路由信 息来处理报文, 实现了控制器对业务分发节点和业务节点实例的统 一管理。 进一步地, 业务分发节点根据业务路由信息对接收到的报 文添加业务标识, 以使得业务节点实例对所述添加了业务标识的报 文处理后, 可以根据业务标识查找业务路由信息将处理后的报文转 发给下一个业务节点实例或者按照路由表进行正常转发,实现了对 报文流的业务处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下 面将对实施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例, 对于 本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以 根据这些附图获得其他的附图。
图 1是本发明实施例提供的报文处理系统图;
图 2是本发明实施例在数据中心网络的系统示意图; 图 3是本发明实施例提供的报文处理方法的流程图;
图 4是本发明实施例提供的报文处理方法的另一流程图; 图 5为本发明实施例提供的业务分发节点的装置示意图; 图 6是本发明实施例提供的业务节点实例的装置示意图; 图 7是本发明实施例提供的另一业务分发节点的装置示意图; 图 8是本发明实施例提供的另一种业务节点实例的装置示意图。 具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术 方案进行清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明 一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本 领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例, 都属于本发明保护的范围。
实施例一:
本发明实施例提供了一种报文处理系统, 如图 1所示, 图 1是 本发明实施例提供的报文处理系统示意图。 该系统包括控制器 12 , 业务分发节点 14和业务节点实例, 例如图 1 中的第一业务节点实例 16和第二业务节点实例 18。
控制器 12用于发送业务路由信息。 具体来说, 控制器 12用于 向业务分发节点 14和业务节点实例分别下发业务路由信息。
举例来说, 控制器 12可以基于报文流来分配业务处理策略, 控制器 12根据报文流对应的业务处理策略, 分别下发业务路由信息给业务 分发节点 14和业务节点实例。 为了描述方便, 控制器 12下发第一 业务路由信息给业务分发节点 14 , 其中, 第一业务路由信息包括: 流标识, 业务标识 ( ID ) 以及下一跳地址, 其中所述流标识用于识 别报文流; 所述业务标识用于标识处理所述报文流的业务节点实例 的序列, 所述下一跳地址用于标识处理所述 ^艮文流的业务节点实例。 需要说明的是, 所述下一跳地址可以为下一跳 IP地址, 也可以为下 一跳 MAC地址。 可选地, 控制器 12可以将业务路由信息以业务路 由表的方式下发给业务分发节点和业务节点实例。 控制器 12下发第二业务路由信息给业务节点实例。第二业务路 由信息包括: 业务 ID 以及下一跳地址。 其中, 具有相同业务 ID的 报文流通过相同的业务节点实例处理, 且通过的业务节点实例处理 的顺序相同。 举例来说, 业务 ID= 1 的报文先由第一业务节点实例 16进行处理, 再由第二业务节点实例 18进行处理。 而业务 ID=2的 报文则先由第二业务节点实例 18进行处理, 再由第一业务节点实例 16进行处理。 可选地, 如果同一4艮文流中的两个不同的 4艮文分配了 两个不同的业务 ID , 则意味着虽然所述两个不同的报文所需进行的 业务处理相同,例如都是先经过防火墙处理,再经过 NAT设备处理, 但是所述两个报文却由不同的业务节点实例进行处理, 这样可以实 现4艮文处理的负载均衡。 可选地, 可以对 文流的 文进行细分来 实现对同一 4艮文流处理的负载均衡。 例如, 以相同的源地址和相同 的目 的地址来标识同一 4艮文流, 为了对该同一 4艮文流的 4艮文处理实 现负载均衡, 可以根据协议号对该同一报文流的报文进行细分, 假 设为该同一报文流中协议号大于 50 的报文分配一个业务 ID , 用于 标识该报文先经过防火墙实例 1处理,再经过 NAT设备实例 1处理。 为该同一报文流中协议号小于等于 50 的报文分配另一个业务 ID , 用于标识该报文先经过防火墙实例 2处理, 再经过 NAT设备实例 2 处理。 这样有助于实现同一 4艮文流处理的负载均衡。 可选地, 如果 不同的 4艮文流,例如 4艮文流 1和 4艮文流 2需要进行相同的业务处理, 例如都是先经过 NAT设备处理, 再经过防火墙处理, 可以为报文流 1 的报文和报文流 2的报文分配相同的业务 ID。 当然, 也可以为报 文流 1 的 4艮文和 4艮文流 2的 4艮文分配不同的业务 ID , 有助于实现负 载均衡。
业务分发节点 14 , 用于接收第一业务路由信息和第一报文, 其 中所述第一报文需要进行业务处理。 第一报文可以是从用户侧设备 发来的, 也可以是从网络侧设备发来的,本发明实施例对此不做限定。 业务分发节点 14根据第一报文获取第一流标识, 根据所述第一流标 识查找所述第一业务路由信息, 获取匹配的业务标识和匹配的下一 跳地址, 向拥有所述匹配的下一跳地址的第一业务节点实例 16发送 第二报文, 所述第二报文为将所述匹配的业务标识添加到所述第一 4艮文中形成的。
其中, 业务分发节点 14根据第一报文获取第一流标识, 举例来 说, 可以通过源地址, 目 的地址, 源端口, 目 的端口, 协议号中的 至少一种信息来标识 文流, 所以流标识可以包括所述第一 文的 源地址, 目 的地址, 源端口, 目的端口和十办议号中的至少一个。 举 例来说, 通过所述第一报文的五元组信息 (源地址, 目 的地址, 源 端口, 目 的端口和协议号) 来标识报文流。 可选地, 所述第一流标 识可以是所述第一报文的五元组信息, 也可以是根据所述第一报文 的五元组信息通过一定的算法得到的数值, 例如通过哈希 ( hash ) 算法所得到的数值。 当业务分发节点 14接收到第一报文时, 如果第 一业务路由信息中的流标识是五元组信息, 则业务分发节点 14从第 一报文中获取五元组信息得到所述第一流标识。 如果第一业务路由 信息中的流标识是基于五元组信息通过特定的算法得到的数值, 则 业务分发节点 14从第一报文中获取所述第一报文的五元组信息, 对 所述第一报文的五元组信息进行该特定的算法运算得到数值, 该得 到的数值为所述第一流标识。
其中, 所述第二报文为将所述匹配的业务标识添加到所述第一 报文中形成的。 举例来说, 所述第二报文可以为将匹配的业务标识 添加到所述第一4艮文的 4艮文头中形成的, 或者也可以为将匹配的业 务标识添加到所述第一报文的净荷中形成的。 以第一报文为第一以 太 文举例来说, 所述匹配的业务标识可以添加到所述以太 文新 增的 4艮文头选项中, 或者, 也可以添加到所述以太4艮文中的 IP · ^艮文 头中, 或者, 也可以对以太报文头中的现有字段重用, 也就是更改 现有字段的含义来表示所述以太报文携带业务标识。 例如可以对虚 拟局域网 ( Virtual Local Area Network , 筒称为 VLAN ) 或 QINQ (也 称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签交换 ( Multi-protocol Label Switching , 筒称为 MPLS ) 中的标签 ( LABEL ) 进行重用, 也可以对源 MAC地址的部 分或全部进行转义重用。 其中, 在以太 4艮文中新增的 4艮文头选项的 格式如下: 在源 MAC地址和 VLAN之间增加一个类型字段, 用以 指示该以太报文携带有业务标识(也称业务 ID)。业务 ID在报文中的 格式可以如表一:
第一业务节点实例 16 , 用于接收控制器 12发送的第二业务路 由信息, 接收业务分发节点 14发送的第二报文; 所述第一业务节点 实例 16处理所述第二报文形成第三报文, 其中, 第一报文匹配的业 务标识所述第三报文携带所述第一报文匹配的业务标识; 第一报文 匹配的业务标识根据所述第一报文匹配的业务标识查找第二业务路 由信息, 获取第一下一跳地址, 第一下一跳地址为与所述第一报文 匹配的业务标识匹配的下一跳地址, 如果所述第一下一跳地址为可 达的地址,向拥有所述第一下一跳地址的设备发送所述第三报文。 优 选地, 第一报文匹配的业务标识所述第三报文携带所述第一报文匹 配的业务标识的方式和第二报文携带所述第一报文匹配的业务标识 的方式相同。
可选地, 第一业务节点实例 16可以为逻辑功能实体。 需要说明 的是, 通常一个业务节点实例具有一个可达的地址, 例如可达的 IP 地址或 MAC地址,这样只要第一业务节点实例具有一个可达的地址, 第一业务节点实例为一个物理实体还是逻辑实体, 本发明实施例并 不做限定。 此外, 为了方便理解业务节点实例, 我们以提供防火墙 功能的业务节点实例进行举例说明, 通常, 我们可以把防火墙功能 安装在很多服务器上, 例如虚拟机 ( VM ) 上。 这样安装有防火墙功 能的服务器都可以提供防火墙功能的业务处理, 并且安装有防火墙 功能的服务器都有不同的地址。 这样, 每个安装有防火墙功能的服 务器就可以称之为一个业务节点实例。 也就是说, 每个业务节点实 例包括一个可达的地址, 且能单独处理一种业务。 在本发明实施例 的具体实现时, 由控制器 12来选择第一业务节点实例 16来处理该 报文流。 例如, 控制器 12可以根据业务节点实例的处理能力, 业务 负载状况来选择合适的业务节点实例来处理该报文流。
可选地, 当所述第一报文为第一 IP报文, 所述第一下一跳地址 为第一下一跳 IP地址, 第一业务节点实例 16 向拥有所述第一下一 跳 I P地址的设备发送所述第三报文包括: 所述第一业务节点实例根 据所述第一下一跳 IP地址查找 ARP表以获取第一 MAC地址, 所述 第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第三报文进行以太网封装形成第一以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第一以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一 跳 IP地址的设备发送所述第三报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第三报 文中的目 的 MAC地址形成第二以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第二以太报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一 跳 MAC地址的设备发送所述第二报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 MAC地址对所述第三报文进行以太网封装形成第三以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第三以太报文。 可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下 一跳 MAC地址的设备发送所述第三报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第三报文中的目的 MAC地址形成第四以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第四以太报文。
可选地, 如果所述第一下一跳地址为不可达的 IP地址, 则所述 第一业务节点实例根据所述第三报文中的目 的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为所述目 的 IP地 址在所述路由表中匹配的下一跳 IP地址;
所述第一业务节点实例向拥有所述第二下一跳 IP 地址的设备 发送第四报文, 所述第四报文为去除所述第二报文中携带的所述第 一 艮文匹配的业务标识形成的。
如果第一业务节点实例 16处理所述第二报文形成第三报文后, 第三报文不需要再进行其他业务处理, 可选地, 在控制器 12下发的 第二业务路由信息中, 下一跳地址设置为特殊的下一跳, 例如可以 是 0.0.0.0 , 其中, 0.0.0.0用于表明第一业务节点实例 16是最后一个 处理所述第二报文的业务节点实例, 该特殊的下一跳可以是任何不 可达的 IP地址, 只要能表明第一业务节点实例 16是最后一个处理 所述第二报文的业务节点实例即可, 本发明实施例不做具体限定。
可选地, 所述第一报文为第一 IP报文, 所述第一业务节点实例 向拥有所述第二下一跳 IP地址的设备发送第四报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第四报文进行以太网封装形成第五以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第五以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一业务节点实 例向拥有所述第二下一跳 IP地址的设备发送第四报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第四报 文中的目 的 MAC地址形成第六以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第六以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,如果所述第一下一跳 MAC地址为不可达的 MAC 地址, 则所述第一业务节点实例根据所述第三报文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第三报文进行以太网封装形成第七以太报文, 所述第七以 太报文不携带所述第一报文匹配的业务标识;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第七以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC 地址, 如果所述第一下一跳 MAC 地址为不可达的 MAC地址,则所述第一业务节点实例根据所述第三报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地 址为与所述目的 IP地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例用所述第一 MAC 地址替换所述第三报 文中的目 的 MAC地址形成第八以太报文,所述第八以太报文不携带 所述第一报文匹配的业务标识; 所述第一业务节点实例向拥有所述 第一 MAC地址的设备发送所述第八以太报文。
可选地, 所述第二业务路由信息还包括控制标志信息, 所述控 制标志信息用于标识所述报文流是否已经到达最后一个业务节点实 例并需要经过正常路由转发; 所述第一业务节点实例查找所述第二 业务路由信息时, 获取匹配的控制标志信息;
如果所述匹配的控制标志信息标识为所述第二报文已经到达最 后一个业务节点实例并需要经过正常路由转发, 所述第一业务节点 实例向拥有所述第一下一跳地址的设备发送第五报文, 所述第五报 文为去除所述第三报文中携带的所述第一报文匹配的业务标识形成 的。
举例来说, 在控制器 12下发的第二业务路由信息中, 也可以通 过设置一个控制标志位, 来表明所述第二报文已经到达最后一个业 务节点实例并需要经过正常路由转发。 这样, 第一业务节点实例 16 根据所述第一报文匹配的业务标识查找所述第二业务路由信息, 获 取匹配的控制标志信息, 其中, 控制标志信息可以通过一个控制标 志位来表示, 例如当控制标志位为 0 时, 表明所述第二报文需要经 过下一个业务节点实例处理, 当控制标志位为 1 时, 表明所述第二 报文已经到达最后一个业务节点实例并需要经过正常路由转发。 具 体通过何种方式来标识控制标志信息, 本发明实施例不做具体限定, 只要能表明所述第二报文已经到达最后一个业务节点实例处理并需 要经过正常路由转发即可。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一跳 地址的设备发送第五报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第二 MAC地址作为目的 MAC地 址对所述第五报文进行以太网封装形成第九以太报文;
所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第九以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一 跳地址的设备发送第五报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第二 MAC 地址替换所述第五报 文中的目 的 MAC地址形成第十以太报文;
所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第十以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳地 址的设备发送第五报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 地址对所述第五报文进行以太网封装形成第十一以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十一以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳 地址的设备发送第五报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第三报文中的目的 MAC地址形成第十二以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十二以太报文。 为了便于理解, 举例说明, 如图 2所示, 图 2是本发明实施例 应用于数据中心交换网络的系统示意图。 数据中心交换网络 20对连 接在其上的控制器 21 , 业务分发节点 22 , 业务节点实例进行 2层路 由。 其中, 业务节点实例 1 , 业务节点实例 2和业务节点实例 3 均 提供防火墙处理。 业务节点实例 4和业务节点实例 5均提供 NAT处 理。 例如: 有一个用户的 ^艮文流需要进行防火墙和 NAT处理。 控制 器 21事先为该用户发来的报文流分配业务处理策略, 控制器选择业 务节点实例 1提供防火墙处理,选择业务节点实例 5提供 NAT处理, 生成业务 ID。 需要说明的是, 业务 ID的表述方式不限, 以 1为例, 其中 1表明该报文流需要进行防火墙和 NAT处理, 且表明先通过业 务节点实例 1进行防火墙处理, 然后通过业务节点实例 5进行 NAT 处理。 控制器 21 会为业务分发节点 22 , 业务节点实例 1 和业务节 点实例 5分别生成业务路由表。 为了方便表述, 控制器 21为业务分 发节点 22生成的业务路由表称为第一业务路由表; 控制器 21 为业 务节点实例 1生成的业务路由表称为第二业务路由表; 控制器 21为 业务节点实例 5 生成的业务路由表称为第三业务路由表。 其中, 第 一业务路由表包括: 流标识, 业务标识 1 和第一下一跳地址, 其中 流标识为报文流的五元组信息; 举例来说, 第一下一跳地址为业务 节点实例 1 的 IP地址, 例如 1.1.1.2。 第二业务路由表包括业务标识 1和第二下一跳地址, 举例来说, 第二下一跳地址为业务节点实例 5 的 IP地址, 例如 1.1.1.1。 第三业务路由表包括业务标识 1和第三下 一跳地址。举例来说,第三下一跳地址为特殊下一跳 IP地址为 0.0.0.0 , 用于表明业务节点实例 5 为处理所述报文流的最后一个业务节点实 例。 这样, 第一业务路由表的格式可以如下:
第二业务路由表的格式可以如下:
第三业务路由表的格式可以如下: 业务标识 下一跳 IP地址
1 0.0.0.0
这样, 业务分发节点 22接收该用户发来的第一报文, 业务分发 节点 22获取报文中的五元组信息, 根据该五元组信息查找第一业务 路由表获得匹配的业务标识和下一跳 IP地址, 在该实施例中, 匹配 的业务标识为 1 , 下一跳 IP地址为 1.1.1.2 , 则业务分发节点 22 向 拥有下一跳 IP地址为 1.1.1.2 的业务节点实例 1 发送第二^艮文, 所 述第二报文为将所述匹配的业务标识添加到所述第一报文中形成的。 业务节点实例 1 对所述第二报文进行防火墙处理形成第三报文, 其 中所述第三报文携带所述第一报文匹配的业务标识。 业务节点实例 1 根据该业务标识查找第二业务路由表获得匹配的下一跳 IP 地址 1.1.1.1 ,业务节点实例 1向拥有所述 IP地址为 1.1.1.1 的业务节点实 例 5发送所述第三报文。 业务节点实例 5对所述第三报文进行 NAT 处理, 业务节点实例 5 根据该业务标识查找第三业务路由表确定匹 配的下一跳 IP地址 0.0.0.0 , 表明业务节点实例 5为处理所述第三4艮 文的最后一个业务节点实例, 则业务节点实例 5 对所述第三报文进 行 NAT 处理形成第四报文, 根据所述第四报文的目的 IP地址查找 路由表, 获取第一下一跳 IP地址, 所述第一下一跳 IP地址为所述 目的 IP地址匹配的下一跳 IP地址, 业务节点实例 5 向拥有所述第 一下一跳 IP地址的设备发送所述第四报文。
在本发明实施例提供的报文处理系统中, 控制器向业务分发节 点和业务节点实例分别发送业务路由信息,所述业务路由信息包括 流标识, 业务标识和下一跳地址; 其中, 所述流标识用于识别 ^艮文 流, 所述业务标识用于标识处理所述报文流的业务节点实例的序列 这样, 业务分发节点和业务节点实例分别根据接收到的业务路由信 息来处理报文, 实现了控制器对业务分发节点和业务节点实例的统 一管理。 进一步地, 业务分发节点根据业务路由信息对接收到的报 文添加业务标识, 将添加业务标识的报文发送给业务节点实例, 以 使得业务节点实例对所述添加了业务标识的报文处理后, 可以根据 业务标识查找业务路由信息, 将处理后的报文流转发给下一个业务 节点实例或者按照路由表进行正常转发,实现了对报文流的业务处 理。
实施例二:
本发明实施例提供一种报文处理方法, 如图 3所示, 图 3是本 发明实施例提供的报文处理方法的流程图。
302、 业务分发节点接收控制器发来的业务路由信息, 所述业务 路由信息包括: 流标识, 业务标识和下一跳地址, 其中所述流标识 用于识别报文流; 所述业务标识用于标识处理所述报文流的业务节 点实例的序列, 所述下一跳地址用于标识处理所述^艮文流的业务节 点实例。
可选地, 控制器可以基于报文流来分配业务处理策略, 控制器 根据报文流对应的业务处理策略, 下发业务路由信息给业务分发节 点。 其中, 具有相同业务标识 ID的报文流通过相同的业务节点实例 处理, 且通过的业务节点实例处理的顺序相同。 进一步地, 在本发 明实施例的具体实现时, 如果同一报文流中的两个不同的报文分配 了两个不同的业务 ID , 则意味着虽然所述两个不同的报文所需进行 的业务处理相同, 但是所述报文流却由不同的业务节点实例进行处 理, 这样可以实现报文处理的负载均衡。 例如都是先经过防火墙处 理, 再经过 NAT设备处理, 但是所述两个报文却由不同的业务节点 实例进行处理, 这样可以实现 文处理的负载均衡。 可选地, 可以 对4艮文流的 4艮文进行细分来实现对同一 4艮文流处理的负载均衡。 例 如, 以相同的源地址和相同的目的地址来标识同一 4艮文流, 为了对 该同一报文流的报文处理实现负载均衡, 可以根据协议号对该同一 报文流的报文进行细分, 假设为该同一报文流中协议号大于 50的报 文分配一个业务 ID , 用于标识该 文先经过防火墙实例 1处理, 再 经过 NAT设备实例 1 处理。 为该同一报文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该^艮文先经过防火墙实例 2处 理, 再经过 NAT设备实例 2处理。 这样有助于实现同一 文流处理 的负载均衡。 可选地, 如果不同的 4艮文流, 例如 4艮文流 1 和 4艮文流 2需要进行相同的业务处理, 例如都是先经过 NAT设备处理, 再经 过防火墙处理, 可以为 文流 1 的^艮文和 文流 2的^艮文分配相同 的业务 ID。 当然, 也可以为^艮文流 1 的^艮文和 文流 2的^艮文分配 不同的业务 ID , 有助于实现负载均衡。
304、 所述业务分发节点接收第一报文。
举例来说,通常第一报文可以为 IP报文或以太报文,第一报文可 以是从用户侧设备发来的, 也可以是从网络侧设备发来的,本发明实 施例对此不做限定。
306、 所述业务分发节点根据所述第一报文获取第一流标识, 根 据第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹配 的下一跳 IP地址;
举例来说, 可以通过源地址, 目的地址, 源端口, 目 的端口, 协议号中的至少一种信息来标识^艮文流, 所以流标识可以包括所述 第一报文的源地址, 目 的地址, 源端口, 目 的端口和协议号中的至 少一个。 举例来说, 通过所述第一报文的五元组信息 (源地址, 目 的地址, 源端口, 目 的端口和协议号) 来标识 文流。 可选地, 所 述第一流标识可以是所述第一报文的五元组信息, 也可以是根据所 述第一报文的五元组信息通过一定的算法得到的数值, 例如通过哈 希 ( hash ) 算法所得到的数值。 当业务分发节点 14接收到第一报文 时, 如果第一业务路由信息中的流标识是五元组信息, 则业务分发 节点 14从第一报文中获取五元组信息得到所述第一流标识。 如果第 一业务路由信息中的流标识是五元组信息通过特定的算法得到的数 值, 则业务分发节点 14从第一报文中获取所述第一报文的五元组信 息, 对所述第一报文的五元组信息进行该特定的算法运算得到的数 值, 该得到的数值为所述第一流标识。
308、所述业务分发节点向拥有所述匹配的下一跳地址的业务节 点实例发送第二报文, 所述第二报文为将所述匹配的业务标识添加 到所述第一报文中形成的。
所述第二报文为将所述匹配的业务标识添加到所述第一报文中 形成的。 举例来说, 所述第二^艮文可以为将匹配的业务标识添加到 所述第一4艮文的 4艮文头中形成的, 或者也可以将匹配的业务标识添 加到所述第一报文的净荷中形成的。 以第一报文为第一以太报文举 例来说, 所述匹配的业务标识可以添加到所述以太^艮文新增的 ^艮文 头选项中, 也可以添加到所述以太报文中的 IP报文头中, 也可以对 以太报文头中的现有字段的重用, 也就是更改现有字段的含义来表 示所述以太 文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network ,筒称为 VLAN )或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签 交换 ( Multi-protocol Label Switching , 筒称为 MPLS ) 中的标签 ( LABEL ) 进行重用, 也可以对源 MAC 地址的部分或全部进行转 义重用。 其中, 在以太报文中新增的报文头选项的格式如下: 在源 MAC地址和 VLAN之间增加一个类型字段,用以指示该以太4艮文携 带有业务标识(也称业务 ID)。 业务 ID在报文中的格式可以如表一:
本发明实施例提供的报文处理方法, 业务分发节点接收控制器 发送的业务路由信息,所述业务路由信息包括流标识, 业务标识和下 一跳地址; 其中, 所述流标识用于识别 文流, 所述业务标识用于 标识处理所述报文流的业务节点实例的序列, 这样, 业务分发节点 根据将接收到的报文添加业务标识, 并将携带所述业务标识的报文 发送给业务节点实例, 以使得业务节点实例对所述添加了业务标识 的报文处理后, 可以根据业务标识查找业务路由信息将处理后的报 文流转发给下一个业务节点实例或者按照路由表进行正常转发,实 现了对报文流的业务处理。
实施例三:
本发明实施例提供一种报文处理方法,如图 4所示,图 4是本发明 实施例提供的报文处理方法的另一流程图。
402、 第一业务节点实例接收控制器发送的业务路由信息, 所述 业务路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用 于标识处理所述报文流的业务节点实例的序列;
在本发明实施例的具体实现时, 控制器可以基于报文流来分配 业务处理策略, 控制器根据报文流对应的业务处理策略, 下发业务 路由信息给业务节点实例。 其中, 具有相同业务 ID的报文流通过相 同的业务节点实例处理, 且通过的业务节点实例处理的顺序相同。 举例来说, 业务 ID= 1 的报文先由第一业务节点实例 16进行处理, 再由第二业务节点实例 18进行处理。 而业务 ID=2的报文则先由第 二业务节点实例 18进行处理,再由第一业务节点实例 16进行处理。 可选地, 如果同一 艮文流中的两个不同的 4艮文分配了两个不同的业 务 ID ,则意味着虽然所述两个不同的报文所需进行的业务处理相同, 例如都是先经过防火墙处理, 再经过 NAT设备处理, 但是所述两个 报文却由不同的业务节点实例进行处理, 这样可以实现报文处理的 负载均衡。 可选地, 可以对 4艮文流的 4艮文进行细分来实现对同一 4艮 文流处理的负载均衡。 例如, 以相同的源地址和相同的目 的地址来 标识同一 4艮文流, 为了对该同一4艮文流的 4艮文处理实现负载均衡, 可以根据协议号对该同一报文流的报文进行细分, 假设为该同一报 文流中协议号大于 50 的 ^艮文分配一个业务 ID , 用于标识该 文先 经过防火墙实例 1处理, 再经过 NAT设备实例 1处理。 为该同一报 文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该 报文先经过防火墙实例 2处理, 再经过 NAT设备实例 2处理。 这样 有助于实现同一报文流处理的负载均衡。 可选地, 如果不同的报文 流, 例如 文流 1 和^艮文流 2需要进行相同的业务处理, 例如都是 先经过 NAT设备处理, 再经过防火墙处理, 可以为报文流 1 的报文 和报文流 2的报文分配相同的业务 ID。 当然, 也可以为报文流 1 的 4艮文和 4艮文流 2的 4艮文分配不同的业务 ID , 有助于实现负载均衡。
第一业务节点实例可以为逻辑功能实体, 需要说明的是, 通常 一个业务节点实例具有一个可达的地址,例如可达的 IP地址或 MAC 地址, 这样只要第一业务节点实例具有一个可达的地址, 第一业务 节点实例为一个物理实体还是逻辑实体, 本发明实施例并不做限定。 此外, 为了方便理解业务节点实例, 我们以提供防火墙功能的业务 节点实例进行举例说明, 通常, 我们可以把防火墙功能安装在很多 服务器上, 例如虚拟机 VM 上。 这样安装有防火墙功能的服务器都 可以提供防火墙功能的业务处理, 并且安装有防火墙功能的服务器 都有不同的地址。 这样, 每个安装有防火墙功能的服务器就可以称 之为一个业务节点实例。 也就是说, 每个业务节点实例包括一个可 达的地址,且能单独处理一种业务。在本发明实施例的具体实现时, 由控制器来确定选择第一业务节点实例来处理该报文流。 例如, 控 制器可以根据业务节点实例的处理能力, 业务负载状况来选择合适 的业务节点实例来处理该报文流。
404、 所述第一业务节点实例接收第一报文, 其中所述第一报文 携带所述第一报文匹配的业务标识;
举例来说,所述第一业务节点实例可以接收业务分发节点发来 的第一报文,也可以是接收其他业务节点实例发来的第一报文。
举例来说, 业务分发节点可以将所述第一报文匹配的业务标识 携带在所述第一报文的报文头中, 也可以将匹配的业务标识携带在 所述第一报文的净荷中。。 以第一报文为第一以太报文举例来说, 所 述匹配的业务标识可以添加到所述以太4艮文新增的 4艮文头选项中, 也可以添加到所述以太4艮文中的 IP · ^艮文头中, 也可以对以太 4艮文头 中的现有字段的重用, 也就是更改现有字段的含义来表示所述以太
4艮文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network , 筒称为 VLAN ) 或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签交换 ( Multi-protocol Label Switching ,筒称为 MPLS )中的标签 ( LABEL ) 进行重用,也可以对源 MAC地址的部分或全部进行转义重用。其中, 在以太 文中新增的 文头选项的格式如下: 在源 MAC 地址和 VLAN 之间增加一个类型字段, 用以指示该以太报文携带有业务标 识(也称业务 ID)。 业务 ID在^艮文中的格式可以如表一: 目的 MAC
源 MAC地址 类型 VLAN 业务 ID IP报文 地址
406、 所述第一业务节点实例处理所述第一报文形成第二报文, 其中所述第二报文携带所述第一报文匹配的业务标识;
优选地, 所述第二报文携带所述第一报文匹配的业务标识的方 式和第一报文携带所述第一报文匹配的业务标识的方式相同。 其中 第一业务节点实例如何处理所述第一报文属于现有技术, 例如, 第 一业务节点实例对所述第一>¾文进行 NAT处理,或进行防火墙处理 , 本发明不再赘述。
408、所述第一业务节点实例根据所述第一报文匹配的业务标识 查找所述业务路由信息, 获取第一下一跳地址, 第一下一跳地址为 与所述第一 文匹配的业务标识匹配的下一跳地址。
410、 如果所述第一下一跳地址为可达的地址, 所述第一业务节 点实例向拥有所述第一下一跳地址的设备发送所述第二报文。
可选地, 当所述第一报文为第一 IP报文, 所述第一下一跳地址 为第一下一跳 IP地址, 第一业务节点实例 16 向拥有所述第一下一 跳 I P地址的设备发送所述第二报文包括: 所述第一业务节点实例根 据所述第一下一跳 IP地址查找 ARP表以获取第一 MAC地址, 所述 第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第二报文进行以太网封装形成第一以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第一以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一 跳 IP地址的设备发送所述第二报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第二报 文中的目 的 MAC地址形成第二以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第二以太报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一 跳 MAC地址的设备发送所述第三报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 MAC地址对所述第二报文进行以太网封装形成第三以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第三以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下 一跳 MAC地址的设备发送所述第二报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第二报文中的目的 MAC地址形成第四以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第四以太报文。
可选地, 如果所述第一下一跳地址为不可达的 IP地址, 则所述 第一业务节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为所述目 的 IP地 址在所述路由表中匹配的下一跳 IP地址;
所述第一业务节点实例向拥有所述第二下一跳 IP 地址的设备 发送第三报文, 所述第三报文为去除所述第二报文中携带的所述第 一 艮文匹配的业务标识形成的。
如果第一业务节点实例 16处理所述第一报文形成第二报文后, 第三报文不需要再进行其他业务处理, 可选地, 在控制器 12下发的 第二业务路由信息中, 下一跳地址设置为特殊的下一跳, 例如可以 是 0.0.0.0 , 其中, 0.0.0.0用于表明第一业务节点实例 16是最后一个 处理所述第一报文的业务节点实例, 该特殊的下一跳可以是任何不 可达的 IP地址, 只要能表明第一业务节点实例 16是最后一个处理 所述第一报文的业务节点实例即可, 本发明实施例不做具体限定。
可选地, 所述第一报文为第一 IP报文, 所述第一业务节点实例 向拥有所述第二下一跳 IP地址的设备发送第三报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第三报文进行以太网封装形成第五以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第五以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一业务节点实 例向拥有所述第二下一跳 I P地址的设备发送第三报文包括:
所述第一业务节点实例根据所述第二下一跳 IP 地址查找 ARP 表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第一 MAC 地址替换所述第三报 文中的目 的 MAC地址形成第六以太报文;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第六以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,如果所述第一下一跳 MAC地址为不可达的 MAC 地址, 则所述第一业务节点实例根据所述第二报文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第二报文进行以太网封装形成第七以太报文, 所述第七以 太报文不携带所述第一报文匹配的业务标识;
所述第一业务节点实例向拥有所述第一 MAC 地址的设备发送 所述第七以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC 地址, 如果所述第一下一跳 MAC 地址为不可达的 MAC地址,则所述第一业务节点实例根据所述第二报文中的目 的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地 址为与所述目的 IP地址匹配的下一跳 IP地址;
所述第一业务节点实例查找 ARP表以获取第一 MAC地址, 所 述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 所述第一业务节点实例用所述第一 MAC 地址替换所述第二报 文中的 MAC地址形成第八以太报文,所述第八以太报文不携带所述 第一报文匹配的业务标识; 所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所述第八以太报文。
可选地, 所述业务路由信息还包括控制标志信息, 所述控制标 志信息用于标识所述报文流是否已经到达最后一个业务节点实例并 需要经过正常路由转发; 所述第一业务节点实例查找所述业务路由 信息时, 获取匹配的控制标志信息;
如果所述匹配的控制标志信息标识为所述第一报文已经到达最 后一个业务节点实例并需要经过正常路由转发, 所述第一业务节点 实例向拥有所述第一下一跳地址的设备发送第四报文, 所述第四报 文为去除所述第三报文中携带的所述第一报文匹配的业务标识形成 的。
举例来说, 在控制器 12下发的第二业务路由信息中, 也可以通 过设置一个控制标志位, 来表明所述第一报文已经到达最后一个业 务节点实例并需要经过正常路由转发。 这样, 第一业务节点实例 16 根据所述第一报文匹配的业务标识查找所述业务路由信息, 获取匹 配的控制标志信息, 其中, 控制标志信息可以通过一个控制标志位 来表示, 例如当控制标志位为 0 时, 表明所述第一报文需要经过下 一个业务节点实例处理, 当控制标志位为 1 时, 表明所述第一报文 已经到达最后一个业务节点实例并需要经过正常路由转发。 具体通 过何种方式来标识控制标志信息, 本发明实施例不做具体限定, 只 要能表明所述第一报文已经到达最后一个业务节点实例并需要经过 正常路由转发即可。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一跳 地址的设备发送第四报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例将所述第二 MAC地址作为目的 MAC地 址对所述第四报文进行以太网封装形成第九以太报文;
所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第九以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述第一业务节点实例向拥有所述第一下一 跳地址的设备发送第四报文包括:
所述第一业务节点实例根据所述第一下一跳 IP 地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址;
所述第一业务节点实例用所述第二 MAC 地址替换所述第四报 文中的目 的 MAC地址形成第十以太报文;
所述第一业务节点实例向拥有所述第二 MAC 地址的设备发送 所述第十以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳地 址的设备发送第四报文包括:
所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 地址对所述第四报文进行以太网封装形成第十一以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十一以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述第一业务节点实例向拥有所述第一下一跳 地址的设备发送第四报文包括:
所述第一业务节点实例用所述第一下一跳 MAC 地址替换所述 第二报文中的目的 MAC地址形成第十二以太报文;
所述第一业务节点实例向拥有所述第一下一跳 MAC 地址的设 备发送所述第十二以太报文。
本发明实施例提供的报文处理方法, 业务节点实例携带业务标 识的报文, 处理所述报文, 并根据所述业务标识查找业务路由信息 将处理后的报文转发给下一个业务节点实例或者按照路由表进行正 常转发,实现了对报文流的业务处理。
实施例四:
本发明实施例提供一种业务分发节点, 如图 5所示, 图 5为本 发明实施例提供的业务分发节点的装置示意图。
一种业务分发节点, 包括: 输入电路 51 , 处理器 52 和输出电 路 53 ;
所述输入电路 51 , 用于接收控制器发来的业务路由信息和接收 4艮文; 其中, 所述业务路由信息包括: 流标识, 业务标识和下一跳 地址, 所述流标识用于识别 文流; 所述业务标识用于标识处理所 述4艮文流的业务节点实例的序列, 所述下一跳地址用于标识处理所 述报文流的业务节点实例;
可选地, 控制器可以基于报文流来分配业务处理策略, 控制器 根据报文流对应的业务处理策略, 下发业务路由信息给业务分发节 点。 其中, 具有相同业务标识 ID的报文流通过相同的业务节点实例 处理, 且通过的业务节点实例处理的顺序相同。 进一步地, 在本发 明实施例的具体实现时, 如果同一报文流中的两个不同的报文分配 了两个不同的业务 ID , 则意味着虽然所述两个不同的报文所需进行 的业务处理相同, 但是所述报文流却由不同的业务节点实例进行处 理, 这样可以实现报文处理的负载均衡。 例如都是先经过防火墙处 理, 再经过 NAT设备处理, 但是所述两个报文却由不同的业务节点 实例进行处理, 这样可以实现 文处理的负载均衡。 可选地, 可以 对4艮文流的 4艮文进行细分来实现对同一 4艮文流处理的负载均衡。 例 如, 以相同的源地址和相同的目的地址来标识同一 4艮文流, 为了对 该同一报文流的报文处理实现负载均衡, 可以根据协议号对该同一 报文流的报文进行细分, 假设为该同一报文流中协议号大于 50的报 文分配一个业务 ID , 用于标识该 文先经过防火墙实例 1处理, 再 经过 NAT设备实例 1 处理。 为该同一报文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该^艮文先经过防火墙实例 2处 理, 再经过 NAT设备实例 2处理。 这样有助于实现同一 ^艮文流处理 的负载均衡。 可选地, 如果不同的 4艮文流, 例如 4艮文流 1 和 4艮文流 2需要进行相同的业务处理, 例如都是先经过 NAT设备处理, 再经 过防火墙处理, 可以为 文流 1 的^艮文和 文流 2的^艮文分配相同 的业务 ID。 当然, 也可以为^艮文流 1 的^艮文和 文流 2的^艮文分配 不同的业务 ID , 有助于实现负载均衡。
所述输入电路 51 , 还用于接收第一报文;
举例来说,通常第一报文可以为 IP报文或以太报文,第一报文可 以是从用户侧设备发来的, 也可以是从网络侧设备发来的,本发明实 施例对此不做限定。
所述处理器 52 , 用于根据所述第一报文获取第一流标识, 根据 所述第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹 配的下一跳地址; 触发所述输出电路向拥有所述匹配的下一跳地址 对应的第一业务节点实例发送第二报文, 所述第二报文为将所述匹 配的业务标识添加到所述第一 文中形成的; 举例来说, 可以通过源地址, 目的地址, 源端口, 目 的端口, 协议号中的至少一种信息来标识^艮文流, 所以流标识可以包括所述 第一报文的源地址, 目 的地址, 源端口, 目 的端口和协议号中的至 少一个。 举例来说, 通过所述第一报文的五元组信息 (源地址, 目 的地址, 源端口, 目 的端口和协议号) 来标识 文流。 可选地, 所 述第一流标识可以是所述第一报文的五元组信息, 也可以是根据所 述第一报文的五元组信息通过一定的算法得到的数值, 例如通过哈 希 ( hash ) 算法所得到的数值。 当业务分发节点 14接收到第一报文 时, 如果第一业务路由信息中的流标识是五元组信息, 则业务分发 节点 14从第一报文中获取五元组信息得到所述第一流标识。 如果第 一业务路由信息中的流标识是五元组信息通过特定的算法得到的数 值, 则业务分发节点 14从第一报文中获取所述第一报文的五元组信 息, 对所述第一报文的五元组信息进行该特定的算法运算得到的数 值, 该得到的数值为所述第一流标识。
输出电路 53 , 用于向拥有所述匹配的下一跳地址的第一业务节 点实例发送所述第二报文。
所述第二报文为将所述匹配的业务标识添加到所述第一报文中 形成的。 举例来说, 所述第二^艮文可以为将匹配的业务标识添加到 所述第一4艮文的 4艮文头中形成的, 或者也可以将匹配的业务标识添 加到所述第一报文的净荷中形成的。 以第一报文为第一以太报文举 例来说, 所述匹配的业务标识可以添加到所述以太^艮文新增的 ^艮文 头选项中, 也可以添加到所述以太报文中的 IP报文头中, 也可以对 以太报文头中的现有字段的重用, 也就是更改现有字段的含义来表 示所述以太 文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network ,筒称为 VLAN )或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签 交换 ( Multi-protocol Label Switching , 筒称为 MPLS ) 中的标签 ( LABEL ) 进行重用, 也可以对源 MAC 地址的部分或全部进行转 义重用。 其中, 在以太报文中新增的报文头选项的格式如下: 在源 MAC地址和 VLAN之间增加一个类型字段,用以指示该以太4艮文携 带有业务标识(也称业务 ID)。 业务 ID在报文中的格式可以如表一:
本发明实施例提供的业务分发节点, 业务分发节点根据业务路 由信息对接收到的报文添加业务标识, 以使得业务节点实例对所述 添加了业务标识的报文处理后, 可以根据业务标识查找业务路由信 息对处理后的报文流转发给下一个业务节点实例或者按照路由表进 行正常转发,实现了对报文流的业务处理。 实施例五
本发明实施例提供一种业务节点实例, 如图 6所示, 图 6是本 发明实施例提供的业务节点实例的装置示意图。
一种业务节点实例, 包括输入电路 61 , 处理器 62 和输出电路
63 ;
所述输入电路 61 , 用于接收控制器发送的业务路由信息, 所述 业务路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用 于标识处理所述报文流的业务节点实例的序列;
在本发明实施例的具体实现时, 控制器可以基于报文流来分配 业务处理策略, 控制器根据报文流对应的业务处理策略, 下发业务 路由信息给业务节点实例。 其中, 具有相同业务 ID的报文流通过相 同的业务节点实例处理, 且通过的业务节点实例处理的顺序相同。 举例来说, 业务 ID= 1 的报文先由第一业务节点实例 16进行处理, 再由第二业务节点实例 18进行处理。 而业务 ID=2的报文则先由第 二业务节点实例 18进行处理,再由第一业务节点实例 16进行处理。 可选地, 如果同一 艮文流中的两个不同的 4艮文分配了两个不同的业 务 ID ,则意味着虽然所述两个不同的报文所需进行的业务处理相同, 例如都是先经过防火墙处理, 再经过 NAT设备处理, 但是所述两个 报文却由不同的业务节点实例进行处理, 这样可以实现报文处理的 负载均衡。 可选地, 可以对 4艮文流的 4艮文进行细分来实现对同一 4艮 文流处理的负载均衡。 例如, 以相同的源地址和相同的目 的地址来 标识同一 艮文流, 为了对该同一 4艮文流的 艮文处理实现负载均衡, 可以根据协议号对该同一报文流的报文进行细分, 假设为该同一报 文流中协议号大于 50 的 ^艮文分配一个业务 ID , 用于标识该 文先 经过防火墙实例 1处理, 再经过 NAT设备实例 1处理。 为该同一报 文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该 报文先经过防火墙实例 2处理, 再经过 NAT设备实例 2处理。 这样 有助于实现同一报文流处理的负载均衡。 可选地, 如果不同的报文 流, 例如 文流 1 和^艮文流 2需要进行相同的业务处理, 例如都是 先经过 NAT设备处理, 再经过防火墙处理, 可以为报文流 1 的报文 和报文流 2的报文分配相同的业务 ID。 当然, 也可以为报文流 1 的 4艮文和 4艮文流 2的 4艮文分配不同的业务 ID , 有助于实现负载均衡。
第一业务节点实例可以为逻辑功能实体, 需要说明的是, 通常 一个业务节点实例具有一个可达的地址,例如可达的 IP地址或 MAC 地址, 这样只要第一业务节点实例具有一个可达的地址, 第一业务 节点实例为一个物理实体还是逻辑实体, 本发明实施例并不做限定。 此外, 为了方便理解业务节点实例, 我们以提供防火墙功能的业务 节点实例进行举例说明, 通常, 我们可以把防火墙功能安装在很多 服务器上, 例如虚拟机 VM 上。 这样安装有防火墙功能的服务器都 可以提供防火墙功能的业务处理, 并且安装有防火墙功能的服务器 都有不同的地址。 这样, 每个安装有防火墙功能的服务器就可以称 之为一个业务节点实例。 也就是说, 每个业务节点实例包括一个可 达的地址,且能单独处理一种业务。在本发明实施例的具体实现时, 由控制器来确定选择第一业务节点实例来处理该报文流。 例如, 控 制器可以根据业务节点实例的处理能力, 业务负载状况来选择合适 的业务节点实例来处理该报文流。
所述输入电路 61 , 还用于接收发来的第一报文, 其中所述第一 报文携带所述第一报文匹配的业务标识; 举例来说,所述输入电路 61还用于接收业务分发节点发来的第 一报文或者接收其他业务节点实例发来的第一报文;
举例来说, 业务分发节点可以将所述第一报文匹配的业务标识 携带在所述第一报文的报文头中, 也可以将匹配的业务标识携带在 所述第一报文的净荷中。 以第一报文为第一以太报文举例来说, 所 述匹配的业务标识可以添加到所述以太 艮文新增的 艮文头选项中, 也可以添加到所述以太 艮文中的 IP · ^艮文头中, 也可以对以太 艮文头 中的现有字段的重用, 也就是更改现有字段的含义来表示所述以太
4艮文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network , 筒称为 VLAN ) 或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签交换 ( Multi-protocol Label Switching ,筒称为 MPLS )中的标签 ( LABEL ) 进行重用,也可以对源 MAC地址的部分或全部进行转义重用。其中, 在以太 文中新增的 文头选项的格式如下: 在源 MAC 地址和 VLAN 之间增加一个类型字段, 用以指示该以太报文携带有业务标 识(也称业务 ID)。 业务 ID在^艮文中的格式可以如表一: 所述处理器 62 , 用于处理所述第一报文形成第二报文, 其中所 述第二报文携带所述第一报文匹配的业务标识; 根据所述第一报文 匹配的业务标识查找所述业务路由信息, 获取第一下一跳地址, 第 一下一跳地址为与所述第一 文匹配的业务标识匹配的下一跳地址; 如果所述第一下一跳地址为可达的地址, 触发所述输出电路向拥有 所述第一下一跳地址的设备发送第二报文;
优选地, 所述第二报文携带所述第一报文匹配的业务标识的方 式和第一报文携带所述第一报文匹配的业务标识的方式相同。 其中 第一业务节点实例如何处理所述第一报文属于现有技术, 例如, 第 一业务节点实例对所述第一>¾文进行 NAT处理,或进行防火墙处理, 本发明不再赘述。
所述输出电路 63 , 用于向拥有所述第一下一跳地址的设备发送 所述第二报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址; 所述处理器触发所述输出电路向拥有所述第一 下一跳地址的设备发送第二报文包括:
所述处理器根据所述第一下一跳 IP地址查找 ARP表以获取第 一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹配 的 MAC地址;
所述处理器将所述第一 MAC地址作为目 的 MAC地址对所述第 二报文进行以太网封装形成第一以太报文;
所述处理器触发所述输出电路向拥有所述第一 MAC 地址的设 备发送所述第一以太报文;
相应地, 所述输出电路用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述输出电路用于向拥有所述第一 MAC 地址的设备发送所述 第一以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述处理器触发所述输出电路向拥有所述第 一下一跳地址的设备发送第二报文包括:
所述处理器根据所述第一下一跳 IP地址查找 ARP表以获取第 一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹配 的 MAC地址;
所述处理器用所述第一 MAC 地址替换所述第二报文中的目的 MAC地址形成第二以太报文;
所述处理器触发所述输出电路向拥有所述第一 MAC 地址的设 备发送所述第二以太报文;
相应地, 所述输出电路用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括: 所述输出电路用于向拥有所述第一 MAC 地址的设备发送所述 第二以太报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 MAC地址,所述处理器触发所述输出电路向拥有所述第 一下一跳地址的设备发送第二报文包括:
所述处理器将所述第一下一跳 MAC地址作为目的 MAC地址对 所述第二报文进行以太网封装形成第三以太报文;
所述处理器触发所述输出电路向拥有所述第一下一跳 MAC 地 址的设备发送所述第三以太报文;
相应地, 所述输出电路用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述输出电路用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第三以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 MAC地址,所述处理器触发所述输出电路向拥有所述 第一下一跳地址的设备发送第二报文包括:
所述处理器用所述第一下一跳 MAC 地址替换所述第二报文中 的目 的 MAC地址形成第四以太报文;
所述处理器触发所述输出电路向拥有所述第一下一跳 MAC 地 址的设备发送所述第四以太报文;
相应地, 所述输出电路用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述输出电路用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第四以太报文。
可选地, 所述处理器还用于: 如果所述第一下一跳地址为不可 达的 IP地址, 则根据所述第二报文中的目的 IP地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为所述目 的 IP地 址在所述路由表中匹配的下一跳 IP地址; 触发所述输出电路向拥有 所述第二下一跳 IP地址的设备发送第三报文, 所述第三报文为去除 所述第二报文中携带的所述第一报文匹配的业务标识形成的; 相应地, 所述输出电路还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文。
如果第一业务节点实例 16处理所述第一报文形成第二报文后, 第三报文不需要再进行其他业务处理, 可选地, 在控制器 12下发的 第二业务路由信息中, 下一跳地址设置为特殊的下一跳, 例如可以 是 0.0.0.0 , 其中, 0.0.0.0用于表明第一业务节点实例 16是最后一个 处理所述第一报文的业务节点实例, 该特殊的下一跳可以是任何不 可达的 IP地址, 只要能表明第一业务节点实例 16是最后一个处理 所述第一报文的业务节点实例即可, 本发明实施例不做具体限定。
可选地, 所述第一报文为第一 IP报文, 所述处理器触发所述输 出电路向拥有所述第二下一跳 IP地址的设备发送第三报文包括: 所述处理器根据所述第二下一跳 IP地址查找 ARP表以获取第 一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹配 的 MAC地址;
所述处理器将所述第一 MAC地址作为目 的 MAC地址对所述第 三报文进行以太网封装形成第五以太报文;
所述处理器触发所述输出电路向拥有所述第一 MAC 地址的设 备发送所述第五以太报文;
相应地, 所述输出电路还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述输出电路还用于向拥有所述第一 MAC 地址的设备发送所 述第五以太报文。
可选地, 所述第一报文为第一以太报文, 所述处理器触发所述 输出电路向拥有所述第二下一跳 IP地址的设备发送第三报文包括: 所述处理器根据所述第二下一跳 IP地址查找 ARP表以获取第 一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹配 的 MAC地址;
所述处理器用所述第一 MAC 地址替换所述第三报文中的目的 MAC地址形成第六以太报文;
所述处理器触发所述输出电路向拥有所述第一 MAC 地址的设 备发送所述第六以太报文;
相应地, 所述输出电路还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述输出电路向拥有所述第一 MAC 地址的设备发送所述第六 以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址, 所述处理器还用于: 如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC 地址; 将所述第一 MAC地址作为目的 MAC地址对所述第二 报文进行以太网封装形成第七以太报文, 所述第七以太报文不携带 所述第一报文匹配的业务标识; 触发所述输出电路向拥有所述第一 MAC地址的设备发送所述第七以太报文;
相应地, 所述输出电路还用于向拥有所述第一 MAC 地址的设 备发送所述第七以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述处理器还用于:如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC 地址; 用所述第一 MAC地址替换所述第二报文中的 MAC地 址形成第八以太报文, 所述第八以太报文不携带所述第一报文匹配 的业务标识;触发所述输出电路向拥有所述第一 MAC地址的设备发 送所述第八以太报文; 相应地, 所述输出电路还用于向拥有所述第一 MAC 地址的设 备发送所述第八以太报文。
可选地, 所述业务路由信息还包括控制标志信息, 所述控制标 志信息用于标识所述报文流是否已经到达最后一个业务节点实例并 需要经过正常路由转发; 所述处理器, 还用于: 查找所述业务路由 信息时, 获取匹配的控制标志信息; 如果所述匹配的控制标志信息 标识为所述第一报文已经到达最后一个业务节点实例并需要经过正 常路由转发, 触发所述输出电路向拥有所述第一下一跳地址的设备 发送第四报文, 所述第四报文为去除所述第二报文中携带的所述第 一 艮文匹配的业务标识形成的;
举例来说, 在控制器 12下发的第二业务路由信息中, 也可以通 过设置一个控制标志位, 来表明所述第一报文已经到达最后一个业 务节点实例并需要经过正常路由转发。 这样, 第一业务节点实例 16 根据所述第一报文匹配的业务标识查找所述第二业务路由信息, 获 取匹配的控制标志信息, 其中, 控制标志信息可以通过一个控制标 志位来表示, 例如当控制标志位为 0 时, 表明所述第一报文需要经 过下一个业务节点实例处理, 当控制标志位为 1 时, 表明所述第一 报文已经经过最后一个业务节点实例并需要经过正常路由转发。 具 体通过何种方式来标识控制标志信息, 本发明实施例不做具体限定, 只要能表明所述第一报文已经到达最后一个业务节点实例并需要经 过正常路由转发即可。
相应地, 所述输出电路还用于向拥有所述第一下一跳地址的设 备发送第四报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述处理器触发所述输出电路向拥有所述第一 下一跳地址的设备发送第四报文包括: 所述处理器根据所述第一下 一跳 IP地址查找 ARP表以获取第二 MAC , 所述第二 MAC地址为 与所述第一下一跳 IP地址匹配的 MAC地址;将所述第二 MAC地址 作为目 的 MAC 地址对所述第四报文进行以太网封装形成第九以太 报文;触发所述输出电路向拥有所述第二 MAC地址的设备发送所述 第九以太报文;
相应地, 所述输出电路还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述输出电路还用于向拥有所述第二 MAC地 址的设备发送所述第九以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述处理器触发所述输出电路向拥有所述第 一下一跳地址的设备发送第四报文包括: 所述处理器根据所述第一 下一跳 IP地址查找 ARP表以获取第二 MAC地址, 所述第二 MAC 地址为与所述第一下一跳 IP 地址匹配的 MAC 地址; 用所述第二 MAC地址替换所述第四报文中的目 的 MAC地址形成第十以太报文; 触发所述输出电路向拥有所述第二 MAC 地址的设备发送所述第十 以太报文;
相应地, 所述输出电路还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述输出电路还用于向拥有所述第二 MAC地 址的设备发送所述第十以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述处理器触发所述输出电路向拥有所述第一下 一跳地址的设备发送第四报文包括: 所述处理器将所述第一下一跳 MAC 地址作为目 的地址对所述第四报文进行以太网封装形成第十 一以太^艮文;触发所述输出电路向拥有所述第一下一跳 MAC地址的 设备发送所述第十一以太报文;
相应地, 所述输出电路还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述输出电路还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十一以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述处理器触发所述输出电路向拥有所述第一 下一跳地址的设备发送第四报文包括: 所述处理器用所述第一下一 跳 MAC地址替换所述第二报文中的目 的 MAC地址形成第十二以太 报文;触发所述输出电路向拥有所述第一下一跳 MAC地址的设备发 送所述第十二以太报文;
相应地, 所述输出电路还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述输出电路还用于向拥有所述第一下一跳
MAC地址的设备发送所述第十二以太报文。
本发明实施例提供的业务节点实例,接收携带业务标识的报文, 处理所述报文, 并根据所述业务标识查找业务路由信息将处理后的 报文转发给下一个业务节点实例或者按照路由表进行正常转发,实 现了对报文流的业务处理。 实施例六
本发明实施例提供一种业务分发节点, 如图 7所示, 图 7是本 发明实施例提供的另一业务分发节点的装置示意图。
一种业务分发节点包括:
接收单元 71 , 用于接收控制器发来的业务路由信息, 所述业务 路由信息包括: 流标识, 业务标识和下一跳地址, 其中所述流标识 用于识别报文流; 所述业务标识用于标识处理所述报文流的业务节 点实例的序列, 所述下一跳地址用于标识处理所述^艮文流的业务节 点实例;
可选地, 控制器可以基于报文流来分配业务处理策略, 控制器 根据报文流对应的业务处理策略, 下发业务路由信息给业务分发节 点。 其中, 具有相同业务标识 ID的报文流通过相同的业务节点实例 处理, 且通过的业务节点实例处理的顺序相同。 进一步地, 在本发 明实施例的具体实现时, 如果同一报文流中的两个不同的报文分配 了两个不同的业务 ID , 则意味着虽然所述两个不同的报文所需进行 的业务处理相同, 但是所述报文流却由不同的业务节点实例进行处 理, 这样可以实现报文处理的负载均衡。 例如都是先经过防火墙处 理, 再经过 NAT设备处理, 但是所述两个报文却由不同的业务节点 实例进行处理, 这样可以实现 文处理的负载均衡。 可选地, 可以 对 艮文流的 4艮文进行细分来实现对同一 4艮文流处理的负载均衡。 例 如, 以相同的源地址和相同的目的地址来标识同一 4艮文流, 为了对 该同一报文流的报文处理实现负载均衡, 可以根据协议号对该同一 报文流的报文进行细分, 假设为该同一报文流中协议号大于 50的报 文分配一个业务 ID , 用于标识该 文先经过防火墙实例 1处理, 再 经过 NAT设备实例 1 处理。 为该同一报文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该^艮文先经过防火墙实例 2处 理, 再经过 NAT设备实例 2处理。 这样有助于实现同一 文流处理 的负载均衡。 可选地, 如果不同的 4艮文流, 例如 4艮文流 1 和 4艮文流 2需要进行相同的业务处理, 例如都是先经过 NAT设备处理, 再经 过防火墙处理, 可以为 文流 1 的^艮文和 文流 2的^艮文分配相同 的业务 ID。 当然, 也可以为^艮文流 1 的^艮文和 文流 2的^艮文分配 不同的业务 ID , 有助于实现负载均衡。
所述接收单元, 还用于接收第一报文;
举例来说,通常第一报文可以为 IP报文或以太报文,第一报文可 以是从用户侧设备发来的, 也可以是从网络侧设备发来的,本发明实 施例对此不做限定。
所述处理单元, 用于根据所述第一报文获取第一流标识, 根据 所述第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹 配的下一跳地址; 触发所述发送单元向拥有所述匹配的下一跳地址 对应的第一业务节点实例发送第二报文, 所述第二报文为将所述匹 配的业务标识添加到所述第一 文中形成的;
举例来说, 可以通过源地址, 目的地址, 源端口, 目 的端口, 协议号中的至少一种信息来标识^艮文流, 所以流标识可以包括所述 第一报文的源地址, 目 的地址, 源端口, 目 的端口和协议号中的至 少一个。 举例来说, 通过所述第一报文的五元组信息 (源地址, 目 的地址, 源端口, 目 的端口和协议号) 来标识 文流。 可选地, 所 述第一流标识可以是所述第一报文的五元组信息, 也可以是根据所 述第一报文的五元组信息通过一定的算法得到的数值, 例如通过哈 希 ( hash ) 算法所得到的数值。 当业务分发节点 14接收到第一报文 时, 如果第一业务路由信息中的流标识是五元组信息, 则业务分发 节点 14从第一报文中获取五元组信息得到所述第一流标识。 如果第 一业务路由信息中的流标识是五元组信息通过特定的算法得到的数 值, 则业务分发节点 14从第一报文中获取所述第一报文的五元组信 息, 对所述第一报文的五元组信息进行该特定的算法运算得到的数 值, 该得到的数值为所述第一流标识。
所述发送单元, 用于向拥有所述匹配的下一跳地址的第一业务 节点实例发送所述第二报文。
所述第二报文为将所述匹配的业务标识添加到所述第一报文中 形成的。 举例来说, 所述第二^艮文可以为将匹配的业务标识添加到 所述第一4艮文的 4艮文头中形成的, 或者也可以将匹配的业务标识添 加到所述第一报文的净荷中形成的。 以第一报文为第一以太报文举 例来说, 所述匹配的业务标识可以添加到所述以太^艮文新增的 ^艮文 头选项中, 也可以添加到所述以太报文中的 IP报文头中, 也可以对 以太报文头中的现有字段的重用, 也就是更改现有字段的含义来表 示所述以太 文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network ,筒称为 VLAN )或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签 交换 ( Multi-protocol Label Switching , 筒称为 MPLS ) 中的标签 ( LABEL ) 进行重用, 也可以对源 MAC 地址的部分或全部进行转 义重用。 其中, 在以太报文中新增的报文头选项的格式如下: 在源 MAC地址和 VLAN之间增加一个类型字段,用以指示该以太4艮文携 带有业务标识(也称业务 ID)。 业务 ID在报文中的格式可以如表一: 本发明实施例提供的业务分发节点, 业务分发节点根据业务路 由信息对接收到的^艮文添加业务标识, 并将添加了所述业务标识的 报文发送给业务节点实例, 以使得业务节点实例处理所述添加了业 务标识的报文后, 可以根据所述业务标识查找业务路由信息将处理 后的报文流转发给下一个业务节点实例或者按照路由表进行正常转 发,实现了对报文流的业务处理。
实施例七
本发明实施例提供一种业务节点实例, 如图 8所示, 图 8是本 发明实施例提供的另一种业务节点实例的装置示意图。
一种业务节点实例包括接收单元 81 , 处理单元 82 和输出单元
83 ;
所述接收单元 81 , 用于接收控制器发送的业务路由信息, 所述 业务路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用 于标识处理所述报文流的业务节点实例的序列;
在本发明实施例的具体实现时, 控制器可以基于报文流来分配 业务处理策略, 控制器根据报文流对应的业务处理策略, 下发业务 路由信息给业务节点实例。 其中, 具有相同业务 ID的报文流通过相 同的业务节点实例处理, 且通过的业务节点实例处理的顺序相同。 举例来说, 业务 ID= 1 的报文先由第一业务节点实例 16进行处理, 再由第二业务节点实例 18进行处理。 而业务 ID=2的报文则先由第 二业务节点实例 18进行处理,再由第一业务节点实例 16进行处理。 可选地, 如果同一^艮文流中的两个不同的 ^艮文分配了两个不同的业 务 ID ,则意味着虽然所述两个不同的报文所需进行的业务处理相同, 例如都是先经过防火墙处理, 再经过 NAT设备处理, 但是所述两个 报文却由不同的业务节点实例进行处理, 这样可以实现报文处理的 负载均衡。 可选地, 可以对 文流的 4艮文进行细分来实现对同一 文流处理的负载均衡。 例如, 以相同的源地址和相同的目 的地址来 标识同一^艮文流, 为了对该同一 4艮文流的^艮文处理实现负载均衡, 可以根据协议号对该同一报文流的报文进行细分, 假设为该同一报 文流中协议号大于 50 的 ^艮文分配一个业务 ID , 用于标识该 文先 经过防火墙实例 1处理, 再经过 NAT设备实例 1处理。 为该同一报 文流中协议号小于等于 50 的4艮文分配另一个业务 ID , 用于标识该 报文先经过防火墙实例 2处理, 再经过 NAT设备实例 2处理。 这样 有助于实现同一报文流处理的负载均衡。 可选地, 如果不同的报文 流, 例如 文流 1 和^艮文流 2需要进行相同的业务处理, 例如都是 先经过 NAT设备处理, 再经过防火墙处理, 可以为报文流 1 的报文 和报文流 2的报文分配相同的业务 ID。 当然, 也可以为报文流 1 的 4艮文和 4艮文流 2的 4艮文分配不同的业务 ID , 有助于实现负载均衡。
第一业务节点实例可以为逻辑功能实体, 需要说明的是, 通常 一个业务节点实例具有一个可达的地址,例如可达的 IP地址或 MAC 地址, 这样只要第一业务节点实例具有一个可达的地址, 第一业务 节点实例为一个物理实体还是逻辑实体, 本发明实施例并不做限定。 此外, 为了方便理解业务节点实例, 我们以提供防火墙功能的业务 节点实例进行举例说明, 通常, 我们可以把防火墙功能安装在很多 服务器上, 例如虚拟机 VM 上。 这样安装有防火墙功能的服务器都 可以提供防火墙功能的业务处理, 并且安装有防火墙功能的服务器 都有不同的地址。 这样, 每个安装有防火墙功能的服务器就可以称 之为一个业务节点实例。 也就是说, 每个业务节点实例包括一个可 达的地址,且能单独处理一种业务。在本发明实施例的具体实现时, 由控制器来确定选择第一业务节点实例来处理该报文流。 例如, 控 制器可以根据业务节点实例的处理能力, 业务负载状况来选择合适 的业务节点实例来处理该报文流。
所述接收单元, 还用于接收发来的第一报文, 其中所述第一报 文携带所述第一报文匹配的业务标识;
举例来说, 所述接收单元, 还用于接收业务分发节点发来的第 一报文或者接收其他业务节点实例发来的第一报文。
举例来说, 业务分发节点可以将所述第一报文匹配的业务标识 携带在所述第一报文的报文头中, 也可以将匹配的业务标识携带在 所述第一报文的净荷中。 以第一报文为第一以太报文举例来说, 所 述匹配的业务标识可以添加到所述以太4艮文新增的 4艮文头选项中, 也可以添加到所述以太 艮文中的 IP · ^艮文头中, 也可以对以太 艮文头 中的现有字段的重用, 也就是更改现有字段的含义来表示所述以太
4艮文携带业务标识。 例如可以对虚拟局域网 ( Virtual Local Area Network , 筒称为 VLAN ) 或 QINQ (也称 Stacked VLAN 或 Double VLAN)中的 VLAN 标识 (也称 VLAN ID ) , 或者多协议标签交换 ( Multi-protocol Label Switching ,筒称为 MPLS )中的标签 ( LABEL ) 进行重用,也可以对源 MAC地址的部分或全部进行转义重用。其中, 在以太 文中新增的 文头选项的格式如下: 在源 MAC 地址和 VLAN 之间增加一个类型字段, 用以指示该以太报文携带有业务标 识(也称业务 ID)。 业务 ID在^艮文中的格式可以如表一: 所述处理单元, 用于处理所述第一报文形成第二报文, 其中所 述第二报文携带所述第一报文匹配的业务标识; 根据所述第一报文 匹配的业务标识查找所述业务路由信息, 获取第一下一跳地址, 第 一下一跳地址为与所述第一 文匹配的业务标识匹配的下一跳地址; 触发所述发送单元向拥有所述第一下一跳地址的设备发送第二报文; 优选地, 所述第二报文携带所述第一报文匹配的业务标识的方 式和第一报文携带所述第一报文匹配的业务标识的方式相同。 其中 第一业务节点实例如何处理所述第一报文属于现有技术, 例如, 第 一业务节点实例对所述第一>¾文进行 NAT处理,或进行防火墙处理, 本发明不再赘述。
所述发送单元, 用于向拥有所述第一下一跳地址的设备发送所 述第二报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址; 所述处理单元触发所述发送单元向拥有所述第 一下一跳地址的设备发送第二报文包括:
所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹 配的 MAC地址;
所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第二报文进行以太网封装形成第一以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第一以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一 MAC 地址的设备发送所述 第一以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述 第一下一跳地址的设备发送第二报文包括:
所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第一下一跳 IP地址匹 配的 MAC地址;
所述处理单元用所述第一 MAC 地址替换所述第二报文中的目 的 MAC地址形成第二以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第二以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一 MAC 地址的设备发送所述 第二以太报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述 第一下一跳地址的设备发送第二报文包括:
所述处理单元将所述第一下一跳 MAC地址作为目的 MAC地址 对所述第二报文进行以太网封装形成第三以太报文; 所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC 地址的设备发送所述第三以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第三以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所 述第一下一跳地址的设备发送第二报文包括:
所述处理单元用所述第一下一跳 MAC 地址替换所述第二报文 中的目 的 MAC地址形成第四以太报文;
所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC 地址的设备发送所述第四以太报文;
相应地, 所述发送单元用于向拥有所述第一下一跳地址的设备 发送所述第二报文包括:
所述发送单元用于向拥有所述第一下一跳 MAC 地址的设备发 送所述第四以太报文。
可选地, 所述处理单元还用于: 如果所述第一下一跳地址为不 可达的 IP地址,则根据所述第二报文中的目的 IP地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为所述目 的 IP地 址在所述路由表中匹配的下一跳 IP地址; 触发所述发送单元向拥有 所述第二下一跳 IP地址的设备发送第三报文, 所述第三报文为去除 所述第二报文中携带的所述第一报文匹配的业务标识形成的;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文。
如果第一业务节点实例 16处理所述第一报文形成第二报文后, 第三报文不需要再进行其他业务处理, 可选地, 在控制器 12下发的 第二业务路由信息中, 下一跳地址设置为特殊的下一跳, 例如可以 是 0.0.0.0 , 其中, 0.0.0.0用于表明第一业务节点实例 16是最后一个 处理所述第一报文的业务节点实例, 该特殊的下一跳可以是任何不 可达的 IP地址, 只要能表明第一业务节点实例 16是最后一个处理 所述第一报文的业务节点实例即可, 本发明实施例不做具体限定。
可选地, 所述第一报文为第一 IP报文, 所述处理单元触发所述 发送单元向拥有所述第二下一跳 IP地址的设备发送第三报文包括: 所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹 配的 MAC地址;
所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第三报文进行以太网封装形成第五以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第五以太报文;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述发送单元还用于向拥有所述第一 MAC 地址的设备发送所 述第五以太报文。
可选地, 所述第一报文为第一以太报文, 所述处理单元触发所 述发送单元向拥有所述第二下一跳 IP地址的设备发送第三报文包括: 所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹 配的 MAC地址;
所述处理单元用所述第一 MAC 地址替换所述第三报文中的目 的 MAC地址形成第六以太报文;
所述处理单元触发所述发送单元向拥有所述第一 MAC 地址的 设备发送所述第六以太报文;
相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
所述发送单元向拥有所述第一 MAC 地址的设备发送所述第六 以太报文。 可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述处理单元还用于:如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目 的 IP地址 查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地址为 与所述目 的 IP地址匹配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC 地址; 将所述第一 MAC地址作为目的 MAC地址对所述第二 报文进行以太网封装形成第七以太报文, 所述第七以太报文不携带 所述第一报文匹配的业务标识; 触发所述发送单元向拥有所述第一 MAC地址的设备发送所述第七以太报文;
相应地, 所述发送单元还用于向拥有所述第一 MAC 地址的设 备发送所述第七以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC 地址, 所述处理单元还用于: 如果所述第一下一跳 MAC地址为不可达的 MAC地址, 则根据所述第二 ^艮文中的目 的 IP 地址查找路由表, 获取第二下一跳 IP地址, 所述第二下一跳 IP地 址为与所述目的 IP地址匹配的下一跳 IP地址; 查找 ARP表以获取 第一 MAC地址,所述第一 MAC地址为与所述第二下一跳 IP地址匹 配的 MAC地址;用所述第一 MAC地址替换所述第二报文中的 MAC 地址形成第八以太报文, 所述第八以太报文不携带所述第一报文匹 配的业务标识;触发所述发送单元向拥有所述第一 MAC地址的设备 发送所述第八以太报文;
相应地, 所述发送单元还用于向拥有所述第一 MAC 地址的设 备发送所述第八以太报文。
可选地, 所述业务路由信息还包括控制标志信息, 所述控制标 志信息用于标识所述报文流是否已经到达最后一个业务节点实例并 需要经过正常路由转发; 所述处理单元, 还用于: 查找所述业务路 由信息时, 获取匹配的控制标志信息; 如果所述匹配的控制标志信 息标识为所述第一报文已经到达最后一个业务节点实例并需要经过 正常路由转发, 触发所述发送单元向拥有所述第一下一跳地址的设 备发送第四报文, 所述第四报文为去除所述第二报文中携带的所述 第一报文匹配的业务标识形成的;
举例来说, 在控制器 12下发的第二业务路由信息中, 也可以通 过设置一个控制标志位, 来表明所述第一报文已经到达最后一个业 务节点实例并需要经过正常路由转发。 这样, 第一业务节点实例 16 根据所述第一报文匹配的业务标识查找所述第二业务路由信息, 获 取匹配的控制标志信息, 其中, 控制标志信息可以通过一个控制标 志位来表示, 例如当控制标志位为 0 时, 表明所述第一报文需要经 过下一个业务节点实例处理, 当控制标志位为 1 时, 表明所述第一 报文已经到达最后一个业务节点实例并需要经过正常路由转发。 具 体通过何种方式来标识控制标志信息, 本发明实施例不做具体限定, 只要能表明所述第一报文已经到达最后一个业务节点实例并需要经 过正常路由转发即可。
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文。
可选地, 所述第一报文为第一 IP报文, 所述第一下一跳地址为 第一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述第 一下一跳地址的设备发送第四报文包括: 所述处理单元根据所述第 一下一跳 IP地址查找 ARP表以获取第二 MAC地址,所述第二 MAC 地址为与所述第一下一跳 IP 地址匹配的 MAC 地址; 将所述第二 MAC地址作为目 的 MAC地址对所述第四 ^艮文进行以太网封装形成 第九以太报文;触发所述发送单元向拥有所述第二 MAC地址的设备 发送所述第九以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述发送单元还用于向拥有所述第二 MAC地 址的设备发送所述第九以太报文。
可选地, 所述第一报文为第一以太报文, 所述第一下一跳地址 为第一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述 第一下一跳地址的设备发送第四报文包括: 所述处理单元根据所述 第一下一跳 IP地址查找 ARP表以获取第二 MAC 地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址; 用所述第 二 MAC地址替换所述第四报文中的目 的 MAC地址形成第十以太报 文;触发所述发送单元向拥有所述第二 MAC地址的设备发送所述第 十以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括:所述发送单元还用于向拥有所述第二 MAC地 址的设备发送所述第十以太报文。
可选地, 所述第一报文为 IP报文, 所述第一下一跳地址为第一 下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第一 下一跳地址的设备发送第四报文包括: 所述处理单元将所述第一下 一跳 MAC 地址作为目 的地址对所述第四 ^艮文进行以太网封装形成 第十一以太报文;触发所述发送单元向拥有所述第一下一跳 MAC地 址的设备发送所述第十一以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十一以太报文。
可选地, 所述第一报文为以太报文, 所述第一下一跳地址为第 一下一跳 MAC地址,所述处理单元触发所述发送单元向拥有所述第 一下一跳地址的设备发送第四报文包括: 所述处理单元用所述第一 下一跳 MAC地址替换所述第二报文中的目的 MAC地址形成第十二 以太报文;触发所述发送单元向拥有所述第一下一跳 MAC地址的设 备发送所述第十二以太报文;
相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设 备发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十二以太报文。
本发明实施例提供的业务节点实例,接收携带业务标识的报文, 处理所述报文, 并根据所述业务标识查找业务路由信息将处理后的 报文转发给下一个业务节点实例或者按照路由表进行正常转发,实 现了对报文流的业务处理。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或 部分步骤可以通过程序指令相关的硬件来完成, 前述的程序可以存 储于一计算机可读取存储介质中, 该程序在执行时, 执行包括上述 方法实施例的步骤; 而前述的存储介质包括: ROM、 RAM , 磁碟或 者光盘等各种可以存储程序代码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围 并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技 术范围内, 可轻易想到变化或替换, 都应涵盖在本发明的保护范围 之内。 因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (33)

  1. 权 利 要 求 书
    1、 一种报文处理方法, 其特征在于, 所述方法包括:
    业务分发节点接收控制器发来的业务路由信息,所述业务路由信 息包括: 流标识, 业务标识和下一跳地址, 其中所述流标识用于识别 报文流; 所述业务标识用于标识处理所述报文流的业务节点实例的序 列, 所述下一跳地址用于标识处理所述 ^艮文流的业务节点实例; 所述业务分发节点接收第一报文;
    所述业务分发节点根据所述第一报文获取第一流标识,根据所述 第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹配的下 一兆地址;
    所述业务分发节点向拥有所述匹配的下一跳地址的第一业务节 点实例发送第二报文, 所述第二报文为将所述匹配的业务标识添加到 所述第一报文中形成的。
  2. 2、 根据权利要求 1所述的方法, 其特征在于, 所述下一跳地址 为下一跳 MAC地址或下一兆 IP地址。
  3. 3、 一种报文处理方法, 其特征在于, 所述方法包括:
    第一业务节点实例接收控制器发送的业务路由信息,所述业务路 由信息包括: 业务标识和下一跳地址; 其中所述业务标识用于标识处 理报文流的业务节点实例的序列;
    所述第一业务节点实例接收第一报文,其中所述第一报文携带所 述第一报文匹配的业务标识;
    所述第一业务节点实例处理所述第一报文形成第二报文,其中所 述第二报文携带所述第一报文匹配的业务标识;
    所述第一业务节点实例根据所述第一报文匹配的业务标识查找 所述业务路由信息, 获取第一下一跳地址, 第一下一跳地址为与所述 第一报文匹配的业务标识匹配的下一跳地址;
    如果所述第一下一跳地址为可达的地址,所述第一业务节点实例 向拥有所述第一下一跳地址的设备发送所述第二报文。 4、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 第一 IP报文, 所述第一下一跳地址为第一下一跳 IP地址, 所述第一 业务节点实例向拥有所述第一下一跳 ip 地址的设备发送所述第二报 文包括:
    所述第一业务节点实例根据所述第一下一跳 IP地址查找 ARP表 以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第二报文进行以太网封装形成第一以太报文;
    所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所 述第一以太报文。
  4. 5、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 第一以太报文, 所述第一下一跳地址为第一下一跳 IP 地址, 所述第 一业务节点实例向拥有所述第一下一跳 IP 地址的设备发送所述第二 报文包括:
    所述第一业务节点实例根据所述第一下一跳 IP地址查找 ARP表 以获取第一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例用所述第一 MAC地址替换所述第二报文 中的目的 MAC地址形成第二以太报文;
    所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所 述第二以太报文。
  5. 6、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 第一 IP报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述第 一业务节点实例向拥有所述第一下一跳 MAC地址的设备发送所述第 二报文包括:
    所述第一业务节点实例将所述第一下一跳 MAC 地址作为目的 MAC地址对所述第二报文进行以太网封装形成第三以太报文;
    所述第一业务节点实例向拥有所述第一下一跳 MAC地址的设备 发送所述第三以太报文。
  6. 7、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 第一以太报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述 第一业务节点实例向拥有所述第一下一跳 MAC地址的设备发送所述 第二报文包括:
    所述第一业务节点实例用所述第一下一跳 M A C地址替换所述第 二报文中的目的 MAC地址形成第四以太报文;
    所述第一业务节点实例向拥有所述第一下一跳 MAC地址的设备 发送所述第四以太报文。
  7. 8、根据权利要求 3所述的方法, 其特征在于, 所述方法还包括: 如果所述第一下一跳地址为不可达的 IP地址, 则所述第一业务 节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二 下一跳 IP地址,所述第二下一跳 IP地址为所述目的 IP地址在所述路 由表中匹配的下一跳 IP地址;
    所述第一业务节点实例向拥有所述第二下一跳 IP地址的设备发 送第三报文, 所述第三报文为去除所述第二报文中携带的所述第一报 文匹配的业务标识形成的。
  8. 9、 根据权利要求 8所述的方法, 其特征在于, 所述第一报文为 第一 IP报文, 所述第一业务节点实例向拥有所述第二下一跳 IP地址 的设备发送第三报文包括:
    所述第一业务节点实例根据所述第二下一跳 IP地址查找 ARP表 以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第三报文进行以太网封装形成第五以太报文;
    所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所 述第五以太报文。
  9. 10、 根据权利要求 8所述的方法, 其特征在于, 所述第一报文为 第一以太报文, 所述第一业务节点实例向拥有所述第二下一跳 IP 地 址的设备发送第三报文包括:
    所述第一业务节点实例根据所述第二下一跳 IP地址查找 ARP表 以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例用所述第一 MAC地址替换所述第三报文 中的目的 MAC地址形成第六以太报文;
    所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所 述第六以太报文。
  10. 11、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 IP报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述方法还 包括:
    如果所述第一下一跳 MAC地址为不可达的 MAC地址, 则所述 第一业务节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP 地址, 所述第二下一跳 IP 地址为与所述目的 IP 地址匹配的下一跳 IP地址;
    所述第一业务节点实例查找 ARP表以获取第一 MAC地址,所述 第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
    所述第一业务节点实例将所述第一 MAC地址作为目的 MAC地 址对所述第二报文进行以太网封装形成第七以太报文, 所述第七以太 报文不携带所述第一报文匹配的业务标识;
    所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所 述第七以太报文。
  11. 12、 根据权利要求 3所述的方法, 其特征在于, 所述第一报文为 以太报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述所述 方法还包括:
    如果所述第一下一跳 MAC地址为不可达的 MAC地址, 则所述 第一业务节点实例根据所述第二报文中的目的 IP 地址查找路由表, 获取第二下一跳 IP 地址, 所述第二下一跳 IP 地址为与所述目的 IP 地址匹配的下一跳 IP地址; 所述第一业务节点实例查找 ARP表以获取第一 MAC地址,所述 第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址;
    所述第一业务节点实例用所述第一 MAC地址替换所述第二报文 中的 MAC地址形成第八以太报文, 所述第八以太报文不携带所述第 一报文匹配的业务标识; 所述第一业务节点实例向拥有所述第一 MAC地址的设备发送所述第八以太报文。
  12. 13、 根据权利要求 3所述的方法, 其特征在于, 所述业务路由信 息还包括控制标志信息, 所述控制标志信息用于标识所述报文流是否 已经到达最后一个业务节点实例并需要经过正常路由转发; 所述方法 还包括:
    所述第一业务节点实例查找所述业务路由信息时,获取匹配的控 制标志信息;
    如果所述匹配的控制标志信息标识为所述第一报文已经到达最 后一个业务节点实例并需要经过正常路由转发, 所述第一业务节点实 例向拥有所述第一下一跳地址的设备发送所述第二报文, 包括:
    所述第一业务节点实例向拥有所述第一下一跳地址的设备发送 第四报文, 所述第四报文为去除所述第二报文中携带的所述第一报文 匹配的业务标识形成的。
  13. 14、 根据权利要求 13所述的方法, 其特征在于, 所述第一报文 为第一 IP报文, 所述第一下一跳地址为第一下一跳 IP地址, 所述第 一业务节点实例向拥有所述第一下一跳地址的设备发送第四报文包 括:
    所述第一业务节点实例根据所述第一下一跳 IP地址查找 ARP表 以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例将所述第二 MAC地址作为目的 MAC地 址对所述第四报文进行以太网封装形成第九以太报文;
    所述第一业务节点实例向拥有所述第二 M A C地址的设备发送所 述第九以太报文。 15、 根据权利要求 13所述的方法, 其特征在于, 所述第一报文 为第一以太报文, 所述第一下一跳地址为第一下一跳 IP 地址, 所述 第一业务节点实例向拥有所述第一下一跳地址的设备发送第四报文 包括:
    所述第一业务节点实例根据所述第一下一跳 IP地址查找 ARP表 以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP 地址匹配的 MAC地址;
    所述第一业务节点实例用所述第二 MAC地址替换所述第四报文 中的目的 MAC地址形成第十以太报文;
    所述第一业务节点实例向拥有所述第二 MAC地址的设备发送所 述第十以太报文。
  14. 16、 根据权利要求 13 所述的方法, 其特征在于, 所述第一报文 为 IP报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述第一 业务节点实例向拥有所述第一下一跳地址的设备发送第四报文包括: 所述第一业务节点实例将所述第一下一跳 MAC地址作为目的地 址对所述第四报文进行以太网封装形成第十一以太报文;
    所述第一业务节点实例向拥有所述第一下一跳 MAC地址的设备 发送所述第十一以太报文。
  15. 17、 根据权利要求 13 所述的方法, 其特征在于, 所述第一报文 为以太报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述第 一业务节点实例向拥有所述第一下一跳地址的设备发送第四报文包 括:
    所述第一业务节点实例用所述第一下一跳 M A C地址替换所述第 二报文中的目的 MAC地址形成第十二以太报文;
    所述第一业务节点实例向拥有所述第一下一跳 MAC地址的设备 发送所述第十二以太报文。
  16. 18、 一种业务分发节点, 其特征在于, 所述业务分发节点包括接 收单元, 处理单元和发送单元:
    所述接收单元, 用于接收控制器发来的业务路由信息, 所述业务 路由信息包括: 流标识, 业务标识和下一跳地址, 其中所述流标识用 于识别报文流; 所述业务标识用于标识处理所述报文流的业务节点实 例的序列, 所述下一跳地址用于标识处理所述 ^艮文流的业务节点实例; 所述接收单元, 还用于接收第一报文;
    所述处理单元, 用于根据所述第一报文获取第一流标识, 根据所 述第一流标识查找所述业务路由信息, 获取匹配的业务标识和匹配的 下一跳地址; 触发所述发送单元向拥有所述匹配的下一跳地址的第一 业务节点实例发送第二报文, 所述第二报文为将所述匹配的业务标识 添加到所述第一报文中形成的;
    所述发送单元,用于向拥有所述匹配的下一跳地址的第一业务节 点实例发送所述第二报文。
  17. 19、 一种业务节点实例, 其特征在于, 所述业务节点实例包括: 接收单元, 处理单元和发送单元;
    所述接收单元, 用于接收控制器发送的业务路由信息, 所述业务 路由信息包括: 业务标识和下一跳地址; 其中所述业务标识用于标识 处理报文流的业务节点实例的序列;
    所述接收单元, 还用于接收第一报文, 其中所述第一报文携带所 述第一报文匹配的业务标识;
    所述处理单元, 用于处理所述第一报文形成第二报文, 其中所述 第二报文携带所述第一报文匹配的业务标识; 根据所述第一报文匹配 的业务标识查找所述业务路由信息, 获取第一下一跳地址, 第一下一 跳地址为与所述第一 艮文匹配的业务标识匹配的下一跳地址; 如果所 述第一下一跳地址为可达的地址,触发所述发送单元向拥有所述第一 下一跳地址的设备发送第二报文;
    所述发送单元,用于向拥有所述第一下一跳地址的设备发送所述 第二报文。
  18. 20、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为第一 IP报文,所述第一下一跳地址为第一下一跳 IP地址; 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设备 发送第二报文包括:
    所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取第 一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配 的 MAC地址;
    所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第二报文进行以太网封装形成第一以太报文;
    所述处理单元触发所述发送单元向拥有所述第一 MAC地址的设 备发送所述第一以太报文;
    相应地,所述发送单元用于向拥有所述第一下一跳地址的设备发 送所述第二报文包括:
    所述发送单元用于向拥有所述第一 MAC地址的设备发送所述第 一以太报文。
  19. 21、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为第一以太报文, 所述第一下一跳地址为第一下一跳 IP 地 址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设 备发送第二报文包括:
    所述处理单元根据所述第一下一跳 IP地址查找 ARP表以获取第 一 MAC地址, 所述第一 MAC地址为与所述第一下一跳 IP地址匹配 的 MAC地址;
    所述处理单元用所述第一 MAC地址替换所述第二报文中的目的 MAC地址形成第二以太报文;
    所述处理单元触发所述发送单元向拥有所述第一 MAC地址的设 备发送所述第二以太报文;
    相应地,所述发送单元用于向拥有所述第一下一跳地址的设备发 送所述第二报文包括:
    所述发送单元用于向拥有所述第一 MAC地址的设备发送所述第 二以太报文。
  20. 22、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为第一 IP报文,所述第一下一跳地址为第一下一跳 MAC地 址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设 备发送第二报文包括:
    所述处理单元将所述第一下一跳 MAC地址作为目的 MAC地址 对所述第二报文进行以太网封装形成第三以太报文;
    所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC地 址的设备发送所述第三以太报文;
    相应地,所述发送单元用于向拥有所述第一下一跳地址的设备发 送所述第二报文包括:
    所述发送单元用于向拥有所述第一下一跳 MAC地址的设备发送 所述第三以太报文。
  21. 23、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为第一以太报文, 所述第一下一跳地址为第一下一跳 MAC 地址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的 设备发送第二报文包括:
    所述处理单元用所述第一下一跳 MAC地址替换所述第二报文中 的目的 MAC地址形成第四以太报文;
    所述处理单元触发所述发送单元向拥有所述第一下一跳 MAC地 址的设备发送所述第四以太报文;
    相应地,所述发送单元用于向拥有所述第一下一跳地址的设备发 送所述第二报文包括:
    所述发送单元用于向拥有所述第一下一跳 MAC地址的设备发送 所述第四以太报文。
  22. 24、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 处理单元还用于: 如果所述第一下一跳地址为不可达的 IP 地址, 则 根据所述第二报文中的目的 IP地址查找路由表, 获取第二下一跳 IP 地址, 所述第二下一跳 IP地址为所述目的 IP地址在所述路由表中匹 配的下一跳 IP地址; 触发所述发送单元向拥有所述第二下一跳 IP地 址的设备发送第三报文, 所述第三报文为去除所述第二报文中携带的 所述第一报文匹配的业务标识形成的; 相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文。
  23. 25、 根据权利要求 24所述的业务节点实例, 其特征在于, 所述 第一报文为第一 IP报文, 所述处理单元触发所述发送单元向拥有所 述第二下一跳 IP地址的设备发送第三报文包括:
    所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取第 一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配 的 MAC地址;
    所述处理单元将所述第一 MAC地址作为目的 MAC地址对所述 第三报文进行以太网封装形成第五以太报文;
    所述处理单元触发所述发送单元向拥有所述第一 MAC地址的设 备发送所述第五以太报文;
    相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
    所述发送单元还用于向拥有所述第一 MAC地址的设备发送所述 第五以太报文。
  24. 26、 根据权利要求 24所述的业务节点实例, 其特征在于, 所述 第一报文为第一以太报文, 所述处理单元触发所述发送单元向拥有所 述第二下一跳 IP地址的设备发送第三报文包括:
    所述处理单元根据所述第二下一跳 IP地址查找 ARP表以获取第 一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配 的 MAC地址;
    所述处理单元用所述第一 MAC地址替换所述第三报文中的目的 MAC地址形成第六以太报文;
    所述处理单元触发所述发送单元向拥有所述第一 MAC地址的设 备发送所述第六以太报文;
    相应地, 所述发送单元还用于向拥有所述第二下一跳 IP地址的 设备发送所述第三报文包括:
    所述发送单元向拥有所述第一 MAC地址的设备发送所述第六以 太报文。
  25. 27、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为 IP报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述处理单元还用于: 如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目的 IP地址查找路由表, 获取 第二下一跳 IP地址,所述第二下一跳 IP地址为与所述目的 IP地址匹 配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 将所述第 一 MAC地址作为目的 MAC地址对所述第二^艮文进行以太网封装形 成第七以太报文, 所述第七以太报文不携带所述第一报文匹配的业务 标识; 触发所述发送单元向拥有所述第一 MAC地址的设备发送所述 第七以太报文;
    相应地, 所述发送单元还用于向拥有所述第一 MAC地址的设备 发送所述第七以太报文。
  26. 28、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 第一报文为以太报文,所述第一下一跳地址为第一下一跳 MAC地址, 所述处理单元还用于: 如果所述第一下一跳 MAC 地址为不可达的 MAC地址, 则根据所述第二^艮文中的目的 IP地址查找路由表, 获取 第二下一跳 IP地址,所述第二下一跳 IP地址为与所述目的 IP地址匹 配的下一跳 IP地址; 查找 ARP表以获取第一 MAC地址, 所述第一 MAC地址为与所述第二下一跳 IP地址匹配的 MAC地址; 用所述第 一 MAC地址替换所述第二报文中的 MAC地址形成第八以太报文, 所述第八以太报文不携带所述第一报文匹配的业务标识; 触发所述发 送单元向拥有所述第一 MAC地址的设备发送所述第八以太报文; 相应地, 所述发送单元还用于向拥有所述第一 MAC地址的设备 发送所述第八以太报文。
  27. 29、 根据权利要求 19所述的业务节点实例, 其特征在于, 所述 业务路由信息还包括控制标志信息, 所述控制标志信息用于标识所述 报文流是否已经到达最后一个业务节点实例并需要经过正常路由转 发; 所述处理单元, 还用于: 查找所述业务路由信息时, 获取匹配的 控制标志信息; 如果所述匹配的控制标志信息标识为所述第一报文已 经到达最后一个业务节点实例并需要经过正常路由转发, 触发所述发 送单元向拥有所述第一下一跳地址的设备发送第四报文, 所述第四报 文为去除所述第二报文中携带的所述第一报文匹配的业务标识形成 的;
    相应地,所述发送单元还用于向拥有所述第一下一跳地址的设备 发送第四报文。
  28. 30、 根据权利要求 29所述的业务节点实例, 其特征在于, 所述 第一报文为第一 IP报文,所述第一下一跳地址为第一下一跳 IP地址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述处理单元根据所述第一下一跳 IP 地址查找 ARP表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下 一跳 IP地址匹配的 MAC地址;将所述第二 MAC地址作为目的 MAC 地址对所述第四报文进行以太网封装形成第九以太报文; 触发所述发 送单元向拥有所述第二 MAC地址的设备发送所述第九以太报文; 相应地,所述发送单元还用于向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述发送单元还用于向拥有所述第二 MAC地址 的设备发送所述第九以太报文。
  29. 31、 根据权利要求 29 所述的方法, 其特征在于, 所述第一报文 为第一以太报文, 所述第一下一跳地址为第一下一跳 IP 地址, 所述 处理单元触发所述发送单元向拥有所述第一下一跳地址的设备发送 第四报文包括: 所述处理单元根据所述第一下一跳 IP地址查找 ARP 表以获取第二 MAC地址, 所述第二 MAC地址为与所述第一下一跳 IP地址匹配的 MAC地址; 用所述第二 MAC地址替换所述第四报文 中的目的 MAC地址形成第十以太报文; 触发所述发送单元向拥有所 述第二 MAC地址的设备发送所述第十以太报文;
    相应地, 所述发送单元还用于向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述发送单元还用于向拥有所述第二 MAC地址 的设备发送所述第十以太报文。
  30. 32、 根据权利要求 29所述的业务节点实例, 其特征在于, 所述 第一报文为 IP报文, 所述第一下一跳地址为第一下一跳 MAC地址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述处理单元将所述第一下一跳 MAC地址作为 目的地址对所述第四报文进行以太网封装形成第十一以太报文; 触发 所述发送单元向拥有所述第一下一跳 MAC地址的设备发送所述第十 一以太报文;
    相应地,所述发送单元还用于向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十一以太报文。
  31. 33、 根据权利要求 29所述的业务节点实例, 其特征在于, 所述 第一报文为以太报文,所述第一下一跳地址为第一下一跳 MAC地址, 所述处理单元触发所述发送单元向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述处理单元用所述第一下一跳 MAC地址替换 所述第二报文中的目的 MAC地址形成第十二以太报文; 触发所述发 送单元向拥有所述第一下一跳 MAC地址的设备发送所述第十二以太 报文;
    相应地,所述发送单元还用于向拥有所述第一下一跳地址的设备 发送第四报文包括: 所述发送单元还用于向拥有所述第一下一跳 MAC地址的设备发送所述第十二以太报文。
  32. 34、 一种报文处理系统, 其特征在于, 所述系统包括: 控制器, 业务分发节点, 第一业务节点实例;
    所述控制器, 用于向所述业务分发节点发送第一业务路由信息, 所述第一业务路由信息包括: 流标识, 业务标识和下一跳地址, 其中 所述流标识用于识别 文流; 所述业务标识用于标识处理所述^艮文流 的业务节点实例的序列, 所述下一跳地址用于标识处理所述^艮文流的 业务节点实例;
    所述业务分发节点, 用于接收控制器发来的第一业务路由信息; 所述业务分发节点还用于接收第一报文,根据所述第一报文获取 第一流标识,根据所述第一流标识查找所述第一业务路由信息, 获取 匹配的业务标识和匹配的下一跳地址; 向拥有所述匹配的下一跳地址 的第一业务节点实例发送第二报文, 所述第二报文为将所述匹配的业 务标识添加到所述第一报文中形成的;
    所述第一业务节点实例, 用于接收所述第二报文。
  33. 35、 根据权利要求 34 所述的系统, 其特征在于, 所述控制器, 还用于向所述第一业务节点实例发送第二业务路由信息; 所述业务分 发节点还用于接收所述第二业务路由信息, 处理所述第二报文形成第 三报文, 其中所述第三报文携带所述第一报文匹配的业务标识; 根据 所述第一报文匹配的业务标识查找所述第二业务路由信息, 获取第一 下一跳地址, 第一下一跳地址为与所述第一报文匹配的业务标识匹配 的下一跳地址,如果所述第一下一跳地址为可达的地址,向拥有所述第 一下一跳地址的设备发送所述第二报文。
CN201380036284.3A 2013-03-15 2013-03-15 一种报文处理的方法、报文设备和系统 Active CN104488237B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/072724 WO2014139157A1 (zh) 2013-03-15 2013-03-15 一种报文处理的方法、报文设备和系统

Publications (2)

Publication Number Publication Date
CN104488237A true CN104488237A (zh) 2015-04-01
CN104488237B CN104488237B (zh) 2017-08-04

Family

ID=51535837

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380036284.3A Active CN104488237B (zh) 2013-03-15 2013-03-15 一种报文处理的方法、报文设备和系统

Country Status (5)

Country Link
US (3) US10084702B2 (zh)
EP (2) EP3780512B1 (zh)
CN (1) CN104488237B (zh)
ES (1) ES2825061T3 (zh)
WO (1) WO2014139157A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107276900A (zh) * 2016-04-06 2017-10-20 中国移动通信集团浙江有限公司 一种互访信息的获取方法及装置
CN109218199A (zh) * 2018-11-21 2019-01-15 新华三技术有限公司 一种报文处理方法和装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9985896B2 (en) * 2014-03-31 2018-05-29 Nicira, Inc. Caching of service decisions
US20160346802A1 (en) 2015-05-29 2016-12-01 Garry McCaslin Dripper Gripper
US10523796B2 (en) 2015-12-22 2019-12-31 Intel Corporation Techniques for embedding fabric address information into locally-administered Ethernet media access control addresses (MACs) and a multi-node fabric system implementing the same
US20220022172A1 (en) * 2019-01-02 2022-01-20 Nokia Technologies Oy Industrial automation system communication
CN115412490B (zh) * 2021-05-28 2023-09-26 戴尔产品有限公司 分组反射系统
US11934879B1 (en) * 2023-11-07 2024-03-19 Citibank, N.A. Data processing using application sequence identifiers in cloud environments

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100178040A1 (en) * 2005-08-30 2010-07-15 Matsushita Electric Industrial Co., Ltd. Digital broadcast receiving apparatus, recording apparatus, method and system
CN102209020A (zh) * 2010-03-30 2011-10-05 中国移动通信集团公司 一种业务路由方法及其装置和系统
CN102377602A (zh) * 2011-10-26 2012-03-14 国家广播电影电视总局广播科学研究院 数据流处理方法及系统
US20130003735A1 (en) * 2011-06-28 2013-01-03 Chao H Jonathan Dynamically provisioning middleboxes

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7512702B1 (en) * 2002-03-19 2009-03-31 Cisco Technology, Inc. Method and apparatus providing highly scalable server load balancing
US7930740B2 (en) * 2005-07-07 2011-04-19 International Business Machines Corporation System and method for detection and mitigation of distributed denial of service attacks
CN101060653A (zh) * 2006-04-17 2007-10-24 华为技术有限公司 无线通信系统中标识业务的实现方法及系统
CN101188537B (zh) * 2007-12-21 2010-12-15 中国科学院计算技术研究所 无线网络媒体接入控制系统中标识符实现方法及系统
US8064455B2 (en) * 2008-06-08 2011-11-22 Apple Inc. Outbound transmission of packet based on routing search key constructed from packet destination address and outbound interface
JP5544097B2 (ja) * 2009-02-23 2014-07-09 株式会社日立国際電気 ネットワーク間接続装置
CN108200225B (zh) * 2010-06-29 2022-04-12 华为技术有限公司 不对称网络地址封装
US8619773B2 (en) * 2010-07-29 2013-12-31 Cisco Technology, Inc. Service request packet including an exterior network protocol attribute
CN102404181B (zh) * 2010-09-08 2014-10-08 华为技术有限公司 应用链路状态路由的二层协议中的地址对应关系发送方法
US8989029B2 (en) * 2011-06-10 2015-03-24 Comcast Cable Communications, Llc Quality of service in packet networks
JP5398787B2 (ja) * 2011-06-22 2014-01-29 アラクサラネットワークス株式会社 仮想ネットワーク接続方法、ネットワークシステム及び装置
US8948174B2 (en) * 2011-06-29 2015-02-03 Juniper Networks, Inc. Variable-based forwarding path construction for packet processing within a network device
US8797874B2 (en) * 2011-09-09 2014-08-05 Futurewei Technologies, Inc. Apparatus and system for packet routing and forwarding in an interior network
CN103139071B (zh) * 2011-11-29 2016-07-13 华为技术有限公司 报文转发方法、装置和系统
US9304801B2 (en) * 2012-06-12 2016-04-05 TELEFONAKTIEBOLAGET L M ERRICSSON (publ) Elastic enforcement layer for cloud security using SDN
US9104492B2 (en) * 2012-09-04 2015-08-11 Wisconsin Alumni Research Foundation Cloud-based middlebox management system
US9036476B2 (en) * 2012-09-28 2015-05-19 Juniper Networks, Inc. Maintaining load balancing after service application with a network device
US9049127B2 (en) * 2013-03-11 2015-06-02 Cisco Technology, Inc. Methods and devices for providing service clustering in a trill network
US9537718B2 (en) * 2013-03-15 2017-01-03 Cisco Technology, Inc. Segment routing over label distribution protocol
US9379931B2 (en) * 2014-05-16 2016-06-28 Cisco Technology, Inc. System and method for transporting information to services in a network environment
US10237354B2 (en) * 2014-09-25 2019-03-19 Intel Corporation Technologies for offloading a virtual service endpoint to a network interface card

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100178040A1 (en) * 2005-08-30 2010-07-15 Matsushita Electric Industrial Co., Ltd. Digital broadcast receiving apparatus, recording apparatus, method and system
CN102209020A (zh) * 2010-03-30 2011-10-05 中国移动通信集团公司 一种业务路由方法及其装置和系统
US20130003735A1 (en) * 2011-06-28 2013-01-03 Chao H Jonathan Dynamically provisioning middleboxes
CN102377602A (zh) * 2011-10-26 2012-03-14 国家广播电影电视总局广播科学研究院 数据流处理方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107276900A (zh) * 2016-04-06 2017-10-20 中国移动通信集团浙江有限公司 一种互访信息的获取方法及装置
CN109218199A (zh) * 2018-11-21 2019-01-15 新华三技术有限公司 一种报文处理方法和装置

Also Published As

Publication number Publication date
US10084702B2 (en) 2018-09-25
US20160006656A1 (en) 2016-01-07
CN104488237B (zh) 2017-08-04
EP3780512B1 (en) 2023-10-25
US10911354B2 (en) 2021-02-02
EP2975808B1 (en) 2020-07-29
EP2975808A1 (en) 2016-01-20
EP3780512A1 (en) 2021-02-17
US11616720B2 (en) 2023-03-28
US20190020584A1 (en) 2019-01-17
WO2014139157A1 (zh) 2014-09-18
ES2825061T3 (es) 2021-05-14
EP2975808A4 (en) 2016-01-27
US20210083974A1 (en) 2021-03-18

Similar Documents

Publication Publication Date Title
CN104488237A (zh) 一种报文处理的方法、报文设备和系统
CN104380658B (zh) 流分类器、业务路由触发器、报文处理的方法和系统
KR102205882B1 (ko) 팻-트리 라우팅에 기반하여 별개의 인피니밴드 서브넷들 사이에서 트래픽을 라우팅하기 위한 시스템 및 방법
EP2109962B1 (en) Triple-tier anycast addressing
CN101421991B (zh) 针对拒绝服务攻击的硬件过滤支持
CN100596107C (zh) 报文转发方法以及自治系统边界路由器
CN103259726B (zh) 存储和发送mac地址表项的方法、设备及系统
CN101521631A (zh) Vpls网络报文处理方法、设备及系统
CN105051688A (zh) 经扩展的标记联网
CN104380667A (zh) 一种数据报文的路由方法和设备
CN105450525B (zh) 用于路由交换设备使用的方法和设备
JP6488426B2 (ja) マルチキャストデータパケット転送
CN102137024A (zh) 报文处理方法、出口路由设备及边界路由设备
CN101494610B (zh) 处理报文的方法及交换机
CN105791214A (zh) 一种RapidIO报文和以太网报文之间的转换方法和设备
CN103067295A (zh) 业务传输的方法、装置与系统
CN102739526A (zh) 一种高效分布式路由表的实现方法
CN103493439A (zh) 接收信息的方法、发送信息的方法及装置
CN102868775B (zh) 地址解析协议表容量的扩展方法、报文转发方法和装置
CN105939266A (zh) 一种报文的传输方法和装置
US9979561B2 (en) Systems and methods for stacking fibre channel switches with fibre channel over ethernet stacking links
CN103281205A (zh) 一种配置端口隔离信息的方法和网络设备
CN102045254B (zh) 路由表的扩展处理方法、装置和网络设备
CN104394081B (zh) 一种数据处理方法及装置
CN110932968A (zh) 一种流量转发方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant