요약
draft-ietf-regext-epp-same-주체-01은 레지스트리가 어떤 도메인들이 하나의 주체 집합에 속하는지, 그리고 옵션이 그들에 어떻게 적용되는지 정의하도록 하되, 정책 자체와 등록대행사와의 합의 방법은 프로토콜 사양 외부에 둔다.- 이 경계는 엄중한 결과를 낳는다. 할당된 한 멤버의 이전이 집합 전체의 이전이 될 수 있고, 기본 도메인(Primary Domain)의 삭제는 모든 할당 멤버를 원자적으로 삭제할 수 있으며, 공유 리포지터리는 그 효과를 여러 레지스트리에 걸쳐 확장할 수 있다.
- 집합은 암시적이며 열거하기 어려울 만큼 클 수 있으므로, 책임 있는 운영에는 등가 정책 영수증이 필요하다. 정확한 정책과 LGR 버전, 당사자, 기본 도메인, 멤버십 증명, 예외, 리포지터리 범위, 명령의 영향 범위와 결과 증거가 그 내용이다.
EPP 명령의 중요한 결과는 통상 명령 안에 있을 것으로 기대된다. 요청에는 도메인 이름이 나타나고, 응답에는 결과 코드와 트랜잭션 식별자가 나타난다. 그 기록은 보존하고 나중에 비교할 수 있다. Same 주체 Set 초안은 더 다루기 어려운 대상을 도입한다. 이름이 지정된 하나의 도메인이 정책으로 정의된 전체 계열을 대표할 수 있으며, 여기에는 한 번도 등록된 적 없고 목록으로 반환하는 것이 사실상 불가능한 이름들도 포함된다.
이 초안의 동기가 된 사례는 국제화 도메인 변형이지만, 추상화는 더 넓다. 레지스트리는 특정 등록자에 대해 도메인 객체를 등가로 만드는 특성을 식별한다. 최초에 등록된 멤버가 집합을 만들고 해당 레지스트리에서 그 기본 도메인(Primary Domain)이 된다. 이후의 이름은 동일한 등록대행사 아래에서만 할당될 수 있으며, 등록자가 동일하게 유지되도록 하는 책임은 등록대행사에 있다. 리포지터리는 해당 주체에 대해 미할당 멤버를 보류할 수 있다.
이것은 단순한 편리한 그룹 레이블이 아니다. 이 집합은 명령이 작동하는 단위를 바꾼다. 할당된 어떤 멤버에 대한 이전 요청은 모든 할당 멤버에 적용된다. 기본 도메인에 대한 삭제는 모든 할당 멤버에 적용되며, 하나라도 삭제할 수 없으면 전체 작업이 실패하고 집합은 그대로 유지된다. 여러 레지스트리가 하나의 등가 정책과 중앙 리포지터리를 공유하는 경우, 이전 경계는 레지스트리 경계를 넘을 수 있다.
그러나 문서는 특성과 옵션을 정의하는 정책이 사양 외부에 있다고 명시한다. 레지스트리가 그 정책을 등록대행사와 공유하고 합의를 확보하는 방법도 마찬가지다. 와이어 프로토콜은 규칙의 유효성을 만든 완전한 권한을 실어 나르지 않으면서 원자적 규칙을 실행할 수 있다.
암시적 집합도 통제 표면이다
이 초안은 존재와 할당 사이의 중요한 구별을 만든다. 이름이 Same 주체 Set에 속하는 것은 등가 규칙이 그것을 그곳에 두기 때문이지, 누군가 객체를 생성했기 때문이 아니다. 응답은 할당된 멤버를 열거할 수 있다. 그러나 반드시 집합 자체를 열거할 수 있는 것은 아니다. 한 사용 사례는10^15개의 가능한 이름이라는 현실적인 우주를 기술한다.
그 규모는 익숙한 감사 습관을 무력화한다. 서버에 목록을 요청하고, 목록을 저장하고, 나중에 비교하는 방식이다. 저장할 완전한 목록이 없을 수 있다. 멤버십은 대신 기본 도메인에 적용되는 함수 — 아마도 IDN 라벨 생성 규칙집합과 추가 레지스트리 정책 — 에 의존한다. 할당된 멤버만 기록한 감사자는 우주를 결정한 규칙이 아니라 출력 표본만 포착한 것이다.
따라서 기본 도메인은 보통과 다른 권한을 지닌다. 그것은 최초 등록 멤버이며, 멤버십을 정의하고 옵션이 어떻게 적용되는지 결정한다. 초안은 Prescribed, Settable, Linked 동작을 예로 든다. 규정된(prescribed) 값은 레지스트리 정책을 따른다. 설정 가능한(settable) 값은 선택된 후 집합 규칙에 따라 적용될 수 있다. 연결된(linked) 값은 멤버들에 걸쳐 동작을 묶는다. 이 분류는 유용한 어휘이지만, 초안이 이를 요구하거나 레지스트리가 만들 수 있는 정책 전체를 다 포괄하지는 않는다.
실질적인 거버넌스 질문은 XML이 유효한지가 아니다. 판단 시점에 서버가 어느 외부 정책의 어느 버전을 적용했는가이다. LGR이 바뀌면 이전에 불가능하던 멤버가 할당 가능해지거나 새 충돌이 나타날 수 있다. 리포지터리를 공유하는 레지스트리들이 표를 다르게 조화시키면 멤버십은 더 이상 대칭이 아닐 수 있다. 그러면 같은 명령 바이트가 명령의 변경 없이도 다른 영향 범위를 함축할 수 있다.
원자성은 분류를 결과로 바꾼다
원자적 삭제는 집합 경계가 올바를 때 강력한 보호다. 일부 변형은 사라지고 다른 변형은 할당된 채 남는 반쪽짜리 삭제된 계열 — 혼란이나 사칭 기회를 열어줄 수 있는 — 을 막는다. 한 멤버의 실패는 기본 도메인 삭제 전체를 실패시킨다. 리포지터리는 부분적 결과를 남기는 대신 이전 상태를 보존한다.
그러나 원자성은 분류를 검증하지 않는다. 그것은 리포지터리가 존재한다고 믿는 집합을 그대로 적용한다. 정책 버전이 틀렸거나, 한 멤버가 예외였는데 올바르게 표현되지 않았거나, 두 레지스트리가 대칭성에 대해 불일치한다면, 트랜잭션은 완벽하게 원자적이면서도 잘못된 이름에 영향을 줄 수 있다. 기술적 일관성과 제도적 정확성은 별개의 속성이다.
이전은 위험을 넓힌다. 이 초안은 어떤 할당 멤버의 이전이든 집합 전체에 작용하도록 요구한다. 공유 중앙 리포지터리에서 그 작용은 여러 레지스트리의 대응 집합을 덮을 수 있다. 이는 운영상 이점을 만든다. 하나의 보이는 이름이 옮겨가고 변형들은 뒤에 남는 방식으로 주체 관계가 균열되지 않는다. 동시에 이는 집중 지점을 만든다. 멤버십, 권한 부여, 정책 합의의 오류는 더 이상 요청에 이름 지정된 객체에 국한되지 않는다.
하위 호환성은 또 다른 긴장을 더한다. 이 초안은 세 원칙이 예외 없이 유지되어야 한다고 말한다. 확장을 모르는 클라이언트와의 호환성, 동일 주체 관리, 집합 관리가 그것이다. 확장을 이해하지 못하는 클라이언트는 명령이 집합 의미론을 위반할 경우 장애 안전(fail-safe) 거부를 받아야 한다. 부분적 작용을 조용히 수락하는 것보다 안전하다. 그래도 등록대행사에게는 불투명할 수 있다. 구형 클라이언트는 요청이 실패했다는 사실만 알 뿐, 숨겨진 집합을 설명할 정책 맥락을 갖지 못할 수 있다.
예외는 잡동사니가 아니라 증거다
상태 어휘는 추가적인 거버넌스 상태를 드러낸다. Allocated는 레지스트리에서 활성 상태를 의미하지만, DNS 위임을 증명하지는 않는다. Allocatable은 동일 주체에게만 사용 가능함을 뜻한다. Blocked는 누구에게도 사용 불가능함을 뜻한다. Exempted 이름은 곤란한 상속이다. 기존 등록은 정의된 조건이 그들을 준수 상태로 가져올 때까지 다른 등록자나 등록대행사를 가질 수 있다.
예외를 일시적 각주로 취급하고 싶은 유혹이 있다. 실제로는 파일에서 가장 중요한 항목일 수 있다. 그것은 이상적 등가 모델이 기존 권리와 계약과 마주치는 지점을 보여준다. 추상적으로는 집합 전체에 적용되어야 할 명령이 리포지터리가 이전하거나 삭제할 수 없는 객체와 마주칠 수 있다. 바로 그곳에서 원자적 실패는 이해 가능한 설명을 필요로 한다.
초안은 미완성 작업에 대해 솔직하다. 부록은 아직 실제 수치 오류 코드, 더 많은 보안 분석, 변형에 대한 DS 레코드 동작 확인을 요구한다. 또한 유니코드 업그레이드가 도메인을 예외 사례로 바꿀 수 있다고 언급한다. 렌더링된 IANA 고려사항 절은 비어 있다. Datatracker는 현재 의도된 RFC 상태를 표시하지 않는 반면, 초안 헤더는 Standards Track이라고 쓰고 있다. 이것들은 작업을 따라가야 할 이유지, 그것을 확정되거나 배포된 것으로 제시할 이유가 아니다.
빠져 있는 산출물은 정책 영수증이다
내구성 있는 운영 답은 전체 레지스트리 정책을 모든 EPP 요청에 밀어 넣는 것이 아니다. 각 중요한 작용을 컴팩트하고 재현 가능한 영수증에 묶는 것이다. 나는 그것을 등가 정책 영수증이라 부르고 싶다. 이는 초안의 요구사항이 아니라 본지의 편집 제안이다.
영수증은 정책 식별에서 시작한다. 레지스트리 정책 버전, LGR 버전, 시행 시각이 그것이다. 규칙의 당사자였던 레지스트리, 등록대행사, 중앙 리포지터리 운영자를 명시한다. 기본 도메인을 식별하고, 명령에 지정된 멤버가 속한다고 어떻게 입증되었는지 기록한다. 다중 레지스트리 작업의 경우, 대상이 되는 모든 레지스트리와 멤버십이 대칭이 되도록 만든 리포지터리 상태를 명시한다.
그다음 작용 경계를 기록한다. 이것이 이전인가, 삭제인가, 옵션 변경인가? 평가 시점에 어느 할당 멤버가 범위 안에 있었는가? 어떤 미할당 이름이 할당 가능 또는 차단 상태로 남았는가? 어떤 멤버가 예외였으며, 어떤 전환 규칙 아래 있었는가? "변형 번들" 같은 산문적 레이블보다 입력 정책과 멤버십 증거의 다이제스트가 더 중요하다.
마지막으로 영수증은 결과 증거를 묶는다. 서버와 클라이언트 트랜잭션 식별자, 결과 코드, 공개가 허용되는 경우 실패한 멤버, 그리고 원자적 실패가 모든 이전 할당을 보존했다는 증명이 그것이다. 등록대행사는 관리할 수 없는 이름에 대한 민감한 데이터를 받을 필요는 없지만, 정책 집행과 일시적 서버 오류를 구별할 수 있을 만큼의 이유는 받아야 한다.
이렇게 하면 프로토콜이 정책을 소유한다는 착시 없이 책임이 가시화된다. 등가 정의에 대한 책임은 레지스트리에 남는다. 공통 등록자 신원에 대한 책임은 등록대행사에 남는다. 대칭적 멤버십과 원자적 실행에 대한 책임은 리포지터리에 남는다. 영수증은 그 결정들을 그 결정을 노출시킨 명령과 연결한다.
출처
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





