설명 순서는 다음과 같습니다.

1. 입력한 URL의 IP 주소 찾기
2. 브라우저와 서버와 TCP 연결
3. 브라우저가 서버에 요청을 보냄
4. 서버는 요청을 받고 처리한 후 클라이언트에 응답을 보냄
5. 브라우저는 받은 응답을 렌더링해서 표시함

1. 입력한 URL의 IP 주소 찾기

   - 브라우저에 입력한 URL은 실제 주소의 별명임. 그러므로, 실제 주소인 IP를 알아야함

   - DNS는 별명과 IP주소를 <키, 값> 형태의 맵으로 갖고 있음. 따라서, DNS에 URL의 실제 IP 주소를 요청해서 알 수 있음

   - 바로 DNS에 IP주소를 묻기 전에 브라우저는 먼저 네 개의 캐시를 확인함

      ① 브라우저 캐시를 확인한다. 이전에 방문했던 웹 사이트의 DNS 기록을 일정기간 동안 저장하고 있음

      ② OS 캐시를 확인한다. OS의 시스템 호출로 DNS 기록을 가져옴

      ③ 라우터 캐시를 확인함

      ④ ISP 캐시를 확인함. ISP란 Internet Service Provider인데 이는 DNS 서버를 갖고 있어서 해당 서버에서 DNS 기록 캐시를 확인함

   - 캐시에서 찾을 수 없다면 IP 주소를 찾기 위해 DNS 서버에 요청을 함

   - DNS 서버에서 재귀적 질의를 통해 IP 주소를 획득


2. 브라우저와 서버와 TCP 연결

   - HTTP 프로토콜은 일반적으로 TCP 프로토콜을 사용함

   - TCP연결은 3 way handshake 과정을 통해 연결됨

   - 3 way handshake는 데이터의 신뢰성을 보장하기 위해함


3. 브라우저가 서버에 요청을 보냄


4. 서버는 요청을 받고 처리한 후 클라이언트에 응답을 보냄


5. 브라우저는 받은 응답을 렌더링해서 표시함


브라우저에 URL을 입력하면 발생하는 일에 대해 알아볼 수 있었습니다.

'네트워크' 카테고리의 다른 글

OSI 7계층  (0) 2023.09.12
TCP, UDP  (0) 2023.08.08
쿠키, 세션  (0) 2023.08.03
3 way handshake, 4 way handshake  (0) 2023.08.02
HTTP와 HTTPS의 차이, 대칭키와 비대칭키  (0) 2023.07.28

+ Recent posts