Hello, I have been selected as the Routing Directorate reviewer for this draft. The Routing Directorate seeks to review all routing or routing-related drafts as they pass through IETF last call and IESG review, and sometimes on special request. The purpose of the review is to provide assistance to the Routing ADs. For more information about the Routing Directorate, please see ​http://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDir Although these comments are primarily for the use of the Routing ADs, it would be helpful if you could consider them along with any other IETF Last Call comments that you receive, and strive to resolve them through discussion or by updating the draft. Document: draft-ietf-idr-bgp-ls-segment-routing-msd-16.txt Reviewer: Mach Chen Review Date: April 17, 2020 IETF LC End Date: Intended Status: Standards Track Summary: I have some minor concerns about this document that I think should be resolved before publication. Comments: This document is clearly written and easy to understand. Major Issues: No major issues found. Minor Issues: The Node MSD TLV and Link MSD TLV are designed to be able to carry multiple MSDs. I guess this is designed for future extensibility, where a Node may have multiple types of MSD, right? But for each type, is it allowed to carry multiple instances of MSD-Type/MSD-Value pair or only one instance? For whichever case, there need some text to describe the rule about the sending and receiving procedures. For example, when multiple instances allowed, how does a node decide which instance takes effect; if only one instance allowed and multiple instances received, how to handle this, discard the whole TLV, or only the first instance takes effect and the rest ignored. Nits: 1. Section 1, s/learn/learns 2. Section 3 and Section 4: The TLV format of Node/Link MSD is defined as follows: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MSD-Type | MSD-Value | MSD-Type... | MSD-Value... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Since the MSD-Type/MSD-Value pairs are variable in length, the above definition does not reflect this, suggest to change the figure as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ // MSD-Type | MSD-Value | MSD-Type... | MSD-Value... // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Best regards, Mach