요약

  • NSFNET의 1995년 퇴역은 단순히 종료 날짜에 도달하는 것이 아니라 분산형 후속 아키텍처를 입증하는 데 달려 있었으며, 남겨진 백업 경로는 불완전한 전환을 건강한 것처럼 보이게 만들 수 있었습니다.
  • Gerich와 폭넓은 운영 커뮤니티는 되돌릴 수 없는 종료 통지와 테스트용 피어링 차단을 병행했으며, 대체 시스템이 동등성을 입증할 때까지 구형 라우팅 정책 데이터베이스는 가동 상태로 유지되었습니다.

1995년 4월 30일 자정, NSFNET 노드는 각자의 시간대에서 전원이 꺼졌습니다. 그것이 깔끔한 결말입니다. 더 계시를 드러내는 사건은 5일 전에 일어났습니다. Merit가 백본의 외부 피어링을 제거하면서 네트워크들이 새로운 상업용 연결을 사용해야 했던 것입니다. 결과가 따르는 시험이었습니다. 조용히 NSFNET으로 폴백되어 온 도달 가능성은 갑자기 공개적으로 실패하게 될 것이었습니다.

이것을 리허설이라고 부르는 것은 편집상의 묘사이지 역사적 명칭이 아닙니다. Susan R. Harris와 Elise Gerich는 당시 퇴역에 대한 기록에서 이를 test shutdown, 즉 시험 종료라고 불렀습니다. 이 구분이 중요한 이유는 그 시험이 연극이 아니었기 때문입니다. 엔지니어들이 여전히 며칠의 진단 시간을 가지고 있는 가운데 안전망을 의도적으로 철수한 것이었습니다.

Gerich는 일정과 공식 통지의 중심에 서 있었지만, 전환은 집단적이었습니다. Harris가 상세 기록을 공동 집필했습니다. Merit는 NSF, ANS, IBM, MCI, 지역 네트워크, 상업용 인터넷 제공자, 네트워크 액세스 포인트 운영자, USC ISI 및 Routing Arbiter 담당자들과 협력했습니다. 수백 가지의 운영 결정이 회선, 라우터, 라우트 정책, 모니터링, 고객 관계를 소유한 사람들에 의해 이루어졌습니다. Gerich의 기여는 이러한 상호 의존적인 결정들을 하나의 퇴역 과정으로 파악할 수 있도록 만드는 데 도움을 준 것이었습니다.

마감은 날짜가 아니라 시스템이었다

NSF가 범용 백본 운영에서 철수한다는 계획은 1995년보다 훨씬 전에 준비되어 있었습니다. 1992년 이 기관은 후속 공고를 발행하고 상업 제공자들에게 발전할 시간을 주며 직접 네트워크 운영에서 물러날 수 있도록 Merit와의 계약을 18개월 연장했습니다. 1993년 공고는 의도적으로 분해된 아키텍처를 만들어냈습니다. 1994년 초 수여된 계약은 네 가지 표면을 다루었습니다. 교환을 위한 네트워크 액세스 포인트, Merit가 USC ISI와 함께 이끄는 Routing Arbiter 프로젝트, 연구를 위한 MCI의 초고속 백본 네트워크 서비스, 그리고 지역 네트워크들을 위한 상업용 인터넷 서비스였습니다.

따라서 구형 백본에는 단일 후계자가 없었습니다. 퇴역에는 네 가지 조건이 수렴해야 했습니다. NAP들이 프로덕션에서 운영되어야 했고, NSFNET과 지역 네트워크들이 선택한 제공자들이 그 교환 지점에 도달해야 했으며, Route Server와 사용 가능한 라우팅 레지스트리가 존재해야 했고, 각 지역 네트워크가 자신의 트래픽을 상업 제공자로 옮겨야 했습니다. 한 조건의 녹색 신호가 다른 조건의 적색 신호를 보상할 수는 없었습니다.

초기 날짜가 미뤄진 이유는 서류상 준비와 운영상 준비가 다른 것이었기 때문입니다. 주 및 백업 Route Server는 1994년 11월에 출하되었지만, 라우트 서비스는 회선, 프론트엔드, 컨트롤러, 스위치, 브리지, 주소 지정, 보안, 24시간 모니터링 및 out-of-band 액세스도 필요했습니다. Pacific Bell과 Ameritech NAP에서 ATM의 준비성과 성능에 대한 우려는 1995년 3월의 대체 FDDI 구성으로 이어졌습니다. 이 전환은 단일 대체 기계가 아니라 독립적으로 소유된 서비스들의 연합체를 만들고 있었습니다.

이 아키텍처는 권위의 성격을 바꾸어 놓았습니다. NSF는 퇴역 목표를 설정하고 전환에 재정을 지원할 수 있었습니다. Merit는 퇴출되는 백본을 조율하고 운영할 수 있었습니다. 그러나 어느 쪽도 자신의 장비를 검사함으로써 새 인터넷이 준비되었다고 선언할 수 없었습니다. 준비성은 조직 경계를 넘어 입증되어야 했습니다.

이전은 서류상 완료될 수 있지만 트래픽에서는 거짓일 수 있었다

지역 전환이 그 간극을 보여주었습니다. Gerich는 NSF 네트워킹 국장 Priscilla Huston과 함께 지역 네트워크들로부터 일정과 엔지니어링 개요를 받았습니다. 어느 지역도 원래 10월 31일 목표를 맞추지 못했습니다. 일부는 3~4개월 늦었습니다. 더 중요한 것은, 일부 이전 완료된 네트워크들이 배포 문제가 나타나자 NSFNET 전체 서비스로 되돌아갔다는 점입니다.

롤백은 실패의 증거가 아니었습니다. 과정이 되돌릴 수 있는 동안에는 유용한 선택지였습니다. 그러나 무기한 남아 있는 백업은 실패를 숨길 수 있었습니다. 4월 중순까지 NSFNET 연결을 완전히 끊은 지역 네트워크는 7개뿐이었습니다. 다른 네트워크들은 상업 서비스를 갖추었으면서도 여전히 연방 백본을 보조 경로로 유지하고 있었습니다. 그들의 정상 트래픽은 이전된 것처럼 보일 수 있었지만, 눈에 띄지 않은 라우트, 용량 부족 또는 진단 습관이 여전히 구형 시스템에 의존하고 있었습니다.

Gerich는 3월에 커뮤니티에 트래픽이 충분히 빨리 줄지 않고 있다고 경고했습니다. Merit는 남은 10대 최대 트래픽 발생자의 히스토그램을 배포했습니다. 이것은 허영의 차트가 아니었습니다. 선언된 프로젝트 상태인 "우리에게 새 제공자가 있다"를 관찰된 의존성, 즉 "패킷이 여전히 구형 백본을 선택하고 있다"로 변환한 것이었습니다. 퇴역 팀은 T1 안전망도 제거했습니다. 철수할 때마다 남은 결합은 더 측정 가능해졌습니다.

되돌릴 수 없는 통지는 확신과 확약을 분리했다

공식 60일 종료 통지는 되돌릴 수 없도록 설계되었습니다. 일단 발송되면 그 노드를 통한 NSFNET 서비스는 복원되지 않았습니다. 첫 통지는 SURAnet이 준비된 후 애틀랜타를 다루었습니다. 2월 28일, Gerich는 나머지 19개 지역에 대한 공식 통지를 보내 4월 30일을 종료일로 정했습니다.

이 메커니즘은 끝없는 선택권을 막았지만, 그것이 근거를 따랐기 때문에 가능했습니다. 통지는 기술적 확신을 제도적 확약으로 바꾸었습니다. 지역 운영자, 제공자, 고객은 더 이상 마감 후에 구형 노드가 구제될 것이라고 가정할 수 없었습니다. 또한 책임을 집중시켰습니다. 어떤 조직이 더 많은 용량, 다른 경로 또는 대체 진단 경로가 필요하다면, 그 확약이 되돌릴 수 없게 되기 전에 필요를 표면화해야 했습니다.

Merit는 처음에 4월 21일에 피어링을 종료하고 복원한 뒤, 4월 28일에 같은 조치를 영구적으로 반복하고, 4월 30일에 운영을 끝내는 계획이었습니다. 네트워크들은 용량, 연결성, 진단과 관련된 구체적인 의존성을 제기했습니다. 팀은 최종 마감을 옮기지 않고 개별 문제를 수용했습니다. 이 설계에서 경청은 단단함의 반대가 아니었습니다. 단단한 마감을 살아낼 수 있게 만드는 방법이었습니다.

그리고 그 시험 자체가 또 하나의 숨겨진 의존성을 드러냈습니다. 퇴출하는 시스템이 자기 마지막 구성을 생성하는 능력이었습니다. 수천 건의 동시 라우팅 변경으로 파일이 잘리거나 손상되었습니다. 운영자들이 더 많은 공간을 제공하고 네트워크 목록을 줄이는 동안 시험은 연기되어야 했습니다. Harris와 Gerich의 기록은 이 아이러니를 담백하게 지적합니다. 구형 Policy Routing Database 기계가 구형 서비스를 끄는 데 필요한 변경의 규모를 감당하지 못했다는 것입니다.

피어링은 결국 4월 25일에 제거되었습니다. 사건의 대부분은 조용했지만, 여전히 전화가 걸려왔습니다. 그 조용함은 그 이전의 시끄러운 작업이 벌어 준 것입니다. 늦어진 이전, 롤백, 트래픽 측정, 예외 처리, 그리고 실패한 첫 시도. 노드들은 그 뒤 4월 30일 각 지역 시간대의 자정에 전원이 꺼졌습니다.

제어 평면은 전송보다 오래 살아남았다

이 이야기의 마지막 날짜는 4월 30일이 아니라 5월 8일입니다. NSFNET의 Policy Routing Database, 즉 PRDB는 백본 노드가 어두워진 뒤에도 서비스를 계속했습니다. 대체인 Routing Arbiter Database의 이전 일정이 달랐기 때문입니다.

RADB는 비어 있는 상태로 시작했지만 기존 도구들은 PRDB 속성에 의존했습니다. 이전에는 약 40,000개의 네트워크 프리픽스 정책과 2주 프로덕션 주기로 총 약 250,000줄에 이르는 약 100개의 구성 파일이 걸렸습니다. 운영자들은 임시 자문 속성에 합의하고, 데이터를 변환하고, Maintainer 및 자치 시스템 객체를 도입하고, 두 데이터베이스를 병행 운영했습니다. RADB가 PRDB를 대체하는 데 신뢰받기 전에는 반복적인 줄 단위 비교가 필요했습니다. 1995년 Gerich와 다른 라우팅 레지스트리 실무자들이 공동 집필한 RFC 1786은 여러 레지스트리에서 사용되던 공유된 RIPE-81++ 표현을 문서화했습니다.

PRDB는 구성 동등성과 ANS 인계가 준비된 후에야 5월 8일에 퇴역했습니다. 이 순서는 물리적 종료가 더 좋은 사진을 제공하기 때문에 놓치기 쉽습니다. 그러나 운영적으로는 이것이 절제의 가장 강력한 증거입니다. 그 기관은 모든 의존성에게 하나의 상징적 날짜를 강요하지 않았습니다. 후계자가 다른 증명을 통과할 때까지 구형 제어 표면이 지속되도록 허용했습니다.

Gerich의 이후 Internet Hall of Fame 프로필은 그녀가 퇴역과 상업 제공자로의 이동을 감독했다고 서술하며, 그녀가 이전에 T1 및 T3 NSFNET의 조율을 맡았고 Mark Knopper와 함께 NANOG를 공동 창설한 사실도 기록하고 있습니다. 이러한 사실은 1995년 작업의 성격과 부합합니다. 이전 가능한 기술은 단일 라우터의 숙달이 아니었습니다. 그것은 운영자들이 하나의 조직이 전체 시스템을 통제한다는 가상 없이 공유 인프라를 퇴역시킬 수 있는 포럼, 일정, 근거, 확약의 체계를 만든 것이었습니다.

이 기록은 완벽한 전환이나 무정전을 주장할 근거가 되지 않습니다. 그것은 더 유용한 무언가를 보여줍니다. 체계적인 퇴출에는 날짜 미준수, 롤백, 실패한 리허설이 포함될 수 있으며, 그 조건은 이러한 사건들이 되돌릴 수 없는 단계 전에 의존성을 드러내는 것입니다. 종료의 성공은 4월 30일의 침묵보다, 4월 25일까지 숨겨진 의존을 가시화하고 데이터베이스를 5월 8일까지 살려 둔 데 더 있었습니다.

출처