Network

[네트워크] TCP/IP 5계층

아윤_ 2023. 1. 16. 12:51

✏️ TCP/IP (Transmission Control Protocol/Internet Protocol)

 

TCP/IP는 현재의 인터넷에서 사용하는 프로토콜 그룹(여러 계층들에서 조직된 프로토콜 세트)이다.

 

즉, 상호 작용하는 모듈들로 이루어진 계층적인 프로토콜을 말한다.

 

계층적이라는 말은 각 상위 계층 프로토콜이 한 개 이상의 하위 계층 프로토콜로부터 제공되는 서비스들의 지원을 받는다는 말을 의미한다.

 

 

 

✏️ TCP/IP 5계층 모델

 

원래 TCP/IP 프로토콜 그룹은 4개의 소프트웨어 계층으로 정의되었으나, 현재 TCP/IP는 5계층 모델로 간주된다.

 

아래의 그림은 TCP/IP 5계층 모델의 모습이다.

 

 

 

 

TCP/IP의 각 계층들

1. Physical (물리 계층)

 

물리 계층은 프레임의 각 비트를 다음 링크로 전달한다.

 

물리 계층에서 장치들은 전송 매체(케이블 또는 공기)에 의해 연결된다.

 

여기서 전송 매체는 비트(bit)들을 전송하는 것이 아닌, 전기 또는 광신호를 전송한다는 점에 유의해야 한다.

전송 단위 : 비트(bit)

 

 

2. Data Link(데이터링크 계층)

 

데이터링크 계층은 데이터그램을 받아 유/무선 링크를 통해 프레임을 전달한다.

 

또한, 데이터그램을 받아 프레임으로 캡슐화한다.

 

각 링크 계층 프로토콜은 오류 탐지와 교정 등, 다양한 서비스를 제공한다.

전송 단위 : 프레임(frame)

 

 

3. Network(네트워크 계층)

 

네트워크 계층은 호스트 대 호스트(host to host) 통신을 사용한다. 즉, 발신지 컴퓨터와 목적지 컴퓨터 사이의 연결을 생성하기 위한 책임을 지닌다.

 

또한, 가능한 경로들을 통해 패킷을 라우팅 하기 위한 책임을 지닌다.

 

데이터 그램으로 불리는 패킷의 형식을 정의하는 인터넷 프로토콜인 IP(Internet Protocol)와 같은 주요 프로토콜을 포함한다.

  • IP는 흐름 제어, 혼잡 제어, 오류 제어 등의 서비스를 제공하지 않는 비연결형 프로토콜이다.
  • IP의 운반과 라우팅 작업을 도와주는 보조 프로토콜은 다음과 같다.
    • ICMP(Internet Control Message Protocol) : IP가 패킷을 라우팅 할 때 생길 수 있는 문제들을 보고한다.
    • IGMP(Internet Group Management Protocol) : IP가 멀티캐스팅을 수행할 수 있도록 도와준다.
    • DHCP(Dynamic Host Configuration Protocol) : IP가 네트워크 계층 주소를 획득할 수 있게 해 준다.
    • ARP(Address Resolution Protocol) : 네트워크 계층 주소가 주어졌을 때, IP가 호스트나 라우터의 링크 계층 주소를 찾는 것을 돕는다.
전송 단위 : 패킷(packet)

 

 

4. Transport(전송 계층)

 

 전송 계층은 종단 대 종단(end to end) 통신을 사용한다. 종단이란, 사용자의 네트워크 응용 프로그램을 의미한다.

 

전송 계층은 응용 계층으로부터 메시지를 받아 전송 계층 패킷(세그먼트)으로 캡슐화하여 목적지 호스트의 전송 계층으로 전달하는 책임을 지닌다.

 

즉, 전송 계층은 응용 계층에 서비스를 제공하기 위한 책임을 지닌다.

 

전송 계층에서는 다음과 같은 프로토콜을 포함한다.

  • TCP(Transmission Control Protocol) : 연결형 프로토콜 => 흐름제어, 오류제어, 혼잡제어
  • UDP(User Datagram Protocol) : 비연결형 프로토콜 => 제어 서비스 제공 X
  • SCTP(Stream Control Transport Protocol)
전송 단위 : 세그먼트(Seqment)

 

 

5. Application(응용 계층)

 

응용 계층에서는 응용 계층 사이의 메시지를 교환한다.

 

전송 계층과 마찬가지로 종단 대 종단(end to end) 통신을 사용한다.

 

프로세스(이 계층에서 동작하는 두 개의 프로그램) 간의 통신을 제공한다.

 

응용 계층에서는 다음과 같은 프로토콜을 포함한다.

  • HTTP(Hyper Text Transfer Protocol) : WWW(World Wide Web)에 접속하기 위한 수단
  • SMTP(Simple Mail Transfer Protocol) : 전자우편 서비스에 주로 사용되는 프로토콜
  • FTP(File Transfer Protocol) : 파일 전송 프로토콜
  • TELNET(Terminal Network), SSH(Secure Shell) : 사이트에 원격으로 접속
  • SNMP(Simple Network Management Protocol) : 전역 또는 지역 레벨의 인터넷 관리
  • DNS(Domain Name System) : 컴퓨터의 네트워크 계층 주소 확인
전송 단위 : 메시지(Message)