[CS 스터디] 네트워크 10일차 - 주소창에 www.google.com을 치면 발생하는 일

강아람·2023년 1월 30일
0

네트워크

목록 보기
11/11
post-thumbnail

1) 브라우저가 주소창에 www.google.com을 입력합니다.



2) 브라우저가 www.google.com의 IP 주소를 찾기 위해 캐시에서 DNS 기록을 확인합니다.

이때 확인되는 캐시는 총 4가지로, 브라우저 캐시, OS 캐시, 라우터 캐시, ISP 캐시입니다.

DNS Query

만약 요청한 URL이 캐시에 없다면 ISP의 DNS 서버가 DNS 쿼리로 www.google.com을 호스팅하는 서버 IP 주소를 찾습니다. 필요한 IP 주소를 찾을 때까지 도메인 아키텍쳐에 따라 각각의 네임 서버에 재귀적 질의를 수행합니다.

1) DNS 리커서(ISP DNS)가 루트 네임 서버에 연결하고,
루트 네임 서버는 .com 도메인 네임 서버로 리다이렉션 합니다.
2) .com 네임 서버는 google.com 네임 서버로 리다이렉션 합니다.
3) google.com 네임 서버는 DNS 기록에서 www.google.com과 일치하는 IP 주소를 찾아 DNS 리커시로 반환하고, 리커서는 이를 브라우저에 보냅니다.



3) 브라우저가 올바른 IP 주소를 수신하게 되면 IP 주소와 일치하는 서버와 TCP 연결을 시작합니다.

TCP는 TCP/IP 3 way handshake 과정을 통해 연결이 수립됩니다.

3-way Handshake

1) 클라이언트가 서버에게 SYN 패킷을 보내 새 연결을 요청합니다.
2) 서버는 이에 대한 포트가 열려있는지 확인한고 SYN/ACK 패킷으로 응답을 보냅니다.
3) 마지막으로 클라이언트는 서버로부터 SYN/ACK 패킷을 수신하고 ACK 패킷을 전송하여 승인합니다.



4) TCP 연결이 설정되면 브라우저는 웹 서버에 HTTP request message를 통해 www.google.com 데이터를 요청합니다.



5) 서버는 request handler를 통해 요청을 처리하고 HTTP response message를 브라우저에 보냅니다.

HTTP response message는 JSON, HTML과 같은 특정 포맷으로 작성합니다.
그리고 서버는 요청에 따른 상태코드 등을 헤더에 포함시켜 HTTP 응답을 보냅니다.



6) 응답을 받은 브라우저는 HTML 화면을 렌더링 합니다.

0개의 댓글