첫 시도에서 상대편에 도착한 것은 L과 O 두 글자였다. ‘LO’는 시스템에 접속할 때 쓰는 영어 명령어 ‘LOGIN’의 첫 두 글자다. 1969년 10월 29일 밤, 캘리포니아대학교 로스앤젤레스캠퍼스(UCLA)의 프로그래머 찰리 클라인은 멘로파크에 있는 스탠퍼드연구소(SRI) 컴퓨터에 로그인을 시도했다. 반대편에는 빌 듀발이 기다리고 있었다. 두 사람은 ARPANET이라는 새 네트워크를 시험 중이었고, 클라인이 명령어를 다 입력하기 전에 원격 컴퓨터가 멈췄다. 약 한 시간 뒤에는 로그인에 성공했다. 실패한 시도는 네트워크 역사에서 가장 유명한 일화가 됐지만, 두 번째 시도를 가능하게 한 작업도 그만큼 주목할 만하다.

57년이 지난 지금 이야기는 흔히 인터넷이 ‘LO’에서 시작됐다는 주장으로 압축된다. 기념일에 어울리는 인상적인 장면이지만 두 가지를 분명히 해야 한다. ARPANET은 훗날 인터넷으로 이어지는 데 기여한 연구망으로, 오늘날 쓰는 세계적 네트워크는 아니었다. 또 UCLA에 남은 손글씨 기록에는 두 글자가 적혀 있지 않다. 팀이 SRI와 ‘호스트 대 호스트’로 통신했다는 내용이다. 어떤 글자를 입력했는지는 참가자들이 전했다. 문서와 기억은 같은 사건의 다른 부분을 비춘다.

마감이 있는 시험

미국 고등연구계획국 ARPA는 서로 다른 대학과 연구소의 컴퓨터 연구를 지원했다. 책임자들은 연구자들이 컴퓨터마다 별도 단말기 연결을 마련하지 않고도 멀리 있는 컴퓨터를 쓰고 자원을 공유하기를 원했다. 밥 테일러가 구상을 추진하고 래리 로버츠가 네트워크 사업을 조직했으며, 볼트·베라넥·뉴먼, 즉 BBN의 팀이 대형 컴퓨터를 네트워크에 연결할 중계용 컴퓨터를 만들었다. 인터페이스 메시지 프로세서(IMP)라는 이 장치들은 초기 네트워크의 통신을 처리했다.

UCLA는 1969년 8월 말 첫 IMP를 받아 9월 초 SDS 시그마 7 컴퓨터와 연결했다. SRI는 10월 두 번째 IMP를 받고 그달 후반에 SDS 940 호스트를 연결했다. 두 기관 사이에는 회선이 있었지만, 회선이 작동한다고 한 컴퓨터에서 다른 컴퓨터를 쓸 수 있는 것은 아니었다. 각 기관은 자기 기계용 소프트웨어를 작성하고 정보 교환 방식을 합의해야 했다. UCLA의 스티브 크로커가 1969년 4월 작성한 첫 Request for Comments, 즉 의견을 구하는 기술 문서 RFC는 소프트웨어의 잠정 제안과 미해결 질문을 담았다. 네트워크는 하드웨어만큼이나 토론을 통해 만들어졌다.

훗날 UCLA Internet50 프로젝트가 공개한 인터뷰에서 듀발은 원격 로그인 마감이 10월 31일이었다고 회상했다. 팀은 컴퓨터를 쓰려는 사람이 적은 29일 밤 시험하기로 했다. 그는 시스템이 불안정했다고 기억했으며, 프로토콜과 컴퓨터를 모두 알았기에 SRI 인터페이스 작업에 투입됐다고 말했다. UCLA 호스트를 IMP에 연결하는 소프트웨어를 작성한 클라인은 그 날짜를 택한 특별한 이유를 기억하지 못했다. 시도할 준비가 됐기에 시도했다.

세 번째 글자에 무슨 일이 생겼나

캘리포니아 시간으로 밤 10시 30분 무렵 클라인이 명령어를 입력하기 시작했다. 두 프로그래머는 SRI에 도착한 내용을 확인하기 위해 전화로도 연결돼 있었다. L이 도착했다. O가 도착했다. 클라인이 G를 입력하자 수신 컴퓨터가 멈췄다. 두 글자는 역사에 남기려고 지은 시적인 인사말이 아니었다. 실제 로그인을 시험하는 과정의 시작이었다. UCLA 네트워크 측정센터를 이끈 레너드 클라인록은 나중에 영어 표현 ‘lo and behold’, 즉 뜻밖의 것을 보고 ‘이것 보라’고 말하는 표현과의 절묘한 연관성을 보았다. 그 해석은 사건 이후에 생겼다.

듀발은 나중에 멈춤의 원인을 정확히 설명했다. SRI 컴퓨터는 명령어의 시작을 알아보고 나머지 글자를 자동으로 돌려보낼 수 있었다. 처음 사양은 한 글자짜리 응답 공간만 허용했는데, G가 더 긴 자동 완성 응답을 일으키면서 그 공간을 넘어섰다. 듀발은 회고 인터뷰에서 이를 버퍼 오버플로라고 설명했다. 문제는 호스트 소프트웨어에 있었으며 장거리 회선이나 IMP의 고장을 입증한 것이 아니었다. 클라인록의 설명에 따르면 팀은 문제를 고치고 약 한 시간 뒤 전체 로그인에 성공했다.

기록은 소박하다. ‘SRI와 호스트 대 호스트로 통신했다.’ 세계적인 공공서비스를 말하지도, 극적인 통화 내용을 남기지도 않는다. 하지만 전환을 표시한다. UCLA 컴퓨터가 패킷 교환망을 통해 다른 호스트와 통신했다. 이런 네트워크에서는 정보를 작은 패킷으로 나눠 보내고 목적지에서 다시 조립한다. 크로커의 1969년 RFC는 호스트 컴퓨터들 자체의 협력 방식을 아직 정하던 때에 이 분할을 설명했다. 10월 29일 그 계획은 서로 다른 두 컴퓨터 사이에서 시험됐다.

컴퓨터 두 대 이상

유명한 기록 한 페이지의 사진은 네트워크가 두 사람의 작품처럼 보이게 할 수 있다. 클라인과 듀발은 시험에 필수적이었지만, 그 시험은 다른 많은 사람에게 의존했다. IMP를 만든 BBN 엔지니어들, 사업에 자금을 대고 조직한 ARPA 책임자들, 양쪽에서 소프트웨어를 쓰던 팀들이다. SRI의 더글러스 엥겔바트 그룹은 네트워크가 대화형 정보 시스템 연구를 확장해주기를 기대했다. 연구소는 성장하는 네트워크에 공동 명부와 문서를 제공할 네트워크 정보센터도 운영할 예정이었다.

UCLA와 SRI는 시작에 불과했다. 캘리포니아대학교 샌타바버라캠퍼스가 11월, 유타대학교가 12월에 합류하면서 첫 네 노드 구성이 완성됐다. 시스템은 연구자들에게 안정적인 서비스를 제공할 수 있음을 아직 입증해야 했다. 영국 국립물리연구소 등 다른 그룹도 컴퓨터 네트워크를 연구했다. 컴퓨터역사박물관은 이런 동시대의 노력과 함께 ARPANET을 살펴보며, 자금 지원이 초기 경쟁자들을 넘어 성장하는 데 도움이 됐다고 설명한다. 인터넷으로 향하는 중요한 길이었지만 컴퓨터를 연결하는 유일한 실험은 아니었다.

전신에서 네트워크들의 네트워크로

ARPANET에는 나중에 첫 시험에서는 제공할 수 없던 서비스가 더해졌다. 네트워크 전자우편이 1970년대 초 등장했다. 이어 연구자들은 하나의 네트워크 안에 있는 컴퓨터뿐 아니라 서로 다른 네트워크를 연결하는 방법을 만들었다. 그 작업의 결과가 TCP/IP다. ARPANET이 1983년 채택했고 지금도 인터넷의 기초인 규칙들의 집합이다. 월드와이드웹은 더 나중에 등장했다. 따라서 1969년 실험을 ‘첫 인터넷 메시지’라고 부르는 것은 축약이다. 전신의 의미를 인정하면서도 수십 년의 기술적·제도적 작업을 하룻밤에 압축한다.

실제 그날 밤은 덜 매끄러웠고 더 많은 것을 보여준다. 마감에 쫓긴 두 프로그래머가 업무시간 밖에 불안정한 시스템을 시험했다. 평범한 로그인이 실패했고, 오류를 찾아 다시 시도했다. 작은 성공 뒤에는 공적 자금과 공개된 기술 제안, 저절로는 소통할 수 없는 기계를 다루는 사람들의 협력이 있었다. 두 글자가 남은 것은 이야기가 기억에 잘 남기 때문이다. 성취는 대화를 계속할 수 있었다는 데 있었다.

출처: https://www.lk.cs.ucla.edu/internet_first_words.html ; https://internethistory.org/internet50-highlights/ ; https://www.rfc-editor.org/info/rfc1/ ; https://www.computerhistory.org/internethistory/1960s/ ; https://www.computerhistory.org/timeline/networking-the-web/ ; https://www.internetsociety.org/news/press-releases/2013/new-years-day-marks-30th-anniversary-of-major-milestone-for-global-internet/