CN117792982A - 报文转发方法、信息发布方法、装置、设备及存储介质 - Google Patents

报文转发方法、信息发布方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117792982A
CN117792982A CN202211181925.1A CN202211181925A CN117792982A CN 117792982 A CN117792982 A CN 117792982A CN 202211181925 A CN202211181925 A CN 202211181925A CN 117792982 A CN117792982 A CN 117792982A
Authority
CN
China
Prior art keywords
network element
forwarding node
forwarding
data flow
message
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.)
Pending
Application number
CN202211181925.1A
Other languages
English (en)
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
Priority to CN202211181925.1A priority Critical patent/CN117792982A/zh
Publication of CN117792982A publication Critical patent/CN117792982A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种报文转发方法、信息发布方法、装置、设备及存储介质,属于通信技术领域。本申请基于流量标识与业务网元中转发节点之间的映射关系来转发报文,使得数据报文转发至业务网元中哪个转发节点具有一定的确定性,即数据报文会转发至与流量标识存在映射关系的转发节点,因此满足了业务网元将报文转发至自身指定转发节点的需求。

Description

报文转发方法、信息发布方法、装置、设备及存储介质
技术领域
本申请涉及通信技术领域,特别涉及一种报文转发方法、信息发布方法、装置、设备及存储介质。
背景技术
随着通信技术和云计算技术的发展,有很多网元支持通过虚拟化技术创建至少一个转发节点,网元内部的各个转发节点之间以负载分担的方式承担转发流量的任务。
相关技术中,当一个网元接收到流量时,网元会根据流量的目的互联网协议第6版(internet protocol,IP)地址,采用哈希负载分担的方式,从下一个网元的所有转发节点中确定一个转发节点,将流量转发至下一个网元中确定出的转发节点。
采用上述方法时,流量在网元中经过哪一个转发节点具有随机性。对于需要流量在自身的所有转发节点中指定转发节点处理的网元而言,现有技术无法满足网元的这种需求。
发明内容
本申请提供了一种报文转发方法、信息发布方法、装置、设备及存储介质,能够满足业务网元将报文转发至业务网元中指定转发节点的需求。技术方案如下。
第一方面,提供了一种报文转发方法,方法包括:
路由网元接收第一报文,第一报文包括第一数据流的流量标识,第一数据流为第一报文所属的数据流;
路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点,映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系;
路由网元向第一转发节点发送第一报文。
根据第一方面的方法,由于基于流量标识与业务网元中转发节点之间的映射关系来转发报文,使得数据报文转发至业务网元中哪个转发节点具有一定的确定性,即数据报文会转发至与流量标识存在映射关系的转发节点,因此满足了业务网元将报文转发至自身指定转发节点的需求。
在一些实施方式中,第一数据流的流量标识包括应用感知网络(application-aware networking,APN)标识(identifier,ID)。
根据上述实施方式,由于APN ID包含用户ID、应用ID或者应用对网络质量的需求等信息,APN ID能实现从业务的层面标识流量的作用,因此基于APN ID与业务网元中转发节点之间的映射关系来转发报文,灵活性较高。
在一些实施方式中,第一报文包括互联网协议第6版(internet protocolversion 6,IPv6)扩展头,IPv6扩展头包括第一数据流的流量标识。
在一些实施方式中,路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点之前,方法还包括:
路由网元从第一网元接收映射关系信息,第一网元为业务网元、调度器或者控制器。
根据上述实施方式,支持业务网元按照自身需求编排映射关系信息,也支持由调度器或者控制器全局编排映射关系信息。
在一些实施方式中,方法还包括:
路由网元向第二网元发送映射关系信息,第二网元为第一报文的转发路径上位于路由网元上游的网元。
根据上述实施方式,实现将映射关系信息同步至更上游的网元,那么如果报文没有转发至路由网元,而是转发到第二网元,第二网元也能够基于映射关系信息转发至业务网元中指定的转发节点,从而匹配更多组网场景。
在一些实施方式中,映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,第二数据流与第一数据流来自不同的用户设备,第二转发节点为业务网元包括的转发节点中第一转发节点之外的转发节点,方法还包括:
路由网元接收第二报文,第二报文包括第二数据流的流量标识,第二数据流为第二报文所属的数据流;
路由网元基于第二数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第二转发节点;
路由网元向第二转发节点发送第二报文。
根据上述实施方式,由于将不同用户设备发起的数据流的流量标识与业务网元中不同的转发节点建立了映射关系,能够将不同用户设备发起的数据流引导至业务网元中不同的转发节点,从而降低不同用户之间资源抢占造成相互影响,实现不同用户转发资源隔离。
在一些实施方式中,映射关系信息还包括第一数据流的流量标识和第三转发节点之间的映射关系,第三转发节点为业务网元包括的转发节点中第一转发节点之外的转发节点,方法还包括:
路由网元接收第三报文,第三报文包括第一数据流的流量标识;
路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第三转发节点;
路由网元向第三转发节点发送第三报文。
根据上述实施方式,能够将同一用户设备发起的数据流中不同的报文转发至业务网元中不同转发节点处理,从而实现流量负载分担。
在一些实施方式中,业务网元为安全网元。
由于安全网元要求上下行流量经过同一个转发节点,否则会造成流量无法在安全网元处通过合法性检查,导致安全网元丢包。而根据上述实施方式,通过将流量标识与安全网元中的转发节点建立映射关系,能够指导流量转发至安全网元中指定的转发节点,使得上下行流量经过安全网元中同一个转发节点,从而能够满足安全网元的需求,避免业务受损。
在一些实施方式中,路由网元或业务网元中至少一项为虚拟化网元。
在一些实施方式中,第一转发节点为虚拟机或者容器。
第二方面,提供了一种报文转发方法,方法包括:
第一网元生成映射关系信息,映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系,第一转发节点为业务网元包括的转发节点;
第一网元向路由网元发送映射关系信息,映射关系信息用于指示路由网元将第一数据流转发至第一转发节点。
根据第二方面的方法,由于将流量标识与业务网元中转发节点之间的映射关系提供给路由网元,使得路由网元将数据报文转发至业务网元中哪个转发节点具有一定的确定性,即数据报文会转发至与流量标识存在映射关系的转发节点,因此满足了业务网元将报文转发至自身指定转发节点的需求。
在一些实施方式中,第一网元生成映射关系信息之前,方法还包括:
第一网元基于业务网元中至少一个转发节点分别具有的资源以及发起第一数据流的应用对网络质量的需求,从至少一个转发节点中确定第一转发节点,第一转发节点具有的资源满足需求。
根据该实施方式,由于考虑了转发节点的资源以及应用对网络质量的需求来生成映射关系信息,在应用对网络质量有要求的场景下,能够将应用发起的数据流转发至满足网络质量需求的转发节点。
在一些实施方式中,方法还包括:
响应于业务网元中每个转发节点具有的资源不满足应用对网络质量的需求,第一网元向业务网元发送扩容请求,扩容请求指示业务网元进行扩容;
第一网元接收来自业务网元的扩容响应,扩容响应指示业务网元中扩容出了第一转发节点。
根据上述实施方式,能够在不存在满足需求的转发节点的情况下,自动触发扩容。
在一些实施方式中,第一数据流的流量标识包括APN ID。
在一些实施方式中,映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,第二数据流与第一数据流具有不同的发起方,第二转发节点为业务网元包括的转发节点中第一转发节点之外的转发节点。
在一些实施方式中,映射关系信息还包括第一数据流的流量标识和第三转发节点之间的映射关系,第三转发节点为业务网元包括的转发节点中第一转发节点之外的转发节点。
在一些实施方式中,方法还包括:
第一网元从业务网元包括的多个转发节点中,随机选择两个或两个以上的转发节点,从而确定第一转发节点和第三转发节点。
根据上述实施方式,能够将数据流中的不同报文转发至不同转发节点,降低单个转发节点故障造成的影响,此外,在业务网元包括的转发节点数量较多的情况下,能降低不同用户的数据流映射的转发节点相互重合的概率,从而降低不同用户之间抢占转发节点的资源的影响。
第三方面,提供了一种报文转发装置,该报文转发装置具有实现上述第一方面或第一方面任一种可选方式的功能。该报文转发装置包括至少一个单元,至少一个单元用于实现上述第一方面或第一方面任一种可选方式所提供的方法。
在一些实施方式中,报文转发装置中的单元通过软件实现,报文转发装置中的单元是程序模块。在另一些实施方式中,报文转发装置中的单元通过硬件或固件实现。第三方面提供的报文转发装置的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。
第四方面,提供了一种信息发布装置,该信息发布装置具有实现上述第二方面或第二方面任一种可选方式的功能。该信息发布装置包括至少一个单元,至少一个单元用于实现上述第二方面或第二方面任一种可选方式所提供的方法。
在一些实施方式中,信息发布装置中的单元通过软件实现,信息发布装置中的单元是程序模块。在另一些实施例中,信息发布装置中的单元通过硬件或固件实现。第四方面提供的信息发布装置的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。
第五方面,提供了一种网络设备,该网络设备包括处理器和网络接口,该处理器用于执行指令,使得该网络设备执行上述第一方面或第一方面任一种可选方式所提供的方法,网络接口用于接收或发送报文。第五方面提供的网络设备的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。
第六方面,提供了一种网络设备,该网络设备包括处理器和网络接口,该处理器用于执行指令,使得该网络设备执行上述第二方面或第二方面任一种可选方式所提供的方法,网络接口用于发送映射关系信息。第六方面提供的网络设备的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。
第七方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,该指令在计算机上运行时,使得计算机执行上述第一方面或第一方面任一种可选方式所提供的方法。
第八方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,该指令在计算机上运行时,使得计算机执行上述第二方面或第二方面任一种可选方式所提供的方法。
第九方面,提供了一种计算机程序产品,计算机程序产品包括一个或多个计算机程序指令,当计算机程序指令被计算机加载并运行时,使得计算机执行上述第一方面或第一方面任一种可选方式所提供的方法。
第十方面,提供了一种计算机程序产品,计算机程序产品包括一个或多个计算机程序指令,当计算机程序指令被计算机加载并运行时,使得计算机执行上述第二方面或第二方面任一种可选方式所提供的方法。
第十一方面,提供一种芯片,该芯片包括可编程逻辑电路和/或程序指令,当该芯片运行时用于实现如上述第一方面或第一方面的任一可选方式所提供的方法。
第十二方面,提供一种芯片,该芯片包括可编程逻辑电路和/或程序指令,当该芯片运行时用于实现如上述第二方面或第二方面任一种可选方式所提供的方法。
第十三方面,提供了一种网络系统,该网络系统包括上述第三方面或第三方面任一种可选方式的报文转发装置以及上述第四方面或第四方面任一种可选方式的信息发布装置;或者,该网络系统包括上述第五方面或第五方面任一种可选方式的网络设备以及上述第六方面或第六方面任一种可选方式的网络设备。
附图说明
图1是本申请实施例提供的一种应用场景的示意图;
图2是本申请实施例提供的一种报文转发方法的流程图;
图3是本申请实施例提供的一种报文转发方法的流程图;
图4是本申请实施例提供的一种报文转发方法的流程图;
图5是本申请实施例提供的一种信息发布方法的流程图;
图6是本申请实施例提供的一种应用场景的示意图;
图7是本申请实施例提供的一种应用场景的示意图;
图8是本申请实施例提供的一种报文格式的示意图;
图9是本申请实施例提供的一种APN ID的格式示意图;
图10是本申请实施例提供的一种报文转发方法的示意图;
图11是本申请实施例提供的一种报文转发方法的示意图;
图12是本申请实施例提供的一种报文转发方法的示意图;
图13是本申请实施例提供的一种报文转发装置700的结构示意图;
图14是本申请实施例提供的一种信息发布装置800的结构示意图;
图15是本申请实施例提供的一种网络设备900的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
下面对本申请实施例涉及的一些术语概念做解释说明。
(1)网元
网元是指提供一种或多种服务的单元。从实现形态的角度而言,在一些实施例中,网元为虚拟化网元。虚拟化网元也称云化网元,是指通过网络功能虚拟化(networkfunction virtualization,NFV)创建的网元。例如,一个网元为一个虚拟化网络功能(virtualized network function,VNF)。可选地,虚拟化网元具有多个节点之间负载分担的能力以及扩缩容节点的能力。另一些实施例中,网元为物理网元。从实现规格的角度而言,在一些实施例中,一个网元为一个计算机设备;在另一个实施例中,一个网元为一个计算机设备集群,该计算机设备集群包括多个计算机设备(如多个网络设备),这些计算机设备可以部署在不同的位置,这些计算机设备协同工作以实现网元的功能。从网络部署位置的角度而言,可选地,网元部署在云端。例如,网元部署在边缘云、公有云、私有云或混合云中。可替代地,网元部署在局域网中。
(2)路由网元
路由网元是指承担路由转发功能的网元。路由网元也可以称为网络服务网元或者网络即服务(network as a service,NaaS)网元。在一些实施例中,路由网元为虚拟服务路由器(virtual server router,VSR)、虚拟网关(virtual gateway,VGW)、负载均衡器(load,balancer,LB)或者其他承担路由功能的虚拟化网元。在另一些实施例中,路由网元为物理路由器。
(3)VSR
VSR是一种基于云的虚拟路由器。VSR通常部署在基于硬件设备运行的虚拟化设备上或者裸金属上。例如,VSR部署在x86服务器硬件的虚拟机或者容器上。VSR通过虚拟化平台提供路由转发的功能,从而为用户提供网络通信服务。相较于传统的基于硬件的网络设备而言,VSR将互联网协议(internet protocol,IP)路由功能从特定硬件中解放出来,降低硬件成本,不再需要专有硬件平台。此外,VSR通常可以更加自由的在网络中移动。此外,VSR通常在传统路由的基础上,提供全面的网络服务功能,例如支持多租户,从而为用户提供可扩展、可编排、自动化的路由服务,保障网络的安全及性能。
(4)业务网元
业务网元是指基于接收到的数据流处理业务的网元,例如承担业务处理功能的虚拟化网元。例如,业务网元为增值业务服务(value-added service,VAS)。例如,业务网元为安全网元、云存储网元或者云桌面网元。在一些实施例中,业务网元为业务链中的业务功能(service function,SF),不同业务网元通过业务链(service function chain,SFC)连接。
(5)安全网元
安全网元是指承担网络安全防护的网元。安全网元例如为防火墙(firewall,FW)、安全网关(如路由器或交换机)、入侵检测系统(intrusion detection system,IDS)类设备、入侵防御系统(intrusion prevention system,IPS)类设备、统一威胁管理(unifiedthreat management,UTM)设备、反病毒(anti-virus,AV)设备、抗分布式拒绝服务攻击(distributed denial-of-service attack,DDoS)(anti-DDoS)设备、下一代防火墙(nextgeneration firewall,NGFW)、深度报文检测(deep packet inspection,DPI)中一项或多项的集成。
(6)节点
节点是指网元中实现一种功能的单元,或者说处理一种任务的单元。节点也可以称为网元的资源。从实现形态的角度而言,在一些实施例中,一个节点为一个虚拟化设备。例如,一个节点为一个虚拟机(virtual machine,VM)或者一个容器(如docker)。在另一些实施例中,一个节点为一个主控板或接口板。
可选地,节点是弹性扩缩容的单位。例如,扩容一个单位是指新创建一个节点,缩容一个单位是指删除一个节点。
(7)转发节点(forwarder)
转发节点是指网元中实现转发功能的单元,相当于网元的一个接口板,也可以称为网元的转发资源。在一些实施例中,网元包括控制面部分和转发面部分,转发节点为网元中的转发面部分。
(8)同一个网元中不同转发节点之间的关系
同一个网元中每个转发节点通常以负载分担的方式工作,每个转发节点的地位相同。同一个网元中每个转发节点的处理逻辑通常相同。在一些实施方式中,同一个网元中每个转发节点发布相同绑定段标识(binding segment Identification,BSID)。在一些实施例中,每个报文在一个节点完成所有的处理和转发动作,不做流量串行,从而保障处理性能,支撑池化简单管理。
(9)流量标识
流量标识是指标识一条数据流的信息。流量标识也可以称为数据流的标识或者流标识。例如,流量标识为应用感知网络(application-aware networking,APN)标识(identifier,ID)。
在一些实施例中,一条数据流中每个报文携带的流量标识相同,这一特征的作用可能在于,将同一条数据流中每个报文映射至相同的转发节点,以便同一条数据流中每个报文在转时经过的转发节点一致。在一些实施例中,上行数据流中每个报文携带的流量标识与下行数据流中每个报文携带的流量标识相同。这一特征的作用可能在于,将上行数据流中每个报文以及下行数据流中每个报文映射至相同的转发节点,以便上行数据流和下行数据流经过的转发节点一致。
从携带位置的角度而言,在一些实施例中,流量标识携带在报文的报文头中。例如,流量标识携带在报文的互联网协议第6版(internet protocol version 6,IPv6)扩展头中。
(10)应用感知网络(application-aware networking,APN)ID
APN是指利用报文自带可编程空间,将应用的信息携带进入网络,使得网络具备感知应用的能力,并为应用提供精细的网络服务和精准的网络运维。APN ID相当于在IPv6地址之外额外增加的应用的信息(应用的标识和/或应用对网络性能的需求)。APN ID包括用户ID(user ID)、应用ID、服务级别协议(service level agreement,SLA)等级以及流ID(flow ID)。用户ID为用户(如租户)的标识。应用ID为一个应用或一类应用的标识。SLA等级标识一个应用或一类应用的SLA需求。流ID为应用中某一条流的标识。APN相当于基于更上层的应用和用户信息标识流量,从而把流量和业务信息进行关联。APN ID的起始节点有可能是终端设备的应用,支持APN协议栈的设备或应用通常都可以通过APN ID标记自己发出的流量。
(11)映射关系信息
映射关系信息用于将数据流引导至指定的转发节点。映射关系信息指示至少一组数据流与转发节点之间的映射关系。示例性地,映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系。
从内容的角度,在一些实施例中,映射关系信息包括数据流的流量标识和转发节点的标识。在另一些实施例中,映射关系信息包括数据流的流量标识和出接口的标识。
转发节点的标识用于标识一个转发节点,即数据流的目的转发节点。例如,转发节点的标识为转发节点的编号、转发节点的名称或转发节点的IP地址等。
出接口的标识用于标识与数据流的目的转发节点相连的出接口。出接口的标识例如为出接口的编号、出接口的名称或出接口的IP地址等。
从指示的关系的角度,在一些实施例中,映射关系信息指示一对一的关系,即将一条数据流映射到唯一的下游转发节点。例如,映射关系信息包括一条数据流的流量标识与一个转发节点的标识之间的对应关系。映射关系信息指示一对一的关系的作用主要在于,满足将一条数据流转发至业务网元中指定的唯一转发节点的需求。在另一些实施例中,映射关系信息指示一对多的关系,即将一条数据流映射到多个下游转发节点。例如,映射关系信息包括一条数据流的流量标识与多个转发节点的标识之间的对应关系。映射关系信息指示一对多的关系的作用主要在于,满足将一条数据流转发至业务网元中指定的多个转发节点的需求,以便多个转发节点进行负载分担。在另一些实施例中,映射关系信息指示多对一的关系。例如,映射关系信息包括多条数据流的流量标识与一个转发节点的标识之间的对应关系,相当于多条数据流映射至同一个下游转发节点。映射关系中指示的关系可以根据业务网元对数据流的转发需求确定,本实施例对此不作限定。
在一些实施例中,映射关系信息为表或者键值对的形式,映射关系信息的索引(或者说键)为流量标识,映射关系信息的值为转发节点的标识或者出接口的标识。
在一些实施例中,映射关系信息指示用户与转发节点之间的映射关系,例如映射关系信息包括用户的标识与转发节点的标识之间的映射关系。这一特征的作用可能在于,将一个用户发起的数据流引导至指定的转发节点上,便于为用户规划转发路径,更灵活地编排用户的业务。
在一些实施例中,映射关系信息中不同用户的标识对应于不同转发节点的标识。这一特征的作用可能在于,将不同用户的数据流引导至不同的转发节点上,从而隔离不同用户的转发资源,满足租户隔离的需求。此外,减少一个转发节点故障影响的用户数量,避免一个转发节点故障导致所有用户的数据流均中断。
在一些实施例中,映射关系信息中一个用户的标识对应于多个转发节点的标识。这一特征的作用可能在于,由多个转发节点对同一个用户的流量进行负载分担,提升业务转发质量。此外,降低一个转发节点故障的影响。此外,降低不同用户映射的转发节点重合的概率,尽可能将不同用户的数据流散列开,降低不同用户之间资源抢占的影响。
下面对本申请实施例的应用场景举例说明。
图1是本申请实施例提供的一种应用场景的示意图。图1所示的场景包括用户设备11、路由网元12以及业务网元13。
用户设备11是指用户侧的设备。用户设备11为数据流的发起方。用户设备11包括而不限于用户驻地设备(customer premises equipment,CPE)、个人计算机、移动电话、服务器、笔记本电脑、IP电话、摄像头、平板电脑、可穿戴设备。路由网元12用于将来自用户设备11的数据流转发至业务网元13。业务网元13用于基于用户设备11的数据流处理业务。
路由网元12与业务网元13通过网络相连。在一些实施例中,路由网元12与业务网元13通过基于互联网协议第6版的段路由(internet protocol version 6for segmentrouting,SRv6)业务链相连,业务网元13为SRv6业务链中路由网元12的下一跳。
在一些实施例中,路由网元12包括多个转发节点121。路由网元12中每个转发节点121以负载分担的方式承担报文转发的任务。在一些实施例中,业务网元13包括多个转发节点131,业务网元13中多个转发节点131以负载分担的方式承担业务处理的任务。
下面对本申请实施例的方法流程举例说明。
路由网元通常按照IP路由负载分担的方式,将数据流转发至业务网元中的节点,这就导致数据流经过业务网元中哪一个节点具有随机性。那么,如果业务网元需要数据流转发至自身包含的指定节点,则难以满足业务网元的需求。
此外,IP路由负载分担的方式还可能导致同一条数据流上下行经过的节点并不一致,比如数据流在上行方向经过业务网元A中的节点a1,而数据流在下行方向经过业务网元A中的节点a2。那么,如果业务网元需要数据流上下行经过同一个节点,则难以满足业务网元的需求。
基于此,本申请的一些实施例中,通过流量标识与节点之间的映射关系来转发报文,取代了传统的IP路由转发方式,使得数据流经过业务网元中哪一个节点具有一定程度的确定性,比如,如果业务网元A中节点a1与流量标识1具有映射关系,那么根据该映射关系转发携带流量标识1的报文时,报文会经过业务网元A中节点a1。因此,该实施例实现将数据流引导至业务网元中指定的节点,满足了业务网元将数据流转发至自身包含的指定节点的需求。
此外,由于数据流在上行方向和下行方向转发时携带的流量标识通常具有一致性,例如数据流在上行方向上转发时携带流量标识1,在下行方向上转发时通常也会携带流量标识1,因此,该实施例有助于同一条数据流上行方向在业务网元中经过的节点与下行方向在业务网元中经过的节点一致,满足业务网元的需求。
本申请的一些实施例应用于部署了具有多个节点的安全网元的场景。在该场景中,由于安全网元通常具有状态校验的机制,使得安全网元具有上下行数据流经过同一个节点的需求。
所谓状态校验的机制,是指当上行数据流经过安全网元时,安全网元会保存数据流的状态;当下行数据流经过安全网元时,安全网元会查询本地缓存中是否存在数据流的状态;如果不存在数据流的状态,则安全网元对数据流的合法性校验不通过,安全网元将数据流视为非法流量,因此安全网元会丢弃数据流。
那么,如果上行数据流和下行数据流在安全网元经过的节点不一致,会导致下行数据流无法通过安全网元的状态校验,造成安全网元丢包,引起业务受损。例如,安全网元包括节点A和节点B。数据流在上行方向上转发至安全网元中的节点A,触发节点A保存数据流的状态。而数据流在下行方向上转发至安全网元中的节点B。那么,由于数据流的状态保存在节点A上非节点B上,节点B查询不到数据流的状态,导致节点B丢弃数据流。
基于此,本申请的一些实施例中,通过流量标识与安全网元中节点之间的映射关系转发报文,使得报文转发至安全网元中指定的节点(即与流量标识具有映射关系的节点)。此外,有助于上行数据流和下行数据流在同一个安全网元中经过的节点一致(均为与流量标识具有映射关系的节点),从而避免上下行方向经过的节点不一致导致状态校验不通过引起丢包。
本申请实施例提供了转发面流程以及控制面流程。转发面流程侧重描述映射关系信息的应用,即如何根据映射关系信息转发数据流,下面通过图2所示实施例、图3所示实施例以及图4所示实施例举例说明。其中,图2实施例关于将一个数据流转发至一个转发节点的流程。图3实施例关于将多个数据流分别转发至不同转发节点的流程。图4实施例关于将一个数据流中的不同报文转发至不同转发节点的流程。控制面流程侧重描述映射关系信息的生成和发布,即在不同网元之间如何同步映射关系信息。
图2是本申请实施例提供的一种报文转发方法的流程图。图2所示方法包括以下步骤S201至步骤S204。
步骤S201、用户设备发送第一报文。
第一报文为第一数据流其中包括的一个报文。第一报文包括第一数据流的流量标识。
步骤S202、路由网元接收第一报文。
步骤S203、路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点。
映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系。
在一些实施例中,上述第一数据流的流量标识包括:APN ID,APN ID用于标识发起第一数据流的应用以及应用对网络质量的需求。相应地,映射关系信息包括APN ID和第一转发节点之间的映射关系。路由网元基于APN ID以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点。根据该实施方式,支持基于APN ID将流量引导至业务网元中指定的转发节点,灵活性较高。
在一些实施例中,上述第一数据流的流量标识包括:用户ID,用户ID用于标识发起第一数据流的用户。相应地,映射关系信息包括用户ID和第一转发节点之间的映射关系。路由网元基于用户ID以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点。根据该实施方式,支持基于用户ID将流量引导至业务网元中指定的转发节点,灵活性较高。
在一些实施例中,上述第一数据流的流量标识包括:应用ID,应用ID用于标识发起第一数据流的应用。相应地,映射关系信息包括应用ID和第一转发节点之间的映射关系。路由网元基于应用ID以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点。根据该实施方式,支持基于应用ID将流量引导至业务网元中指定的转发节点,灵活性较高。
在一些实施例中,第一数据流的流量标识包括:APN ID、用户ID以及应用ID中至少两项的组合。根据该实施方式,支持结合APN ID、用户ID以及应用ID等多种方式引流,进一步提高灵活性。
步骤S204、路由网元向业务网元的第一转发节点发送第一报文。
根据本实施例提供的方法,通过对流量进行标识,利用流量标识与转发节点之间的映射关系代替IP路由,指导流量转发至业务网元中与流量标识映射的转发节点,使得流量经过业务网元中哪一个节点具有一定程度的确定性,因此实现将数据流引导至业务网元中指定的节点,满足了业务网元将数据流转发至自身包含的指定节点的需求。
在一些实施例中,业务网元为安全网元。由于安全网元要求上下行流量经过同一个转发节点,否则会造成流量无法在安全网元处通过合法性检查,导致安全网元丢包。而根据该实施方式,通过将流量标识与安全网元中的转发节点建立映射关系,能够指导流量转发至安全网元中指定的转发节点,使得上下行流量经过安全网元中同一个转发节点,从而能够满足安全网元的需求,避免业务受损。
在一些实施例中,路由网元或业务网元中至少一项为虚拟化网元。
在一些实施例中,第一转发节点为虚拟机或者容器。
图2所示实施例以一个用户设备的数据流的转发流程为例描述。本申请一些实施例提供了多个用户设备的数据流的转发流程,下面通过图3所示实施例举例说明。
图3是本申请实施例提供的一种报文转发方法的流程图。图3所示方法包括以下步骤S301至步骤S306。
步骤S301、第一用户设备发送第一报文。
步骤S302、第二用户设备发送第二报文。
第一报文为第一数据流其中包括的一个报文。第一报文包括第一数据流的流量标识。
第二报文为第二数据流其中包括的一个报文。第二报文包括第二数据流的流量标识。
步骤S303、路由网元接收第一报文和第二报文。
步骤S304、路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点。路由网元基于第二数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第二转发节点。
本实施例中,映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系以及第二数据流的流量标识和第二转发节点之间的映射关系。换句话说,将不同数据流的流量标识与不同转发节点建立了映射关系。
步骤S305、路由网元向业务网元的第一转发节点发送第一报文。
步骤S306、路由网元向业务网元的第二转发节点发送第二报文。
本实施例对于发送第一报文和发送第二报文的先后顺序不做限定,可选地采用一前一后的处理顺序,或者是并发处理。
根据该实施方式,由于建立了不同用户设备的数据流的流量标识与业务网元中不同转发节点之间的映射关系,能够将不同用户设备发起的数据流引导至不同的转发节点,从而降低用户之间资源抢占造成相互影响、实现不同用户转发资源隔离。
图3所示实施例以将一个数据流转发至一个转发节点的流程为例描述。本申请一些实施例提供了将一个数据流转发至多个转发节点的流程,下面通过图4所示实施例举例说明。
图4是本申请实施例提供的一种报文转发方法的流程图。图4所示方法包括以下步骤S401至步骤S405。
步骤S401、用户设备发送第一报文和第三报文。
第一报文为第一数据流其中包括的一个报文。第三报文为第一数据流包括的另一个报文。第一报文包括第一数据流的流量标识。第三报文包括第一数据流的流量标识。
步骤S402、路由网元接收第一报文和第二报文。
步骤S403、路由网元基于第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点以及第二转发节点。
本实施例中,映射关系信息包括第一数据流的流量标识、第一转发节点以及第二转发节点之间的映射关系。换句话说,将一个数据流的流量标识与多个转发节点建立了映射关系。
步骤S404、路由网元向业务网元的第一转发节点发送第一报文。
步骤S405、路由网元向业务网元的第三转发节点发送第三报文。
本实施例对于发送第一报文和发送第三报文的先后顺序不做限定,可选地采用一前一后的处理顺序,或者是并发处理。
根据该实施方式,由于建立了同一数据流的流量标识与业务网元中多个转发节点之间的映射关系,能够将一条数据流同时引导至多个转发节点,从而满足了流量负载分担的需求。
以上三个方法实施例侧重描述基于映射关系信息的转发流程,下面结合图5实施例对上述映射关系信息的生成和发布流程举例说明。
图5是本申请实施例提供的一种信息发布方法的流程图。图5所示方法包括以下步骤S501至步骤S504。
步骤S501、第一网元生成映射关系信息。
第一网元为业务网元、调度器或者控制器。
在一些实施例中,映射关系信息是基于转发节点的资源以及应用对网络质量的需求编排得到的。例如,第一网元基于业务网元中至少一个转发节点分别具有的资源以及发起第一数据流的应用对网络质量的需求,从业务网元的至少一个转发节点中确定第一转发节点。第一网元基于第一转发节点的标识以及第一数据流的流量标识,生成映射关系信息。映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系。第一转发节点具有的资源满足需求。资源包括而不限于带宽等网络资源、缓存空间等存储资源等。根据该实施方式,由于考虑了转发节点的资源以及应用对网络质量的需求来生成映射关系信息,在应用对网络质量有要求的场景下,有助于将应用的流量引导至满足网络质量要求的指定转发节点。
在一些实施例中,第一网元从业务网元包括的多个转发节点中,随机选择两个或两个以上的转发节点,从而确定第一转发节点和第三转发节点。第一网元基于第一转发节点、第三转发节点以及第一数据流的流量标识,生成映射关系信息。映射关系信息包括第一数据流的流量标识、第一转发节点以及第三转发节点之间的映射关系。根据该实施方式,由于为一条数据流随机选择多个转发节点,能够将数据流中的不同报文转发至不同转发节点,降低单个转发节点故障造成的影响,此外,在业务网元包括的转发节点数量较多的情况下,能降低不同用户的数据流映射的转发节点相互重合的概率,从而降低不同用户之间抢占转发节点的资源的影响。
步骤S502、第一网元向路由网元发送映射关系信息,映射关系信息用于指示路由网元将第一数据流转发至第一转发节点。
通过上述映射关系信息的生成步骤和发送步骤,支持业务网元根据自身的需求编排流量标识与自身指定转发节点之间的映射关系,将该映射关系发送给上游的路由网元,从而能够控制路由网元后续在转发流量时,将流量转发给业务网元自身哪一个转发节点,提高灵活性。
步骤S503、路由网元从第一网元接收映射关系信息。
步骤S504、路由网元向第二网元发送映射关系信息。
第二网元为第一报文的转发路径上位于路由网元上游的网元。
路由网元通过将映射关系信息发送至更上游的网元(第二网元),从而实现映射关系信息的同步,那么如果数据流没有转发至路由网元,而是转发到该上游网元,数据流也能够通过映射关系信息,转发至业务网元中指定的转发节点。
以上实施例,以路由网元将映射关系信息发送给一个上游网元(第二网元)为例描述。在网络中存在更多网元的场景下,路由网元可选地将映射关系信息泛洪给全网所有网元,使得全网所有网元同步映射关系信息,那么无论数据流从网络中哪一个网元进入,都能够通过映射关系信息转发至业务网元中指定的转发节点。
在一些实施例中,在找不到满足要求的转发节点时,通过触发扩容从而创建出满足要求的转发节点。扩容的流程例如包括以下步骤一至步骤四。
步骤一、响应于业务网元中每个转发节点具有的资源不满足应用对网络质量的需求,第一网元向业务网元发送扩容请求。
扩容请求指示业务网元进行扩容。在一些实施例中,扩容请求携带应用对网络质量的需求信息。
步骤二、业务网元接收扩容请求,创建第一转发节点。
步骤三、业务网元向第一网元发送扩容响应。扩容响应指示业务网元中扩容出了第一转发节点。
步骤四、第一网元接收来自业务网元的扩容响应。
下面结合图6所示场景对图2至图5所示实施例举例说明。
图6中的VSR是图2至图5所示实施例中路由网元的具体示例,图6中的VAS是图2至图5所示实施例中业务网元的具体示例,图6中的映射关系信息61、映射关系信息62是图2至图5所示实施例中映射关系信息的具体示例。图6中的VM是转发节点的具体示例。图6中的APN ID是流量标识的具体示例。
在一些实施例中,VSR将转发节点划分不同用户组。从资源角度,一个用户组包含若干转发节点;从用户关系角度,一个用户组包含若干用户。同一个用户组的用户共享该用户组的转发节点。不同用户组的流量包括不同的BSID。当数据中心网关(data centergateway,DC GW)接收到流量后,通过不同的绑定段标识(binding segmentIdentification,BSID)路由(业务感知BSID)将每个用户组的流量转发至各自转发节点,并在用户组内的转发节点进行负载分担。VSR的一个用户组内所有转发节点共用一个BSID。当流量转发至DC GW时,DC GW基于流量中携带的BSID,查询BSID locator路由,将流量哈希负载分担至VSR中的所有转发节点。
VSR的每个转发节点保存流量标识(APN ID)和转发节点之间的映射关系信息。转发节点接收到流量后,转发节点识别流量中携带的流量标识,查询该映射关系信息,将用户的流量通过网络通道发至指定下一跳,保证流量在确定的VM接口转发至对应的VAS实例。
转发节点之间的网络通道是VSR逻辑网元的内部网络通道。转发节点之间的网络通道的类型根据VM所在的物理主机位置确定。转发节点之间的网络通道例如是物理服务器内部逻辑网络通道,或者是物理服务器之间的网络通道。
例如,如图6所示,VSR将VM1、VM2、VM3和VM4划分至用户组1,将VM5和VM6划分至用户组2,VSR为用户组1分配BSID 1,VSR为用户组2分配BSID2。用户组1中的VM1、VM2、VM3和VM4保存同一份映射关系信息61,映射关系信息61包括BSID 1和APN ID1与VM1之间的映射关系、BSID 1和APN ID2与VM2之间的映射关系、BSID 1和APN ID3与VM3之间的映射关系。用户组2中的VM5和VM6保存同一份映射关系信息62,映射关系信息62包括BSID2和APN ID1与VM5之间的映射关系,以及BSID2和APNID2与VM6之间的映射关系。用户组1中的用户3的设备发送数据流,数据流携带用户组1的BSID以及用户3的APN ID,即BSID 1和APN ID3。DC GW基于数据流中携带的BSID,查询BSID locator路由,将数据流负载分担至用户组1中的VM1、VM2、VM3和VM4。由于用户组1中VM保存的映射关系信息中,APN ID3对应的VM为VM3,因此VM1、VM2或VM4接收到流量后,根据映射关系信息均会将数据流转发至VM3,VM3通过出接口将数据流转发至VAS。
下面结合图7所示场景对图2至图5所示实施例举例说明。
图7所示的场景中,网络服务是图2至图5所示实施例中路由网元的具体示例,安全服务是图2至图5所示实施例中业务网元的具体示例,映射关系信息730是图2至图5所示实施例中映射关系信息的具体示例,APN ID中的user ID是图2至图5所示实施例中流量标识的具体示例。
图7所示的场景包括网络服务或业务服务(VAS服务)等不同功能的服务。各个服务之间通过SRv6策略(policy)业务链串接,默认根据SRv6 policy每一跳SID路由转发流量至指定服务。在单个服务包含多个转发节点时,默认路由负载分担至所有转发节点。对于某些服务需要流量在自身多个转发节点中的指定节点处理,需要编排引流表,根据流量标识和转发节点之间的映射关系,转发流量。对于存在引流表的服务,引流表代替路由指导流量转发。引流表内容包括流量标识、转发节点标识、流量和转发节点标识的映射关系。图7所示场景对流量标识的类型不做限定,可选地,采用APN ID中的user ID标识流量。每个服务有自己的引流表,引流表通过协议同步至上下游的其他云化网元。引流表发布范围主要为云化网元之间,用于满足流量在多个转发节点中指定节点的需求,也可以按需发布至外部物理网元。
参考图7所示场景,引流表编排和发布流程包括以下步骤S701至步骤S703。
步骤S701、控制器下发租户信息到调度器(scheduler)。租户信息包括租户的APNID以及租户所需的带宽。
步骤S702、调度器根据租户信息和转发节点的资源,调度租户流量到安全服务中指定的转发节点,得到映射关系信息730。调度器将映射关系信息730下发至安全服务中对应的转发节点。
例如,映射关系信息730的内容包括user ID 1与转发节点1之间的映射关系、userID 2与转发节点2之间的映射关系以及user ID 3与转发节点3之间的映射关系
步骤S703、安全服务发布映射关系信息730。网络服务订阅映射关系信息730,网络服务按照映射关系信息730引流。在一些实施例中,安全服务中每个转发节点分别将映射关系信息730发送至中间件或数据库(data base,DB),中间件或DB将映射关系信息730分发至网络服务中每个转发节点。
在一些实施例中,网络服务采用多租户散列的机制,不同租户的流量散列至不同的转发节点。在一些实施例中,每租户选择网络服务中多个转发节点,从而负载分担租户的流量。在一些实施例中,网络服务采用N路(N-way)保护的机制。在一些实施例中,安全服务采用主备单活的机制。
在一些实施例中,在安全服务包括主转发节点和备转发节点的情况下,安全服务中主转发节点发布映射关系信息,安全服务中备转发节点不发布映射关系信息。
在另一些实施例中,调度器编排映射关系信息,调度器向网络服务发送映射关系信息。网络服务发布映射关系信息。其中,一个租户可能选择多个网络服务节点,同时发布映射关系信息;安全服务订阅映射关系信息,按照负载分担分发流量。
下面对本申请实施例中报文格式举例说明。
本申请的一些实施例中,报文包括流量标识。在一些实施例中,报文包括IPv6扩展头,流量标识位于IPv6扩展头中。
在一些实施例中,携带流量标识的IPv6扩展头为SRH。可替代地,携带流量标识的IPv6扩展头为SRH之外其他类型的IPv6路由扩展头。
在一些实施例中,报文中的IPv6扩展头包括TLV选项(option TLV),流量标识具体位于IPv6扩展头的TLV选项中。例如,流量标识位于IPv6应用感知ID选项(IPv6 App-awareID option);又如,流量标识位于IPv6业务感知参数选项(IPv6 service-aware paraoption).
以流量标识为APN ID为例,请参考图8,图8是本申请实施例提供的一种携带APNID的报文格式示意图。图8所示的报文包括IP头、SRH和载荷(payload)。SRH包括段列表(segment list,也称SID list)和option TLV。段列表包括一系列的SID,如图8示出的segment[0]、segment[1]至segment[n],每一个SID的长度是128比特,每一个SID具有IPv6地址的形式。APN ID通过IPv6扩展头(即SRH)携带。如图8所示,APN ID位于SRH中optionTLV中。例如,APN ID位于IPv6 App-aware ID option,又如,APN ID位于IPv6 service-aware paraoption。
图9是本申请实施例提供的一种APN ID的格式示意图。图9所示的APN ID位于图9中SRH中的option TLV中。图9所示的APN ID包括SLA等级、应用ID、用户ID以及流ID。通过提供APN ID,在网络中体现出多维度的用户或应用信息(网络中新标识),使能多层次的精细可视。
下面结合两个实例,对图2至图5所示方法举例说明。下面的2个实例中,VSR是图2至图5所示实施例中路由网元的示例,VSR转发节点是图2至图5所示方法中路由网元包括的转发节点的示例,引流表是图2至图5所示实施例中映射关系信息的示例,APN ID-user ID是图2至图5所示实施例中流量标识的示例,业务转发节点是图2至图5所示方法中业务网元包括的转发节点的示例,VSR转发节点池是图2至图5所示方法中VSR中所有转发节点组成的集合的示例,业务转发节点池是图2至图5所示方法中业务网元中所有转发节点组成的集合的示例。
实例1
如图10所示,实例1包括以下S801至S802。
S801、DC-GW接收报文后,DC-GW基于VSR SID locator路由负载分担。
具体地,VSR转发节点池中所有转发节点发布同一个VSR SID,DC-GW保存VSR SID对应的locator路由。DC GW接收到CPE发送的报文后,DC GW基于报文中携带的VSR SID查询locator路由,以等价多路径路由(equal cost multi-path,ECMP)的方式转发流量。
S802、VSR基于APN ID-user ID,将报文转发至指定的转发节点。
在一些实施例中,控制器或者业务网元将每个APN ID-user ID编排到指定的业务转发节点,得到业务转发节点和APN ID-user ID对应关系,即引流表。控制器或者业务网元将引流表发送至VSR。VSR转发节点接收到报文后,VSR转发节点识别报文中的APN ID-userID,VSR转发节点基于APN ID-user ID匹配引流表,找到APN ID-user ID对应的业务转发节点,将报文转发至该业务转发节点。
例如,在图10所示的场景中,CPE1发送数据流1和数据流2。数据流1和数据流2中每个报文均携带APN ID-user ID1。CPE3发送数据流3。数据流3中每个报文携带APN ID-userID2。VSR中保存有引流表。引流表内容如下表1所示,包括APN ID-user ID1与业务转发节点1之间的映射关系以及APN ID-user ID2与业务转发节点2之间的映射关系。VSR接收到数据流1、数据流2和数据流3后,VSR基于数据流1中APN ID-user ID1查询表1,将数据流1转发至业务网元中转发节点1,基于数据流2中APN ID-user ID1查询表1,将数据流2转发至业务网元中转发节点1,基于数据流3中APN ID-user ID2查询表1,将数据流3转发至业务网元中转发节点2。
表1
APN ID-user ID 业务转发节点
APN ID-user ID1 转发节点1
APN ID-user ID2 转发节点2
根据上述实施例,由于VSR转发节点基于APN ID-user ID与业务转发节点之间的映射关系,将携带APN ID-user ID的数据流转发至指定的业务转发节点处理,有助于同一个流上下行都在同一个业务转发节点上处理。
在一个示例性场景中,上述业务网元为安全服务(如安全防火墙)。业务网元包括转发节点以及安全资源池,业务网元的转发节点用于将报文转发至安全资源池。安全资源池包括而不限于虚拟防火墙(virtual firewall,vFW)、IPS、绿色上网节点或者其他提供网络安全服务的节点。例如图10所示,业务网元的转发节点1接收到报文后,将报文转发至vFW;vFW对报文处理后,将处理后的报文转发至IPS;IPS对报文处理后,将处理后的报文转发至绿色上网节点;绿色上网节点对报文处理后,将处理后的报文转发至业务网元的转发节点1。在该场景中,如果同一个数据流上下行在业务网元中经过的转发节点不一致,则该数据流上下行经过的安全资源池不一致,导致数据流在下行转发时无法通过安全资源池的合法性校验。针对该场景,在该实施方式中,通过将同一个user ID的数据流引流至同一个业务转发节点,使得同一个user ID的数据流在上行方向与下行方向经过的路径一致。
在一些实施例中,控制器或者业务网元根据APN ID中带宽等要求,编排不同用户流量分布到多个业务转发节点负载分担部署。在一些实施例中,VSR根据路由负载分担转发至各个转发节点处理。在一些实施例中,当找不到满足要求的业务转发节点时,要触发扩容。
以图10所示的数据流1为例,数据流1的转发流程如图11所示,包括以下步骤(1)至步骤(3)。
步骤(1)CPE发送数据流1,数据流1包括CPE封装的段路由头(segment routingheader,SRH)以及CPE标记的APN ID(user ID1)。SRH携带CPE-VSR-Bleaf的跨域SRv6Policy路径信息,路径信息包含每个网络域的入口(ingress)节点BSID。
控制器接收业务编排层租户信息,控制器根据租户信息获得SRH头中所需携带的路径信息和APN ID,控制器将路径信息和APN ID下发至CPE。SRv6隧道封装逻辑如图11所示。
步骤(2)DC GW为CPE和VSR之间的E2E SRv6隧道预开通L3通道,该L3通道为云底座网络通道,由云管平台随VSR拉起预开通。流量到达DC GW后,DC GW查询VSR上部署的BSIDlocator路由,将流量转发至VSR。由于VSR为云化网元,VSR的每个转发节点上均配置相同的BSID路由,因此流量在DC GW具备多个等价的下一跳。通常情况下,交换机和路由器的行为是基于五元组哈希(hash)或基于流标签(flow label)hash负载分担。
步骤(3)流量在DC GW负载分担随机发送流量至VSR的某个转发节点。VSR的转发节点接收到报文后,解析报文中的BSID,展开对应的业务链SRH头,同时查询本地引流表中APNID对应的出接口转发流量。如果引流表中无匹配的APN ID,则VSR的转发节点查询路由表转发流量。
实例二
实例二的原理同实例一。如图12所示,业务转发节点单归接入一个VSR转发节点。各个转发节点之间的连接关系发生变化。引流表编排对象发生变化,变更为VSR转发节点和APN ID-user ID对应关系,通过编排APN ID到业务转发节点的引流表61引流至最终业务节点。在这个应用场景,业务节点由于单归接入VSR转发节点,如果流量在DC GW负载分担后发送到其他转发节点,则通过东西向引流,把流量转发至业务转发节点直连的VSR转发节点后,再由VSR转发节点将流量转发至业务转发节点。由于业务网元和VSR网元为1:1连接,此场景下需要保证流量经过指定的VSR转发节点,从而引流至对应的业务转发节点。引流表基于VSR转发节点标识和流量标识创建,并发布至各个转发节点。VSR转发节点根据APN ID和转发节点映射关系(图12中引流表61),转发流量至对应VSR转发节点,再由VSR转发节点将流量转发至业务转发节点。
图13是本申请实施例提供的一种报文转发装置700的结构示意图。报文转发装置700包括接收单元710、确定单元720和发送单元730。
可选地,在图1所示的场景中,图13所示的装置700设于图1中的路由网元12。
可选地,在图2所示的方法流程中,接收单元710用于执行S202,确定单元720用于执行S203,发送单元730用于执行S204。
可选地,在图3所示的方法流程中,接收单元710用于执行S303,确定单元720用于执行S304,发送单元730用于执行S305和S306。
可选地,在图4所示的方法流程中,接收单元710用于执行S402,确定单元720用于执行S403,发送单元730用于执行S404和S306。
可选地,在图5所示的方法流程中,接收单元710用于执行S503,发送单元730用于执行S504。
图13所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
报文转发装置700中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。
下面结合后文描述的网络设备900,描述使用硬件或软件来实现报文转发装置700中的各个功能单元的一些可能实现方式。
在采用软件实现的情况下,例如,上述确定单元720是由图15中的至少一个处理器901读取存储器902中存储的程序代码后,生成的软件功能单元来实现。
在采用硬件实现的情况下,例如,图13中上述各个单元由网络设备中的不同硬件分别实现,例如确定单元720由图15中的至少一个处理器901中的一部分处理资源(例如多核处理器中的一个核或两个核)实现,或者采用现场可编程门阵列(field-programmablegate array,FPGA)、或协处理器等可编程器件来完成。接收单元710和发送单元803由图15中的网络接口903实现。
图14是本申请实施例提供的一种信息发布装置800的结构示意图。装置800包括生成单元801和发送单元803。
可选地,在图1所示的场景中,图14所示的装置800设于图1中的业务网元13。
可选地,在图5所示的方法流程中,生成单元801用于执行S501,发送单元730用于执行S502。
可选地,装置800还包括:确定单元,用于基于业务网元中至少一个转发节点分别具有的资源以及发起第一数据流的应用对网络质量的需求,从至少一个转发节点中确定第一转发节点,第一转发节点具有的资源满足需求。
可选地,发送单元803,还用于响应于业务网元中每个转发节点具有的资源不满足应用对网络质量的需求,向业务网元发送扩容请求,扩容请求指示业务网元进行扩容;
装置800还包括:接收单元,用于接收来自业务网元的扩容响应,扩容响应指示业务网元中扩容出了第一转发节点。
可选地,确定单元,还用于从业务网元包括的多个转发节点中,随机选择两个或两个以上的转发节点,从而确定第一转发节点和第三转发节点。
图14所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
装置800中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。
下面结合后文描述的网络设备900,描述使用硬件或软件来实现装置800中的各个功能单元的一些可能实现方式。
在采用软件实现的情况下,例如,上述生成单元801和确定单元是由图15中的至少一个处理器901读取存储器902中存储的程序代码后,生成的软件功能单元来实现。
在采用硬件实现的情况下,例如,图14中上述各个单元由网络设备中的不同硬件分别实现,例如生成单元801由图15中的至少一个处理器901中的一部分处理资源(例如多核处理器中的一个核或两个核)实现,而确定单元由图15中至少一个处理器901中的其余部分处理资源(例如多核处理器中的其他核),或者采用现场可编程门阵列(field-programmable gate array,FPGA)、或协处理器等可编程器件来完成。接收单元和发送单元803由图15中的网络接口903实现。
图15是本申请实施例提供的一种网络设备900的结构示意图。网络设备900包括处理器901、存储器902以及网络接口903。
可选地,在图1所示的应用场景中,图15所示的网络设备900是图1中的路由网元12或者业务网元13。
可选地,在图2所示方法流程中,图15所示的网络设备900是图2中的路由网元,网络接口903用于执行S202,处理器901用于执行S203,处理器901还用于指示网络接口903执行S204。
可选地,在图3所示方法流程中,图15所示的网络设备900是图3中的路由网元,网络接口903用于执行S303,处理器901用于执行S304,网络接口903用于执行S305和S306。
可选地,在图4所示方法流程中,图15所示的网络设备900是图4中的路由网元,网络接口903用于执行S402,处理器901用于执行S403,网络接口903用于执行S404和S405。
可选地,在图5所示方法流程中,图15所示的网络设备900是图5中的路由网元,网络接口903用于执行S503和S504。或者,图15所示的网络设备900是图5中的路由网元,处理器901用于执行S501,网络接口903用于执行S502。
处理器901例如是通用中央处理器(central processing unit,CPU)、网络处理器(network processer,NP)、图形处理器(graphics processing unit,GPU)、神经网络处理器(neural-network processing units,NPU)、数据处理单元(data processing unit,DPU)、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器901包括专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。PLD例如是复杂可编程逻辑器件(complexprogrammable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gatearray,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器902例如是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。可选地,存储器902独立存在,并通过内部连接904与处理器901相连接。或者,可选地存储器902和处理器901集成在一起。
网络接口903使用任何收发器一类的装置,用于与其它设备或通信网络通信。网络接口903例如包括有线网络接口或者无线网络接口中的至少一项。其中,有线网络接口例如为以太网接口。以太网接口例如是光接口,电接口或其组合。无线网络接口例如为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络网络接口或其组合等。
在一些实施例中,处理器901包括一个或多个CPU,如图15中所示的CPU0和CPU1。
在一些实施例中,网络设备900可选地包括多个处理器,如图15中所示的处理器901和处理器905。这些处理器中的每一个例如是一个单核处理器(single-CPU),又如是一个多核处理器(multi-CPU)。这里的处理器可选地指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在一些实施例中,网络设备900还包括内部连接904。处理器901、存储器902以及至少一个网络接口903通过内部连接904连接。内部连接904包括通路,在上述组件之间传送信息。可选地,内部连接904是单板或总线。可选地,内部连接904分为地址总线、数据总线、控制总线等。
在一些实施例中,网络设备900还包括输入输出接口906。输入输出接口906连接到内部连接904上。
可选地,处理器901通过读取存储器902中保存的程序代码实现上述实施例中的方法,或者,处理器901通过内部存储的程序代码实现上述实施例中的方法。在处理器901通过读取存储器902中保存的程序代码实现上述实施例中的方法的情况下,存储器902中保存实现本申请实施例提供的方法的程序代码910。
处理器901实现上述功能的更多细节请参考前面各个方法实施例中的描述,在这里不再重复。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分可互相参考,每个实施例重点说明的都是与其他实施例的不同之处。
A参考B,指的是A与B相同或者A为B的简单变形。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序,也不能理解为指示或暗示相对重要性。例如,第一转发节点和第二转发节点用于区别不同的转发节点,而不是用于描述转发节点的特定顺序,也不能理解为第一转发节点比第二转发节点更重要。
本申请实施例,除非另有说明,“至少一个”的含义是指一个或多个,“多个”的含义是指两个或两个以上。例如,多个转发节点是指两个或两个以上的转发节点。
上述实施例可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例描述的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (33)

1.一种报文转发方法,其特征在于,所述方法包括:
路由网元接收第一报文,所述第一报文包括第一数据流的流量标识,所述第一数据流为所述第一报文所属的数据流;
所述路由网元基于所述第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点,所述映射关系信息包括所述第一数据流的流量标识和所述第一转发节点之间的映射关系;
所述路由网元向所述第一转发节点发送所述第一报文。
2.根据权利要求1所述的方法,其特征在于,所述第一数据流的流量标识包括应用感知网络标识APN ID。
3.根据权利要求1或2所述的方法,其特征在于,所述第一报文包括互联网协议第6版IPv6扩展头,所述IPv6扩展头包括所述第一数据流的流量标识。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述路由网元基于所述第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点之前,所述方法还包括:
所述路由网元从第一网元接收所述映射关系信息,所述第一网元为所述业务网元、调度器或者控制器。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
所述路由网元向第二网元发送所述映射关系信息,所述第二网元为所述第一报文的转发路径上位于所述路由网元上游的网元。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,所述第二数据流与所述第一数据流来自不同的用户设备,所述第二转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点,所述方法还包括:
所述路由网元接收第二报文,所述第二报文包括所述第二数据流的流量标识,所述第二数据流为所述第二报文所属的数据流;
所述路由网元基于所述第二数据流的流量标识以及所述映射关系信息,从所述业务网元包括的至少一个转发节点中确定所述第二转发节点;
所述路由网元向所述第二转发节点发送所述第二报文。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述映射关系信息还包括所述第一数据流的流量标识和第三转发节点之间的映射关系,所述第三转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点,所述方法还包括:
所述路由网元接收第三报文,所述第三报文包括所述第一数据流的流量标识;
所述路由网元基于所述第一数据流的流量标识以及所述映射关系信息,从所述业务网元包括的至少一个转发节点中确定所述第三转发节点;
所述路由网元向所述第三转发节点发送所述第三报文。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述业务网元为安全网元。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述路由网元或所述业务网元中至少一项为虚拟化网元。
10.一种信息发布方法,其特征在于,所述方法包括:
第一网元生成映射关系信息,所述映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系,所述第一转发节点为业务网元包括的转发节点;
所述第一网元向路由网元发送所述映射关系信息,所述映射关系信息用于指示所述路由网元将所述第一数据流转发至所述第一转发节点。
11.根据权利要求10所述的方法,其特征在于,所述第一网元生成映射关系信息之前,所述方法还包括:
所述第一网元基于所述业务网元中至少一个转发节点分别具有的资源以及发起所述第一数据流的应用对网络质量的需求,从所述至少一个转发节点中确定所述第一转发节点,所述第一转发节点具有的资源满足所述需求。
12.根据权利要求10或11所述的方法,其特征在于,所述方法还包括:
响应于所述业务网元中每个转发节点具有的资源不满足应用对网络质量的需求,所述第一网元向所述业务网元发送扩容请求,所述扩容请求指示所述业务网元进行扩容;
所述第一网元接收来自所述业务网元的扩容响应,所述扩容响应指示所述业务网元中扩容出了所述第一转发节点。
13.根据权利要求10至12中任一项所述的方法,其特征在于,所述第一数据流的流量标识包括应用感知网络标识APN ID。
14.根据权利要求10至13中任一项所述的方法,其特征在于,所述映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,所述第二数据流与所述第一数据流具有不同的发起方,所述第二转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点。
15.根据权利要求10至14中任一项所述的方法,其特征在于,所述映射关系信息还包括所述第一数据流的流量标识和第三转发节点之间的映射关系,所述第三转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
所述第一网元从所述业务网元包括的多个转发节点中,随机选择两个或两个以上的转发节点,从而确定所述第一转发节点和所述第三转发节点。
17.一种报文转发装置,其特征在于,所述装置包括:
接收单元,用于接收第一报文,所述第一报文包括第一数据流的流量标识,所述第一数据流为所述第一报文所属的数据流;
确定单元,用于基于所述第一数据流的流量标识以及映射关系信息,从业务网元包括的至少一个转发节点中确定第一转发节点,所述映射关系信息包括所述第一数据流的流量标识和所述第一转发节点之间的映射关系;
发送单元,用于向所述第一转发节点发送所述第一报文。
18.根据权利要求17所述的装置,其特征在于,所述第一数据流的流量标识包括应用感知网络标识APN ID。
19.根据权利要求17或18所述的装置,其特征在于,所述第一报文包括互联网协议第6版IPv6扩展头,所述IPv6扩展头包括所述第一数据流的流量标识。
20.根据权利要求17至19中任一项所述的装置,其特征在于,所述接收单元,还用于从第一网元接收所述映射关系信息,所述第一网元为所述业务网元、调度器或者控制器。
21.根据权利要求17至20中任一项所述的装置,其特征在于,所述发送单元,还用于向第二网元发送所述映射关系信息,所述第二网元为所述第一报文的转发路径上位于所述路由网元上游的网元。
22.根据权利要求17至21中任一项所述的装置,其特征在于,所述映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,所述第二数据流与所述第一数据流来自不同的用户设备,所述第二转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点;
所述接收单元,还用于接收第二报文,所述第二报文包括所述第二数据流的流量标识,所述第二数据流为所述第二报文所属的数据流;
所述确定单元,还用于基于所述第二数据流的流量标识以及所述映射关系信息,从所述业务网元包括的至少一个转发节点中确定所述第二转发节点;
所述发送单元,还用于向所述第二转发节点发送所述第二报文。
23.根据权利要求17至22中任一项所述的装置,其特征在于,所述映射关系信息还包括所述第一数据流的流量标识和第三转发节点之间的映射关系,所述第三转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点;
所述接收单元,还用于所述路由网元接收第三报文,所述第三报文包括所述第一数据流的流量标识;
所述确定单元,还用于基于所述第一数据流的流量标识以及所述映射关系信息,从所述业务网元包括的至少一个转发节点中确定所述第三转发节点;
所述发送单元,还用于向所述第三转发节点发送所述第三报文。
24.一种信息发布装置,其特征在于,所述装置包括:
生成单元,用于生成映射关系信息,所述映射关系信息包括第一数据流的流量标识和第一转发节点之间的映射关系,所述第一转发节点为业务网元包括的转发节点;
发送单元,用于向路由网元发送所述映射关系信息,所述映射关系信息用于指示所述路由网元将所述第一数据流转发至所述第一转发节点。
25.根据权利要求24所述的装置,其特征在于,所述装置还包括:
确定单元,用于基于所述业务网元中至少一个转发节点分别具有的资源以及发起所述第一数据流的应用对网络质量的需求,从所述至少一个转发节点中确定所述第一转发节点,所述第一转发节点具有的资源满足所述需求。
26.根据权利要求24或25所述的装置,其特征在于,
所述发送单元,还用于响应于所述业务网元中每个转发节点具有的资源不满足应用对网络质量的需求,向所述业务网元发送扩容请求,所述扩容请求指示所述业务网元进行扩容;
所述装置还包括:接收单元,用于接收来自所述业务网元的扩容响应,所述扩容响应指示所述业务网元中扩容出了所述第一转发节点。
27.根据权利要求24至26中任一项所述的装置,其特征在于,所述第一数据流的流量标识包括应用感知网络标识APN ID。
28.根据权利要求24至27中任一项所述的装置,其特征在于,所述映射关系信息还包括第二数据流的流量标识和第二转发节点之间的映射关系,所述第二数据流与所述第一数据流具有不同的发起方,所述第二转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点。
29.根据权利要求24至28中任一项所述的装置,其特征在于,所述映射关系信息还包括所述第一数据流的流量标识和第三转发节点之间的映射关系,所述第三转发节点为所述业务网元包括的转发节点中所述第一转发节点之外的转发节点。
30.根据权利要求29所述的装置,其特征在于,所述确定单元,还用于从所述业务网元包括的多个转发节点中,随机选择两个或两个以上的转发节点,从而确定所述第一转发节点和所述第三转发节点。
31.一种网络设备,其特征在于,所述网络设备包括处理器和网络接口,所述处理器用于执行指令,使得所述网络设备执行如权利要求1至权利要求16中任一项所述的方法,所述网络接口用于接收报文、发送报文或发送映射关系信息。
32.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令在计算机上运行时,使得计算机执行如权利要求1-16中任一项所述的方法。
33.一种计算机程序产品,其特征在于,所述计算机程序产品包括一个或多个计算机程序指令,当所述计算机程序指令被计算机加载并运行时,使得所述计算机执行权利要求1-16中任一项所述的方法。
CN202211181925.1A 2022-09-27 2022-09-27 报文转发方法、信息发布方法、装置、设备及存储介质 Pending CN117792982A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211181925.1A CN117792982A (zh) 2022-09-27 2022-09-27 报文转发方法、信息发布方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211181925.1A CN117792982A (zh) 2022-09-27 2022-09-27 报文转发方法、信息发布方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117792982A true CN117792982A (zh) 2024-03-29

Family

ID=90391428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211181925.1A Pending CN117792982A (zh) 2022-09-27 2022-09-27 报文转发方法、信息发布方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117792982A (zh)

Similar Documents

Publication Publication Date Title
US11283707B2 (en) Segment routing with fast reroute for container networking
US11050586B2 (en) Inter-cloud communication method and related device, and inter-cloud communication configuration method and related device
US10063470B2 (en) Data center network system based on software-defined network and packet forwarding method, address resolution method, routing controller thereof
US9584369B2 (en) Methods of representing software defined networking-based multiple layer network topology views
US10447600B2 (en) Load balancing method, device and system for service function chain
EP3353952B1 (en) Managing groups of servers
US20210160181A1 (en) Architecture for a network visibility system
EP3358807B1 (en) Firewall cluster
CN104780088A (zh) 一种业务报文的传输方法和设备
US20140379928A1 (en) Method for implementing network using distributed virtual switch, apparatus for performing the same, and network system based on distributed virtual switch
US11582149B2 (en) Cloud based router with policy enforcement
EP3821589B1 (en) Session management in a forwarding plane
JP2018518925A (ja) パケット転送
US20190140958A1 (en) Hierarchical orchestration of a computer network
CN116366379A (zh) 智能网卡组件、物理机、云服务系统以及报文发送方法
US10257080B1 (en) Hardware resource allocation for equal-cost multi-path groups
WO2023093513A1 (zh) 路径感知方法、装置及系统
US11689447B2 (en) Enhanced dynamic encryption packet segmentation
CN117792982A (zh) 报文转发方法、信息发布方法、装置、设备及存储介质
US11025536B1 (en) Support for flooding in encapsulation and inter-VLAN communication via proxy-ARP
Herker et al. Evaluation of data-center architectures for virtualized Network Functions
US20230308354A1 (en) Intelligent controller for smart nics and hardware accelerators
US20230269201A1 (en) Pooling smart nics for network disaggregation
WO2024027194A1 (zh) 报文转发方法、设备、系统及存储介质
Li et al. Efficient privacy-preserving multicast in cloud data centers

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication