요약
- PCE 작업반 초안 03판은 OPEN에서 S-BFD 설정 능력을 확인한 뒤 경로별 요구를 LSPA에 담는다. PCE가 초기화·갱신 메시지를 보내고 PCC가 상태를 보고한다.
- 경로별 B=1에는 원격 디스크리미네이터가 필수다. B=0과 함께 오는 매개변수는 절마다 처리 동사가 다르며, TLV 자체의 부재를 삭제 명령으로 삼는 안은 편집자 주석에 남아 있다.
계산하는 기계와 실행하는 기계
경로 계산 요소인 PCE는 어떤 경로를 만들거나 바꾸고 싶은지 결정한다. 경로 계산 클라이언트인 PCC는 그 경로가 놓인 장비의 상태를 맡는다. PCEP의 BFD 매개변수 확장 초안은 이 둘 사이에서 특정 레이블 교환 경로(LSP)의 Seamless Bidirectional Forwarding Detection, 즉 S-BFD 설정을 주고받게 한다. 중앙에서 감지 기능을 관리할 수 있다면 편하다. 동시에 운영 화면은 너무 쉽게 ‘명령을 보냈다’를 ‘감지기가 켜졌다’로 바꿔 읽는다. 그 사이에는 PCC의 판단과 장비의 실행이 있다.
첫 단계는 특정 LSP를 건드리기 전의 능력 협상이다. PCEP 세션을 열 때 OPEN 객체에 LSP-S-BFD-Capability TLV를 담을 수 있다. 여기서 B=1을 받은 상대는 새 S-BFD TLV를 주고받을 수 있다. 능력 TLV가 없거나 OPEN의 B가 0이면 그 상대에게 LSPA 안의 S-BFD TLV를 보내서는 안 된다. 초안은 S-BFD에 쓸 경로 설정 유형 목록도 세션 전체가 지원하는 목록 안에 있도록 요구한다. 목록에 지원하지 않는 유형이 끼면 PCErr 유형 21, 값 2를 돌려주고 세션을 닫는다. 양쪽이 공유하는 S-BFD 경로 유형이 없다면 이 방식으로 새 LSP를 설정할 수 없다.
이 협상은 공통 문법의 입구다. PCC가 자체 정책에 따라 로컬에서 S-BFD를 설정할 가능성은 남아 있다. 반대로 OPEN에서 능력이 맞았다는 사실 하나로 어느 LSP의 감지기도 시작되지 않는다. 제품 소개서의 ‘S-BFD 지원’ 체크표시는 이 두 상황을 모두 삼킬 수 있다. 실제 장애가 나면 운영자는 지원 여부보다 어떤 경로에 어떤 설정이 적용됐는지를 먼저 묻게 된다.
경로별 명령에는 별도의 LSP-S-BFD TLV를 쓴다. 이 TLV는 LSPA 객체에 들어가며, PCE는 PCInit 또는 PCUpd로 보내고 PCC는 PCRpt로 보고한다. OPEN의 B와 경로별 TLV의 B는 이름만 같다. 앞의 B는 두 참여자가 새 메시지를 이해하는지 말하고, 뒤의 B는 지정된 LSP에 S-BFD를 적용할지 말한다. 어떤 화면이 B=1만 저장하고 그 비트가 어느 객체에 있었는지 버린다면, 협상 성공과 경로 설정 성공을 구분할 방법도 버린 셈이다.
켜기는 숫자를 요구한다. 끄기는 문장부터 정해야 한다
경로별 B=1은 해당 LSP에 S-BFD를 적용하라는 요구다. 초안은 이때 원격 디스크리미네이터 하위 TLV를 반드시 넣도록 하고, 빠졌을 때의 오류도 제안한다. 선택적인 매개변수 하위 TLV에는 최소 전송 간격과 1에서 255 사이의 배수를 담는다. 원격 디스크리미네이터가 없는데도 ‘켬’을 완료로 기록하는 것은 요구의 필수 부분을 잃어버린 기록이다. 명령을 감사하려면 B 값뿐 아니라 실제로 전달된 값 전체를 봐야 한다.
경로별 B=0의 기본 규칙은 4.3.2.1절에 있다. PCE가 기존 LSP를 갱신할 때는 S-BFD를 제거하고, PCE가 새 LSP를 시작할 때는 적용하지 않는다. 4.2절은 기존에 S-BFD가 적용되지 않았던 LSP에 PCC가 B=0의 PCUpd를 받으면 이를 무시해야 한다고 적는다. PCC가 시작한 LSP에 대해 PCE가 같은 상태를 받았을 때는 무시할 수 있다. 없는 설정을 떼어냈다고 자랑할 수는 없다. 로그에도 ‘종료 요청을 보냈다’와 ‘실행 중이던 감지기가 실제로 제거됐다’를 따로 적어야 한다.
매개변수가 함께 오면 초안 자체가 두 방향으로 갈라진다. 4.2절은 B=0과 함께 온 S-BFD 매개변수 하위 TLV를 무시할 수 있다고 쓰고, 무시하거나 저장하는 것은 구현 결정이라고 덧붙인다. 4.3.2.2절은 이를 무시해야 한다고 쓴다. 편집자 주석은 또 다른 경로를 내놓는다. LSP-S-BFD TLV 전체가 오지 않으면 이미 설정된 S-BFD를 제거하자는 안이다. 이 주석은 채택된 규칙이 아니라 대안이다. B=0을 명시해 보낸 패킷과 필드 자체가 빠진 패킷은 서로 다르다. ‘아무 말도 안 함’을 삭제 명령으로 바꾸려면 문서가 먼저 합의해야 한다.
초안에는 분명한 거절 신호도 있다. 능력을 협상하지 않은 상대가 경로별 S-BFD TLV를 보내면 내용을 무시하고 PCErr 유형 19를 반환해야 한다. 배수가 1~255 범위를 벗어나면 유형 23의 오류가 제시된다. 새로운 오류 값과 TLV 번호는 IANA 할당을 요청하는 부분에서 여전히 TBD다. 현재 단계에서 알 수 있는 것은 거절 사유의 종류다. 아직 배정되지 않은 숫자를 등록 완료된 코드처럼 소개하면 검증 자료가 오히려 흐려진다.
연관 그룹의 제한도 중앙 통제의 한계를 보여 준다. 6절은 일부 구현에서 같은 그룹에 속한 LSP들이 같은 S-BFD 매개변수를 써야 한다고 설명한다. 최소 전송 간격, 배수, 원격 디스크리미네이터가 다르면 PCErr 유형 26의 연관 오류를 돌려주는 편이 좋다고 한다. ‘일부 구현’이라는 조건은 빼면 안 된다. 특정 장비의 제약을 모든 네트워크의 공통 규칙으로 부풀리기 때문이다. PCE가 계산한 조합을 PCC가 로컬 제약 때문에 거절했다면, 그 이유가 OPEN 능력 실패인지 그룹 매개변수 문제인지 운영 기록이 갈라 보여야 한다.
RFC 7880은 S-BFD의 동작을 설명한다. RFC 8231과 RFC 8281은 상태를 다루는 PCEP와 PCE가 시작하는 LSP의 바탕을 제공한다. 초안은 RFC 9050의 PCE 중앙 제어자 구조도 언급한다. 이 문서들은 새 명령이 왜 필요한지 이해하는 데 쓰인다. 새 확장이 특정 PCC에서 돌아갔다는 실험 기록을 대신하지는 못한다. 02판과 03판의 실질적인 제어 규칙은 같고 날짜와 만료일 등이 바뀌었다. 판수가 올라갔지만 꺼짐의 두 동사는 그대로 남았다.
실제 장비에서 한 LSP를 검증하려면 순서대로 묶어야 할 기록이 있다. OPEN의 능력, 공통 경로 유형, PCE가 보낸 PCInit 또는 PCUpd, PCC의 PCRpt, 유효한 로컬 설정, S-BFD 세션 상태다. 처음 둘은 메시지가 오갈 수 있었는지 말한다. 다음 둘은 요구와 응답을 말한다. 마지막 둘은 장비에서 무엇이 실행됐는지 보여 준다. 경로의 실제 건강 상태는 다시 별도의 관측이 필요하다. 중앙의 명령 횟수만 세어서는 감지기의 작동을 알 수 없다.
이번 공식 자료에는 이 확장의 B=0 또는 B=1 메시지와 특정 PCC의 보고, 설정, 실행 중인 세션을 한 줄로 묶은 상호운용성 기록이 없다. 그 기록이 나오면 해당 구현에 대한 판단은 달라진다. 공통 문서에는 더 앞선 숙제가 있다. B=0에 따라온 매개변수는 선택적으로 무시하는가, 반드시 무시하는가. TLV를 생략하는 것은 삭제 지시인가, 아니면 새 지시가 없는 것인가.
출처
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
전략 서클 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





