CS 지식/네트워크

TCP와 UDP

naksnaks 2023. 2. 27.
반응형

TCP( Transmission Control Protocol )

인터넷 상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜

TCP의 특징

  • 연결 지향 방식
  • 높은 신뢰성 보장 (ex) 파일 전송)
  • 3-way handshaking 과정을 통한 연결 설정, 4-way handshaking 과정을 통한 해제
  • 흐름 제어(보내는 측과 받는 측의 데이터 처리 속도 차이를 조절해줌) 및 혼잡 제어(네트워크 내의 패킷 수가 넘치게 증가하지 않도록 방지해)
  • UDP보다 속도가 느립니다.
  • 전이중(Full-Duplex), 점대점(Point to Point) 방식
  • 서버와 클라이언트는 1대1로 연결됩니다.
  • Streaming 서비스에 불리합니다. ( 손실된 경우 재전송 요청을 합니다. )

UDP( User Datagram Protocol )

데이터를 데이터그램 단위로 처리하는 프로토콜

UDP의 특징

  • 비연결형 서비스 ( 데이터그램 방식 제공 )
  • 정보를 주고 받을 때 정보를 보내거나 받는다는 신호 절차를 거치지 않습니다.
  • UDP헤더의 CheckSum 필드를 통해 최소한의 오류만 검출합니다.
  • 신뢰성이 낮습니다.
  • TCP보다 속도가 빠릅니다.
  • IP를 기반으로 데이터를 전송합니다.
  • 1:1, 1:N, N:M 통신

TCP 와 UDP 비교

TCP 와 UDP 비교
참조 : https://cocoon1787.tistory.com/757

  • TCP는 양쪽에서 1대1로 연결이 되어있고, 질문과 답변형식으로 이루어 집니다.
  • UDP는 한쪽에서만 일방적으로 데이터를 보냅니다.

3-Way Handshake

TCP 통신을 연결할 때 사용됩니다.
3-way handshake
출처 : https://velog.io/@averycode/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-TCPUDP%EC%99%80-3-Way-Handshake4-Way-Handshake

  1. Client 측에서 SYN 메시지를 통해 Server측과 연동하려고 요청을 보냅니다.
  2. Server 측에서 SYN 메시지를 받았으면, 잘 받았다는 ACK 메시지와 함께 본인도 Client와 연동하려고 SYN 요청을 보냅니다.
  3. Server 측에서 보낸 SYN 메시지를 Client 측에서 확인 후 잘 받았다는 ACK 메시지를 Server 측에 보내며 서로 연결이 된 것을 알 수 있습니다.

4-Way Handshake

4-Way Handshake
출처 : https://velog.io/@averycode/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-TCPUDP%EC%99%80-3-Way-Handshake4-Way-Handshake

  1. Client 측에서 Server 쪽으로 연결을 종료한다는 FIN 플래그를 보냅니다.
  2. Server 측에서 Client 쪽으로 확인했다는 ACK 플래그를 보냅니다.
  3. Server 측에서 Client 쪽으로 본인도 연결을 종료한다는 FIN 플래그를 보냅니다.
  4. Client 측에서 Server 쪽으로 확인했다는 ACK 플래그를 보내며 연결이 종료됩니다.

참조
망나니개발자님 - TCP와 UDP의 특징과 차이
코딩공부일지님 - TCP와 UDP의 특징과 차이점
averycode님 - TCP/UDP와 3-Way Handshake & 4-Way Handshake

반응형

'CS 지식 > 네트워크' 카테고리의 다른 글

브라우저에 URL을 입력했을 때의 과정  (0) 2023.03.09
HTTP 버전  (0) 2023.03.06
HTTP 구조  (0) 2023.03.06
HTTP와 HTTPS란?  (0) 2023.03.02
OSI 7계층이란?  (0) 2023.02.27

댓글

💲 추천 글