고퍼 (프로토콜)
고퍼 프로토콜(Gopher protocol; 대부분 "고퍼"라 줄여 사용함)은 인터넷을 위해 고안된 문서 검색 프로토콜이다. 고퍼의 목적은 월드 와이드 웹과 비슷하나, 현재는 거의 완전히 웹에 의해 대체되었다.
고퍼 프로토콜은 웹에서 지원하지 않는 몇 가지 사항들을 지원하는데, 특히 웹보다 훨씬 강력한 정보 분류 체계를 지원한다. 고퍼의 문자 기반 메뉴 인터페이스는 원격 터미널에 알맞게 조직되어 있다. 어떤 사람들은 고퍼를 대량의 정보 검색 및 저장에 훨씬 효과적인 프로토콜로 여긴다.
기술 상세
편집프로토콜
편집고퍼 프로토콜은 RFC 1436 에 처음 기술되었다. IANA는 TCP 포트 70을 고퍼 프로토콜에 할당하였다.
이 프로토콜은 협상(negotiate)이 단순하므로 클라이언트 없이 탐색을 가능케 한다. 그러므로 표준 고퍼 세션은 다음과 같이 나타난다:
/Reference 1CIA World Factbook /Archives/mirrors/textfiles.com/politics/CIA gopher.quux.org 70 0Jargon 4.2.0 /Reference/Jargon 4.2.0 gopher.quux.org 70 + 1Online Libraries /Reference/Online Libraries gopher.quux.org 70 + 1RFCs: Internet Standards /Computers/Standards and Specs/RFC gopher.quux.org 70 1U.S. Gazetteer /Reference/U.S. Gazetteer gopher.quux.org 70 + iThis file contains information on United States fake (NULL) 0 icities, counties, and geographical areas. It has fake (NULL) 0 ilatitude/longitude, population, land and water area, fake (NULL) 0 iand ZIP codes. fake (NULL) 0 i fake (NULL) 0 iTo search for a city, enter the city's name. To search fake (NULL) 0 ifor a county, use the name plus County -- for instance, fake (NULL) 0 iDallas County. fake (NULL) 0
여기에서 클라이언트는 서버에 대해 표준 고퍼 포트인 포트 70으로 TCP 연결을 확립한다. 그러면 클라이언트는 문자열 및 캐리지 리턴, 그리고 라인피드(CR+LF 시퀀스)를 보낸다. 이것을 셀렉터이며 검색할 문서를 식별한다. 항목 셀렉터가 비어있으면 기본 디렉터리가 선택된다. 이때 서버는 요청된 항목과 함께 응답하며 연결을 닫는다.