Skip to content
난이도 면접 빈출문제은행 4

네트워크의 큰 그림 3 ​

네트워크의 큰 그림 2에서 본 캡슐화(encapsulation)와 세 가지 주소가 실제 웹 요청 하나에서 어떻게 쓰이는지 따라간다. 브라우저는 이름을 IP(Internet Protocol, 인터넷 프로토콜) 주소로 바꾸고, TCP(Transmission Control Protocol, 전송 제어 프로토콜)로 연결을 맺고, 내용을 암호화해 요청을 보낸 뒤 응답을 받는다. 단계마다 어느 계층의 일인지 붙여 보면 앞에서 본 계층 모델이 한 흐름으로 이어진다.

한 번의 웹 요청이 지나는 길 ​

브라우저 주소창에 https://www.example.com을 입력하면 지금까지 본 계층들이 차례로 일한다. 면접에서 가장 자주 나오는 네트워크 질문이 바로 이 흐름이다.

다이어그램 로딩…
  1. DNS(Domain Name System, 도메인 이름 시스템) 조회: 한 번 찾은 답을 저장해 둔 캐시(cache)를 먼저 보고, 없으면 대신 찾아 주는 DNS 서버인 리졸버(resolver)가 이름을 IP 주소로 바꿔 준다(DNS).
  2. TCP 연결: 그 IP 주소에서 HTTPS(HTTP Secure, 보안 HTTP)가 기본으로 쓰는 443번 포트(port)로 메시지 세 번을 주고받는 3-way 핸드셰이크(handshake)를 해 연결을 맺는다(TCP와 UDP).
  3. 암호화 연결: TLS(Transport Layer Security, 전송 계층 보안)로 서버 인증서(certificate)를 검증한다. 이후 데이터를 빠르게 암호화하려면 양쪽이 같은 키를 가져야 하므로, 암호화와 복호화에 같은 키를 쓰는 대칭 키를 이번 연결용으로 합의한다(HTTPS와 TLS 2).
  4. HTTP 요청·응답: 암호화된 연결로 요청을 보내고 HTML(HyperText Markup Language, 웹 페이지를 기술하는 언어) 응답을 받는다(HTTP의 기초).
  5. 이 모든 메시지는 아래 계층에서 캡슐화돼 IP 패킷(packet)으로 라우터(router)들을 건너고(IP와 라우팅 2), 각 구간에서는 ARP(Address Resolution Protocol, 주소 결정 프로토콜)로 찾은 MAC 주소(Media Access Control address, 매체 접근 제어 주소)로 전달된다(물리 계층과 데이터 링크 계층 2).
  6. 서버 앞에 CDN(Content Delivery Network, 콘텐츠 전송 네트워크)이나 요청을 여러 서버에 나눠 주는 로드 밸런서(load balancer)가 있으면 실제로 응답하는 것은 그 장비일 수 있다(프록시와 로드 밸런싱, CDN은 프록시와 로드 밸런싱 2).

HTTP/3를 쓰면 2·3단계가 UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜) 위에서 동작하는 QUIC(UDP 기반 전송 프로토콜) 연결 수립 한 번으로 합쳐진다(HTTP의 응용 2). QUIC은 연결을 맺으면서 암호화 합의까지 함께 하므로, 첫 요청을 보내기 전까지 오가는 왕복 횟수가 줄어든다.

면접 포인트 ​

  • "주소창에 URL을 입력하면?" → DNS 조회 → TCP 연결 → TLS 핸드셰이크 → HTTP 요청·응답 → 렌더링. 각 단계가 어느 계층인지 붙여 말한다.
  • "HTTP/3에서는 무엇이 달라지나요?" → TCP 연결과 TLS 핸드셰이크가 UDP 위 QUIC 연결 수립 한 번으로 합쳐져 첫 요청 전 왕복이 준다.

관련 문서