반응형
단계 | 설명 | OSI 계층 |
1. URL 입력 및 DNS 조회 | 사용자가 웹사이트 주소를 입력하면 브라우저가 DNS 서버에 도메인 이름을 IP 주소로 변환 요청을 보냄 | 응용 계층 (7계층) |
2. TCP 연결 (3-Way Handshake) |
브라우저가 웹 서버와 연결을 맺기 위해 TCP 핸드셰이크 과정을 진행 | 전송 계층 (4계층) |
3. HTTP/HTTPS 요청 전송 | 웹 서버에 GET 요청을 보내고 필요한 데이터를 요청 | 응용 계층 (7계층) |
4. 서버 응답 및 데이터 전송 | 웹 서버가 HTML, CSS, JS 등의 데이터를 패킷으로 분할하여 전송 | 응용 계층 (7계층) → 전송 계층 (4계층) → 네트워크 계층 (3계층) → 데이터 링크 계층 (2계층) |
5. 브라우저의 렌더링 | 받은 HTML, CSS, JS 파일을 해석하고 웹 페이지를 화면에 표시 | 응용 계층 (7계층) |
각 과정별 OSI 계층 상세 분석
1. URL 입력 및 DNS 조회 (7계층 - 응용 계층)
- 사용자가 브라우저에서 https://example.com을 입력하면, 브라우저는 DNS 서버에 도메인명을 IP 주소로 변환 요청을 보냄.
- DNS는 응용 계층(7계층)에서 동작하는 프로토콜이며, UDP(전송 계층, 4계층) 를 사용하여 빠르게 IP 주소를 받아옴.
2. TCP 연결 (4계층 - 전송 계층)
- 브라우저가 웹 서버와 통신하기 위해 TCP 3-Way Handshake를 수행.
- 클라이언트(브라우저)가 SYN 패킷을 보냄.
- 서버가 SYN-ACK 패킷을 응답.
- 클라이언트가 ACK 패킷을 보내면 연결 완료.
- 이 과정은 전송 계층 (4계층) 에 해당하며, TCP를 사용하여 신뢰성 있는 연결을 보장.
3. HTTP/HTTPS 요청 전송 (7계층 - 응용 계층)
- 브라우저는 웹 서버에 HTTP GET 요청을 보냄.
- HTTPS를 사용할 경우, TLS/SSL 핸드셰이크 과정이 추가됨 (암호화).
- 이 단계는 응용 계층 (7계층) 에 해당함.
4. 서버 응답 및 데이터 전송 (7계층 → 4계층 → 3계층 → 2계층)
- 웹 서버가 HTML, CSS, JS 등의 데이터를 패킷으로 분할하여 클라이언트(브라우저)로 전송.
- 이 과정은 아래처럼 여러 계층에서 이루어짐:
- 응용 계층 (7계층) → HTTP 응답을 생성.
- 전송 계층 (4계층) → TCP를 통해 데이터를 패킷으로 분할.
- 네트워크 계층 (3계층) → 패킷에 IP 주소를 붙여 인터넷을 통해 전송.
- 데이터 링크 계층 (2계층) → MAC 주소를 통해 실제 물리적인 네트워크 경로를 따라 데이터 전송.
5. 브라우저 렌더링 (7계층 - 응용 계층)
- 받은 HTML, CSS, JS 파일을 해석하여 웹 페이지를 렌더링.
- 사용자의 화면에 표시되도록 처리하는 과정은 응용 계층 (7계층) 에서 수행됨.
결론
🔹 DNS 조회 → 응용 계층 (7계층)
🔹 TCP 연결 → 전송 계층 (4계층)
🔹 HTTP 요청 & 응답 → 응용 계층 (7계층)
🔹 데이터 전송 → 전송 계층(4계층), 네트워크 계층(3계층), 데이터 링크 계층(2계층)
🔹 브라우저 렌더링 → 응용 계층 (7계층)
반응형
'Programming > Network' 카테고리의 다른 글
회선 교환 방식 vs 패킷 교환 방식: 네트워크 전송 방식 비교 및 차이점 (0) | 2025.04.07 |
---|---|
웹사이트에 처음 접근할 때 발생하는 과정 (1) | 2025.04.03 |
Keep Alive: 네트워크 연결을 유지하는 핵심 기술 (1) | 2025.04.02 |