HTTP와 WWW

파랑·2021년 8월 31일
0

출처: How Does the Internet works

인터넷 프로토콜 중 중요하고 자주 쓰이는 프로토콜을 알아보자.
먼저 가장 상위레벨인 애플리케이션 레벨의 프로토콜부터~!

Application Protocols: HTTP and the World Wide Web

인터넷 기반으로 가장 많이 쓰이는 서비스 중 하나가 WWW이다.
이 어플리케이션이 웹이 동작하도록 하는 애플리케이션 프로토콜이 HTTP이다.
TCP 계층에 기반한 프로토콜 스택, 즉 "어플리케이션 레벨 프로토콜"로 특정 어플리케이션과 어플리케이션이 서로 커뮤니케이션하기 위해 사용된다.
HTTP의 경우에는 "웹 브라우저" (어플리케이션)"웹 서버"(어플리케이션) 간의 통신을 말한다.

대부분의 프로토콜이 연결 지향적인데에 반해(소켓 등) HTTP는 텍스트 기반 비연결적인 프로토콜로, 클라이언트가 웹서버에 웹 페이지나 이미지를 요청하고, 서버가 이를 제공하ㅁ고 나면 인터넷을 통한 클라이언트와 서버의 연결은 끝난다. 따라서 새로운 연결이 매 요청 시마다 만들어지게 된다. 클라이언트가 HTTP request를 사용하기 위해서는 항상 서버에 요청을 하고 연결을 만들어야 한다는 의미이다.

브라우저에 url을 입력했을 때 벌어지는 일

  1. url이 도메인 이름을 가지고 있다면, 브라우저는 첫번째로 DNS와 연결하고 해당하는 IP 주소를 얻어온다.
  2. 웹 브라우저는 해당 IP 주소의 웹 서버와 연결하고 프로토콜 스택을 이용하여 원하는 웹페이지를 얻기 위해 HTTP Request를 보낸다.
  3. 웹 서버가 Request를 받고 원하는 페이지를 체크한다. 그 페이지가 있다면 웹 서버는 이를 보내고, 찾지 못한다면 404 에러 페이지를 보내게 된다.
  4. 웹 브라우저가 페이지를 돌려받게 되면 연결이 끝난다. 브라우저는 페이지를 읽고 웹 페이지를 완성하기 위핸 페이지 요소들을 요청한다.(imgages, applets 등)
  5. 해당 요소들을 위해 추가적인 연결과 http request를 만들어서 서버에게 보낸다. 만약 모든 이미지와 등등의 리소스를 다 받아온다면 브라우저 윈도우에 페이지를 완성한다.

데이터 패킷의 여행

데이터 패킷의 여행

만약 www.naver.com을 친다면 네이버의 서버 네트워크(사설망)으로 가게된다.

HTTP에 대한 자세하고도 중요한 내용도 꼭 알아야겠다.
이거 읽어봐야지!
HTTP 자습서

0개의 댓글