www.naver.com을 클릭할 때 일어나는 일의 과정

https://www.naver.com 을 접속하면 브라우저는 어떻게 해당 파일을 받아오는지 알아보자.

  1. 우선 www.naver.com 의 도메인네임 부분을 DNS 서버에서 검색을 해서 해당 IP주소를 받아온다. (여기서 com 부분을 최상위 도메인, naver는 com의 서브 도메인, www는 naver.com 의 서브도메인 이라고 한다. 서브도메인은 이런식으로 127단계 까지 가능하다)

  2. DNS에서 받은 IP주소로 TCP 연결을 시도한다. (Web의 HTTP가 TCP 프로토콜을 사용하기 때문이다. 해당 연결과정은 3way handshake를 통해 연결한다)

  3. 연결이 되면 HTTPS를 사용하므로 브라우저와 웹 서버는 SSL Handshake를 통해 HTTPS 연결을 하게 된다. 이 과정에서 서로의 인증서와 신분을 확인하고 어떤 암호화 방식을 사용할지 결정한다. (https 관련자료)

  4. 생성된 HTTPS 연결을 통해 브라우저는 REST api 규칙의 하나인 GET 메서드로 해당 URL의 콘텐츠를 웹 서버에 요청한다.

  5. 웹 서버는 요청받은 URL을 통해 적절한 파일들을 찾고, 정상적으로 완료될 경우에 Status code 200 과 header, body 를 포함한 http메시지를 브라우저에게 전달한다.

  6. 브라우저는 받은 http메시지를 해석하고, body의 html 파일을 해석하여 화면에 렌더링한다.

img

사진 출처 : http://tcpschool.com/webbasic/works