요약

  • Maximum SID Depth는 유한한 구현 제약이다. 여기서 살펴보는 다섯 표준은 이 제약을 노드 및 링크 범위에서 드러나게 하고, 토폴로지 소비자에게 전달하며, PCEP 세션이나 경로 요청에서 실행 가능한 정보로 만든다.
  • 이 기록에서 Jeff Tantsura의 위치는 협업적이며 문서적이다. RFC들은 정확한 기능 신호 전달에 대한 반복 작업의 프로필을 뒷받침하지만, 명시된 우선순위, 부재, 검증, 오류 규칙은 이 설명을 전기나 운영 성공 주장이 아니라 실행 중인 코드의 한계에 묶어 둔다.

전달되어야 하는 제약

계산된 경로는 논리적으로 유효하더라도 헤드엔드가 지원하는 것보다 더 많은 세그먼트 식별자(SID)를 부과하도록 요구할 수 있다. 이것이 Jeff Tantsura가 공동 저술한 Maximum SID Depth 기록의 중심에 있는 좁은 운영 문제다. 관련 표준은 모든 노드가 같은 용량을 가진다고 가정하거나, 구현 한계를 장치 내부에 남을 수 있는 지식으로 취급함으로써 이 문제를 해결하지 않는다. 대신 한계를 표현하는 방법을 정의하고, 노드 또는 링크 범위를 부여하며, 라우팅 및 토폴로지 분배 시스템을 통해 이동시키고, 경로가 요청되거나 계산되는 지점에서 적용한다.

RFC 8491은 IS-IS용 유형이 지정된 노드 및 링크 MSD 광고를 정의하고 Base MPLS Imposition MSD를 정의한다.RFC 8476은 OSPF용으로 대응하는 유형이 지정된 노드 및 링크 MSD 광고를 정의한다.RFC 8814는 그러한 제약을 BGP-LS를 통해 토폴로지 소비자에게 전달한다.RFC 8664는 PCEP에 SR 기능 필드, MSD 메트릭, 검증 동작, 우선순위 규칙을 부여한다.RFC 8665는 기능과 SID가 광고되는 구체적인 OSPFv2 세그먼트 라우팅 맥락을 제공하면서, MSD 인코딩 자체는 RFC 8476에 맡긴다.

함께 읽으면 이 문서들은 운영 가시성의 연쇄를 설명한다. 유한한 기능은 레이블 또는 SID 부과에 관한 사실에서 출발한다. IGP는 이를 노드 또는 발신 링크 수준에서 기록할 수 있다. BGP-LS는 그 기록을 외부 소비자에게 전달할 수 있다. PCEP는 경로를 계산하고 통신할 때 세션 한도나 요청별 경계를 사용할 수 있다. 이 연쇄의 가치는 모든 핸드오프에서 제약의 의미를 보존하는 데 달려 있다. 유형이 없는 숫자는 모호하다. 더 구체적인 링크 값이 존재하는 곳에서 노드 값을 사용하면 부정확하다. 부재 값을 자동으로 0으로 취급하는 것은 근거 없는 추론이다. 요청 중에 무시되는 세션 한도는 효과적인 한도가 아니다.

이 때문에 이 주제는 전형적인 인생 이야기 없이도 기술 프로필로 적합하다. Tantsura는 다섯 RFC 모두의 전체 저자 집합에 이름을 올리고 있다. 그 문서들에서 보이는 공개 기여는 구현 경계를 다른 제어면 구성요소가 읽을 수 있게 만드는 일에 반복적으로 참여한 것이다. 그것은 그가 메커니즘을 혼자 발명했다거나, 특정 네트워크가 이를 배포했다거나, 신호 전달 자체가 성공적인 경로를 보장한다는 증거가 아니다. 이 기록이 유용한 이유는 바로 그 주장이 선언된 기능이 실행 동작과 만나야 하는 지점에서 멈추기 때문이다.

Maximum SID Depth는 부과 한계다

Maximum SID Depth라는 용어는 경로 길이의 일반적인 척도로 취급되면 오해될 수 있다. 승인된 표준들은 더 구체적인 해석을 뒷받침한다.RFC 8491에서 MSD는 노드 또는 노드의 링크가 지원하는 SID 수이며, Base MPLS Imposition은 서비스, 전송, 특수 레이블을 포함해 부과할 수 있는 MPLS 레이블 수를 설명한다. 레이블 부과에는 스택 맨 위의 레이블을 교체하고 새 레이블을 푸시하는 작업이 포함된다. 따라서 부과되는 수는 교체된 레이블과 푸시된 레이블의 합이다.

RFC 8476은 OSPF 광고에 같은 운영 개념을 사용한다. 노드 MSD는 광고하는 OSPF 인스턴스에 구성된 링크들 가운데 지원되는 가장 낮은 값을 나타내고, 링크 MSD는 특정 링크가 발신 인터페이스로 사용될 때의 기능을 나타낸다.RFC 8664는 PCEP 필드를 해당 문서에서 MPLS 레이블 스택 깊이로 표현되는 SID 최대 수, 즉 경로 계산 클라이언트가 패킷에 부과할 수 있는 최대 수로 좁힌다.

이 정의들이 중요한 이유는 경로 계산에 올바른 현실 단위가 필요하기 때문이다. 컨트롤러는 추상적인 명령의 수를 세는 것이 아니다. 헤드엔드나 발신 인터페이스가 필요한 부과 작업을 수행할 수 있는지 판단하는 것이다. RFC들은 값 뒤의 하드웨어 아키텍처를 보고하지 않는다. OSPF와 IS-IS 문서는 MSD 값을 하드웨어 인터페이스를 통해 학습하거나 프로비저닝할 수 있다고 허용하지만, 어떤 배포에서 어느 방법을 쓰는지는 주장하지 않는다. 그들이 표준화하는 것은 결과적인 한계의 제어면 표현이다.

그 경계는 기능 신호 전달과 기능 생성를 구분한다. MSD를 광고한다고 해서 레이블 스택이 커지거나 포워딩 구현이 바뀌거나 구성된 값이 하드웨어와 일치한다는 것이 증명되지는 않는다. 선언된 한계를 다른 시스템이 사용할 수 있게 할 뿐이다. 제어면은 실행 중인 장비의 속성에 대한 기록 관리자 역할을 한다. 그 유용성은 기록이 정확한지와 소비자가 그 유형, 범위, 우선순위를 존중하는지에 달려 있다. 이것이 다섯 공동 저술 문서에서 반복적으로 보이는 결정이다.

2018년 11월: IS-IS가 한계에 유형을 부여하다

2018년 11월에 발행된 RFC 8491은 노드 또는 링크 세분성에서 하나 이상의 Maximum SID Depth 종류를 광고하기 위한 IS-IS 확장을 정의한다. 유형-값 쌍의 사용이 핵심이다. 이 광고는 장치가 어떤 숫자의 깊이를 지원한다는 무자격 진술을 담지 않는다. MSD-Type과 MSD-Value를 함께 담아, 등록된 유형이 숫자의 의미를 정의할 수 있게 한다.

이 문서는 IGP MSD-Types 레지스트리를 만들고 유형 1을 Base MPLS Imposition MSD에 할당한다. 그 유형은 서비스, 전송, 특수 레이블을 포함해 부과할 수 있는 총 MPLS 레이블 수를 기록한다. 레지스트리는 추가 MSD 의미를 위한 여지도 남긴다. 따라서 인코딩은 모든 종류의 깊이가 상호 교환 가능한 것처럼 가장하지 않고 여러 유한 기능을 전달할 수 있다.

이 설계는 한계를 확장 가능하게 만들면서 해석 가능하게 유지한다. 한 MSD-Type을 이해하는 소비자는 그 유형에 정의된 규칙을 적용할 수 있다. 미래의 유형은 다른 기능과, 더 중요하게, 자체적인 부재 의미를 규정할 수 있다. 공통 봉투는 전달을 제공하고, 유형은 의미를 제공한다. 원시 정수만으로는 무엇을 세는지 또는 그 수의 부재가 무엇을 뜻하는지 확립할 수 없다.

RFC 8491은 세그먼트 라우팅이 활성화되지 않은 경우에도 MSD 광고가 유용할 수 있다고 밝힌다. 비SR MPLS 환경에서 같은 메커니즘이 최대 레이블 깊이를 나타낼 수 있다. 이는 모든 MPLS 네트워크가 이 광고를 사용한다는 주장이 아니다. 표현되는 구현 제약이 하나의 제어면 기능보다 더 근본적임을 보여준다. 경로가 세그먼트 라우팅 경로로 설명되든 더 넓은 MPLS 관점에서 고려되든 레이블 부과는 유한하게 남는다.

Tantsura의 저자 역할은 여기서 4인 기록에 속한다. RFC 8491은 Jeff Tantsura, Uma Chunduri, Sam Aldrin, Les Ginsberg를 저자로 명시한다. 메커니즘과 그 엔지니어링 선택은 그 전체 저자 그룹과 IETF 합의 과정의 산물이다. 이 프로필은 Tantsura의 반복적 참여를 식별할 수 있지만, 유형 레지스트리, 노드 및 링크 서브-TLV, Base MPLS Imposition 정의를 그에게만 귀속시키는 것은 부정확하다.

노드 값은 보수적 집계다

RFC 8491의 노드 MSD는 IS-IS Router CAPABILITY TLV 안에 전달된다. 이는 발신 라우터의 프로비저닝된 SID 깊이를 나타내지만, 그 값이 가장 능력 있는 인터페이스를 위한 낙관적 대표값은 아니다. 주어진 MSD-Type에 대해, 그 값은 광고하는 IS-IS 인스턴스가 사용하도록 구성된 어떤 링크가 지원하는 가장 낮은 값을 나타내야 한다.

그 최저값 규칙은 노드 광고를 보수적 집계로 만든다. 소비자가 노드 수준 기록만 가지고 있다면, 최선의 경우를 조용히 가정하는 값이 아니라 관련 링크 집합 전반에서 사용 가능하도록 의도된 값을 받는다. 표준은 그 집계가 모든 구현 세부를 포착한다고 주장하지 않는다. 노드 범위 값이 광고 인스턴스에 포함된 인터페이스와 어떻게 관계되는지를 정의한다.

숫자 의미도 명시적이다. MSD-Value는 0에서 255까지의 범위를 차지한다. 공통 절차가 적용되는 유형에서 0은 어떤 깊이의 SID 스택도 지원할 능력이 없음을 나타내고, 0이 아닌 숫자는 해당 유형에 대한 노드의 값을 나타낸다. 따라서 0은 표현된 값이지 생략된 광고의 동의어가 아니다. 이 구분은 소비자가 누락된 데이터와 마주할 때 중요해진다.

노드 범위는 모든 환경이 모든 링크에 별도 값을 필요로 하지는 않기 때문에 유용하다. RFC 8491은 링크 값이 동질적일 때 노드 MSD만 광고할 것을 권장하여 플러딩 효율을 높인다. 그러나 집계가 링크 특수성을 지우지는 않는다. 링크에 별도로 광고된 값이 있으면, 그 MSD-Type에 대해서는 링크 기록이 우선한다. 노드 기록은 정의된 범위를 가진 대체값이지 보편적 재정의가 아니다.

이 설계는 세부에 대한 추상적 선호가 아니라 운영적 타협을 반영한다. 관련 링크들이 같은 한계를 공유할 때 노드 값만 광고하면 반복 정보를 줄일 수 있다. 링크 값은 더 좁은 제약이 존재할 때 그 제약을 보존한다. 두 기록 모두 유형이 지정된다. 결과는 생산자와 소비자가 우선순위 규칙을 올바르게 적용한다면 알려진 이질성을 숨기지 않으면서 간결할 수 있는 표현이다.

링크 범위가 우선한다

RFC 8491의 링크 MSD는 특정 인터페이스가 발신 링크로 사용될 때 그 인터페이스와 관련된 한계를 나타낸다. MSD-Type에 대한 링크 MSD가 존재하면 그 유형에 대해서는 노드 MSD보다 우선한다. 링크별 유형이 없고 노드별 유형이 존재하면 노드 MSD가 그 링크에 적용된다.

이 작은 규칙은 경로 계산의 무결성에 큰 영향을 준다. 노드 수준 집계와 링크별 제약은 관련되지만 다른 질문에 답한다. 노드 값은 인스턴스 전반의 보수적 기본값을 제공한다. 링크 값은 이 발신 인터페이스에 대해 더 구체적인 사실이 알려져 있음을 말한다. 링크 값이 있는데 노드 값을 선택하면 프로토콜이 의도적으로 노출한 정밀도를 버리게 된다.

RFC 8491은 구현 경계도 인정한다. 레이블 부과가 인그레스 인터페이스 맥락에서 발생하면 의미 있는 링크별 광고가 불가능할 수 있으며, 노드 MSD만 광고해야 한다. 이 문서는 기능을 그렇게 표현할 수 없는 시스템에 링크 범위의 허구를 강요하지 않는다. 광고를 구현이 실제로 부과 동작을 설명할 수 있는 방식과 정렬시킨다.

IS-IS 기록에는 또 다른 한계가 있다. 같은 유형과 링크에 대한 여러 링크 MSD 광고가 수신되면 선택 절차가 정의되지 않는다. 이는 프로필이 조용히 메울 작은 편집상의 공백이 아니다. 소비자와 구현이 인식해야 하는 경계를 표시한다. RFC는 노드와 링크 범위가 어떻게 관계되는지 정의하지만, 모든 중복 링크 조건에 대한 보편적 타이브레이커를 제공하지는 않는다.

이 구체성과 절제의 조합은 더 넓은 기록의 특징이다. 지원되는 가장 구체적인 값을 사용한다. 명시적 규칙에 따라 대체한다. 구현 맥락이 허용하지 않는 곳에서는 정밀도를 주장하지 않는다. 정의되지 않은 사례는 발명된 보장으로 바꾸지 않고 눈에 보이게 정의되지 않은 채로 둔다. 이는 유한한 한계를 해석하기 더 안전하게 만드는 기록 관리 결정이지만, 모든 생산자가 올바르게 광고할 것이라는 보장은 아니다.

부재가 자동으로 0을 의미하지는 않는다

RFC 8491과RFC 8476모두에서 가장 중요한 구분 중 하나는 광고된 값 0과 광고 없음의 차이다. 0은 정의된 의미를 가진 값이다. 해당 MSD-Type에 대해 어떤 깊이의 스택도 부과할 능력이 없음을 뜻한다. 부재는 그 유형의 정의에 따라 해석된다.

일반 규칙은 의도적으로 신중하다. MSD-Type에 대한 노드 및 링크 광고가 모두 없으면, 소비자는 일반적으로 광고 노드가 그 유형의 광고를 지원하지 않는다는 것만 추론할 수 있다. 일부 유형의 정의는 광고 부재가 관련 기능의 미지원을 뜻한다고 규정할 수 있다. 그 추가 추론은 공통 인코딩이 제공하지 않는다. 특정 MSD-Type에 대해 정의되어야 한다.

Base MPLS Imposition MSD는 그 경계를 명시적으로 만든다. RFC 8491은 BMI-MSD 광고의 부재가 노드가 그 기능을 광고하는 것을 지원하지 않는다는 것만 나타낸다고 말한다. 누락된 정보를 레이블을 부과할 수 없다는 보고로 바꾸지는 않는다. 부재를 0으로 취급하는 시스템은 두 가지 별개 상태, 즉 ‘광고된 기능이 없음’과 ‘이 기능이 광고되지 않음’을 붕괴시킨다.

이 구분은 모든 자동화된 의사결정 연쇄에서 중요하다. 기계는 계산을 계속할 수 있게 해 주는 숫자 기본값을 선호하는 경우가 많다. RFC들은 누락된 데이터의 의미를 바꾸는 편리한 기본값을 승인하지 않는다. 소비자는 불완전한 가시성을 위한 정책이 필요할 수 있지만, 그 정책은 라우팅 기록이 증명하는 바와 별개다. 기록은 값이 존재함, 값이 0임, 또는 광고가 수신되지 않음 중 하나를 말할 수 있다. 이후 시스템이 확실성을 원한다는 이유만으로 더 말할 수는 없다.

이것은 운영 현실이 겉보기 완전성보다 우선하는 직접적인 예다. 불완전한 기록은 출처가 제공하지 않은 사실을 부여해도 개선되지 않는다. 가시성에는 불확실성의 가시성이 포함된다. 리더십과 엔지니어링 모두에서 규율은 같다. 계산이 행동하기 전에 ‘알려진 한계’, ‘알려진 기능 부재’, ‘광고되지 않아 알 수 없음’을 구분해야 한다.

2018년 12월: OSPF가 같은 유형의 현실을 전달하다

2018년 12월에 발행된 RFC 8476은 유형이 지정된 노드 및 링크 MSD 광고를 위한 OSPF 인코딩을 정의한다. 이 문서는 OSPF라는 용어를 OSPFv2와 OSPFv3 모두에 적용하고, 링크 수준 정보를 각 버전에 적합한 구조에 할당한다. 노드 MSD는 OSPF Router Information Opaque LSA에 나타나고, 링크 MSD는 링크 광고와 연관된 서브-TLV로 나타난다.

공통 모델은 여전히 인식 가능하다. 값은 1옥텟 MSD-Type과 1옥텟 MSD-Value 필드의 쌍이다. 노드 MSD는 광고하는 OSPF 인스턴스에 구성된 어떤 링크가 지원하는 가장 낮은 값이다. 링크 MSD는 특정 링크를 발신 인터페이스로 설명한다. 유형에 대한 링크 MSD가 존재하면 노드 MSD보다 우선하며, 링크 값이 없고 노드 값이 있으면 노드 값이 적용된다. 부재는 유형별로 유지된다.

OSPF는 반복 광고에 대한 자체 결정적 처리를 추가한다. 라우터에서 여러 노드 MSD TLV가 수신되면 수신자는 Router Information LSA의 첫 번째 발생을 사용한다. 노드 MSD가 서로 다른 플러딩 범위의 Router Information LSA에 나타나면 영역 범위 인스턴스가 사용된다. 여러 광고가 같은 플러딩 범위를 공유하면 숫자상 가장 작은 Instance ID를 가진 것이 사용된다. RFC 8476은 노드 MSD 광고에 영역 범위 플러딩을 권장한다.

반복 링크 광고의 경우 선택도 정의된다. 가장 작은 Opaque ID를 가진 OSPFv2 Extended Link Opaque LSA 또는 가장 작은 Link State ID를 가진 OSPFv3 E-Router-LSA가 링크 값을 제공한다. RFC는 이 상황을 오류로 로그해야 한다고 말한다. 타이브레이커는 중복 정보가 비정상이라는 증거를 보존하면서 처리를 결정적으로 유지한다.

RFC 8476은 Jeff Tantsura, Uma Chunduri, Sam Aldrin, Peter Psenak을 전체 저자 집합으로 명시한다. 그 메커니즘은 IS-IS 작업과 밀접하게 정렬되지만 모든 라우팅 프로토콜이 동일하게 동작한다는 단순한 주장은 아니다. 이 문서는 유형이 지정된 노드/링크 모델을 OSPF 자체의 광고 구조, 플러딩 범위, 중복 선택 규칙에 매핑한다. 공유된 개념적 제약은 프로토콜별 표현이 정밀하게 정의되기 때문에만 이동한다.

결정성이 상충하는 기록을 무해하게 만들지는 않는다

RFC 8476의 중복 선택 규칙은 결정성과 정확성의 유용한 차이를 보여준다. 수신자는 선택한 값이 포워딩 구현을 반영한다는 것을 증명하지 않고도 여러 광고 중 하나를 일관되게 선택할 수 있다. 규칙은 모든 소비자가 서로 다른 답을 즉흥적으로 만들지 못하게 하지만, 중복 또는 상충 광고가 바람직하다고 선언하지는 않는다.

그래서 링크 사례에는 오류 로깅 권장이 포함된다. 프로토콜에는 계속 진행할 방법이 있고, 운영 기록에는 무언가 점검이 필요하다는 신호가 남는다. 결정적 선택은 상호운용성을 보호한다. 로깅은 관측 가능성을 보호한다. 어느 것도 생산자가 올바른 값을 광고하는 것을 대체하지 않는다.

같은 구분이 플러딩 범위에도 적용된다. 노드 MSD가 서로 다른 범위에 나타날 때 영역 범위 정보는 정의된 우선순위를 가지며, 광고에는 영역 범위 플러딩이 권장된다. 절차는 수신자에게 어느 기록을 사용할지 알려준다. 모든 중복 범위와 값의 조합이 건강한 구성임을 의미하지는 않는다. 제어면은 상충하는 입력이 있을 때 결정적일 수 있지만 기저 데이터는 여전히 의심스러울 수 있다.

이는 기능 신호 전달이 성취할 수 있는 것에 대한 중요한 한계다. 필드는 유형이 지정되고 범위가 부여되며 정밀한 알고리즘으로 선택될 수 있지만 여전히 부정확할 수 있다. RFC 8476의 보안 고려사항은 그 가능성을 명시적으로 다룬다. 값이 지원 능력보다 낮으면 실행 가능한 경로가 계산되지 않을 수 있다. 값이 지원 능력보다 높으면 헤드엔드가 지원할 수 없는 경로를 인스턴스화하려는 시도가 이루어질 수 있다.

소비자에게 교훈은 표준화된 기록을 불신하라는 것이 아니다. 각 계층이 무엇을 기여하는지 이해하라는 것이다. 인코딩은 값에 인식 가능한 형식을 부여한다. 범위는 값을 적절한 객체와 연결한다. 선택 규칙은 표현상 중복을 해결한다. 모니터링은 비정상 입력 조건을 노출한다. 정확성은 여전히 광고와 실행 중인 노드의 관계에 달려 있다. 성숙한 제어 시스템은 파싱 가능한 TLV를 자체 검증되는 진리로 취급하지 않고 그러한 구분을 모두 보존한다.

RFC 8665는 MSD 인코딩이 아니라 맥락을 정의한다

2019년 12월에 발행된 RFC 8665는 세그먼트 라우팅을 위한 OSPFv2 확장을 정의한다. 이 문서는 Prefix-SID, 인접 SID, SID 또는 레이블 범위, 로컬 블록, 알고리즘 정보 등 세그먼트 라우팅 식별자와 기능이 어떻게 광고되는지 설명한다. 따라서 세그먼트 라우팅 정보가 가시화되는 OSPF 제어면을 이해하는 데 중요한 맥락이 된다.

이 다섯 문서 기록에서 RFC 8665가 하지 않는 일을 밝히는 것도 똑같이 중요하다. RFC 8665는 OSPF Maximum SID Depth 인코딩을 정의하지 않는다. 그 작업은 RFC 8476이 수행한다. RFC 8665를 노드 MSD TLV, 링크 MSD 서브-TLV, 또는 그 우선순위와 부재 의미의 근거로 취급하면 제어면 문제의 서로 다른 부분을 해결하는 두 표준을 흐리게 만든다.

이 분리는 분석적으로 유용하다. RFC 8665는 OSPF가 IGP 내에서 세그먼트 라우팅을 설명하는 데 필요한 식별자와 기능을 광고할 수 있음을 보여준다. RFC 8476은 정의된 MSD-Type에 대해 노드 또는 발신 링크가 얼마나 많은 SID나 레이블을 부과할 수 있는지에 대한 표현을 추가한다. 한 문서는 세그먼트 라우팅 객체와 기능을 노출한다. 다른 문서는 이를 사용하는 것과 관련된 유한한 구현 제약을 노출한다.

이 구분은 일반적인 세그먼트 라우팅 프로필로 확장되는 것도 막는다. Tantsura의 RFC 8665 공동 저술은 그를 더 넓은 OSPF 세그먼트 라우팅 표준 기록에 위치시킨다. 그러나 여기서 주제는 더 좁다. 즉, 가시적인 라우팅 제약으로서의 Maximum SID Depth다. RFC 8665는 주변 제어면을 고정하기 위해 포함되며, 기사를 세그먼트 라우팅 아키텍처, 알고리즘 선택, Prefix-SID, 인접 동작의 모든 측면으로 확장하기 위한 것이 아니다.

RFC 8665의 완전한 공로는 나열된 저자들에게 있다. 편집자 Peter Psenak과 Stefano Previdi, 그리고 Clarence Filsfils, Hannes Gredler, Rob Shakir, Wim Henderickx, Jeff Tantsura다. 이 큰 저자 집합은 표준의 협업적 성격을 강화한다. 관련 문서 전반에 반복적으로 나타나는 Tantsura의 존재가 이 프로필의 근거이며, 프로토콜 정의는 IETF 과정을 통해 검토된 공유 작업으로 남는다.

2019년 12월: PCEP가 한계를 실행 가능하게 만들다

IGP 광고는 MSD를 토폴로지에서 가시화한다.2019년 12월에 발행된 RFC 8664는 그 제약을 경로 계산 클라이언트와 경로 계산 요소 사이의 통신으로 가져온다. 이 문서는 SR PCE 기능 서브-TLV와 Maximum SID Depth 필드를 포함해 세그먼트 라우팅을 위한 PCEP 확장을 정의한다.

한계와 관련된 방향에서 PCC는 Open 메시지의 SR 기능을 사용해 패킷에 부과할 수 있는 최대 SID 수를 보고한다. 이 필드는 PCC의 데이터 평면 기능과 연결된다. 이는 장치 한계를 경로 계산 시스템만 보유한 가정이 아니라 명시적인 세션 입력으로 바꾼다.

기능 교환에는 X 플래그가 포함된다. PCC가 X를 설정하면 프로토콜은 해당 세션에서 MSD를 무제한으로 취급하고 MSD 필드를 0으로 요구한다. PCC가 X를 설정하지 않으면 양수 MSD 값을 보고해야 한다. X가 해제되고 MSD가 0인 조합은 유효하지 않으며, 지정된 응답은 PCEP 오류 후 세션 종료다. 따라서 인코딩은 명시적인 무제한 선언과 양수 경계 없는 유한 기능의 유효하지 않은 주장을 구분한다.

세션에 0이 아닌 MSD가 있으면 PCE는 그 값보다 많은 SID를 포함하는 SR 트래픽 엔지니어링 경로를 보내서는 안 된다. PCC가 그러한 경로를 수신하면 RFC는 지원되지 않는 SR 명시적 경로 객체 서브오브젝트 수에 대한 오류 응답을 정의한다. PCC의 MSD가 변경되어야 하면 세션을 닫고 새 값으로 다시 설정해야 한다. 한계는 확립된 세션 아래에서 조용히 변할 수 있는 가변적 부수 정보로 취급되지 않는다.

이 지점에서 가시성이 실행 가능한 프로토콜 동작이 된다. PCE는 한계가 존재한다는 것을 배우는 데 그치지 않는다. 세션 절차는 PCE가 보낼 수 있는 경로 설명을 제한한다. 여기서도 표준은 보고된 값이 정확하다거나 특정 네트워크에서 경로가 성공할 것이라고 증명하지 않는다. 선언된 유한 기능이 PCEP 동작에 어떻게 참여하는지 정의한다.

요청은 SID 깊이를 최소화하거나 경계 지을 수 있다

RFC 8664는 개별 경로 계산 요청을 위한 Maximum SID Depth 메트릭도 정의한다. PCC는 PCE에 계산된 경로의 SID 깊이를 최소화하도록 요청할 수 있다. 메트릭의 바운드 비트가 설정되면 PCE는 제공된 메트릭 값을 초과하는 SID 깊이의 경로를 반환해서는 안 된다.

요청과 세션의 관계는 명시적으로 보호된다. PCEP 세션에 0이 아닌 기본 MSD가 있으면 PCC는 그 세션 값보다 큰 요청별 MSD를 보내서는 안 된다. 그러한 요청을 받은 PCE는 이를 유효하지 않게 취급하고 정의된 오류를 반환한다. 요청은 세션에 이미 선언된 기능을 확대할 수 없다.

PCC가 X 플래그를 통해 무제한 깊이를 주장하지 않았다면, MSD 메트릭을 사용하는 요청은 바운드 비트를 설정해야 한다. 이는 유한 기능이 단순한 최적화 선호로 표현되지 않게 한다. 깊이 최소화와 최대값 강제는 다른 작업이다. SID가 더 적은 경로가 바람직할 수 있지만, 지원 깊이를 넘는 경로가 계산이 이를 최소화하려 했다는 이유로 허용 가능해지지는 않는다.

세션이 무제한 신호 전달 절차 아래 MSD 0으로 설정되면 PCC는 특정 요청에 MSD를 둘 수 있다. 이는 프로토콜이 기본 세션 기능과 경로별 경계를 표현하는 별도 방식을 제공한다. 문서는 각각이 언제 유효하고 둘이 어떻게 상호작용하는지 정의한다.

더 넓은 운영 교훈은 경계 지어진 채로 남는다. 제어 프로토콜은 목표와 하드 제약을 분리할 때 더 신뢰할 수 있게 된다. ‘SID를 더 적게 사용하라’는 최적화 요청이다. ‘이 깊이를 초과하지 말라’는 허용 경계다. RFC 8664는 각 아이디어에 프로토콜 표현을 부여하고 요청 계층이 유한 세션 선언과 모순되지 않게 한다. PCE가 어떤 최적화 알고리즘을 사용하는지 또는 결과 경로가 정의된 요청 밖의 목표를 충족하는지는 보고하지 않는다.

라우팅 프로토콜 값이 세션 요약을 재정의한다

IGP와 PCEP 표준 사이의 가장 직접적인 연결은RFC 8664의 우선순위 절차에 나타난다. PCE는 라우팅 프로토콜에서 노드별 및 인터페이스별 MSD 값을 학습할 수 있다. 라우팅을 통해 PCC의 노드별 값을 학습하면 PCEP SR 기능에 담긴 노드별 MSD 대신 그 값을 사용한다. 라우팅을 통해 인터페이스 값을 학습하면 그 인터페이스를 사용하는 경로를 계산할 때 인터페이스별 값을 사용한다.

이 규칙은 세션 수준 요약이 더 구체적인 토폴로지 지식을 평평하게 만들지 않게 한다. PCEP Open 메시지는 유용한 기본값을 제공할 수 있으며, 특히 PCC의 인터페이스가 동질적일 때 그렇다. 그러나 라우팅 프로토콜은 IGP 인스턴스에 근거한 노드 값이나 특정 발신 인터페이스와 연결된 링크 값을 노출할 수 있다. 더 구체적인 기록은 하나의 세션 숫자 뒤에 숨지 않고 계산에 사용 가능한 채로 남는다.

계층 구조는 문서들 전반에서 일관된다. OSPF와 IS-IS 내에서 같은 유형에 대해서는 링크 MSD가 노드 MSD보다 우선한다. PCEP 내에서는 학습된 경우 라우팅 프로토콜의 노드 및 인터페이스 정보가 세션 값보다 우선한다. 경로별 MSD 메트릭은 0이 아닌 세션 기본값을 초과할 수 없다. 각 계층은 맥락을 추가할 수 있지만 더 좁거나 이미 선언된 유한 경계를 무심코 지울 수는 없다.

이것은 제도적 계층이 아니다. 라우팅 프로토콜이 PCEP 발신자를 ‘지배’하는 것도 아니고, 표준 필드의 존재가 운영상의 주권을 부여하지도 않는다. 우선순위는 정보 범위를 반영한다. 인터페이스별 값은 경로의 발신 제약에 대한 더 가까운 설명이다. 라우팅에서 도출된 노드 값은 PCE가 사용할 수 있을 때 정의된 출처다. 세션 값은 그 더 풍부한 토폴로지 기록이 없을 때 유용하게 남는다.

Tantsura의 RFC 8664 공동 저술 역시 전체 그룹의 일부다. 이 문서는 Siva Sivabalan, Clarence Filsfils, Jeff Tantsura, Wim Henderickx, Jon Hardwick을 저자로 명시한다. 그 기능, 메트릭, 검증, 우선순위 메커니즘은 그 공유 표준 작업과 IETF 합의 과정에 속한다.

2020년 8월: BGP-LS가 제약을 외부로 전달하다

외부 토폴로지 소비자는 OSPF나 IS-IS에 직접 참여하지 않을 수 있고, PCEP가 모든 관련 헤드엔드나 앵커에서 사용 가능하지 않을 수도 있다.2020년 8월에 발행된 RFC 8814는 중앙 집중형 컨트롤러 같은 소비자에게 노드 및 링크 MSD 정보를 전달하는 BGP-LS 속성을 정의한다.

그 정보의 출처는 여전히 명시적이다. BGP-LS 발신자가 OSPF나 IS-IS에서 학습한 토폴로지를 생성할 때 노드와 링크의 MSD 값은 RFC 8476과 RFC 8491에 정의된 확장에서 나온다. BGP-LS는 새로운 기능 측정을 발명하지 않는다. 기저 링크 상태 기록의 유형이 지정된 정보를 전달한다.

노드 MSD는 BGP-LS Node Attribute TLV로 인코딩된다. 하나 이상의 MSD-Type 및 MSD-Value 쌍을 담고, 그 값은 관련 링크들이 지원하는 가장 작은 MSD를 나타낸다. 링크 MSD는 Link Attribute TLV로 인코딩되며 연관된 발신 인터페이스의 기능을 나타낸다. 둘 다 RFC 8491이 도입한 등록된 유형 시스템을 유지한다.

이는 BGP-LS를 가시성 연쇄의 다리로 만든다. IGP는 노드 및 링크 제약이 광고되는 곳이다. BGP-LS는 그 제약을 IGP 외부의 소비자가 사용할 수 있게 한다. 그러면 PCE는 특정 헤드엔드가 부과할 수 있는 유한한 SID 스택을 고려할 수 있다. 이 다리는 유형, 값, 노드, 링크 사이의 연관이 전달 과정에서 살아남을 때만 유용하다.

RFC 8814는 Jeff Tantsura, Uma Chunduri, Ketan Talaulikar, Greg Mirsky, Nikos Triantafillis를 저자로 명시한다. 이 문서는 Siva Sivabalan을 기여자로 식별하며, 이 역할은 저자 목록과 구별된다. 완전한 귀속은 그 구분을 보존하고 IGP 광고에서 BGP-LS 전달로의 진행을 한 사람의 이야기로 바꾸지 않게 한다.

전달된 데이터에는 여전히 책임 있는 소비자가 필요하다

RFC 8814는 BGP-LS 주변에 명확한 관리 가능성 경계를 그린다. 새 속성의 구문 오류는 기존 BGP-LS 속성 동작을 통해 처리된다. MSD TLV와 관련 BGP-LS 정보의 관계를 포함한 의미 또는 내용 검사는 BGP 자체가 수행하지 않고 소비자에게 맡긴다.

그 분리는 놓치기 쉽다. 전송 프로토콜은 속성이 처리 가능할 정도로 잘 형성되었는지 검증할 수 있다. 그러나 값이 포워딩 구현을 반영하는지, 속성이 의도된 객체와 연관되었는지, 경로 계산 애플리케이션이 이를 올바르게 해석할지는 반드시 증명할 수 없다. 구문상 유효한 기록도 부정확한 운영 정보를 담을 수 있다.

RFC 8814는 그 결과를 적절한 수준에서 설명한다. 인코딩 또는 디코딩 오류는 MSD 정보를 SR PCE가 사용할 수 없게 하거나 잘못된 정보를 제공할 수 있다. 그러면 헤드엔드가 원하는 경로를 인스턴스화하지 못할 수 있다. 소비자가 그러한 애플리케이션 수준 오류를 처리하는 방법은 구현별이며 문서 범위 밖이다.

이 경계는 기록을 약화하지 않는다. 노동 분업을 명확히 한다. OSPF와 IS-IS는 유형이 지정되고 범위가 부여된 기능 정보를 생성한다. BGP-LS는 그 정보를 노드 및 링크 속성으로 전달한다. BGP-LS 계층은 자체 표현에 정의된 검사를 수행한다. 소비자는 의미적 사용에 책임이 있다. 포워딩 시스템은 선언된 기능을 판단할 수 있는 최종 현실로 남는다.

이 계층적 책임은 하나의 프로토콜이 전체 연쇄를 검증한다고 주장하는 것보다 유용하다. 기록 관리자는 정체성, 범위, 값을 보존하고 자체 규칙에 따라 잘못된 표현을 거부해야 한다. 소비자나 실행 중인 노드만이 확립할 수 있는 것을 안다고 주장해서는 안 된다. 결과 아키텍처는 제약과 함께 책임도 가시화한다.

너무 작은 값과 너무 큰 값은 다르게 실패한다

OSPF, IS-IS, BGP-LS 문서는 부정확한 MSD 광고의 두 가지 별개 결과를 설명한다. 값이 지원 능력보다 작으면 경로 계산이 실행 가능한 경로를 찾지 못할 수 있다. 값이 지원 능력보다 크면 시스템이 헤드엔드가 지원할 수 없는 경로를 인스턴스화하려 할 수 있다.

운영 관점에서 이들은 거울상이 아니다. 과소 표현은 장비가 부과할 수 있었던 경로를 배제할 수 있다. 과대 표현은 SID 스택이 헤드엔드 능력을 초과하는 경로를 허용할 수 있다. 하나는 사용 가능한 기능을 숨기고, 다른 하나는 존재하지 않는 기능을 광고한다. 둘 다 제어면 기록이 실행 현실과 괴어지게 만든다.

RFC들은 신중한 언어를 사용하며, 분석에서도 그 구분은 신중하게 유지되어야 한다. 특정 장애를 문서화하거나 확률을 수량화하거나 모든 부정확한 광고가 이런 결과 중 하나를 낳는다고 주장하지 않는다. 실제 지원 한계의 어느 쪽에 있는 값에서 무엇이 뒤따를 수 있는지 식별한다. 또한 정보 노출이 공격자에게 장치 기능에 대한 정보를 제공할 수 있다고 언급하면서 주변 프로토콜의 보안 고려사항에 의존한다.

PCEP는 선언된 한계 주변에 또 다른 검사 집합을 추가한다. 기능 필드의 유효하지 않은 조합은 세션을 닫는다. 요청별 경계는 유한 세션 값을 초과할 수 없다. PCE는 0이 아닌 세션 MSD보다 깊은 경로를 보낼 수 없다. 그러한 경로를 받은 PCC는 오류를 반환한다. 이 규칙들은 값이 선언된 후 프로토콜 동작을 제한하지만, 선언을 하드웨어와 독립적으로 검증하지는 않는다.

그래서 정확한 기능 기록은 네트워크 운영의 현실 계층에 속한다. 정밀성은 과대 표현을 피하는 것만이 아니다. 거짓으로 낮은 값은 계산을 불필요하게 좁히기 때문에 해로울 수 있다. 거짓으로 높은 값은 지원되지 않는 작업을 초대하기 때문에 해로울 수 있다. 유용한 기록은 어떤 대가를 치르더라도 보수적이거나 기본적으로 야심적인 것이 아니다. 소비자가 사용하는 시점과 범위에서 관련 노드 또는 링크 기능을 정확히 나타내는 값이다.

프로토콜을 가로지르는 관리 연쇄

다섯 RFC는 한 종류의 운영 사실에 대한 관리 연쇄로 읽을 수 있다. 그 사실은 SID나 레이블을 부과하는 유한한 능력에서 시작한다.RFC 8491은 그 사실에 등록된 유형과 IS-IS 노드 또는 링크 범위를 부여한다.RFC 8476은 같은 유형 모델에 OSPF별 인코딩과 선택 절차를 부여한다.RFC 8814는 IGP에서 도출된 값을 BGP-LS를 통해 전달한다.RFC 8664는 기능 및 경계 정보를 PCEP에 적용한다.RFC 8665는 MSD 인코딩의 공을 가져가지 않고 주변 OSPFv2 세그먼트 라우팅 광고 맥락을 고정한다.

각 전달에서 일부 속성은 안정적으로 유지되어야 한다. 유형은 숫자가 나타내는 깊이의 종류를 여전히 식별해야 한다. 값은 올바른 노드 또는 발신 링크와 연관된 채로 남아야 한다. 링크 특수성은 노드 수준 요약에서 살아남아야 한다. 부재 광고는 광고된 0과 구별 가능해야 한다. IGP에서 도출된 값은 더 덜 구체적인 PCEP 세션 요약으로 조용히 대체되어서는 안 된다. 요청은 유한 세션 한도를 높여서는 안 된다.

이 연쇄에는 정의된 불확실성도 있다. IS-IS는 같은 유형과 링크의 여러 링크 MSD 광고에 대한 선택기를 정의하지 않는다. 부재 의미는 MSD-Type에 달려 있다. BGP-LS는 의미 검사를 소비자에게 맡긴다. PCEP는 선언된 숫자가 포워딩 평면과 일치한다는 것을 증명하지 않고 내부 일관성을 강제할 수 있다. 이들은 가정으로 공백을 메울 이유가 아니다. 각 기록의 경계를 보존할 이유다.

이렇게 보면 Maximum SID Depth 신호 전달은 단순한 TLV 모음이 아니다. 기계 한계에 대한 분산된 진술이다. 그 진술은 서로 다른 책임을 가진 시스템을 통해 이동한다. IGP는 토폴로지 지역 기능을 설명하고, BGP-LS는 토폴로지 속성을 분배하며, PCEP는 계산 및 경로 정보를 교환한다. 표준은 소비자가 어느 기록이 우선해야 하는지, 검증이 어디서 불완전하게 남는지 알 수 있을 만큼 핸드오프를 명시적으로 만든다.

Tantsura의 공동 저술 작업에서 보이는 기술적 성격은 의미의 연속성에 대한 이 반복적 관심에 있다. 표준은 컨트롤러가 장치 용량에 대한 이름 없는 가정을 신뢰하도록 요구하지 않는다. 결정이 사용할 수 있는 곳에 한계가 표현되도록 마련한다. 또한 표현이 전능해지는 것을 거부한다. 기록은 현실을 정확히 전달할 수 있지만, 기능을 만들어 내거나 장치를 운영하거나 결과를 보장하지는 않는다.

공동 저자 기록 전체

귀속은 기술적 정확성의 일부다. 다섯 RFC는 Jeff Tantsura를 반복적으로 식별하지만, 모두 공유 문서다. 각 전체 저자 집합을 보존하면 프로필이 반복적 참여를 단독 소유로 바꾸는 것을 막을 수 있다.

RFC 8491, ‘Signaling Maximum SID Depth (MSD) Using IS-IS’는 Jeff Tantsura, Uma Chunduri, Sam Aldrin, Les Ginsberg를 나열한다. 이 문서는 유형이 지정된 IS-IS 노드 및 링크 광고를 정의하고, IGP MSD-Types 레지스트리를 만들며, Base MPLS Imposition MSD를 정의한다.

RFC 8476, ‘Signaling Maximum SID Depth (MSD) Using OSPF’는 Jeff Tantsura, Uma Chunduri, Sam Aldrin, Peter Psenak을 나열한다. 이 문서는 OSPF 노드 및 링크 MSD 인코딩과 그 프로토콜별 선택 및 우선순위 규칙을 정의한다.

RFC 8664, ‘Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing’은 Siva Sivabalan, Clarence Filsfils, Jeff Tantsura, Wim Henderickx, Jon Hardwick을 나열한다. 이 문서는 SR PCE 기능, PCEP MSD 필드 및 메트릭, 검증 절차, 라우팅에서 도출된 값의 우선순위를 포함한다.

RFC 8665, ‘OSPF Extensions for Segment Routing’은 편집자 Peter Psenak과 Stefano Previdi, 그리고 Clarence Filsfils, Hannes Gredler, Rob Shakir, Wim Henderickx, Jeff Tantsura를 나열한다. 이 문서는 RFC 8476에 정의된 MSD 인코딩이 아니라 기능 및 SID 광고를 포함한 OSPFv2 세그먼트 라우팅 맥락을 제공한다.

RFC 8814, ‘Signaling Maximum SID Depth (MSD) Using the Border Gateway Protocol - Link State’는 Jeff Tantsura, Uma Chunduri, Ketan Talaulikar, Greg Mirsky, Nikos Triantafillis를 나열한다. 이 문서는 IGP에서 도출된 정보를 토폴로지 소비자에게 전달하는 BGP-LS 노드 및 링크 MSD 속성을 정의한다.

각 문서의 상태 언어는 이 작업을 IETF 표준 과정과 커뮤니티 합의 안에 위치시킨다. 그 맥락은 이름만큼 중요하다. RFC 저자 목록은 공유 출판 문서에 대한 책임을 기록하며, 모든 문장이나 메커니즘을 개인 소유로 분할하지 않는다. 방어 가능한 개인 수준 결론은 Tantsura가 Maximum SID Depth와 관련된 IGP, BGP-LS, PCEP 표면 전반에서 공개 공동 저자 기록에 반복적으로 나타난다는 것이다.

이 기록이 확립하지 않는 것

다섯 표준은 공개 기술 저자 역할과 프로토콜 동작을 확립한다. 현재 고용주, 현재 직함, 사적 이력, 네트워크 운영자에 대한 권한을 확립하지는 않는다. 역사적 RFC 헤더의 조직 레이블은 출판 메타데이터이지 현재 소속의 증거가 아니다. 따라서 이 프로필은 표준 기록에 머물며 저자 주소 정보를 전기로 바꾸지 않는다.

문서들은 단독 공로 표현도 뒷받침하지 않는다. Tantsura는 모든 저자 그룹의 한 구성원이다. RFC의 IETF 합의 상태는 한 사람이 프로토콜 기록을 지휘한다는 이야기도 배제한다. 그의 반복적 공동 저술은 독점적이지 않으면서도 의미가 있다.

RFC들은 구현 보급률이나 측정된 성공을 증명하지도 않는다. 형식, 절차, 우선순위, 오류 동작을 정의한다. 얼마나 많은 라우터가 MSD를 광고하는지, 얼마나 많은 컨트롤러가 이를 사용하는지, 특정 벤더가 모든 규칙을 구현하는지, 배포가 더 나은 가용성이나 성능을 달성했는지는 보고하지 않는다. 승인된 다섯 출처 기록에는 경로, 고객, 사고가 문서화되어 있지 않다.

기능 신호 전달은 기능 검증이 아니다. OSPF나 IS-IS는 유형이 지정된 값을 전달할 수 있고, BGP-LS는 이를 전송할 수 있으며, PCEP는 선언된 세션 및 요청 관계를 강제할 수 있다. 그 어떤 사실도 원래 값이 하드웨어나 프로비저닝 상태를 정확히 반영한다는 것을 증명하지 않는다. 보안 및 관리 가능성 절은 부정확한 정보의 가능성과 뒤따를 수 있는 결과를 명시적으로 보존한다.

마지막으로 이 기록은 일반적인 세그먼트 라우팅 전기를 승인하지 않는다. RFC 8665는 관련 OSPF 맥락을 제공하고, RFC 8664는 MSD 외에 많은 PCEP 메커니즘을 포함한다. 뒷받침되는 논지는 좁게 유지된다. 유한한 부과 한계는 이를 소비하는 제어 표면 전반에서 올바른 유형과 범위를 갖춰 가시화될 때 경로 계산에 유용해진다. 그 논지를 넘어 확장하려면 이 다섯 RFC 기록 밖의 출처와 증거가 필요하다.

제약 가시성을 통해 본 엔지니어링 성격

기술 프로필은 성격을 추측하지 않고도 특징을 설명할 수 있다. 이 경우 관찰 가능한 자료는 한계에 관한 공유 결정의 연속이다. 문서들은 무자격 숫자 대신 유형이 지정된 값을 정의한다. 노드와 링크 범위를 구분한다. 링크 값에 노드 집계보다 우선순위를 준다. 0과 부재를 구분한다. 중복 OSPF 기록에 대한 결정적 처리를 정의하고, 정의되지 않은 IS-IS 중복 사례는 눈에 보이게 정의되지 않은 채로 둔다. IGP에서 도출된 사실을 BGP-LS를 통해 전달하고, PCEP 세션 요약보다 더 구체적인 라우팅 정보를 선호한다.

그 결정들은 일관된 공개 패턴을 형성한다. 유한한 구현 제약을 필요한 시스템에 가시화하되, 기록이 아는 것보다 더 많은 것을 주장하지 않게 한다. 이 패턴은 네트워크 운영에 대한 실행 중인 코드 관점과 호환된다. 컨트롤러의 추상 경로 모델은 헤드엔드와 그 인터페이스의 구체적인 부과 용량과 만나야 한다. 프로토콜 기록은 그 만남 지점을 읽을 수 있게 유지할 때 가치가 있다.

다섯 표준 전반의 Tantsura의 반복적 저자 역할은 기여에 대한 경계 지어진 설명을 뒷받침한다. 그는 구현 한계를 OSPF, IS-IS, BGP-LS, PCEP에 연결하는 협업 작업에 참여했다. 기록은 제약의 생성, 전달, 사용을 아우른다. 또한 값이 무제한 주장이 되는 것을 막는 가드레일, 즉 유형화된 의미, 범위별 우선순위, 유효하지 않은 조합 검사, 경계 강제, 명시적 오류 결과를 포함한다.

그 결과는 경로를 통제하는 영웅적 이야기가 아니다. 제어를 기능에 더 책임 있게 만드는 문서적 설명이다. 계산된 경로는 실행 중인 노드가 부과할 수 있을 때까지 제안으로 남는다. Maximum SID Depth 신호 전달은 그 물리적·구현 경계에 제어면 기록에서의 자리를 부여한다. 표준은 불확실성을 없애지 않지만, 암묵적으로 남아야 하는 중요한 기능 지식의 양을 줄인다.

출처