Segment Routing Path MTU in BGPHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinac.l@huawei.comChina Telecom109, West Zhongshan Road, Tianhe District.GuangzhouChinazhuyq8@chinatelecom.cnSaudi Telecom CompanyRiyadhSaudi Arabiaaelsawaf.c@stc.com.saHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinalizhenbin@huawei.com
Routing Area
Interdomain Routing Working GroupSegment Routing is a source routing paradigm that explicitly
indicates the forwarding path for packets at the ingress node. An SR
policy is a set of candidate SR paths consisting of one or more segment
lists with necessary path attributes. However, the path maximum
transmission unit (MTU) information for SR path is not available in the
SR policy since the SR does not require signaling. This document defines
extensions to BGP to distribute path MTU information within SR
policies.Segment routing (SR) is a source routing
paradigm that explicitly indicates the forwarding path for packets at
the ingress node. The ingress node steers packets into a specific path
according to the Segment Routing Policy ( SR Policy) as defined in . In order to
distribute SR policies to the headend, specifies a mechanism
by using BGP.The maximum transmission unit (MTU) is the largest size packet or
frame, in bytes, that can be sent in a network. An MTU that is too large
might cause retransmissions. Too small an MTU might cause the router to
send and handle relatively more header overhead and acknowledgments.When an LSP is created across a set of links with different MTU
sizes, the ingress router needs to know what the smallest MTU is on the
LSP path. If this MTU is larger than the MTU of one of the intermediate
links, traffic might be dropped, because MPLS packets cannot be
fragmented. Also, the ingress router may not be aware of this type of
traffic loss, because the control plane for the LSP would still function
normally. specify the mechanism of MTU
signaling in RSVP. Likewise, SRv6 pakcets will be dropped if the packet
size is larger than path MTU, since IPv6 packet can not be fragmented on
transmission .The host may discover the PMTU by Path MTU Discovery (PMTUD) or other mechanisms. But the ingress still needs to
examine the packet size for dropping too large packets to avoid
malicious traffic or error traffic. Also, the packet size may exceeds
the PMTU because of the new encapsulation of SR-MPLS or SRv6 packet at
the ingress.In order to check whether the Packet size exceeds the PMTU or not,
the ingress node needs to know the Path MTU associated to the forwarding
path. However, the path maximum transmission unit (MTU) information for
SR path is not available since the SR does not require signaling.This document defines extensions to BGP to distribute path MTU
information within SR policies. The Link MTU information can be obtained
via BGP-LS or some other
means. With the Link MTU, the controller can compute the PMTU and convey
the information via the BGP SR policy.This memo makes use of the terms defined in
and .The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 when, and only
when, they appear in all capitals, as shown here.As defined in
, the SR policy encoding structure is as follows:As introduced in Section 1, each SR path has it's path MTU. SR policy
with SR path MTU information is expressed as below:A Path MTU sub-TLV is an Optional sub-TLV. When it appears, it must
appear only once at most within a Segment List sub-TLV. If multiple
Path MTU sub-TLVs appear within a Segment List sub-TLV, the NLRI MUST
be treated as a malformed NLRI.As per ,
when the error determined allows for the router to skip the malformed
NLRI(s) and continue processing of the rest of the update message,
then it MUST handle such malformed NLRIs as 'Treat-as-withdraw'. This
document does not define new error handling rules for Path MTU
sub-TLV, and the error handling rules defined in apply to this
document.A Path MTU sub-TLV is associated with an SR path specified by a
segment list sub-TLV or a path segment . The Path MTU sub-TLV has
the following format:Where:Type: to be assigned by IANA.Length: the total length of the value field not including Type and
Length fields.Reserved: 16 bits reserved and MUST be set to 0 on transmission and
MUST be ignored on receipt.Path MTU: 4 bytes value of path MTU in octets. The value can be
calculated by a central controller or other devices based on the
information that learned via IGP of BGP-LS or other means.Whenever the path MTU of a physical or logical interface is
changed, a new SR policy with new path MTU information should be
updated accordingly by BGP.The document does not bring new operation beyond the description of
operations defined in . The existing
operations defined in can apply to this
document directly.Typically but not limit to, the SR policies carrying path MTU
infomation are configured by a controller.After configuration, the SR policies carrying path MTU infomation
will be advertised by BGP update messages. The operation of
advertisement is the same as defined in , as well as the
receiption.The consumer of the SR policies is not the BGP process. The operation
of sending information to consumers is out of scope of this
document.[Note to the RFC Editor - remove this section before publication, as
well as remove the reference to .This section records the status of known implementations of the
protocol defined by this specification at the time of posting of this
Internet-Draft, and is based on a proposal described in . The description of implementations in this section
is intended to assist the IETF in its decision processes in progressing
drafts to RFCs. Please note that the listing of any individual
implementation here does not imply endorsement by the IETF. Furthermore,
no effort has been spent to verify the information presented here that
was supplied by IETF contributors. This is not intended as, and must not
be construed to be, a catalog of available implementations or their
features. Readers are advised to note that other implementations may
exist.According to , "this will allow reviewers and
working groups to assign due consideration to documents that have the
benefit of running code, which may serve as evidence of valuable
experimentation and feedback that have made the implemented protocols
more mature. It is up to the individual working groups to use this
information as they see fit".The feature has been implemented on Huawei VRP8.Organization: HuaweiImplementation: Huawei's Commercial Delivery implementation
based on VRP8.Description: The implementation has been done.Maturity Level: ProductContact: guokeqiang@huawei.comThis document defines a new Sub-TLV in registries "SR Policy List
Sub- TLVs" :TBAJun QiuHuawei TechnologiesChinaEmail: qiujun8@huawei.comAuthors would like to thank Ketan Talaulikar, Aijun Wang, Weiqiang
Cheng, Huanan Chen, Chongfeng Xie, Stefano Previdi, Taishan Tang,
Keqiang Guo, Chen Zhang, Susan Hares, Weiguo Hao, Gong Xia, Bing Yang,
Linda Dunbar, Shunwan Zhuang, Huaimo Chen, Mach Chen, Jingring Xie,
Zhibo Hu, Jimmy Dong and Jianwei Mao for their proprefessional comments
and help.