Packet (패킷, 네트워크 패킷)

패킷은 네트워크에서 데이터를 주고받을 때 사용되는 형식화된 데이터 블록이다.

주요 목적은 다음과 같다:

  1. 효율적인 데이터 전송
  2. 네트워크 대역폭의 효율적 사용
  3. 오류 검출 및 복구 용이성
  4. 네트워크 혼잡 방지

패킷을 사용하는 이유는?

  • 패킷이 모두 대상에 도착하는 한 동일한 대상에 대해 서로 다른 네트워크 경로를 사용할 수 있음을 의미한다.
    • 특정 프로토콜에서 패킷은 각 패킷이 다른 경로를 사용하여 도착하더라도 올바른 순서로 최종 목적지에 도착해야 한다.
  • 여러 컴퓨터의 패킷이 기본적으로 임의의 순서로 동일한 선로를 통해 이동할 수 있다.
  • 동일한 네트워킹 장비를 통해 동시에 여러 연결을 수행할 수 있다. 그 결과로 수십억 개의 장치가 인터넷에서 동시에 데이터를 교환할 수 있다.

패킷의 구조

패킷은 일반적으로 세 부분으로 구성된다:

  1. 헤더(Header): 패킷에 대한 제어 정보를 포함
    • 출발지 및 목적지 IP 주소
    • 프로토콜 유형
    • 패킷 번호
    • TTL (Time To Live, 패킷의 수명)
    • 체크섬 (오류 검출용)
    • 기타 라우팅 정보
  2. 페이로드(Payload): 실제 전송되는 데이터
  3. 트레일러(Trailer): 패킷의 끝을 나타내며, 오류 검출 코드 포함

패킷의 크기

일반적인 패킷의 최대 크기는 네트워크의 MTU(Maximum Transmission Unit)에 따라 결정된다.

패킷 전송 과정

  1. 데이터 분할: 큰 데이터를 작은 패킷으로 나눈다.
  2. 헤더 추가: 각 패킷에 헤더 정보를 추가한다.
  3. 전송: 패킷들이 네트워크를 통해 전송된다.
  4. 라우팅: 각 패킷은 최적의 경로를 통해 목적지로 전송된다.
  5. 수신 및 재조립: 목적지에서 패킷을 수신하고 원래의 데이터로 재조립한다.

패킷 전송의 예시

1GB 크기의 파일을 전송하는 경우:

  1. 파일이 수많은 패킷으로 분할됨
  2. 각 패킷은 최대 1500바이트(이더넷 기준)
  3. 약 700,000개의 패킷이 생성됨
  4. 각 패킷이 독립적으로 전송
  5. 목적지에서 재조립

패킷 교환 방식

  1. 가상 회선 방식: 패킷 전송 전에 논리적 경로를 설정하는 연결형 방식
  2. 데이터그램 방식: 각 패킷이 독립적으로 전송되는 비연결형 방식

패킷의 장단점

패킷의 장점:

  1. 효율적인 네트워크 사용
    • 여러 사용자가 동시에 네트워크를 공유할 수 있음
    • 대역폭을 효율적으로 사용
  2. 신뢰성 향상
    • 패킷 손실 시 해당 패킷만 재전송
    • 오류 검출과 수정이 용이
  3. 유연한 라우팅
    • 각 패킷이 최적의 경로로 전송 가능
    • 네트워크 혼잡을 피할 수 있음

단점:

  • 패킷 순서 보장 필요
  • 헤더로 인한 오버헤드 발생
  • 복잡한 프로토콜 구현 필요

용어 정리

용어설명

참고 및 출처