컴퓨터 사이언스/네트워크

[TCP와 UDP] 데이터 전송의 두 축

Dachaes 2025. 4. 13. 18:04
728x90
반응형
728x90

TCP(Transmission Control Protocol) 와 UDP(User Datagram Protocol) 

웹 브라우저로 웹사이트를 열든, 화상 회의를 하든, 온라인 게임을 하든 인터넷에서 데이터가 전송되는 방식에는 반드시 전송 계층 프로토콜이 필요합니다. 그 중심에 있는 두 가지 방식이 바로 TCPUDP입니다.

이 글에서는 TCP와 UDP의 구조와 차이점, 각각의 장단점, 그리고 언제 어떤 프로토콜을 선택해야 하는지를 자세히 설명합니다.

 


1.  전송 계층이란?

OSI 7계층 모델의 4번째 계층인 전송 계층(Transport Layer)컴퓨터 간 데이터 전송의 신뢰성과 순서를 보장하는 역할을 합니다.

여기서 대표적으로 사용하는 두 가지 프로토콜은 아래와 같습니다.

  • TCP (Transmission Control Protocol)
  • UDP (User Datagram Protocol)

 


2.  TCP란? (신뢰성 있는 연결 중심 통신)

TCP연결지향(connected-oriented) 방식으로 데이터를 정확하게, 순서대로 전달하는 것을 목표로 합니다.

TCP의 특징

  • 3-way 핸드셰이크를 통한 연결 설정
  • 데이터 순서 보장
  • 재전송, 오류 검출 가능
  • 흐름 제어, 혼잡 제어 기능 내장
  • 상대적으로 속도는 느리지만 안정적

TCP 사용 예시

  • 웹 브라우징 (HTTP/HTTPS)
  • 이메일 (SMTP, IMAP, POP3)
  • 파일 전송 (FTP)
  • 데이터베이스 연결

3-Way Handshake : TCP 연결 과정

TCP는 데이터를 보내기 전에 다음의 3단계 연결 절차를 수행합니다.

  1. SYN: 클라이언트 → 서버 (연결 요청)
  2. SYN-ACK: 서버 → 클라이언트 (요청 수락)
  3. ACK: 클라이언트 → 서버 (응답 확인)

이 과정을 통해 연결을 확립하고 안정적인 통신 채널을 형성합니다.

 


3.  UDP란? (빠르지만 비신뢰성 있는 통신)

UDP비연결지향(connectionless) 방식으로, 데이터를 그냥 던지고 끝나는 형태입니다. 속도가 빠르지만 순서 보장이나 재전송하지 않습니다.

UDP의 특징

  • 연결 없이 데이터 전송 (핸드셰이크 없음)
  • 순서 보장 없음
  • 손실된 데이터 재전송 안함
  • 오버헤드가 작고 속도가 빠름
  • 실시간성이 중요할 때 사용

UDP 사용 예시

  • 실시간 스트리밍 (YouTube, Zoom)
  • 온라인 게임
  • DNS 질의
  • IoT 기기 통신

 


4.  TCP vs UDP 비교 표

항목 TCP UDP
연결 방식 연결지향 비연결지향
신뢰성 높음 (재전송, 오류 검사) 낮음 (손실 허용)
순서 보장 O X
속도 느림 빠름
오버헤드 작음
용도 웹, 이메일, 파일 전송 등 스트리밍, 게임, VoIP 등

예시로 보는 차이점

상황 TCP 사용 UDP 사용 설명
은행 앱 로그인 O X 보안과 정확성 중요
유튜브 영상 시청 X O 몇 프레임 손실은 무방
실시간 게임 X O 지연 발생하면 불리
파일 업로드 O X 정확성 필수

TCP와 UDP, 언제 어떤 걸 써야 할까?

  • TCP가 적합한 경우
    • 데이터 손실이 치명적일 때
    • 순서와 신뢰성이 중요한 서비스
    • 사용자 인증, 결제, 거래 등 보안이 중요한 상황
  • UDP가 적합한 경우
    • 빠른 전송이 더 중요할 때
    • 실시간이 중요한 스트리밍/게임
    • 네트워크 상태가 나빠도 빠르게 동작해야 할 때

 


5.  마무리

함께 보면 좋은 자료

외부 사이트 :

블로그 글 :

 

[OSI 7계층과 TCP/IP 4계층] 네트워크의 설계도

OSI 7계층과 TCP/IP 4계층 네트워크 통신이 어떻게 이루어지는지를 체계적으로 설명하기 위해 등장한 개념이 바로 OSI 7계층 모델과 TCP/IP 4계층 모델입니다. 이 글에서는 각 계층의 역할과 주요 프

dachaes-devlogs.tistory.com

 

[프로토콜] 컴퓨터 세상에서의 약속과 규칙

프로토콜(Protocol) 인터넷은 어떻게 서로 다른 컴퓨터끼리 정보를 주고받을 수 있을까요? 브라우저에서 주소를 입력하면 어떻게 웹사이트가 열릴까요? 그 모든 과정의 중심에는 바로 **프로토콜(

dachaes-devlogs.tistory.com

 

[HTTP와 HTTPS] 보안이 필요한 이유와 프로토콜의 차이

HTTP와 HTTPS 브라우저 주소창을 보면 어떤 웹사이트는 http:// 로 시작하고, 어떤 곳은 https:// 로 시작합니다. 둘 다 웹 페이지를 여는 데 사용되지만, 실제로는 웹의 보안성과 신뢰성에 매우 큰 차

dachaes-devlogs.tistory.com

 


반응형
728x90
반응형