티스토리 뷰

반응형

 

 

아래의 URL을 통해 어떻게 웹 브라우저가 요청해서 진행되는지 알아보자. 

 

 

1. google.com에 해당하는 DNS 서버를 조회한다. IP 200.200.200.2 

 

2. port번호를 찾아낸다. port는 https로 생략된 443번 port이다. 

 

3. HTTP 요청 메시지 생성 : 쿼리 정보, HTTP 버전 정보, Host정보가 들어간다.  

 

 

 


 

HTTP 메시지 전송

 

1. 웹 브라우저가 HTTP 메시지를 생성한다.

 

2. SOCKET 라이브러리를 통해 TCP/IP 계층에 전달한다

  • 이전 단계에서 찾은 IP, PORT 정보로 3 way handshake 방식을 통해 서버와 연결한다. 
  • 연결이 성공되면 TCP/IP 계층으로 데이터를 전달한다. 

 

3. HTTP 메세지가 포함된 TCP/IP 패킷을 생성한다.

 

4. 서버는 패킷이 도착하면 패킷의 내부 HTTP메서드를 해석해서 정보에 맞는 동작을 한다. 

 

5. 서버에서 HTTP 응답 메시지를 생성한다. 이 위에 TCP/IP 패킷을 씌워 클라이언트에 전달한다. 

Content-Type / Content-Length 등의 정보가 담겨있다. 

 

 

6. 클라이언트에서는 받은 응답패킷의 응답 메시지의 HTML 데이터를 따서 웹브라우저가 HTML을 렌더링 해주게 된다. 

 

 

 

 


 

Reference 

강의 | [인프런] 모든 개발자를 위한 HTTP 웹 기본 지식 - 김영한 

 

반응형