2006년 11월 8일

웹에 대한 추억들

미국의 베트남 참전으로 전세계가 어수선했던 1960년대 말, 미 국방성(U.S. Department of Defense)은 멀리 떨어진 컴퓨터들을 서로 연결해 네트워크를 꾸미는 실험적이며 모험적인 프로젝트를 지원하기위해 자금을 투입했다.

이 프로젝트를 주도한 ARPA(Advanced Research Projects Agency)의 이름을 따서, 이 실험적인 네트워크를 ARPANET이라 부르기 시작했다. 꽤 오랫동안 이 프로젝트는 단지 실험적인 수준에 머물러 있었으나 우연한 기회로 인해 지금의 인터넷으로 급속한 발전을 하게 된다.

미국 캘리포니아주(州)에 있는 캘리포니아 주립대학교(UC Berkeley)는 AT&T의 UNIX 라이센스 제공과 미 국방성의 지원으로 BSD UNIX를 개발했는데, 큰 특징으로는 통신을 위해 TCP/IP란 프로토콜 탑재하고 대학생들에게 무료로 나누어 주었다는 점이다.

이같은 유인책(?)이 통했던지 기존 ARPANET에 TCP/IP를 사용하는 BSD UNIX시스템들이 점차 늘어나고 결국 ARPANET을 장악(?)하게 된다. 때문에 TCP/IP가 ARPANET의 기본 네트웍 프로토콜로 채택되게 되었다.

Dennis Ritchie 와 Ken Thompson하면 떠오르는 단어는 해커, C언어 그리고 UNIX의 창시자이다. 이 둘은 Bell 연구소에 근무하며 MULTICS(모든 것을 다 잘한다는 뜻으로)란 운영체제를 만들고 게임을 제작해 즐겼다고 한다. - Space Wars 란 비디오게임 게임을 위해 강력한 운영체제가 필요함을 느끼고 있었고, Ritchie는 C언어를 개발해 이를 적용해 보고 싶었던 터라, 이 결과로 UNIX(하나만 잘하는)가 탄생하게 된다.
결국, 쉽게 이해할 수 있고 하드웨어를 강력하게 제어할 수 있는 효과적인 언어로 C언어가 자리잡게 되었다.
향후 UNIX는 다양한 아류(?)작들이 파생되었으며, IBM의 AIX, SUN의 Solaris, HP의 HP-UX등 유명한 상용판들과 PC를 위한 Linux가 그것이다. 자손들의 통합된 표준안을 위해 생긴 것이 바로 POSIX.

1970년대만 해도 ARPANET은 수백대의 호스트들이 연결된 작은 규모의 네트워크였고, 해당 호스트로 연결하기 위해서는 IP주소만 알면 간단(?)했다.
더구나 숫자암기에 약한 사람들을 위해 호스트이름으로 접속할 때 변환에 사용하라고, "호스트이름, IP주소" 가 담긴 텍스트파일을 만드는 노가다도 서슴치 않았다.
관리자야 짜증나겠지만 익명 FTP서버를 열어놓고 이 텍스트파일(hosts)을 다운받아가도록 했다.


서로 통신을 가능케 하려면 IP주소뿐 아니라 호스트이름을 등록받아서 텍스트파일에 추가해야되고, 이미 등록된 이름인지 매번 검사해야하고, 재신청하라고 알려줘야 하는 단순하지만 중요한 일을 누군가는 했을텐데... 아르바이트를 고용했을지도... ^^

결국 노가다에 가까운 "호스트이름, IP주소" 관리방법을 바꾸어야 했고, 1984년 이에 대한 해법을 RFC 882, 883을 통해 발표하게 된다. 이름하여 DNS(Domain Name Service).

Paul Mockapetris에 의해 설계된 DNS의 핵심은 중앙에서 관리하는 이 정보를 잘게 나누어 분산시키는 것이다. 이를 위해 계층적인 트리(tree)구조와 클라이언트,서버 구조등의 방법을 도입하게 된다.

인터넷에서 떠도는 패킷들중 DNS가 갖는 비중은 매우낮다.
결국 4byte IP주소를 받아오는 것이니 말이다. 하지만 DNS 서비스에 문제가 생길 경우 난리가 난다. 우리나라도 몇해전 인터넷 대란이라고 TV에서 시끄러웠다. 혹자는 "IP주소"를 달달 외워서 아무문제가 없었을 지도...

이름풀이 과정중 가장위에 위치한 루트 DNS서버들은 A루트서버부터 M루트서버까지 전세계적으로 13개가 퍼져있으나, 아쉽게 국내에는 없다. (일본에는 있지만...) 소식에 의하면 루트서버의 복제(mirror)를 들여온다고 하던데...

댓글 없음:

댓글 쓰기

시리우스 라이브러리 홈페이지 오픈

현재 시리우스(Sirius) 라이브러리라는 제품을 개발하고 이를 소개하는 홈페이지를 오픈 하였습니다. 관심있는 분들의 많은 방문 요청드립니다. 앞으로 업데이트 소식및 변경사항은 스파이럴랩 홈페이지를 통해 진행할 예정입니다. 스파이럴랩 홈페이지 :  h...