본문 바로가기
🫂이모저모/📍CS

브라우저 주소창에 www.google.com을 입력하면 어떤 일이 일어날까?

by 짱돌보리 2024. 5. 23.
728x90

브라우저 주소창에 www.google.com을 입력하면 어떤 일이 일어날까?

우리가 브라우저 주소창에 www.google.com을 입력하면
단순히 페이지가 열리는 것 같지만, 내부에서는 여러 단계의 과정이 진행된다.

by gemini

1️⃣ DNS 조회

사용자가 브라우저에 www.google.com을 입력하면
브라우저는 해당 도메인의 IP 주소를 알아내기 위해 DNS(Domain Name System) 에 요청을 보낸다.

인터넷에서 실제 통신은 도메인이 아니라 IP 주소로 이루어지기 때문이다.

2️⃣ DNS 서버에 요청

브라우저는 운영체제(OS)에 설정되어 있는 DNS 서버로 요청을 보낸다.

DNS 서버는
www.google.com 이라는 도메인 이름에 대응하는 IP 주소를 찾아서 반환한다.

3️⃣ IP 주소 획득

DNS 서버가 해당 도메인의 IP 주소를 찾으면
브라우저는 IP 주소를 전달받는다.

 

예를 들면

www.google.com → 142.250.xxx.xxx

 

이처럼 도메인이 실제 서버 주소(IP) 로 변환된다.

4️⃣ 서버와 TCP 연결

IP 주소를 얻은 브라우저는 해당 서버와 TCP 연결을 시도한다.

 

이 과정에서 일반적으로 3-way handshake 과정을 통해 클라이언트(브라우저)와 서버 간의 연결이 성립된다.

5️⃣ HTTP 요청 전송

연결이 완료되면 브라우저는 서버에게 HTTP 요청을 보낸다.

// 예시

GET / HTTP/1.1
Host: www.google.com
User-Agent: Chrome

 

이 요청에는 다음과 같은 정보가 포함될 수 있다.

  • 브라우저 정보(User-Agent)
  • 쿠키
  • 요청 헤더
  • 요청 메서드(GET, POST 등)

6️⃣ 서버 응답

웹 서버는 브라우저의 요청을 처리한 후 HTML 문서와 필요한 리소스들을 응답으로 반환한다.

 

예를 들면

  • HTML
  • CSS
  • JavaScript
  • 이미지
  • 폰트

7️⃣ 브라우저 렌더링

브라우저는 전달받은 리소스를 기반으로 페이지를 렌더링한다.

 

렌더링 과정은 다음과 같이 진행된다.

  • HTML 파싱 → DOM 생성
  • CSS 파싱 → CSSOM 생성
  • DOM + CSSOM → Render Tree 생성
  • Layout 계산
  • Paint → 화면 출력

결과적으로 우리가 보는 웹 페이지 화면이 브라우저에 표시된다.

❓ DNS란 무엇일까?

DNS(Domain Name System) 는 도메인 이름과 IP 주소를 서로 변환해주는 시스템이다.

 

인터넷에서는 실제 통신이 IP 주소 기반으로 이루어지기 때문에 사람이 기억하기 쉬운 도메인 이름을 IP 주소로 변환하는 과정이 필요하다.

www.google.com → 142.250.xxx.xxx

 

즉, DNS는 인터넷의 전화번호부 같은 역할을 한다.