728x90
반응형

📕오늘의 공부 주제



네트워크 프로토콜 — IP, TCP, UDP

🤔Why?



게임, 웹 서비스, IoT 등 네트워크를 사용하는 모든 소프트웨어는 **데이터를 어떻게 주고받을지**에 대한 규칙이 필요합니다. 이 규칙이 바로 네트워크 프로토콜이며, 특히 **IP, TCP, UDP**는 인터넷 통신의 근간이 되는 핵심 프로토콜입니다. 이를 이해하면 안정적이고 효율적인 네트워크 구조를 설계할 수 있습니다.

📖오늘의 공부 내용



1. IP (Internet Protocol)

  • 역할: 데이터를 패킷(Packet) 단위로 나누어 출발지 → 목적지까지 전달.
  • 특징
    • 비연결성(Connectionless): 연결 설정 없이 데이터 전송.
    • 비신뢰성(Unreliable): 손실, 순서 변경 가능.
    • 주소 지정: IPv4, IPv6로 각 장치에 고유 주소 부여.
  • 한계
    • 데이터의 순서 보장 X
    • 손실 시 재전송 없음
    • 신뢰성 확보를 위한 별도의 상위 계층 필요 → TCP가 이를 보완.

2. TCP (Transmission Control Protocol)

  • 역할: IP 위에서 동작하며, 신뢰성 있는 데이터 전송 보장.
  • 특징
    • 연결형(Connection-oriented): 3-way handshake로 연결 수립.
    • 데이터 순서 보장.
    • 손실 시 재전송.
    • 흐름 제어와 혼잡 제어 지원.
  • 장점: 안정적인 데이터 통신, 순서 보장.
  • 단점: 속도가 느릴 수 있음(오버헤드 발생).
  • 활용 예: 웹(HTTP/HTTPS), 이메일(SMTP), 파일 전송(FTP).

3. UDP (User Datagram Protocol)

  • 역할: IP 위에서 동작하며, 간단하고 빠른 데이터 전송 제공.
  • 특징
    • 비연결형(Connectionless).
    • 순서 보장 X, 재전송 없음.
    • 오버헤드가 적어 전송 속도 빠름.
  • 장점: 실시간 전송에 적합.
  • 단점: 신뢰성 낮음.
  • 활용 예: 실시간 게임, 스트리밍, 화상 통화.

4. TCP vs UDP 비교

구분 TCP UDP
연결 방식 연결형 비연결형
신뢰성 높음 낮음
전송 속도 느림 빠름
순서 보장 O X
활용 웹, 파일 전송 게임, 스트리밍

5. 간단한 네트워크 흐름 예시

  1. IP: "이 데이터를 A 컴퓨터에서 B 컴퓨터로 보내!"
  2. TCP: "데이터 잘 받았는지 확인하고, 순서도 맞게 정리해!"
  3. UDP: "그냥 빨리 보내! 혹시 몇 개 빠져도 신경 안 써!"

6. 결론

  • IP: 주소와 경로 지정(배달 주소)
  • TCP: 안정적 배송(등기 우편)
  • UDP: 빠른 배송(일반 우편)
  • 상황과 서비스 특성에 맞춰 적절히 선택하는 것이 중요.
728x90
반응형

'프로그래밍 공부 > TIL' 카테고리의 다른 글

20250805 - TIL  (0) 2025.08.05
2025-08-04 TIL  (0) 2025.08.04
2025-07-31 TIL  (0) 2025.07.31
2025-07-30 TIL  (1) 2025.07.30
2025-07-29 TIL  (0) 2025.07.29