컴퓨터를 켜고 구글을 열기까지

Jean·2025년 2월 22일

면접에서 컴퓨터를 켜고 웹 사이트에 들어갈때까지의 흐름을 네트워크 관점에서 서술해보라고 하심

점에 듣고 잠깐 벙쪘다 어디서부터 말해야하지...???
머리는 복잡해지고 HTTPS???SSL???막 이런거 떠다니고

어렴풋이 기억나는 DNS! 이전에 이 영상을 봤던 기억이 있어서 말로 꺼내보려고 했지만
두루뭉실하게....기억나는 바람에 잘 모르겠다고 대답했다
잘 모르는건 맞으니까..

아무튼 해당 영상을 복습하고 정리해두기로 함!!


네트워크의 흐름

사용자가 브라우저에서 도메인 이름을 (ex/google.com) 입력

  • 브라우저는 우선 캐시에 해당 도메인의 IP주소가 있는지 우선적으로 검색한다

DNS 서버라는 도메인 이름과 IP주소를 저장하고 있는 서버에서 IP 주소 조회 (8.8.8.8 같은 DNS 사용)

  • 루트 네임서버 → 최상위 도메인(TLD, .com, .net 등) 네임서버로 전달
  • TLD 네임서버 → 실제 google.com을 관리하는 네임서버로 요청 전달
  • 최종 네임서버에서 www.google.com의 IP 주소를 반환

TCP 3-Way Handshake로 서버와 연결

IP 주소를 얻은 후, 브라우저는 구글 웹 서버(173.194.126.240)와 연결을 맺음

TCP는 일종의 연결 과정이다
UDP도 있으나 그건 보통 게임이나 라이브 스트리밍등 속도가 중요한 작업에 사용한다

TCP 3-Way Handshake (연결 과정)

  • 클라이언트 → 서버 (연결 요청)
  • 서버 → 클라이언트 (요청 승인)
  • 클라이언트 → 서버 (승인 확인)
  • 연결 완료 → HTTP 요청을 보낼 준비 완료

클라이언트가 HTTP GET 요청 전송

  • TCP 연결이 완료되면, 클라이언트(브라우저)는 HTTP 요청을 보냄

여기서 종류가 두가지로 나뉜다

  • HTTP → 평문(암호화 X)으로 데이터를 전송
  • HTTPS → SSL/TLS 암호화로 보안 강화

서버가 HTML, CSS, JS 응답 전송

  • 웹 서버가 클라이언트 요청을 처리한 후 응답 반환 (HTML, CSS, JS)

브라우저가 렌더링 (DOM 생성 → CSS 적용 → JS 실행)

  • 브라우저가 받은 HTML을 화면에 표시하기 위해 렌더링 엔진이(HTML과 CSS를 읽음) 동작
  • 화면을 출력한다

요약

  1. 브라우저 입력
  2. DNS 조회
  3. TCP
  4. HTTP 요청
  5. 서버 응답
  6. 브라우저 렌더링
profile
햇내기 개발자 지망생

0개의 댓글