본문 바로가기
  • 살짝 구운 김 유나
CS

[Network] TCP와 UDP의 차이점

by yunae 2023. 6. 6.

전송 계층은 송신자와 수신자 사이의 데이터 전달을 담당하는 계층이다.

그리고 그 데이터를 보내기 위해 사용하는 프로토콜에는 TCP와 UDP가 있다.

 

 

프로토콜이란?

더보기

컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계를 말한다.

** 즉, 통신 규약 및 약속!!

 

기본요소)

1. 구문 : 전송하고자 하는 데이터의 혁식, 부호화, 신호 레벨 등을 규정

2. 의미 : 두 기기간의 효율적이고 정확한 정보 전송을 위한 사항과 오류 관리를 위한 제어 정보 규정

3. 시간 : 두 기기 간의 통신 속도, 메시시 순서 제어 등을 규정

 

 

TCP (Transmission Control Protocol)

: 신뢰성 있는 데이터 통신을 가능하게 해주는 프로토콜

특징 설명
연결형 서비스 클라이언트가 연결 요청을 하고 서버가 이를 수락하면 통신 선로가 고정된다.
모든 데이터는 통신 선로를 통해서 순차적으로 전달 된다.

=> 연결형 === 발신지와 수신지를 연결하여 논리적 경로를 배정한다.
신뢰성 TCP는 패킷을 성공적으로 전송하면 ACK라는 신호를 보낸다.
ACK 신호가 제 시간에 도착하지 않는 경우에는 재전송을 시도한다.

=> 송신할 때 마다 확인 응답을 주고 받으므로 신뢰성 up! 
전송 순서 보장 모든 패킷이 수신지에 제대로 도착했는지 확인하고 수신한 데이터의 순서를 송신한 순서대로 재설정한다.

=> 패킷을 재조립함으로써 전체 데이터가 올바르게 전송되도록 한다.
흐름 제어 데이터의 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지한다.
혼잡 제어 네트워크 내의 패킷 수가 과도하게 증가하지 않도록 한다.
속도가 느림 3 way handshake 방식은 서로의 통신을 위한 port를 확인하고 연결하기 위해 3번의 응답/요청을 주고받는다.

=> 이 과정에서 많은 시간이 소요된다.

=> 연속성보다 신뢰성 있는 전송이 중요할 때 사용하는 프로토콜

ex) 파일 전송

 

 

UDP (User Datagram Protocol)

: 비연결형 프로토콜

특징 설명
비연결형 서비스 데이터를 주고 받을 때 연결 절차를 거치지 않고 발신자가 일방적으로 데이터를 발신한다.

=> 연결 없이 통신이 가능하며 데이터그램 방식을 제공한다.
비신뢰성 중간에 패킷을 잃어버리더라도 재전송을 하지 않는다.

=> 데이터의 수신 여부를 확인하지 않는다.
전송 순서 보장 X UDP는 발신자가 데이터 패킷을 순차적으로 보내더라도 이 패킷들은 서로 다른 통신 선로를 통해 전달될 수 있다.

=> 먼저 보낸 패킷이 느린 선로로 전송될 경우 순서가 바뀌 거나 손실될 수 있다.
속도가 빠름 연결 과정이 없기 때문에 비교적 빠른 전송이 가능하다.

=> 신뢰성보다는 연속성이 중요한 실시간 서비스에 자주 사용되는 프로토콜

 

 

[표로 한눈에 보기]

  TCP UDP
연결 방식 연결형, 신뢰성 비연결형, 비신뢰성
패킷 교환 방식 가상 회선 방식 데이터그램 방식
전송 순서 전송 순서 보장 전송 순서 바뀔 수 있음
수신 여부 확인 수신 여부 확인 수신 여부를 확인하지 않음
통신 방식 일대일 일대일 or 일대다 or 다대다
신뢰성 높음 낮음
속도 느림 빠름

 

 

 

 

 

댓글