TCP/IP 통신과 UDP

newVelog·2023년 12월 18일
0

CS

목록 보기
6/31

TCP/IP

TCP/IP (Transfer Control Protocol / Internet Protocol)

인터넷 통신의 대부분은 패킷 통신을 기본으로 한다.
패킷 통신 규약 중 하나인 TCP/IP는 TCP(Transmission Control Protocol) 전송 제어 프로토콜과 IP 인터넷 프로토콜(Internet Protocol)을 아울러 지칭하는 용어이다.

네트워크 통신을 할때 메세지를 그대로 보내는 것이 아닌 작은 단위로 쪼개서 전송을 하는데, TCP는 이러한 패킷들을 재조립하고 손상되거나 손실된 패킷이 있다면 재요청 한다.

패킷: 네트워크에서 사용하는 작게 분할된 데이터 조각으로 네트워크에서 전송되는 데이터의 기본 단위

그래서 IP는 이러한 데이터 조각들을 정확한 목적지로 보내는 역할을 한다.
조각들의 순서가 뒤바뀌거나 일부가 누락되어도 크게 상관하지 않고 보내는 데 집중한다.

TCP는 IP보다 느리지만 꼼꼼한 방식을 사용한다.
도착한 조각을 점검해서 줄을 세우고 망가졌거나 빠진 부분을 다시 요청한다.

TCP, IP 두 방식을 조합해서 인터넷 데이터 통신을 하는 것을 TCP/IP 라고 한다.

TCP (Transmission Control Protocol)

TCP는 연결 지향적 프로토콜이다.

※ 연결 지향적 프로토콜은  클라이언트와 서버가 연결된 상태에서 데이터를 주고받는 프로토콜을 의미한다.

TCP의 특징

  1. 연결형 서비스로 가상 회선 방식을 제공
    3-way handshaking 과정을 통해 연결을 설정하고,
    4-way handshaking 과정을 통해 연결을 해제한다.

  2. 흐름 제어(Flow control)
    데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지

  3. 혼잡 제어(Congestion control)
    네트워크 내의 패킷 수가 과도하게 증가하지 않도록 방지

  4. 높은 신뢰성을 보장
    신뢰성이 높은 전송을 하기 때문에 UDP보다 속도가 느림

  5. 전이중(Full-Duplex), 점대점(Point to Point) 방식
    전이중(Full-Duplex) : 전송이 양방향으로 동시에 일어날 수 있다.
    점대점(Point to Point) : 각 연결이 정확히 2개의 종단점을 가지고 있다.

UDP(User Datagram Protocol)

UDP는 비연결형 프로토콜이다.

※ 연결을 위해 할당되는 논리적인 경로가 없고, 각각의 패킷은 다른 경로로 전송되며, 독립적인 관계를 지닌다.

UDP의 특징

  1. 비연결형 서비스로 데이터그램 방식을 제공한다.
    데이터의 전송 순서가 바뀔 수 있다.

  2. 데이터 수신 여부를 확인하지 않는다.
    TCP의 3-way handshaking과 같은 과정 X

  3. 신뢰성이 낮다.
    흐름 제어(flow control)가 없어서 제대로 전송되었는지, 오류가 없는지 확인할 수 없다.

  4. TCP보다 속도가 빠르다. 

  5. 1:1 & 1:N & N:N 통신이 가능하다.

TCP와 UDP 차이

프로토콜 종류TCPUDP
연결 방식연결형 서비스비연결형 서비스
패킷 교환 방식가상 회선 방식데이터그램 방식
전송 순서전송 순서 보장전송 순서가 바뀔 수 있음
수신 여부 확인수신 여부를 확인함수신 여부를 확인하지 않음
통신 방식1:1 통신1:1 OR 1:N OR N:N 통신
신뢰성높다낮다
속도느리다빠르다

출처: https://dev-coco.tistory.com/144 [슬기로운 개발생활:티스토리]

0개의 댓글