Tcp ip 프로토콜

Published: by Creative Commons Licence

1. TCP/IP 프로토콜

TCP와 IP의 두 가지 프로토콜을 주축으로 한 프로토콜 집합.

​ - TCP를 반드시 사용하는 것은 아니지만, IP는 통신 상대 지정 시에 IP 주소를 이용하기 때문에 반드시 필요함.

TCP/IP는 '애플리케이션 계층', '트랜스포트 계층', '네트워크 계층, '링크 계층' 총 4개의 계층으로 나누어져 있다.

  • 애플리케이션 계층
    • 유저에게 제공되는 애플리케이션에서 사용하는 통신의 움직임을 결정하고 있다. TCP 에서는 FTP, DNS, HTTP 등의 애플리케이션이 있다.
  • 트랜스 포트 계층
    • 애플리케이션 계층에 네트워크로 접속되어 있는 2대의 컴퓨터 사이의 데이터 흐름 제공
    • 트랜스 포트 계층에서는 서로 다런 성질을 가진 TCP 와 UDP 두 가지 프로토콜이 있다.
  • 네트워크 계층
    • 네트워크 상에서 패킷의 이동을 다룬다.
      • 패킷 : 전송하는 데이터의 최소 단위
    • 어떤 경로를 거쳐 상대의 컴퓨터까지 패킷을 보낼지를 결정한다.
    • 인터넷의 경우, 여러 대의 컴퓨터랑 네트워크 기기를 거쳐 상대방에게 전송되는데, 그 중 어떠한 경로로 전송할지 정한다.
  • 링크 계층
    • 네트워크에 접속하는 하드웨어 적인 면
    • 드라이스 드라이버, 네트워크 인터페이스 카드, 케이블 등 하드웨어적 측면은 모두 링크 계층의 역활이다.

TCP의 통신 흐름

송신하는 측은 애플리케이션 계층부터 계층을 순서대로 거쳐 상대방에게 전송되고, 수신하는 측은 계층 반대방향으로 애플리케이션 계층으로 올라간다.

  • ex
    • 수신측 : HTTP 리퀘스트를 요청하면 트랜스포트 계층 (TCP) 계층에서 애플리케이션 계층에서 받느 메세지를 통신하기 쉽게 조각내어 안내 번호와 포트번호를 붙여 네트워크 계층에 전달한다. 네트워크 계층(IP)에서는 수신지 MAC 주소를 추가하여 링크 계층에 준비하여 네트워크를 통해 송신할 준비가 끝난다.
    • 송신측 : 링크 계층에서 데이터를 받아 들여 순서대로 위의 계층에 전달하여 애플리케이션 계층까지 도달한다. 애플리케이션 계층에 도달하게 되면 클라이언트가 발산했던 HTTP 리퀘스트 내용을 수신할 수 있다.