요약

  • RFC 977은 중복 뉴스를 링크에 따라 다른 비용으로 다루었습니다. 대화형 피어에서는 사이트들이 기사 본문을 보내기 전에 서로 무엇을 이미 갖고 있는지 비교할 수 있었습니다.
  • 같은 RFC는 단일 트랜잭션 UUCP 링크에 대해서는 플러드 후 폐기 방식을 유지했습니다. 그러한 링크에서는 전송마다 협상하는 것보다 배치를 한 번에 보내는 쪽이 더 빨리 끝날 수 있었기 때문입니다.

1986년 2월, Brian Kantor와 Phil Lapsley가 제안된 Network News Transfer Protocol인 RFC 977을 발표했습니다. 이 문서에서 가장 시사적인 주장은 하나의 전송 방식이 Usenet을 지배해야 한다는 것이 아니었습니다. 중복 기사의 비용은 그 기사를 운반하는 연결에 따라 달라진다는 것이었습니다. 대화형 스트림에서는 두 호스트가 서로 무엇을 갖고 있는지 물어보고 무엇을 보낼지 결정할 수 있었습니다. 하루에 한 번만 열리는 링크에서는 그 결정을 조율하기 위한 대화 자체가 중복 기사보다 더 큰 비용이 될 수 있었습니다.

문제는 구조적인 것이었습니다. RFC가 기술한 전통적 방식에서는 뉴스가 플러딩으로 호스트 간에 이동했습니다. 각 사이트는 자신의 피드에 새 기사를 전달하고, 그 피드들이 다시 다음 사이트로 전달했습니다. 피드를 둘 둔 사이트는 같은 기사를 두 번 받을 수 있었습니다. 단방향 또는 예약 전송에서는 송신 측이 수신 측에 이미 기사가 있는지 편리하게 물어볼 수 없었습니다. 수신 측은 배치를 받아들인 뒤 전송이 끝나고 나서 중복을 폐기했습니다. 이 방식은 시간과 통신 용량을 소모했지만 세션을 단순하게 유지했습니다.

NNTP는 대화를 추가했습니다. 클라이언트는 서버에게 어느 뉴스그룹에 새 기사가 나타났는지 물어보고, 원하는 그룹의 메시지 식별자를 요청할 수 있었습니다. 그런 다음 자신이 없는 기사를 요청했습니다. 반대 방향에서도 호스트는 피어에게 최근에 받은 기사를 알려줄 수 있었고, 피어는 이미 보유한 항목과 아직 필요한 항목을 구분할 수 있었습니다. 기사 본문은 더 이상 특정 메시지가 링크를 건넜다는 첫 번째 증거가 아니었습니다. 호스트들이 식별자를 먼저 비교할 수 있게 된 것입니다.

이 구분은 경로에 따라 달라졌습니다. RFC 977은 로컬 네트워크나 그 밖의 고속 네트워크에 잘 연결된 호스트는 UUCP 같은 전통적 방식보다 NNTP가 뉴스를 더 효율적으로 배포할 수 있다고 말합니다. 동시에 UUCP의 배치 논리가 왜 합리적이었는지도 설명합니다. 단일 트랜잭션 링크, 특히 하루 한 번만 사용하는 링크에서는 모든 기사를 보내고 수신 측이 중복을 제거하도록 하는 것이 총 전송 시간을 줄일 수 있었습니다. 대화형 협상이 더 적은 바이트를 전송한다고 해서 자동으로 더 저렴한 것은 아니었습니다.

RFC는 사이트 간 전송과 혼동하기 쉬운 또 다른 용도를 기술합니다. 대학이나 사무실은 중앙 뉴스 스풀을 두고 워크스테이션이 로컬 네트워크를 통해 이를 읽도록 할 수 있었습니다. 사용자는 매 기기에 전체 사본을 두는 대신 공유 저장소에서 항목을 선택했습니다. 중간 서버가 최근에 조회한 기사를 캐시할 수도 있었습니다. 이것은 독자 접근과 저장 구조였으며, 모든 Usenet 사이트가 하나의 중앙 데이터베이스를 공유했다는 뜻은 아니었습니다.

RFC 850은 전송 방식은 유연하게 남겨 둔 채 USENET 기사의 형식을 이미 표준화했습니다. 사이트들은 하드웨어와 소프트웨어, 뉴스 배치 여부를 스스로 선택할 수 있었습니다. RFC 977은 그런 다양한 세계 안에서 작동했습니다. 조회, 검색, 게시, 기사 교환을 위한 스트림 기반 방식을 규정하면서도, 간헐적 회선에서는 다른 전송 방식의 장점을 인정했습니다. 그 설계는 조건적이고 다원적이었습니다. 네트워크가 감당할 수 있으면 대화를 사용하고, 시간을 절약하는 곳에서는 배치를 유지하라는 것이었습니다.

이 기록은 프로토콜 설계를 증명할 뿐, 보편적 전환을 증명하지는 않습니다. RFC 977은 1986년 Usenet의 어느 정도가 NNTP로 옮겼는지 알려주지 않고, 절약된 대역폭을 정량화하지 않으며, 모든 구현이 중복 전송을 피했다는 것도 보여주지 않습니다. 그 기여는 더 좁습니다. 기사 선택을 피어 간의 실시간 교환으로 만들어, 송신자가 다른 사본을 보내기 전에 수신자가 원하는 것과 이미 가진 것을 말할 수 있게 한 것입니다.

출처 기록:RFC 977, Network News Transfer Protocol;RFC 850, Standard for Interchange of USENET Messages;RFC 1036, Standard for Interchange of USENET Messages.