이번 글에서는 브라우저에 www.naver.com
을 치면 일어나는 일에 대해서 정리해보겠습니다. 실제 면접에서도 자주 물어보는 질문인데요. 이 질문 하나로 꼬리 질문도 많이 할 수 있고, 대답하는 사람이 얼마나 알고 있는지 파악하기 좋다고 생각합니다.
저 또한 이 부분을 깊게 알지 못하기 때문에 공부할겸 정리해보겠습니다.
- 사용자는 브라우저에
www.naver.com
을 입력합니다. - 브라우저는 컴퓨터 OS에 입력한 Domain 주소가 어떤 IP 인지
DNS
에 요청을 보냅니다. Root DNS
부터.com
을 담당하는DNS Server
를 탐색해서 해당Domain
이 어떤 IP를 가지고 있는지 알아냅니다.- 브라우저는
URL
을 파싱하여IP 주소
와Port
정보를 알아냅니다. - 브라우저는 파싱한 URL 기반으로 HTTP 메세지를 만듭니다.
IP 주소
,Port
를 기반으로 네이버 서버와TCP Layer
에서3-way-HandShake
과정을 거칩니다.TCP Layer
에서HTTP 메세지
를응답 받는 곳
등등 정보를 담아서Packet
으로 감싸서 요청을 보냅니다.- 네이버 서버에서 HTTP 메세지를 해석해서 어떤 요청인지 확인합니다.
- 네이버 서버에서 요청에 맞는 HTTP 응답 메세지를 생성합니다.
- 브라우저는 네이버에서 받은 HTTP 응답 메세지를 확인하고, 응답 바디에 있는
html
을 화면에 렌더링 합니다. - 브라우저는
html 렌더링
과정을 거쳐서 화면에www.naver.com
을 표시하게 됩니다.