요약

  • 10월 26일 RIPE 93에서 BIRD 개발 책임자 Maria Matejka는 NETCONF/XML, RESTCONF/JSON, CORECONF/CBOR를 나란히 비교했다.
  • 그의 YANG 변환 제안은 JSON 문자열 "+3"이 XML을 거친 뒤 숫자로 다시 읽힐 수 있음을 보여준다.

더하기 기호는 국경에서 모양을 바꾸지 않았다. 다만 출발할 때 들고 있던 '문자열' 신분증이 없어졌다. 다음 창구는 같은 +3을 숫자로 접수할 수 있다. 네트워크 설정에서는 이 사소한 분류가 장치가 받아들이는 명령의 뜻을 바꾼다.

CZ.NIC의 BIRD 개발 책임자 Maria Matejka는 10월 26일 RIPE 93 강연에서 관리 인터페이스의 여러 갈래를 짚었다. 원본 발표 자료는 NETCONF와 XML, RESTCONF와 JSON, CORECONF와 CBOR를 차례로 놓는다. 데이터 모델은 YANG이 설명한다. 하지만 서로 다른 형식은 유형 정보를 서로 다른 방식으로 싣는다. 장치에 문이 세 개면 문 사이의 통역관도 업무 규칙을 가져야 한다.

Matejka가 3월 공개한 개인 초안은 구체적인 사례를 담았다. 한 YANG 항목에 int32와 string이 모두 허용된다. JSON의 "item": "+3"은 RFC 7951에 따라 문자열이다. XML로 옮기면 +3이라는 문자는 남지만 JSON 따옴표가 주던 유형 단서는 사라진다. 다른 쪽에서 union을 다시 읽을 때 정수 가지를 선택할 수 있다. 짐은 도착했고, 신분표만 바뀌었다.

이 초안은 변환기가 YANG 모델을 읽고 출력 표현을 고르며 값을 검증하고 왕복 변환 뒤에도 같은 유형인지 확인하도록 제안한다. union의 다른 가지로 재해석되면 경고를 내고 원래 유형을 담는 주석도 제안한다. IETF 기록은 이 3월 개인 초안을 현재 만료된 문서로 표시한다. 10월 강연은 그 문서가 제기한 운영 문제를 다시 현장에 올렸다.

경계는 +3만의 문제가 아니다. RFC 7951은 작은 정수를 JSON 숫자로 쓰지만 int64, uint64, decimal64는 문자열로 쓴다. CBOR에는 더 압축된 표현도 있다. 모델을 읽지 않고 겉모양만 옮기는 프록시는 자기도 모르게 설정값을 판정한다. '호환성'이라는 표지판 뒤에서 이루어지는 결정이다.

발표 자료는 CORECONF의 일부 작업이 아직 진행 중이라고 밝힌다. 현재 사용 중인 경로는 유형을 가진 값을 각 인터페이스로 끝까지 보내고 장치가 실제 적용한 결과를 읽어 확인해야 한다. 변경 기록에는 바이트와 그 신분표를 함께 적자.

원본 자료