Programming/Web
[Web] Client - Server의 TCP/IP 통신
goakgoak
2020. 1. 14. 12:05
OSI 참조모델은 컴퓨터와 컴퓨터 사이의 데이터 전송을 기능별로 7가지의 계층으로 분류한 모델이다. 하위 계층들은 하드웨어로, 상위 계층들은 소프트웨어로 구현된다.
TCP/IP 모델은 무엇일까? 우리가 인터넷상에서 범용으로 사용하는 TCP 프로토콜과 IP 프로토콜을 OSI 7계층 형식에 맞추어 더 추상화 시킨 모델이다.
TCP/IP 모델을 통해서 클라이언트와 서버가 통신하는 과정을 살펴보자.
1. 애플리케이션 계층 (Client)
사용자가 웹 브라우저(클라이언트)에 도메인(naver.com)을 입력하면 클라이언트는 DNS 서버를 통해서 IP 주소(127.0.0.1)를 알 수 있다.
클라이언트는 HTTP 메시지를 작성하여 전송 계층으로 전달한다.
2. 전송 계층 (Client)
HTTP 메시지를 패킷으로 분해하여 식별할 수 있도록 일련번호를 부여한다.
패킷을 인터넷 계층으로 전달한다.
3. 인터넷 계층 (Client) > 네트워크 인터페이스 > 인터넷 계층 (Server)
클라이언트는 IP 주소를 통해서 상대가 어디에 있는지 찾아 중계하면서 전송한다.
4. 전송 계층 (Server)
서버는 전송계층에서 패킷을 수신하고 조립한다.
4. 애플리케이션 계층 (Server)
서버는 클라이언트의 요청을 처리하고, HTTP 메시지를 작성하여 클라이언트에 응답 메시지를 보낸다.
[출처]