CN106341298A - 报文发送方法及装置 - Google Patents
报文发送方法及装置 Download PDFInfo
- Publication number
- CN106341298A CN106341298A CN201510392274.4A CN201510392274A CN106341298A CN 106341298 A CN106341298 A CN 106341298A CN 201510392274 A CN201510392274 A CN 201510392274A CN 106341298 A CN106341298 A CN 106341298A
- Authority
- CN
- China
- Prior art keywords
- message
- address
- sff
- grader
- destination 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种报文发送方法及装置,其中,该方法包括:分类器接收第一报文;上述分类器确定该第一报文需要送至的第一业务功能SF;上述分类器在第一报文中添加第一SF的地址,得到第二报文;上述分类器将第二报文发送给网络虚拟边缘节点NVE。通过本发明,解决了相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题,进而实现了通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF处理的效果。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种报文发送方法及装置。
背景技术
在相关技术中,数据在进入网络时要接入大量的增值业务设备,如防病毒设备、加速设备、防火墙设备以及网络地址转换(Network Address Translation,简称为NAT)设备等。流量没有差异化的区分必须一次通过这些业务设备,从而给这些设备造成了不必要的负担,限制了服务资源的优化,配置复杂,很难实现服务配置的快速变化。
针对上述问题,目前提出了一种业务链的方式业务功能连(Service Function Chain,简称为SFC),即把所有的服务业务整合,虚拟出服务覆盖Service overlay层,形成自己的服务拓扑,和底层网络解耦合,不再受到底层网络结构的限制,架构如图1所示,图1是相关技术中的SFC架构图。流量所要经过的业务由SFC决定。SFC通过增加对每条SFC的业务功能路径标识(Service Function Path Identifier,简称为SFPID),并对报文进行分级,给不同级别的流量分配不同的SFC(由入口分级设备来做)。转发设备则依据SFC的标识来对报文进行转发。从而实现针对不同的流量,可以实施不同的业务链处理,实现差异化需求。
目前业务功能链的处理如图1所示,SF是业务功能,Classifier是分类器,对报文进行分类,给报文添加SFC头部,携带报文应该走业务功能路径标识SFPID信息。SFF是业务功能转发器,依据报文中携带的SFPID选择不同的SF或者SFF对报文进行转发,即从分类器或SFF收到的报文,SFF会依据报文的SFPID转发到属于这条业务链路径的SF;从SF收到的报文,SFF会依据报文的SFPID选择出下一跳,然后根据下一跳的地址将报文送到下一个SFF上。
在互联网工程任务组(Internet Engineering Task Force,简称为IETF)的网络虚拟化覆盖(Network Virtualization Overlays 3,简称为NVO3)工作组中,提出了网络虚拟边缘(Network Virtualization Edge,简称为NVE)功能对报文进行封装后,接入到层叠网络中进行转发。当流量要进入到层叠网络时,需要经过NVE设备对报文进行封装,封装一个层叠网络的外层地址。当报文到达目的NVE后,会先对报文解封装再发给目的主机。当在层叠网络中实现业务链的处理时,则需要确定在不同的虚拟网络中走哪条业务链,需要有层叠网上各个虚拟网络和各条业务链的映射。
当在一个现有的层叠网络中加入SFC功能,原有的NVE可能并不知道SFC功能,需要在主机的虚拟交换机(Virtual switch,简称为Vswitch)上通过软件增加对SFC的支持。此时NVE和SFF在物理上可能是分离,则存在NVE无法知道SFC的下一跳,而直接依据报文的目的地址将报文通过隧道转发到目的主机所在的NVE上,无法保证能通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理,从而导致整条业务功能链路径的错误。
针对相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题,目前尚未提出有效的解决方案。
发明内容
本发明提供了一种报文发送方法及装置,以至少解决相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题。
根据本发明的一个方面,提供了一种报文发送方法,包括:分类器接收第一报文;所述分类器确定所述第一报文需要送至的第一业务功能SF;所述分类器在所述第一报文中添加所述第一SF的地址,得到第二报文;所述分类器将所述第二报文发送给网络虚拟边缘节点NVE。
可选地,所述分类器确定所述第一报文需要送至的第一业务功能SF包括:所述分类器根据所述第一报文的头部信息对所述第一报文进行分类;所述分类器根据所述分类结果和源站点所属的虚拟网络标识VNID为所述第一报文分配业务功能路径标识SFPID;所述分类器根据所述SFPID确定所述第一SF。
可选地,所述分类器在所述第一报文中添加所述第一SF的地址包括以下至少之一:所述分类器将所述第一报文的目的地址替换为所述第一SF的地址;所述分类器在所述第一报文外面封装一个外层封装,其中,所述外层封装的目的地址为所述第一SF的地址。
根据本发明的另一方面,提供了一种报文发送方法,包括:业务功能转发器SFF在接收到第三报文后,判断是否存在所述第三报文需要送至的第三SF;当判断结果为存在所述第三SF时,所述SFF将所述第三报文的目的地址处理为所述第三SF的地址,得到第四报文;当判断结果为不存在所述第三SF时,所述SFF将所述第三报文的目的地址处理为目的站点的地址,得到第四报文;所述SFF发送所述第四报文。
可选地,所述SFF判断是否存在所述第三报文需要送至的第三SF包括:所述SFF根据业务功能路径标识SFPID查询是否存在所述第三报文需要送至的第三SF,其中,所述SFPID为分类器预先分配的且携带在所述第三报文的头部中;当根据所述SFPID查询到所述第三SF的地址时,所述SFF确定存在所述第三SF;当根据所述SFPID查询不到所述第三SF的地址时,所述SFF确定不存在所述第三SF。
可选地,所述SFF将所述第三报文的目的地址处理为所述第三SF的地址包括以下至少之一:所述SFF将所述第三报文的目的地址替换为所述第三SF的地址;所述SFF在所述第三报文上封装一层外层封装,其中,封装的所述外层封装的目的地址为所述第三SF的地址。
可选地,所述SFF将所述第三报文的目的地址处理为目的站点的地址包括:获取预先保存在所述第三报文的头部中的目的站点的地址;将所述目的站点的地址设置为所述第三报文的目的地址。
根据本发明的另一方面,提供了一种报文发送装置,所述装置应用于分类器中,包括:接收模块,用于接收第一报文;确定模块,用于确定所述第一报文需要送至的第一业务功能SF;添加模块,用于在所述第一报文中添加所述第一SF的地址,得到第二报文;第一发送模块,用于将所述第二报文发送给网络虚拟边缘节点NVE。
可选地,所述确定模块包括:分类单元,用于根据所述第一报文的头部信息对所述第一报文进行分类;分配单元,用于根据所述分类结果和源站点所属的虚拟网络标识VNID为所述第一报文分配业务功能路径标识SFPID;确定单元,用于根据所述SFPID确定所述第一SF。
可选地,所述添加模块包括以下至少之一:第一替换单元,用于将所述第一报文的目的地址替换为所述第一SF的地址;第一封装单元,用于在所述第一报文外面封装一个外层封装,其中,所述外层封装的目的地址为所述第一SF的地址。
根据本发明的另一方面,提供了一种报文发送装置,所述装置应用于业务转发器SFF中,包括:判断模块,用于在接收到第三报文后,判断是否存在所述第三报文需要送至的第三SF;处理模块,用于当所述判断模块的判断结果为存在所述第三SF时,将所述第三报文的目的地址处理为所述第三SF的地址,得到第四报文;和/或,当所述判断模块的判断结果为不存在所述第三SF时,将所述第三报文的目的地址处理为目的站点的地址,得到第四报文;第二发送模块,用于发送所述第四报文。
可选地,所述判断模块包括:查询单元,用于根据业务功能路径标识SFPID查询是否存在所述第三报文需要送至的第三SF,其中,所述SFPID为分类器预先分配的且携带在所述第三报文的头部中;确定单元,用于当根据所述SFPID查询到所述第三SF的地址时,确定存在所述第三SF;和/或,当根据所述SFPID查询不到所述第三SF的地址时,确定不存在所述第三SF。
可选地,在将所述第三报文的目的地址处理为所述第三SF的地址时,所述处理模块包括以下至少之一:第二替换单元,用于将所述第三报文的目的地址替换为所述第三SF的地址;第二封装单元,用于在所述第三报文上封装一层外层封装,其中,封装的所述外层封装的目的地址为所述第三SF的地址。
可选地,在将所述第三报文的目的地址处理为目的站点的地址时,所述处理模块包括:获取单元,用于获取预先保存在所述第三报文的头部中的目的站点的地址;设置单元,用于将所述目的站点的地址设置为所述第三报文的目的地址。
通过本发明,采用分类器接收第一报文;所述分类器确定所述第一报文需要送至的第一业务功能SF;所述分类器在所述第一报文中添加所述第一SF的地址,得到第二报文;所述分类器将所述第二报文发送给网络虚拟边缘节点NVE,解决了相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题,进而实现了通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF处理的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是相关技术中的SFC架构图;
图2是根据本发明实施例的第一种报文发送方法的流程图;
图3是根据本发明实施例的第二种报文发送方法的流程图;
图4是根据本发明实施例的第一种报文发送装置的结构框图;
图5是根据本发明实施例的第一种报文发送装置中确定模块44的结构框图;
图6是根据本发明实施例的第一种报文发送装置中添加模块46的结构框图;
图7是根据本发明实施例的第二种报文发送装置的结构框图;
图8是根据本发明实施例的第二种报文发送装置中判断模块72的结构框图;
图9是根据本发明实施例的第二种报文发送装置中处理模块74的结构框图一;
图10是根据本发明实施例的第二种报文发送装置中处理模块74的结构框图二;
图11是根据本发明实施例的组网结构示意图一;
图12是根据本发明实施例的组网结构示意图二。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种报文发送方法,图2是根据本发明实施例的第一种报文发送方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,分类器接收第一报文;
步骤S204,上述分类器确定该第一报文需要送至的第一业务功能SF;
步骤S206,上述分类器在第一报文中添加第一SF的地址,得到第二报文;
步骤S208,上述分类器将第二报文发送给网络虚拟边缘节点NVE。
通过上述步骤,分类器在将报文发送给NVE之前,会在该报文中添加第一SF的地址,从而使得接收该报文的NVE能够确定该报文的SFC的下一跳,从而将该报文转发到正确的下一跳SFF上进行SF的处理,实现了将下一跳信息携带给对SFC不感知的NVE,从而实现一个现有层叠网络对SFC技术的兼容。解决了相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题,进而实现了通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF处理的效果。
在一个可选的实施例中,在确定第一报文需要送至的第一SF时,有多种确定方式,下面以一种为例进行说明:分类器根据第一报文的头部信息对第一报文进行分类;该分类器根据分类结果和源站点所属的虚拟网络标识VNID为第一报文分配业务功能路径标识SFPID;该分类器根据SFPID确定第一SF。
在一个可选的实施例中,上述分类器在第一报文中添加第一SF的地址包括以下至少之一:该分类器将第一报文的目的地址替换为第一SF的地址;该分类器在第一报文外面封装一个外层封装,其中,该外层封装的目的地址为第一SF的地址。其中,当采用第一种添加方式时,由于第一报文的原目的地址为目的主机的地址,因此,在将目的主机的地址替换为第一的地址后,可以将该目的主机的地址保存在第一报文的SFC头部中,例如,可以保存在SFC头部的元数据metadata字段中。
图3是根据本发明实施例的第二种报文发送方法的流程图,如图3所示,该流程包括如下步骤:
步骤S302,业务功能转发器SFF在接收到第三报文后,判断是否存在该第三报文需要送至的第三SF;
步骤S304,当判断结果为存在第三SF时,该SFF将第三报文的目的地址处理为第三SF的地址,得到第四报文;和/或,当判断结果为不存在第三SF时,该SFF将第三报文的目的地址处理为目的站点的地址,得到第四报文;
步骤S306,该SFF发送第四报文。
其中,SFF在发送第四报文时,可以是将该第四报文发送给NVE。通过上述步骤,SFF在发送第三报文之前,会对该第三报文的目的地址进行处理,将该第三报文的目的地址处理为正确的下一跳的SF的地址或者处理为目的站点的地址,从而使得接收第四报文的设备(如,NVE)能够获知第四报文的下一跳的地址(如,第三SF的地址),从而将第四报文转发到正确的下一跳上,解决了相关技术中存在的无法实现通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF的处理的问题,进而实现了通过层叠网络的隧道将报文传送到正确的下一跳SFF上进行SF处理的效果。
在一个可选的实施例中,上述SFF判断是否存在第三报文需要送至的第三SF包括:SFF根据业务功能路径标识SFPID查询是否存在第三报文需要送至的第三SF,其中,该SFPID为分类器预先分配的且携带在第三报文的头部中;当根据SFPID查询到第三SF的地址时,SFF确定存在第三SF;当根据SFPID查询不到第三SF的地址时,该SFF确定不存在第三SF。在该实施例中,可以根据SFPID查询是否存在第三SF,当然也可以利用其他的方式来获知是否存在第三SF,例如,在发送报文时,在该报文中添加一个路由表,其中,路由表中记录着报文需要经过的SF,从而转发报文的设备可以根据路由表确定报文的下一跳,进而确定是否存在第三SF。
在一个可选的实施例中,SFF将第三报文的目的地址处理为第三SF的地址包括以下至少之一:SFF将第三报文的目的地址替换为第三SF的地址;SFF在第三报文上封装一层外层封装,其中,封装的该外层封装的目的地址为第三SF的地址。上述两种方式仅仅是示例,也可以采用其他的方式将第三SF的地址记录在第三报文中,在此,不一一列举。
在一个可选的实施例中,上述SFF将第三报文的目的地址处理为目的站点的地址包括:获取预先保存在第三报文的头部中的目的站点的地址;将该目的站点的地址设置为第三报文的目的地址。在前述的实施例中可以确定,分类器在对报文进行处理时,会将目的站点的地址保存在报文的SFC头部中(例如,SFC头部的metadata字段中),当需要还原目的站点的地址时,可以将SFC头部中保存的目的站点的地址还原出作为第三报文的目的地址,进而对报文进行转发。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种报文发送装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的第一种报文发送装置的结构框图,如图4所示,该装置可以应用于分类器中,包括接收模块42、确定模块44、添加模块46和第一发送模块48,下面对该装置进行说明。
接收模块42,用于接收第一报文;确定模块44,连接至上述接收模块42,用于确定第一报文需要送至的第一业务功能SF;添加模块46,连接至上述确定模块44,用于在第一报文中添加第一SF的地址,得到第二报文;第一发送模块48,连接至上述添加模块46,用于将第二报文发送给网络虚拟边缘节点NVE。
图5是根据本发明实施例的第一种报文发送装置中确定模块44的结构框图,如图5所示,该确定模块44包括分类单元52、分配单元54和确定单元56,下面对该确定模块44进行说明。
分类单元52,用于根据第一报文的头部信息对第一报文进行分类;分配单元54,连接至上述分类单元52,用于根据分类结果和源站点所属的虚拟网络标识VNID为第一报文分配业务功能路径标识SFPID;确定单元56,连接至上述分配单元54,用于根据SFPID确定第一SF。
图6是根据本发明实施例的第一种报文发送装置中添加模块46的结构框图,如图6所示,该添加模块46包括第一替换单元62和/或第一封装单元64,下面对该添加模块46进行说明。
第一替换单元62,用于将第一报文的目的地址替换为第一SF的地址;第一封装单元64,连接至上述第一替换单元62,用于在第一报文外面封装一个外层封装,其中,该外层封装的目的地址为第一SF的地址。
图7是根据本发明实施例的第二种报文发送装置的结构框图,如图7所示,该装置可以应用于业务转发器SFF中,包括判断模块72、处理模块74、第二发送模块76,下面对该装置进行说明。
判断模块72,用于在接收到第三报文后,判断是否存在第三报文需要送至的第三SF;处理模块74,连接至上述判断模块72,用于当判断模块72的判断结果为存在第三SF时,将第三报文的目的地址处理为第三SF的地址,得到第四报文;和/或,当判断模块72的判断结果为不存在第三SF时,将第三报文的目的地址处理为目的站点的地址,得到第四报文;第二发送模块76,连接至上述处理模块74,用于发送第四报文。
图8是根据本发明实施例的第二种报文发送装置中判断模块72的结构框图,如图8所示,该判断模块72包括查询单元82和确定单元84,下面对该判断模块72进行说明。
查询单元82,用于根据业务功能路径标识SFPID查询是否存在第三报文需要送至的第三SF,其中,该SFPID为分类器预先分配的且携带在第三报文的头部中;确定单元84,连接至上述程序单元82,用于当根据SFPID查询到第三SF的地址时,确定存在第三SF;和/或,当根据SFPID查询不到第三SF的地址时,确定不存在第三SF。
图9是根据本发明实施例的第二种报文发送装置中处理模块74的结构框图一,如图9所示,该处理模块74包括第二替换单元92和/或,第二封装单元94,下面对该处理模块74进行说明。
第二替换单元92,用于在将第三报文的目的地址处理为第三SF的地址时,将第三报文的目的地址替换为第三SF的地址;第二封装单元94,用于在将第三报文的目的地址处理为第三SF的地址时,在第三报文上封装一层外层封装,其中,封装的外层封装的目的地址为第三SF的地址。
图10是根据本发明实施例的第二种报文发送装置中处理模块74的结构框图二,如图10所示,该处理模块74包括获取单元102和设置单元104,下面对该处理模块74进行说明。
获取单元102,用于在将第三报文的目的地址处理为目的站点的地址时,获取预先保存在第三报文的头部中的目的站点的地址;设置单元104,连接至上述获取单元102,用于将目的站点的地址设置为第三报文的目的地址。
上述实施例中,是从分类器和SFF侧单独进行描述的,下面结合分类器、NVE、SFF对本发明实施例中的方案进行整体说明。
本发明实施例的目的在于,实现层叠网和业务链的互连互通,并且针对SFF和NVE分离的情况下,提供一种能保证业务功能链路径正确的方法,保证SFC接入层叠网络的互连互通。本发明实施例中采用以下技术方案:
分类器和SFF在将报文发送到层叠网络之前,依据SPFID查找到报文的下一跳,可选的将原报文的目的地址(MAC、IP)保存在SFC头部的Metadata中。同时,对该SFC报文的头部封装目的地址为该你SFC链的下一跳SF对应的地址。
NVE收到后直接根据报文的目的地址找到隧道的映射信息,从而对报文进行隧道封装后走隧道转发到上述的下一跳SF上。
当报文到达SFC的最后一个SFF时,最后这个SFF会把保存了最终目的地址的从SFC头部的metadata中恢复出来放在报文的目的地址字段中。接最后这个SFF的NVE收到了这样的报文后再继续对报文做内部目的地址到外部目的地址的映射,走隧道转发到最后目的主机。
实施例一:
图11是根据本发明实施例的组网结构示意图一,源设备(对应于图11中的源站点)发送流量到目的设备,该流量需要经过业务功能实体SF21和业务功能实体SF31,处理之后再达到目的设备1(对应于图11中的目的站点)。业务功能实体SF21和业务功能实体SF31形成一条业务功能链SFC。本实施例中从源主机(对应于图11中的源站点)发送到目的主机(对应于图11中的目的站点)的报文,该流量应该走的路径为:源主机→分级设备(同上述的分类器)→NVE1→NVE2→业务功能实体SF21→NVE2→NVE3→业务功能实体31→NVE4→目的主机(该路径如图11中的箭头线所示)。
报文(对应于上述的第一报文)从源主机发送消息给目的主机,消息报文中的目的地址是目的主机的地址,源地址是源主机的地址。报文在接入网络之前会经过一个分类器设备对报文进行分类。分类器依据报文的头部等信息对报文进行分类,并将分类结果以及该源主机所属的虚拟网络VNID给该报文分配一个SFPID,并以SFC头部的形式存放在报文头部,VNID和SFPID之间对应一个映射关系,同时将VNID的值保存在SFC的metadata中(如Tenant TLV)。同时,分类器根据这个SFC头部中的SFPID查询到报文要走到下一个业务功能SF的地址,将报文的目的地址改为这个业务功能SF21的地址(目的地址替换为SF21的地址的报文对应于上述的第二报文),同时将目的主机的地址保存在SFC头部的metadata字段。
携带有SFC头部的报文到达层叠网络边缘,即到达NVE1时,NVE1会给这个报文做一层外层地址的封装。首先会依据源主机所属的虚拟网络找到对应的VNID,并且依据报文的目的地址查找映射表,依据SF21地址找到外层地址是NVE2地址,因此NVE1在将报文转发给NVE2时,会封装NVE2的地址作为外层地址的目的地址,以及VNID在报文的外层头部中,然后报文走该虚拟网络的隧道转发到NVE2。
NVE2收到后会剥离外层封装,同时外层封装中VNID的值映射一个VLAN标识VID携带在报文中,然后依据报文内层的头部目的地址SF21将报文首先转发到SFF2上。SFF2会再依据SFC头部的SFPID转发到SF21上进行业务的处理。
SF21处理完成后,会将报文返回给SFF2(SFF2接收到的报文对应于上述的第三报文)。SFF2从业务功能侧收到报文要进一步转发时,需要再次依据SFPID查询到下一跳业务功能的地址,本实施例该条SFC的下一跳是SF31。所以SFF2会将SF31地址替换为内层的目的地址,然后再转发给NVE2(目的地址替换成SF31地址的报文对应于上述的第四报文)。
NVE2收到了报文后会依据内层地址的SF31查找映射表,找到内层地址到外层地址的映射为NVE3。同时依据报文中携带的VID映射到VNID,因此NVE2把NVE3的地址作为外层目的地址,以及VNID,将报文进行封装后转发。
报文转发到NVE3后,NVE3收到后会剥离外层封装,同时外层封装中VNID的值映射一个VLAN标识VID携带在报文中,然后依据报文内层的头部目的地址SF31将报文首先转发到SFF3上。SFF3会再依据SFC头部的SFPID转发到SF31上进行业务的处理。
SF31处理完成后,会将报文返回给SFF3(SFF3接收到的报文对应于上述的第三报文)。SFF3从业务功能侧收到报文要进一步转发时,发现本业务功能实体就是好这条SFC链的最后一条,因此SFF3会将原来保存在SFC头部的metadata中的目的主机恢复到内层目的地址上,同时剥离SFC头部后将报文转发给NVE3(恢复了目的主机地址的报文对应于上述的第四报文)。
NVE3收到从业务功能实体侧过来的报文后会依据内层地址(目的主机)查找映射表,找到内层地址到外层地址的映射为NVE3,同时依据报文的VID映射到VNID,因此NVE2把NVE3的地址作为外层目的地址,以及VNID,将报文进行封装后转发。
报文通过隧道转发到NVE4后,NVE4剥离外层地址,依据内层地址的目的地址转发给目的主机。
实施例二
图12是根据本发明实施例的组网结构示意图二,如图12所示,源设备发送流量到目的设备,该流量需要经过业务功能实体SF21和业务功能实体SF31,处理之后再达到目的设备1。业务功能实体SF21和业务功能实体SF31形成一条业务功能链SFC。本实施例中从源主机发送到目的主机的报文,该流量的应该走的路径为:源主机→NVE1→分级设备(同上述的分类器)→NVE1→NVE2→业务功能实体SF21→NVE2→NVE3→业务功能实体31→NVE4→目的主机。
该场景和实施例一类似,但流量是上了层叠网络之后再进入SFC处理,分类设备连接在层叠网络上。其处理场景和实施例一几乎一样,但NVE1剥离外层封装把流量发给分类器Classifier时,也需要由VNID映射一个VID携带在报文中。
实施例三
本实施例中,源主机发出的流量经过Classifier时,Classifier将原始报文直接进行封装,外面封装一个外层封装,该外层封装的源地址是源主机地址,外层封装的目的地址是SF21的地址。当封装后的报文到达NVE1后,NVE1会根据外层的目的地址映射到NVE2上,因此报文在NVE1会再次做一个隧道的封装后通过隧道转发达到NVE2,并解隧道封装后发给SFF2,SFF2解开外层封装后发给SF21处理。
SF21处理完成后,再次到达SFF2,经过查找下一跳找到下一跳是SF31,因此SFF2会对报文封装一个外层地址,源地址仍然是源主机地址,目的地址改为SF31的地址,再发送给NVE2。NVE2依据SF31的目的地址映射到NVE3。
同样的流程NVE3剥离隧道封装转发给SF31处理后,SF31将处理后的报文送到SFF3。SFF3由于是SFC链的最后一跳,因此会将外层的封装剥离,还原出最初的报文送给NVE3,NVE3会依据目的主机地址将报文再次映射封装为NVE4后再通过隧道转发。NVE4收到后剥离外层地址。
实施例四:
本实施例中,结合实施例三,Classifier将原始报文直接进行封装,外面封装一个外层封装,该外层封装的源地址是源主机地址,外层封装的目的地址是SFF2的地址。
报文达到SFF2后,SFF2会将报文的这个外层地址剥离后再送给SF21处理。SFF2收到SF21处理好的报文后,查找到下一跳的SFF3,因此将SFF3的地址作为外层封装的目的地址再进行转发。
但在本实施例中,需要SFF和NVE之间有交互,SFF会通告其所连接的NVE该SFF的地址信息。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,分类器接收第一报文;
S2,上述分类器确定该第一报文需要送至的第一业务功能SF;
S3,上述分类器在第一报文中添加第一SF的地址,得到第二报文;
S4,上述分类器将第二报文发送给网络虚拟边缘节点NVE。
可选地,上述存储介质还可以被设置为存储用于执行以下步骤的程序代码:
S1,业务功能转发器SFF在接收到第三报文后,判断是否存在该第三报文需要送至的第三SF;
S2,当判断结果为存在第三SF时,该SFF将第三报文的目的地址处理为第三SF的地址,得到第四报文;和/或,当判断结果为不存在第三SF时,该SFF将第三报文的目的地址处理为目的站点的地址,得到第四报文;
S3,该SFF发送第四报文。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
与相关技术相比较,本发明实施例中引入了一种在层叠网络接入SFC域的解决方案,可以自如在层叠网络中实现SFC,而无需受到设备的限制,尤其对数据中心网络的虚拟化实现有非常重要的现实意义。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种报文发送方法,其特征在于,包括:
分类器接收第一报文;
所述分类器确定所述第一报文需要送至的第一业务功能SF;
所述分类器在所述第一报文中添加所述第一SF的地址,得到第二报文;
所述分类器将所述第二报文发送给网络虚拟边缘节点NVE。
2.根据权利要求1所述的方法,其特征在于,所述分类器确定所述第一报文需要送至的第一业务功能SF包括:
所述分类器根据所述第一报文的头部信息对所述第一报文进行分类;
所述分类器根据所述分类结果和源站点所属的虚拟网络标识VNID为所述第一报文分配业务功能路径标识SFPID;
所述分类器根据所述SFPID确定所述第一SF。
3.根据权利要求1所述的方法,其特征在于,所述分类器在所述第一报文中添加所述第一SF的地址包括以下至少之一:
所述分类器将所述第一报文的目的地址替换为所述第一SF的地址;
所述分类器在所述第一报文外面封装一个外层封装,其中,所述外层封装的目的地址为所述第一SF的地址。
4.一种报文发送方法,其特征在于,包括:
业务功能转发器SFF在接收到第三报文后,判断是否存在所述第三报文需要送至的第三SF;
当判断结果为存在所述第三SF时,所述SFF将所述第三报文的目的地址处理为所述第三SF的地址,得到第四报文;
当判断结果为不存在所述第三SF时,所述SFF将所述第三报文的目的地址处理为目的站点的地址,得到第四报文;
所述SFF发送所述第四报文。
5.根据权利要求4所述的方法,其特征在于,所述SFF判断是否存在所述第三报文需要送至的第三SF包括:
所述SFF根据业务功能路径标识SFPID查询是否存在所述第三报文需要送至的第三SF,其中,所述SFPID为分类器预先分配的且携带在所述第三报文的头部中;
当根据所述SFPID查询到所述第三SF的地址时,所述SFF确定存在所述第三SF;
当根据所述SFPID查询不到所述第三SF的地址时,所述SFF确定不存在所述第三SF。
6.根据权利要求4所述的方法,其特征在于,所述SFF将所述第三报文的目的地址处理为所述第三SF的地址包括以下至少之一:
所述SFF将所述第三报文的目的地址替换为所述第三SF的地址;
所述SFF在所述第三报文上封装一层外层封装,其中,封装的所述外层封装的目的地址为所述第三SF的地址。
7.根据权利要求4所述的方法,其特征在于,所述SFF将所述第三报文的目的地址处理为目的站点的地址包括:
获取预先保存在所述第三报文的头部中的目的站点的地址;
将所述目的站点的地址设置为所述第三报文的目的地址。
8.一种报文发送装置,其特征在于,应用于分类器中,包括:
接收模块,用于接收第一报文;
确定模块,用于确定所述第一报文需要送至的第一业务功能SF;
添加模块,用于在所述第一报文中添加所述第一SF的地址,得到第二报文;
第一发送模块,用于将所述第二报文发送给网络虚拟边缘节点NVE。
9.根据权利要求8所述的装置,其特征在于,所述确定模块包括:
分类单元,用于根据所述第一报文的头部信息对所述第一报文进行分类;
分配单元,用于根据所述分类结果和源站点所属的虚拟网络标识VNID为所述第一报文分配业务功能路径标识SFPID;
确定单元,用于根据所述SFPID确定所述第一SF。
10.根据权利要求8所述的装置,其特征在于,所述添加模块包括以下至少之一:
第一替换单元,用于将所述第一报文的目的地址替换为所述第一SF的地址;
第一封装单元,用于在所述第一报文外面封装一个外层封装,其中,所述外层封装的目的地址为所述第一SF的地址。
11.一种报文发送装置,其特征在于,应用于业务转发器SFF中,包括:
判断模块,用于在接收到第三报文后,判断是否存在所述第三报文需要送至的第三SF;
处理模块,用于当所述判断模块的判断结果为存在所述第三SF时,将所述第三报文的目的地址处理为所述第三SF的地址,得到第四报文;和/或,当所述判断模块的判断结果为不存在所述第三SF时,将所述第三报文的目的地址处理为目的站点的地址,得到第四报文;
第二发送模块,用于发送所述第四报文。
12.根据权利要求11所述的装置,其特征在于,所述判断模块包括:
查询单元,用于根据业务功能路径标识SFPID查询是否存在所述第三报文需要送至的第三SF,其中,所述SFPID为分类器预先分配的且携带在所述第三报文的头部中;
确定单元,用于当根据所述SFPID查询到所述第三SF的地址时,确定存在所述第三SF;和/或,当根据所述SFPID查询不到所述第三SF的地址时,确定不存在所述第三SF。
13.根据权利要求11所述的装置,其特征在于,在将所述第三报文的目的地址处理为所述第三SF的地址时,所述处理模块包括以下至少之一:
第二替换单元,用于将所述第三报文的目的地址替换为所述第三SF的地址;
第二封装单元,用于在所述第三报文上封装一层外层封装,其中,封装的所述外层封装的目的地址为所述第三SF的地址。
14.根据权利要求11所述的装置,其特征在于,在将所述第三报文的目的地址处理为目的站点的地址时,所述处理模块包括:
获取单元,用于获取预先保存在所述第三报文的头部中的目的站点的地址;
设置单元,用于将所述目的站点的地址设置为所述第三报文的目的地址。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510392274.4A CN106341298B (zh) | 2015-07-06 | 2015-07-06 | 报文发送方法及装置 |
EP16789139.9A EP3322135A4 (en) | 2015-07-06 | 2016-03-18 | PACKET TRANSMISSION METHOD AND DEVICE |
US15/742,365 US10461958B2 (en) | 2015-07-06 | 2016-03-18 | Packet transmission method and apparatus |
PCT/CN2016/076787 WO2016177145A1 (zh) | 2015-07-06 | 2016-03-18 | 报文发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510392274.4A CN106341298B (zh) | 2015-07-06 | 2015-07-06 | 报文发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106341298A true CN106341298A (zh) | 2017-01-18 |
CN106341298B CN106341298B (zh) | 2019-03-22 |
Family
ID=57217500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510392274.4A Expired - Fee Related CN106341298B (zh) | 2015-07-06 | 2015-07-06 | 报文发送方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10461958B2 (zh) |
EP (1) | EP3322135A4 (zh) |
CN (1) | CN106341298B (zh) |
WO (1) | WO2016177145A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616450A (zh) * | 2018-03-08 | 2018-10-02 | 烽火通信科技股份有限公司 | 一种基于sdn的ip网络实现约束路径转发的方法 |
CN109787877A (zh) * | 2017-11-10 | 2019-05-21 | 智邦科技股份有限公司 | 箱型交换机、网络接口卡、及封包转送的管理方法 |
CN111464443A (zh) * | 2020-03-10 | 2020-07-28 | 中移(杭州)信息技术有限公司 | 基于服务功能链的报文转发方法、装置、设备及存储介质 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10397108B2 (en) * | 2016-01-25 | 2019-08-27 | Futurewei Technologies, Inc. | Service function chaining across multiple subnetworks |
US10382596B2 (en) * | 2016-06-23 | 2019-08-13 | Cisco Technology, Inc. | Transmitting network overlay information in a service function chain |
US10491520B2 (en) * | 2017-04-06 | 2019-11-26 | Ca, Inc. | Container-based software appliance |
CN110324165B (zh) * | 2018-03-30 | 2021-05-11 | 华为技术有限公司 | 网络设备的管理方法、装置及系统 |
CN111988266B (zh) * | 2019-05-24 | 2022-05-17 | 华为技术有限公司 | 一种处理报文的方法 |
US10972389B2 (en) * | 2019-07-17 | 2021-04-06 | International Business Machines Corporation | Next-hop component selection along a service function path |
WO2021037358A1 (en) * | 2019-08-28 | 2021-03-04 | Huawei Technologies Co., Ltd. | Virtual local presence based on l3 virtual mapping of remote network nodes |
WO2021214520A1 (en) * | 2020-04-22 | 2021-10-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Radio access network (ran) architecture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013067466A1 (en) * | 2011-11-03 | 2013-05-10 | Huawei Technologies Co., Ltd. | Border gateway protocol extension for the host joining/leaving a virtual private network |
CN104518940A (zh) * | 2014-10-27 | 2015-04-15 | 华为技术有限公司 | 实现nvo3网络与mpls网络之间通信的方法和装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8565248B2 (en) * | 2008-06-26 | 2013-10-22 | Cisco Technology, Inc. | Pure control-plane approach for on-path connection admission control operations in multiprotocol label switching virtual private networks |
US9143408B2 (en) * | 2012-07-30 | 2015-09-22 | Hewlett-Packard Development Company, L.P. | Interprovider virtual private network path identification |
CN103200069B (zh) | 2013-03-29 | 2016-01-27 | 华为技术有限公司 | 一种报文处理的方法和设备 |
WO2014169251A1 (en) | 2013-04-12 | 2014-10-16 | Huawei Technologies Co., Ltd. | Service chain policy for distributed gateways in virtual overlay networks |
US9825856B2 (en) * | 2014-01-06 | 2017-11-21 | Futurewei Technologies, Inc. | Service function chaining in a packet network |
US9736053B2 (en) * | 2014-03-25 | 2017-08-15 | Nec Corporation | Layer 2 path tracing through context encoding in software defined networking |
-
2015
- 2015-07-06 CN CN201510392274.4A patent/CN106341298B/zh not_active Expired - Fee Related
-
2016
- 2016-03-18 EP EP16789139.9A patent/EP3322135A4/en not_active Withdrawn
- 2016-03-18 WO PCT/CN2016/076787 patent/WO2016177145A1/zh active Application Filing
- 2016-03-18 US US15/742,365 patent/US10461958B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013067466A1 (en) * | 2011-11-03 | 2013-05-10 | Huawei Technologies Co., Ltd. | Border gateway protocol extension for the host joining/leaving a virtual private network |
CN104518940A (zh) * | 2014-10-27 | 2015-04-15 | 华为技术有限公司 | 实现nvo3网络与mpls网络之间通信的方法和装置 |
Non-Patent Citations (2)
Title |
---|
C.WANG等: "IPv6 Service function Chain", 《DRAFT-WANG-6MAN-IPV6-SERVICE-FUNCTION-CHAIN-00》 * |
M. BOUCADAIR等: "service function chaining:framework and architecture", 《DRAFT-BOUCADAIR-SFC-FRAMEWORK-02》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109787877A (zh) * | 2017-11-10 | 2019-05-21 | 智邦科技股份有限公司 | 箱型交换机、网络接口卡、及封包转送的管理方法 |
CN109787877B (zh) * | 2017-11-10 | 2020-12-25 | 智邦科技股份有限公司 | 箱型交换机、网络接口卡、及封包转送的管理方法 |
CN108616450A (zh) * | 2018-03-08 | 2018-10-02 | 烽火通信科技股份有限公司 | 一种基于sdn的ip网络实现约束路径转发的方法 |
CN108616450B (zh) * | 2018-03-08 | 2020-11-06 | 烽火通信科技股份有限公司 | 一种基于sdn的ip网络实现约束路径转发的方法 |
CN111464443A (zh) * | 2020-03-10 | 2020-07-28 | 中移(杭州)信息技术有限公司 | 基于服务功能链的报文转发方法、装置、设备及存储介质 |
CN111464443B (zh) * | 2020-03-10 | 2022-06-28 | 中移(杭州)信息技术有限公司 | 基于服务功能链的报文转发方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2016177145A1 (zh) | 2016-11-10 |
EP3322135A4 (en) | 2019-02-27 |
US10461958B2 (en) | 2019-10-29 |
US20180198643A1 (en) | 2018-07-12 |
CN106341298B (zh) | 2019-03-22 |
EP3322135A1 (en) | 2018-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106341298A (zh) | 报文发送方法及装置 | |
US10237177B2 (en) | Transfer device and transfer system | |
CN110999265B (zh) | 管理云计算服务端点和虚拟机之间的网络连接性 | |
CN106302206A (zh) | 报文的转发处理方法、装置及系统 | |
CN102301663A (zh) | 一种报文处理方法及相关设备 | |
CN102792651B (zh) | 在mac层应用服务路径路由选择的装置 | |
CN104639470A (zh) | 流标识封装方法及系统 | |
CN108574638B (zh) | 一种数据报文的转发方法和设备 | |
CN112491701B (zh) | 转发报文方法和装置 | |
US20130223287A1 (en) | Layer two extensions | |
US20110235647A1 (en) | Communication system and control method for communication system | |
CN107070789A (zh) | 主动‑主动pbb‑evpn冗余的流量黑洞避免和快速融合 | |
CN103259724A (zh) | 一种mpls vpn的实现方法、系统及客户边缘设备 | |
US20150341263A1 (en) | Associating internet protocol (ip) addresses with ethernet virtualisation interconnection (evi) links | |
CN103780470B (zh) | 一种is‑is的信息同步方法和装置 | |
CN105991433A (zh) | 三层虚拟专用网接入二层虚拟专用网的方法和装置 | |
CN101110746B (zh) | 运营商边缘设备、城域以太接入网及其处理数据的方法 | |
KR101155386B1 (ko) | 네트워크에서 데이터 유닛을 라우팅하기 위한 장치 및 방법 | |
CN102984043B (zh) | 组播数据流的转发方法及装置 | |
CN105681198A (zh) | 一种业务链处理方法、设备及系统 | |
US20230006917A1 (en) | Route Determining Method and Apparatus and Network Device | |
CN105812257A (zh) | 业务链路由管理系统及其使用方法 | |
CN102045233A (zh) | 一种网络通信中控制报文转发的方法和设备 | |
CN111404797A (zh) | 控制方法、sdn控制器、sdn接入点、sdn网关及ce | |
CN107294849A (zh) | 业务路径的建立方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190322 Termination date: 20210706 |
|
CF01 | Termination of patent right due to non-payment of annual fee |