CN116112431A - 一种隧道建立、报文传输方法及设备、存储介质 - Google Patents
一种隧道建立、报文传输方法及设备、存储介质 Download PDFInfo
- Publication number
- CN116112431A CN116112431A CN202111323730.1A CN202111323730A CN116112431A CN 116112431 A CN116112431 A CN 116112431A CN 202111323730 A CN202111323730 A CN 202111323730A CN 116112431 A CN116112431 A CN 116112431A
- Authority
- CN
- China
- Prior art keywords
- identifier
- node
- link
- sub
- resource
- 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
Links
Images
Classifications
-
- 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/38—Flow based routing
-
- 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
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
-
- 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/22—Alternate routing
-
- 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/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- 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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种隧道建立、报文传输方法及设备、存储介质,包括:控制器在进行SRv6Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;控制器指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。节点接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;节点在第一标识符对应的切片资源上转发报文。采用本发明,能确保隧道路径的每一跳都有底层物理资源的保障和独享,从而实现承载网的硬切片服务,满足了切片用户的隧道硬隔离需求。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种隧道建立、报文传输方法及设备、存储介质。
背景技术
数据承载网现有的切片技术包括FlexAlgo(灵活算法)技术、SR-TE(分段路由-流量工程,SegmentRouting-Traffic Engineering)、SRv6 Policy(IPv6分段路由-流量协议,IPv6 SegmentRouting-Traffic Policy;IPv6:互联网协议第6版,Internet ProtocolVersion 6)隧道技术。
下面对FlexAlgo(简称FA)技术进行简要说明。
FA基于IGP(内部网关协议,Interior Gateway Protocol)单拓扑,每个节点和每条L3链路对应一个或多个FA算法空间,由IGP协议发布,形成IGP子算路空间。
FA算法包含了三部分内容:MetricType(度量类型),CalcType(计算类型)和Constraint(约束),不同FA算法的结果就是形成了不同的子拓扑。因此,通过FlexAlgo可以将物理网络划分成多个虚拟网络,不同FA切片下,使用不同SID(段标识符,SegmentIDentifier)进行报文封装,不同地址单独算路,指导报文在相应FA切片转发。
下面对SR-TE、SRv6 Policy技术进行简要说明。
SR-TE和SRv6 Policy本身是一种源路由隧道技术,可基于用户的SLA(服务等级协议,Service-Level Agreement)要求,如时延、带宽,在网络中为该用户计算出满足需求的路径Segmentlist<SID1、SID2、…SIDn>,指导用户报文沿着指定路径在网络中转发。
隧道路径Segmentlist(段列表)可以用节点SID编排,也可以用邻接SID进行编排。当路径中每一跳SID都使用邻接SID时,则该隧道路径就是一条严格路径,每一跳都指定了;当路径中有些SID使用的是节点SID时,则该隧道路径是一跳松散的路径,因为两节点之间可能会有不同的可达链路。
现有技术的不足在于:不能满足切片用户的隧道硬隔离需求。
发明内容
本发明提供了一种隧道建立、报文传输方法及设备、存储介质,用以解决不能满足切片用户的隧道硬隔离需求的问题。
本发明提供以下技术方案:
一种隧道建立方法,包括:
控制器在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
控制器指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的,可以用Flow Label字段的前4位来指示FlowLabel的类型。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,进一步包括:
在节点上分配的子链路资源大于切片用户的需求。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的;或在各节点上预先配置好并同步给控制器的。
实施中,进一步包括:
控制器根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
实施中,进一步包括:
在ISIS链路邻居TLV下使用第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源的信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源的信息。
实施中,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源时,包括:
根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,
根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
实施中,进一步包括:
配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,进一步包括:
接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,
接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
实施中,进一步包括:
在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
一种报文传输方法,包括:
节点接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
节点在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
节点的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
实施中,进一步包括:
节点通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
实施中,进一步包括:
接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV,该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV,该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,在节点是报文传输的头节点时,进一步包括:
根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,在节点是报文传输的头节点时,进一步包括:
在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
实施中,进一步包括:
接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
实施中,在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
实施中,进一步包括:
节点通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,
节点通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
一种控制器,包括:
在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机,用于在处理器的控制下接收和发送数据。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,进一步包括:
在节点上分配的子链路资源大于切片用户的需求。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
实施中,进一步包括:
根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
实施中,进一步包括:
在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源时,包括:
根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,
根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
实施中,进一步包括:
配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,进一步包括:
接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,
接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
实施中,进一步包括:
在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
一种控制器,包括:
控制器资源模块,用于在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的第一标识符;
控制器指示模块,用于指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,控制器指示模块进一步用于指示在Router CAPABILITY TLV的SRv6Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,控制器资源模块进一步用于将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,控制器资源模块进一步用于在节点上分配的子链路资源大于切片用户的需求。
实施中,控制器指示模块进一步用于第一标识符所对应的底层物理链路资源的需求信息,或接收在各节点上预先配置好并同步给控制器的第一标识符所对应的底层物理链路资源的需求信息。
实施中,进一步包括:
控制器维护模块,用于根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
实施中,控制器资源模块进一步用于在ISIS链路邻居TLV下定义第一Sub-TLV,该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV,该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,控制器资源模块进一步用于根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
实施中,控制器资源模块进一步用于配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,控制器维护模块进一步用于接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
实施中,控制器维护模块进一步用于在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
一种节点,包括:
处理器,用于读取存储器中的程序,执行下列过程:
接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机,用于在处理器的控制下接收和发送数据。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
节点的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
实施中,进一步包括:
通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
实施中,进一步包括:
接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,在节点是报文传输的头节点时,进一步包括:
根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,在节点是报文传输的头节点时,进一步包括:
在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
实施中,进一步包括:
接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
实施中,在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
实施中,进一步包括:
通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,
通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
一种节点,包括:
节点接收模块,用于接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
节点传输模块,用于在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,节点传输模块进一步用于通过IPv6报文头中的Flow Label字段后面的16bit携带第一标识符。
实施中,节点传输模块进一步用于在Router CAPABILITY TLV的SRv6Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
节点链路模块,用于的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,节点接收模块进一步用于接收控制器预先下发给节点的第一标识符所对应的底层物理链路资源的需求信息,或在各节点上预先配置好并同步给控制器的第一标识符所对应的底层物理链路资源的需求信息。
实施中,进一步包括:
节点上报模块,用于通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
实施中,节点接收模块进一步用于接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,节点传输模块进一步用于在节点是报文传输的头节点时,根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,节点传输模块进一步用于在节点是报文传输的头节点时,在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
实施中,节点接收模块进一步用于接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表,如子接口转发表。
实施中,节点传输模块进一步用于在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
实施中,节点上报模块进一步用于通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述控制器侧的隧道建立和/或节点侧的报文传输方法的计算机程序。
本发明有益效果如下:
本发明实施例提供的技术方案中,在SRv6 Policy隧道算路时,为用户分配报文转发路径上使用的切片资源,各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,由于第一标识符是与底层物理链路资源相关联的,因此,在SRv6 Policy隧道算路时动态选择所需要的切片资源,确保隧道路径的每一跳都有底层物理资源的保障和独享,从而实现承载网的硬切片服务,满足了切片用户的隧道硬隔离需求。
具体的,可实现同一物理链路上各切片资源的独享,与现有FlexAlgo技术相比,可解决FlexAlgo各切片仅能独享一条物理链路、隔离粒度粗,现网资源基本无法满足,无法规模部署实现切片硬隔离的问题。
可以为切片提供底层物理资源保障,实现硬切片,与现有SR-TE、SR Policy技术相比,可解决仅通过隧道进行软隔离、物理资源完全共享的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中控制器侧的隧道建立方法实施流程示意图;
图2为本发明实施例中节点侧的报文传输方法实施流程示意图;
图3为本发明实施例中切片ID在IPv6头中的位置示意图;
图4为本发明实施例中Flow Label字段格式示意图;
图5为本发明实施例中ISIS SRv6 Capabilities sub-TLV结构扩展示意图;
图6为本发明实施例中BGP-LS SRv6 Capabilities sub-TLV结构扩展示意图;
图7为本发明实施例中subLinkResource Sub-TLV结构示意图1;
图8为本发明实施例中subLinkResource Sub-TLV结构示意图2;
图9为本发明实施例中拓扑结构示意图;
图10为本发明实施例中各设备End SID和End.X SID分配示意图;
图11为本发明实施例中切片用户3报文SRv6 Policy隧道转发过程示意图;
图12为本发明实施例中控制器结构示意图;
图13为本发明实施例中节点结构示意图。
具体实施方式
发明人在发明过程中注意到:
FlexAlgo切片技术只能保证节点选择和物理链路选择,实现物理端口级别的粗颗粒度的切片,但现网网络中无法保证所有节点之间的链路都有多条,因此无法端到端保证切片资源的独享,且此方案切片用户只能独享某条物理链路,无法实现将多条子链路资源分配给不同的切片用户,因此对于有物理隔离切片需求的场景会造成极大的资源浪费,基本不可用。
SR-TE和SRv6 Policy本身只是一种源路由隧道技术,都只能解决报文转发路径选择的问题,转发路径上的每条物理链路上的资源还是共享的,只是实现了逻辑的隔离,无法实现切片资源的硬隔离,无法保证切片用户所需的物理资源的独享,难以满足5G等高端行业客户的严格需求。
基于此,本发明实施例中提供了一种将第一标识符引入到转发面的方案,通过在转发报文中携带第一标识符,将第一标识符与设备的底层物理子链路资源相关联,来实现可规模部署的底层物理资源独享的隧道,从而满足各切片用户的隧道硬隔离需求,确保高价值业务的良好服务体验,提升网络价值。
下面结合附图对本发明的具体实施方式进行说明。
在说明过程中,将分别从控制器与节点侧的实施进行说明,然后还将给出二者配合实施的实例以更好地理解本发明实施例中给出的方案的实施。这样的说明方式并不意味着二者必须配合实施、或者必须单独实施,实际上,当控制器与节点分开实施时,其也各自解决自身一侧的问题,而二者结合使用时,会获得更好的技术效果。
图1为控制器侧的隧道建立方法实施流程示意图,如图所示,可以包括:
步骤101、控制器在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
步骤102、控制器指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
图2为节点侧的报文传输方法实施流程示意图,如图所示,可以包括:
步骤201、节点接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
步骤202、节点在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施例说明中,由于第一标识符主要涉及对切片资源的标识,因此,为更好地理解,第一标识符将主要以切片ID或SliceID为例进行说明。
具体的,方案提出的是一种基于SRv6隧道技术与转发面切片ID结合的有资源保障的承载网切片的方案。通过将切片ID与链路底层物理链路资源关联,在SRv6 Policy隧道算路时动态选择所需要的切片资源(与切片ID关联)、并在转发面携带切片ID的方式,确保隧道路径的每一跳都有底层物理资源的保障和独享,从而实现承载网的硬切片服务。
下面对各部分的实施进行说明。
(1)切片ID(SliceID)的格式的实施。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
具体的,可以将IPv6报文头中的20bit的Flow Label(流标签)字段用于切片。其中,高位4bit用于标识类型,若是切片类型,则后面的16bit用于携带SliceID。
用Flow Label字段的高4位来指示FlowLabel的类型,知道其为切片类型,于是根据FlowLabel低16bit携带的SliceID值以及目的地址信息,查找子接口转发表,将报文通过对应子接口资源转发出去。
图3为SliceID在IPv6头中的位置示意图,SliceID的位置如图中加黑框部分所示。
图4为Flow Label字段格式示意图,如图所示,可以在新定义的Flow Label字段的格式如下:
FL Type(4bit):指示FlowLabel类型;
FL Value(16bit):FlowLabel值。如果高4bit标识为切片类型,则后面16bit携带SliceID。
由于SliceID占用20bit的Flow Label全部字段,因此切片场景下不能使用ECMP(等价多径路由,Equal-cost Multipath Routing)功能。考虑到切片中流量都应该是沿SRv6 Policy严格指定路径转发,因此每个SRv6 Policy的主备CP(候选路径,CadidatePath)下均只有一条Segmentlist(段列表),无需考虑负荷分担。
(2)设备切片能力通告的实施。
实施中,还可以进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
1)图5为ISIS SRv6 Capabilities sub-TLV结构扩展示意图,如图所示,可以对ISIS(中间系统到中间系统,Intermediate system to intermediate system)的RouterCAPABILITY TLV(路由能力TLV;TLV:类型、长度、值,Tag、Length、Value)的SRv6Capabilities sub-TLV(SRv6能力子TLV)进行扩展,增加一个Q-flag(Q-标志),指示设备支持转发面切片处理能力。
2)图6为BGP-LS SRv6 Capabilities sub-TLV结构扩展示意图,如图所示,可以对BGP-LS(BGP链路状态;BGP:边界网关协议,Border Gateway Protocol)的SRv6 CapabilityTLV进行扩展,增加一个Q-flag,通告节点具有转发面切片处理能力。
(3)子链路标识符Sub-Link ID对应资源分配及状态维护的实施。
实施中,还可以进一步包括:
将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
对于节点侧,则还可以进一步包括:
节点的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,使用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第一标识符相关联。
实施中,为便于理解,第二标识符将主要使用子链路用子链路标识符(Sub-LinkID)来进行说明。
具体的,控制器可以将所有设备的每一条物理链路均划分成相互隔离的多个子链路,并为每条子链路分配单独的底层物理资源,如MTN(城域传输网,Metro transportnetwork)子接口、VLAN(虚拟局域网,Virtual Local Area Network)增强子接口、Channel(信道)化子接口资源、FlexE(灵活以太网,Flex Ethernet)子接口、独立QoS(服务质量,Quality of Service)队列等,且通过Sub-Link ID(子链路标识符)进行标识,子链路标识符长度为4字节,其中低位代表子链路资源ID,如MTNID、VLANID、ChannelID、FlexEID、QoSQueID,子链路资源ID不足32位的,高位可以用0填充。
以子链路资源为信道化子接口为例,示例如下(为精简表达,下表中每个数字代表8bit的十进制值):
表1:子链路Sub-Link ID物理资源分配表
上述各子链路对应的物理资源属性可在控制器上灵活定义。
实施中,还可以进一步包括:
在节点上分配的子链路资源大于切片用户的需求。
具体的,可以提前在设备上预分配好比实际切片用户需求多出一定比例的子链路资源(如:100M\200M\500M等,总量不超过该物理链路的总带宽),以便新用户来时,底层子链路资源已具备,业务能够快速开通。
1、为了兼容各类型的底层资源,因此引入子链路标识符:Sub-Link ID;也可以不需要Sub-Link ID,而是直接使用ChannelID(信道标识)来标识具体的子链路。
2、还可以为MTN子接口/VLAN增强子接口/Channel信道化子接口资源/FlexE子接口/独立QoS队列配置除Bandwidth(带宽)以外的其他物理资源,此处仅以带宽资源进行示例。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
具体的,控制器上可灵活定义上述各子链路对应的物理资源属性,并将上述对应关系的配置下发给网络中各设备,设备在本地执行相关的配置并存储上述对应关系。
例如,静态规划切片ID区间与切片资源关系,例如切片ID 1-500对应100M带宽资源需求,切片ID501-1000对应200M带宽资源需求,切片ID1001-1500对应300M带宽资源需求等等。
实施中,对于节点侧,还可以进一步包括:
节点通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
对于控制器侧,则还可以进一步包括:
控制器根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
具体的,控制器负责维护链路上每个Sub-Link ID的状态,如空闲、预占用、已占用等,并根据设备通过BGP-LS或Telemetry(遥测系统)上报的子链路资源Sub-Link ID占用情况,实时更新其状态,从而计算出每条链路的剩余资源情况。
(4)链路切片信息通告的实施。
实施中,还可以进一步包括:
在ISIS链路邻居TLV下定义第一Sub-TLV,该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV,该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,为便于理解,第一Sub-TLV将主要使用subLinkResource Sub-TLV来进行说明,第一TLV将主要使用subLinkResource TLV来进行说明。
对于节点侧,则有:
接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
1)在ISIS链路邻居TLV下新定义一个sub-TLV:subLinkResource(子链路资源)。
图7为subLinkResource Sub-TLV结构示意图1,如图所示,subLinkResource Sub-TLV用于通告每条链路的切片子链路资源Sub-Link ID的信息。
Type(8bit):TBD(有待确定,to be decided)待申请;
Length(8bit):报文长度,不包含Type和Length;
Flags(8bit):
Abit:设置后,表明新增子链路,有Sub-sub-TLV信息;
Dbit:设置后,表明删除子链路,无Sub-sub-TLV信息;
Sbit:设置后,表明修改子链路状态,无Sub-sub-TLV信息;
Mbit:设置后,表明修改子链路信息,有Sub-sub-TLV信息;
Status(8bit):子链路状态,如空闲、占用等;
Sub-Link ID(128bit):子链路标识;
Optional Sub-sub-TLVs:携带各子链路Sub-Link ID的切片资源信息(最大预留链路带宽,时延,链路丢包率等),至少可复用现有的RFC8570中定义的sub-TLV,如下表所示。
其中:图8为subLinkResource Sub-TLV结构示意图2,如图所示,Optional Sub-sub-TLVs也可以直接用Bandwidth/Delay(延迟)/...填写。
2)在BGP-LS的Link NLRI(网络层可达信息,Network Layer ReachabilityInformation)下新定义一个subLinkResource TLV。
subLinkResource TLV用于通告每条链路的切片子链路资源Sub-Link ID的信息,新定义结构和每字段说明同“图7和图8的subLinkResource Sub-TLV结构。
(5)SliceID的分配及状态维护的实施。
实施中,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源时,包括:
根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,
根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
方式1:控制器根据切片用户的需求,为每用户分配转发面SliceID资源及对应带宽信息,未被分配的SliceID暂时预留。
表2:转发面SliceID对应资源需求分配表
转发面SliceID | 所需带宽(G) | 状态 | 切片用户 |
1 | 100M | 已占用 | 用户1 |
2 | 100M | 已占用 | 用户2 |
3 | 200M | 预占用 | 用户3 |
4 | 100M | 已占用 | 用户4 |
5 | 200M | 预占用 | 用户5 |
6 | 500M | 已占用 | 用户6 |
7 | 未分配 | 未分配 | |
… | … | … |
上表中暂未分配带宽需求的SliceID,需根据后续新增切片用户的带宽需求进行随时更新,控制器负责维护该动态更新表,并将上述信息同步下发给各设备保存;其中,SliceID的状态包括空闲、预占用、已占用、未分配等。
方式2:静态规划SliceID区间与切片资源带宽关系,例如SliceID 1-500对应100M,501-1000对应200M,1001-1500对应300M等等。控制器根据切片用户的需求,为每个用户分配一个对应带宽的SliceID,并保存两者对应关系。
(6)转发面SliceID的携带的实施。
实施中,还可以进一步包括:
配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
对于节点侧,在节点是报文传输的头节点时,还可以进一步包括:
根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6Policy外层IPv6头的Flow Label字段携带第一标识符。
具体的,可以提前配置好Color(颜色)模板和转发面SliceID映射关系,头节点设备根据SRv6 Policy的Color属性获取对应的SliceID,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带SliceID信息。
(7)SRv6 Policy隧道基本配置的实施。
实施中,还可以进一步包括:
在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
具体的,可以在SRv6 Policy隧道基本配置中增加切片开关字段SliceEnable,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
对于切片用户,控制器可以根据其业务需求(带宽、时延等)为新用户分配一个新的SliceID资源,并进行相应SliceID和对应color模板的设置。在控制器下发给设备的SRv6Policy隧道基本配置中使用对应的color模板,并增加切片开关字段SliceEnable(切片使能),将SliceEnable取值设为true(真)。
当SliceEnable参数取值为true时,表示隧道的算路使能切片资源,且算路约束是严格路径(如不是,则提供隧道参数配置错误告警),则在进行SRv6Policy路径计算时,需结合设备的切片支持能力和各链路的切片资源信息(切片子链路Sub-Link ID的状态和带宽,时延)进行隧道严格路径的计算。
当SliceEnable取值为false(假)时,就是传统的算路模式,不需要考虑结合链路的切片资源信息进行算路。
(8)SRv6 Policy隧道的SliceID与子链路标识Sub-Link ID的关联的实施。
实施中,在节点是报文传输的头节点时,还可以进一步包括:
在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
对于路径上的节点,还可以进一步包括:
接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
实施中,在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。如通过查找子接口转发表将报文通过对应的子接口转发出去。
实施中,为便于理解,第一关系表或第一转发表将主要使用子接口转发表来进行说明。
具体的,当SRv6 Policy隧道的头节点设备收到控制器下发的BGP SRv6Policy主备CP路径后,判断隧道基本配置中的SliceEnable字段,如果为true,则沿主备CP路径分别发送一个探测报文,如SBFD for path(路径的SBFD;SBFD:无缝双向转发检测,SeamlessBidirectional Forwarding Detection)报文或自定义的特殊报文,并在报文头FlowLable字段的低16bit携带SliceID的值,FlowLabel高4bit设置为切片类型。
主备CP路径上沿途设备,基于报文的目的地址字段确定出接口后,再根据报文头中携带的SliceID获知该切片用户所需的资源需求;从该出接口上的空闲状态的子链路资源中分配Sub-Link ID给该SliceID。
沿途设备根据Sub-Link ID确定对应的子接口物理资源,如MTN子接口、VLAN增强子接口、Channel信道化子接口资源、FlexE子接口、独立QoS队列等,并在本地保存SliceID与Sub-Link ID的对应关系,并生成基于子接口的转发表。
表3:SliceID与Sub-Link ID对应关系表
SliceID | 子链路标识符Sub-Link ID |
1 | 0001 |
2 | 0002 |
3 | 0005 |
4 | 0003 |
5 | 0006 |
6 | 0008 |
…… | …… |
表4:子接口转发表
Prefix | Nexthop | OutIf | SliceID | ChannelID |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 1 | 001 |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 2 | 002 |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 3 | 005 |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 4 | 003 |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 5 | 006 |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 6 | 008 |
实施中,还可以进一步包括:
接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,
接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
对于节点侧,还可以进一步包括:
节点通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,
节点通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
具体的,各设备将对应Sub-Link ID的状态更新为已占用;并将SliceID与Sub-Link ID对应关系通过Telemetry实时上报上报给控制器,将Sub-Link ID状态变化信息通过BGP-LS新定义的subLinkResource Sub-TLV或Telemetry实时上报给控制器。
探测报文到达SRv6 Policy隧道尾节点后,沿途各设备均已建立好SliceID与子链路资源Sub-Link ID的关联关系,并生成了基于子接口的转发表。
(9)转发设备上切片用户报文转发机制的实施。
隧道头节点设备收到控制器下发的隧道路径segmentlist后,判断隧道基本配置中的SliceEnable字段,如果为true,则根据SRv6 Policy的color信息将对应的SliceID写入外层IPv6报头的FlowLabel的低16bit,FlowLabel高4bit设置为切片类型。
隧道沿途转发设备根据报文头的目的地址字段确定出接口,根据FlowLabel字段的高4bit知道报文为切片类型,于是根据FlowLabel字段的低16bit的SliceID,查本地子接口转发表,在该出接口确定子接口,将报文通过对应子接口转发出去。
下面以实例进行说明。
1)组网说明。
假设网络中有A、B、C、D、E、F、G、H设备,运行ISIS动态路由协议,且都在同一个ISIS域中,所有设备均支持切片能力。
SDN(软件定义网络,Software Defined Network)控制器与转发设备之间建立BGP-LS连接。
图9为拓扑结构示意图,实例中的拓扑结构如图所示。
图10为各设备End SID和End.X SID分配示意图,网络中各设备的End SID和End.XSID的分配如图所示。
2)切片需求说明。
假设当前有3个用户切片需求,带宽需求分别为100M、100M、200M,每个用户的切片需求如下表所示。
3)切片用户对应的转发面SliceID分配说明。
控制器根据切片用户的需求,为每用户分配转发面SliceID资源及对应带宽信息,未被分配的SliceID暂时预留。
表4:转发面SliceID对应资源需求分配表
转发面SliceID | 所需带宽(G) | 状态 |
1 | 100M | 空闲 |
2 | 100M | 空闲 |
3 | 200M | 空闲 |
4 | 未分配 | 未分配 |
5 | 未分配 | 未分配 |
… | … | … |
n | 未分配 | 未分配 |
控制器上维护该动态更新表,并将更新后状态随时下发给设备保存。
4)子链路标识符Sub-Link ID对应资源分配及状态维护说明。
通过控制器对设备各端口的子链路标识符Sub-Link ID对应的物理资源进行配置,以A设备和Channel信道化子接口资源为例,A设备上某个端口子链路物理资源分配如下表所示,其他设备类似:
Sub-Link ID | ChannelID | Bandwidth | 状态 |
0001 | 001 | 100M | 空闲 |
0002 | 002 | 100M | 空闲 |
0003 | 003 | 100M | 空闲 |
0004 | 004 | 100M | 空闲 |
0005 | 005 | 200M | 空闲 |
0006 | 006 | 200M | 空闲 |
0007 | 007 | 200M | 空闲 |
0008 | 008 | 500M | 空闲 |
…… | …… | …… | …… |
000n | 00n | 500M | 空闲 |
在设备上预分配的子链路标识符Sub-Link ID及对应的物理资源需要比实际二级切片用户的需求多出一定比例(如:分别预留一定数量的100M\200M\500M的信道化子接口资源,但总量不能超过对应FA一级切片的总带宽),以便新用户来时,底层链路的子接口已具备,业务能够快速开通。
5)SRv6-Policy基础配置、算路及报文转发过程说明。
在SRv6 Policy隧道严格路径场景下。
以切片用户3的切片资源开通为例,该用户需要一条从A节点到E节点的200M带宽资源。
控制器为用户3分配一个新的SliceID资源,如下表所示:
转发面SliceID | 所需带宽(G) | 状态 | 切片用户 |
3 | 200M | 空闲 | 用户3 |
控制器进行对应color模板的设置,color 1:color=100,SliceID=3等。
控制器向隧道头节点A设备下发SRv6 Policy隧道基本配置:color模板=1,endpoint=E3:1::100,SliceEnable=true,带宽需求=200M,HSB(主备)=true,要求为严格路径。
控制器或头节点设备根据SliceEnable=true,知道需要基于设备的切片支持能力和各链路的切片资源信息(切片子链路Sub-Link ID的状态和带宽,时延)进行SRv6Policy的主备CP严格路径的计算。
控制器或头节点查看拓扑中各链路的剩余带宽资源情况(可以根据Sub-Link ID的空闲资源情况获得),计算出一条从A到E的带宽资源满足200M需求的主备CP的segmentlist路径,并使用各链路的End.X SID进行路径的编排。
示例如下:
主CP:<X3:1::100,X3:2::100,X3:3::100,X3:4::100>
备CP:<X3:5::100,X3:6::100,X3:7::100,X3:8::100>
将各设备上SliceID 3的状态均更新为预占用(仅采用SliceID的分配方式1时需要)。
如果为控制器算路,则控制器将上述路径通过BGP SRv6 Policy下发给头节点A设备。
SRv6 Policy隧道的头节点A设备收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送一个探测报文(如SBFD for path报文或自定义的特殊报文),并在报文头FlowLable字段的低16bit携带SliceID的值201,FlowLabel高4bit设置为切片类型。
主备CP路径上沿途设备,基于报文的目的地址字段确定出接口后,再根据报文头中携带的SliceID值3获知该切片用户所需的资源需求为200M带宽;从该出接口上的空闲状态的子链路资源中分配Sub-Link ID(如:0005)给SliceID 3。
隧道路径沿途各设备根据Sub-Link ID(如:0005)确定对应的信息化子接口(如:ChannelID 005),并在本地保存SliceID与Sub-Link ID的对应关系,同时生成子接口转发表。
以A设备为例,生成的切片ID与Sub-Link ID对应关系示意如下表所示:
SliceID | 子链路标识符Sub-Link ID |
3 | 0005 |
以A设备为例,生成的子接口转发表示意如下表所示:
Prefix | Nexthop | OutIf | SliceID | ChannelID |
E3:1::/64 | X3:1:1::100 | GE0/1/0 | 3 | 005 |
其中:子接口转发表也可以不需要ChannelID,直接用Sub-Link ID表示物理子接口。
隧道路径沿途各设备将对应Sub-Link ID的状态更新为已占用;并将SliceID与Sub-Link ID对应关系通过Telemetry实时上报上报给控制器,将Sub-Link ID状态变化信息通过BGP-LS新定义的subLinkResource Sub-TLV或Telemetry实时上报给控制器。
以A设备为例,对应Sub-Link ID的状态更新示意如下:
Sub-Link ID | ChannelID | 带宽资源 | 状态 |
0005 | 005 | 200M | 已占用 |
探测报文到达SRv6 Policy隧道尾节点后,沿途各设备均已建立好SliceID与子链路资源Sub-Link ID的关联关系,并生成了基于子接口的转发表。
当探测报文成功返回头节点时(如SBFD for path状态up),则SRv6 Policy状态up(在运行),可承载业务流量。
图11为切片用户3报文SRv6 Policy隧道转发过程示意图,当切片用户3的报文到达入口节点A设备时,报文转发过程如图所示。
A设备根据VPN路由策略将该报文迭代到<Endpoint=E3:1:100,color=100>的SRv6 Policy隧道承载,于是进行SRv6 Policy隧道的外层IPv6报文头的封装,其SRH的segmentlist为<X3:1::100,X3:2::100,X3:3::100,X3:4::100,E3:1::B100>(其中,E3:1::B100为该流量对应VPN SID),当前SL指针指向X3:1::100;并根据color1模板中的SliceID=3,将SliceID的值3写入外层IPv6报文头的FlowLable的低16bit,FlowLabel高4bit设置为切片类型。
A设备根据当前SL指针指向的X3:1::100以及SliceID 3的信息,查本地转发表,知道该报文的出接口为GE0/1/0,子接口为ChannelID 005的信息化子接口,于是将报文通过该信道化子接口005转发出去。
路径中后续设备均执行相同操作,直到报文到达隧道尾节点E设备。这样就确保了切片用户3的流量在转发路径的每条链路上均可获得200M的信道化子接口的物理资源保障。
基于同一发明构思,本发明实施例中还提供了一种控制器、节点、及计算机可读存储介质,由于这些设备解决问题的原理与隧道建立方法、报文传输方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
在实施本发明实施例提供的技术方案时,可以按如下方式实施。
图12为控制器结构示意图,如图所示,控制器中包括:
处理器1200,用于读取存储器1220中的程序,执行下列过程:
在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机1210,用于在处理器1200的控制下接收和发送数据。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,进一步包括:
在节点上分配的子链路资源大于切片用户的需求。
实施中,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
实施中,进一步包括:
根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
实施中,进一步包括:
在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源时,包括:
根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,
根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
实施中,进一步包括:
配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,进一步包括:
接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,
接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
实施中,进一步包括:
在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
其中,在图12中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器1200代表的一个或多个处理器和存储器1220代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机1210可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器1200负责管理总线架构和通常的处理,存储器1220可以存储处理器1200在执行操作时所使用的数据。
本发明实施例中还提供了一种控制器,包括:
控制器资源模块,用于在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
控制器指示模块,用于指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,控制器指示模块进一步用于指示通过IPv6报文头中的Flow Label字段后面的16bit携带第一标识符。
实施中,控制器指示模块进一步用于指示在Router CAPABILITY TLV的SRv6Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,控制器资源模块进一步用于将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,控制器资源模块进一步用于在节点上分配的子链路资源大于切片用户的需求。
实施中,控制器指示模块进一步用于预先下发给各节点第一标识符所对应的底层物理链路资源的需求信息,或接收在各节点上预先配置好并同步给控制器的第一标识符所对应的底层物理链路资源的需求信息。
实施中,进一步包括:
控制器维护模块,用于根据各节点通过BGP-LS或Telemetry上报的子链路资源使用情况对链路上每个Sub-Link ID的状态进行维护。
实施中,控制器资源模块进一步用于在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,控制器资源模块进一步用于根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
实施中,控制器资源模块进一步用于配置Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,控制器维护模块进一步用于接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
实施中,控制器维护模块进一步用于在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
图13为节点结构示意图,如图所示,节点中包括:
处理器1300,用于读取存储器1320中的程序,执行下列过程:
接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机1310,用于在处理器1300的控制下接收和发送数据。
实施中,第一标识符是通过IPv6报文头中的Flow Label字段后面的16bit携带的。
实施中,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
节点的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,第一标识符所对应的底层物理链路资源的需求信息,或接收在各节点上预先配置好并同步给控制器的第一标识符所对应的底层物理链路资源的需求信息。
实施中,进一步包括:
通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
实施中,进一步包括:
接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,在节点是报文传输的头节点时,进一步包括:
根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,在节点是报文传输的头节点时,进一步包括:
在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
实施中,进一步包括:
接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
实施中,在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
实施中,进一步包括:
通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,
通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
其中,在图13中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器1300代表的一个或多个处理器和存储器1320代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机1310可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器1300负责管理总线架构和通常的处理,存储器1320可以存储处理器1300在执行操作时所使用的数据。
本发明实施例中还提供了一种节点,包括:
节点接收模块,用于接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
节点传输模块,用于在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
实施中,节点传输模块进一步用于通过IPv6报文头中的Flow Label字段后面的16bit携带第一标识符。
实施中,节点传输模块进一步用于在Router CAPABILITY TLV的SRv6Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
实施中,进一步包括:
节点链路模块,用于的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
实施中,节点接收模块进一步用于接收控制器预先下发给节点的第一标识符所对应的底层物理链路资源的需求信息,或接收在各节点上预先配置好并同步给控制器的第一标识符所对应的底层物理链路资源的需求信息。
实施中,进一步包括:
节点上报模块,用于通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
实施中,节点接收模块进一步用于接收控制器在ISIS链路邻居TLV下定义第一Sub-TLV(如:subLinkResource Sub-TLV),该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用第一TLV(如:subLinkResource TLV),该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
实施中,节点传输模块进一步用于在节点是报文传输的头节点时,根据SRv6Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
实施中,节点传输模块进一步用于在节点是报文传输的头节点时,在接收到控制器下发的BGP SRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
实施中,节点接收模块进一步用于接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
实施中,节点传输模块进一步用于在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
实施中,节点上报模块进一步用于通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述控制器侧的隧道建立和/或节点侧的报文传输方法的计算机程序。
具体实施可以参见控制器侧的隧道建立和/或节点侧的报文传输方法的实施。
综上所述,本发明实施例提供的技术方案中,提供了切片用户SliceID的分配、对应资源及状态维护的运行机制和方案,具体包括:
将IPv6报文头中的20bit的Flow Label字段用于切片SliceID的格式定义;
ISIS的链路邻居TLV下新定义链路切片信息Sub-TLV和BGP-LS的Link NLRI下新定义的链路切片信息TLV,用于通告链路上切片子链路资源Sub-Link ID、状态和资源信息(最大预留链路带宽,时延,链路丢包率等);
ISIS的链路邻居TLV下新定义的链路切片信息subLinkResource Sub-TLV的结构和BGP-LS的Link NLRI下新定义的链路切片信息subLinkResource TLV的结构;
SRv6 Policy隧道基本配置中增加切片开关字段SliceEnable,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息;
在color模板下增加SliceID的设置,使得SRv6 Policy头节点可以从配置的color模板中获取切片用户SliceID信息,并将SliceID值写入到IPv6外层报文头的FlowLable的低16bit,FlowLabel高4bit设置为切片类型的方案;
控制器或头节点设备根据切片用户带宽需求,结合各物理链路的子链路资源(如:通过Sub-Link ID标识)的空闲资源情况获得各物理链路的剩余带宽资源情况,进行基于切片带宽约束资源情况的算路的方案和处理机制;
控制器根据切片用户的资源需求,为每个用户分配一个转发面切片ID及对应资源信息,并实时维护更新切片ID状态的机制和方案;
切片ID取值区间与切片资源关系的静态规划方案;
隧道头节点沿隧道主备CP发送特殊报文或BFD报文,驱动沿途设备建立切片ID与子链路资源标识的关联关系,并在本地生成对应子接口转发表的机制和方案;
转发设备上根据转发报文IPv6报头中FlowLabel的高4位,知道其为切片类型,于是根据FlowLabel低16bit携带的SliceID值以及目的地址信息,查找子接口转发表,将报文通过对应子接口资源转发出去的处理机制和方案。
本方案可实现同一物理链路上各切片资源的独享,与现有FlexAlgo技术相比,可解决FlexAlgo各切片仅能独享一条物理链路、隔离粒度粗,现网资源基本无法满足,无法规模部署实现切片硬隔离的问题。
本方案可以很好地为切片提供底层物理资源保障,实现硬切片,与现有SR-TE、SRPolicy技术相比,可解决仅通过隧道进行软隔离、物理资源完全共享的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (29)
1.一种隧道建立方法,其特征在于,包括:
控制器在进行互联网协议第6版分段路由-流量协议SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
控制器指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
2.如权利要求1所述的方法,其特征在于,第一标识符是通过互联网协议第6版IPv6报文头中的流标签Flow Label字段后面的16bit携带的。
3.如权利要求1所述的方法,其特征在于,进一步包括:
在路由能力类型、长度、值Router CAPABILITY TLV的互联网协议第6版分段路由-流量协议能力子类型、长度、值SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在边界网关协议链路状态BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
4.如权利要求1所述的方法,其特征在于,进一步包括:
将各节点的每一条底层物理链路划分成相互隔离的多个子链路,为每条子链路分配单独的底层物理资源,并用第二标识符对子链路进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
5.如权利要求4所述的方法,其特征在于,进一步包括:
在节点上分配的子链路资源大于切片用户的需求。
6.如权利要求4所述的方法,其特征在于,进一步包括:
接收各节点通过Telemetry实时上报的第一标识符与第二标识符的对应关系;和/或,
接收各节点通过BGP-LS的第一TLV或Telemetry实时上报第二标识符所标识资源的状态变化信息。
7.如权利要求1所述的方法,其特征在于,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给各节点的,或在各节点上预先配置好并同步给控制器的。
8.如权利要求1所述的方法,其特征在于,进一步包括:
控制器根据各节点通过BGP-LS或遥测系统Telemetry上报的子链路资源使用情况对链路上每个子链路标识Sub-Link ID的状态进行维护。
9.如权利要求1所述的方法,其特征在于,进一步包括:
在中间系统到中间系统ISIS链路邻居类型、长度、值TLV下定义第一子类型、长度、值Sub-TLV,该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
在BGP-LS的链路网络层可达信息Link NLRI下使用第一TLV,该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
10.如权利要求1所述的方法,其特征在于,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源时,包括:
根据切片用户的需求,为每用户分配第一标识符标识的资源,未被分配的第一标识符暂时预留;或,
根据切片用户的需求,为每个用户分配一个对应资源的第一标识符,并保存两者对应关系。
11.如权利要求1所述的方法,其特征在于,进一步包括:
配置颜色Color模板和第一标识符的映射关系,用以供头节点设备根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
12.如权利要求1所述的方法,其特征在于,进一步包括:
在SRv6 Policy隧道配置中增加切片开关字段,用于指示算路时需考虑设备的切片支持能力和各链路的切片资源信息。
13.一种报文传输方法,其特征在于,包括:
节点接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
节点在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
14.如权利要求13所述的方法,其特征在于,第一标识符是通过IPv6报文头中的FlowLabel字段后面的16bit携带的。
15.如权利要求13所述的方法,其特征在于,进一步包括:
在Router CAPABILITY TLV的SRv6 Capabilities sub-TLV上携带有用以指示该节点支持转发面切片处理能力的标识;和/或,
在BGP-LS的SRv6 Capability TLV上携带有用以通告该节点具有转发面切片处理能力标识。
16.如权利要求13所述的方法,其特征在于,进一步包括:
节点的每一条底层物理链路被划分成相互隔离的多个子链路,每条子链路分配有单独的底层物理资源,子链路用第二标识符进行标识;
所述第一标识符与底层物理链路资源相关联,是与第二标识符相关联。
17.如权利要求13所述的方法,其特征在于,第一标识符所对应的底层物理链路资源的需求信息是控制器预先下发给节点的,或在各节点上预先配置好并同步给控制器的。
18.如权利要求13所述的方法,其特征在于,进一步包括:
节点通过BGP-LS或Telemetry向控制器上报子链路资源使用情况。
19.如权利要求13所述的方法,其特征在于,进一步包括:
接收控制器在ISIS链路邻居TLV下使用的第一Sub-TLV,该Sub-TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息;和/或,
接收控制器在BGP-LS的Link NLRI下使用的第一TLV,该TLV用于通告每条链路的至少包括第二标识符、状态、资源信息之一或者其组合的子链路资源信息。
20.如权利要求13所述的方法,其特征在于,在节点是报文传输的头节点时,进一步包括:
根据SRv6 Policy的Color属性获取对应的第一标识符,并在转发报文的SRv6 Policy外层IPv6头的Flow Label字段携带第一标识符。
21.如权利要求13所述的方法,其特征在于,在节点是报文传输的头节点时,进一步包括:
在接收到控制器下发的BGPSRv6 Policy主备CP路径后,沿主备CP路径分别发送探测报文,在报文头FlowLable字段携带第一标识符,用以供各节点分配路径资源。
22.如权利要求21所述的方法,其特征在于,进一步包括:
接收探测报文,所述探测报文头FlowLable字段携带有第一标识符,节点为该第一标识符分配路径子链路资源,并保存该第一标识符与该子链路资源的第二标识符的第一关系表,和/或生成第一转发表。
23.如权利要求22所述的方法,其特征在于,在第一标识符对应的切片资源上转发报文,是通过查找第一关系表或第一转发表将报文通过对应的接口转发出去的。
24.如权利要求13所述的方法,其特征在于,进一步包括:
节点通过Telemetry向控制器实时上报第一标识符与第二标识符的对应关系;和/或,
节点通过BGP-LS的第一TLV或Telemetry向控制器实时上报第二标识符所标识资源的状态变化信息。
25.一种控制器,其特征在于,包括:
处理器,用于读取存储器中的程序,执行下列过程:
在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的切片资源;
指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机,用于在处理器的控制下接收和发送数据。
26.一种控制器,其特征在于,包括:
控制器资源模块,用于在进行SRv6 Policy隧道算路时,根据切片用户的需求,为用户分配报文转发路径上使用的第一标识符;
控制器指示模块,用于指示各节点在报文头携带选择的切片资源中的第一标识符,在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
27.一种节点,其特征在于,包括:
处理器,用于读取存储器中的程序,执行下列过程:
接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的;
收发机,用于在处理器的控制下接收和发送数据。
28.一种节点,其特征在于,包括:
节点接收模块,用于接收控制器指示的各节点在报文头携带选择的切片资源中的第一标识符;
节点传输模块,用于在第一标识符对应的切片资源上转发报文,其中,所述第一标识符是与底层物理链路资源相关联的。
29.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至24任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111323730.1A CN116112431A (zh) | 2021-11-09 | 2021-11-09 | 一种隧道建立、报文传输方法及设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111323730.1A CN116112431A (zh) | 2021-11-09 | 2021-11-09 | 一种隧道建立、报文传输方法及设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116112431A true CN116112431A (zh) | 2023-05-12 |
Family
ID=86264257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111323730.1A Pending CN116112431A (zh) | 2021-11-09 | 2021-11-09 | 一种隧道建立、报文传输方法及设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116112431A (zh) |
-
2021
- 2021-11-09 CN CN202111323730.1A patent/CN116112431A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111541613B (zh) | 一种基于SRv6的数据处理方法及相关设备 | |
CN107070798B (zh) | 网络区域划分方法、网络设备和系统 | |
CN107733793B (zh) | 一种转发表项维护方法及装置 | |
CN106656781B (zh) | 一种报文传输的方法、装置和系统 | |
CN115004656B (zh) | 一种报文发送方法、设备及系统 | |
CN105577502B (zh) | 业务传送方法及装置 | |
US20070268821A1 (en) | Rpr representation in ospf-te | |
CN111224874B (zh) | 一种路径构建的方法及相关设备 | |
CN109391478B (zh) | 一种组播业务控制方法和装置、计算机可读存储介质 | |
CN102986176A (zh) | 用于bgp mac-vpn的mpls标签分配的方法和装置 | |
CN115277548A (zh) | 一种传输方法、装置及存储介质 | |
CN113285876B (zh) | 路由方法、路由装置及计算机可读存储介质 | |
CN112532563B (zh) | 报文的发送方法和装置 | |
CN114095305A (zh) | Bier报文转发的方法、设备以及系统 | |
CN113037527B (zh) | 网络切片创建方法、报文转发方法及其装置 | |
WO2022110535A1 (zh) | 一种报文发送方法、设备及系统 | |
US20230155930A1 (en) | Packet Processing Method and Network Device | |
CN115865769A (zh) | 报文处理方法、网络设备及系统 | |
CN108322376B (zh) | 路由同步方法、装置及机器可读存储介质 | |
CN104429022A (zh) | 通信网络中的连通性故障管理 | |
CN117118886A (zh) | 报文转发方法、头端设备、控制器、设备及存储介质 | |
CN112436990B (zh) | 一种数据转发方法、设备以及计算机可读存储介质 | |
CN115550252A (zh) | 路由发布和转发报文的方法、装置、设备和存储介质 | |
CN112751766A (zh) | 报文转发方法、装置及计算机存储介质 | |
CN102739519B (zh) | 根基多点服务实现方法、装置和系统、运营商边缘设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |