핵심 인사이트 (3줄 요약)

  1. 본질: 프리앰블(Preamble)과 SFD는 이더넷 프레임이 본격적으로 시작되기 전, 송신자와 수신자 간의 물리적인 클럭(타이밍)을 맞추고 "지금부터 데이터가 들어간다"는 신호를 알리는 8바이트 길이의 동기화 패턴이다.
  2. 비트 패턴: Preamble(7바이트)은 10101010이 반복되어 수신기의 수신 회로를 예열(클럭 동기화)시키며, 마지막 1바이트인 SFD(Start of Frame Delimiter)는 10101011로 끝을 맺어 "다음 비트부터가 진짜 목적지 MAC 주소다"라는 명확한 기준점을 제공한다.
  3. OSI 계층 소속: 비록 이더넷 프레임 패킷 캡처(와이어샤크 등) 도식에 항상 그려져 있지만, 프리앰블과 SFD는 MAC(2계층) 계층에서 해석되는 의미 있는 데이터가 아니라 물리 계층(1계층) 하드웨어 칩(PHY) 수준에서 처리되고 버려지는 순수한 동기화 오버헤드다.

Ⅰ. 개요 및 필요성 (Context & Necessity)

  • 개념: 이더넷 케이블로 전송되는 모든 프레임의 맨 앞에는 8바이트(64비트) 크기의 워밍업 신호가 붙는다. 앞 7바이트를 프리앰블(Preamble), 마지막 1바이트를 SFD(Start of Frame Delimiter)라고 부른다.

  • 필요성: 컴퓨터의 내부 클럭(시계) 속도는 완벽하게 동일하지 않다. 송신자가 초당 1억 개의 비트(100Mbps)를 쏠 때, 수신자가 정확히 어느 순간에 비트를 읽어들여야 할지 박자가 어긋나면 0을 1로 잘못 읽는 치명적 오류가 발생한다. 프리앰블은 수신자에게 메트로놈처럼 박자를 맞춰주는 "하나, 둘, 셋, 넷!" 하는 카운트다운 신호다.

  • 💡 비유: 오케스트라 지휘자가 연주(데이터 전송)를 시작하기 전에 지휘봉을 허공에 휘저으며 "원, 투, 쓰리, 포! (10101010... 프리앰블)" 하고 박자를 맞춰주다가, 마지막 순간에 지휘봉을 강하게 내리찍으며 **"큐! (10101011 SFD)"**라고 사인을 주는 것과 완벽히 동일합니다.

📢 섹션 요약 비유: 프리앰블은 100m 달리기 시합에서 심판이 "제자리에~(Preamble) 차렷~(Preamble)" 하고 예열을 시키다가, 마지막에 "탕!(SFD)" 하고 총을 쏴서 출발선(MAC 주소)을 알리는 신호탄입니다.


Ⅱ. Preamble과 SFD의 비트 구조와 하드웨어 동작 (Deep Dive)

1. 비트 패턴과 맨체스터 인코딩

이더넷 랜카드(NIC) 내부의 PHY(물리 계층) 칩은 프레임을 내보내기 전에 하드웨어적으로 이 패턴을 삽입한다.

  • Preamble (7 Bytes): 10101010 x 7번 반복 (총 56비트). 1과 0이 계속 교차하면서 전압의 변화(Transition)를 만들어내어, 수신 측의 PLL(Phase-Locked Loop) 회로가 송신 측의 클럭 속도에 정확히 동기화되도록 예열한다.
  • SFD (1 Byte): 10101011 패턴. 프리앰블과 똑같이 1010...으로 가다가 마지막 두 비트가 11로 연속해서 나타난다. 수신기는 이 11이 나타나는 순간 "예열 끝! 다음 비트부터가 진짜 데이터(목적지 MAC 주소) 시작이구나!"라고 판단하여 비트를 MAC 컨트롤러(MAC 칩)로 올려보내기 시작한다.
 ┌─────────────────────────────────────────────────────────────┐
 │                Preamble과 SFD의 비트 타이밍 구조              │
 ├─────────────────────────────────────────────────────────────┤
 │                                                             │
 │   Byte 1    Byte 2         Byte 7     Byte 8 (SFD)          │
 │  10101010  10101010  ...  10101010   10101011               │
 │  └───┬───┘ └───┬───┘      └───┬───┘  └───┬───┘              │
 │      │         │              │          │                  │
 │      └─────────┴──────────────┴──────────┘                  │
 │          Preamble (7 Bytes) : 수신기 클럭 예열               │
 │                                                             │
 │   ...1 0 1 0 1 0 1 1 │ 0 0 1 0 1 0 1 1 ...                  │
 │   ─────────┬──────── ┼ ───────┬───────                      │
 │           SFD        │   목적지 MAC 주소의 첫 번째 Byte       │
 │      (마지막이 11)    │                                     │
 │                      ▼                                     │
 │           여기서부터가 MAC 계층의 진짜 프레임!                    │
 │                                                             │
 └─────────────────────────────────────────────────────────────┘

2. 패킷 캡처 도구(Wireshark)에서 보이지 않는 이유

PC에서 와이어샤크(Wireshark)로 패킷을 캡처하면 Preamble, SFD, 그리고 꼬리의 FCS(에러 검출 필드)는 보이지 않는다. 그 이유는 랜카드의 1계층(PHY) 칩이 Preamble을 이용해 동기화를 맞춘 뒤, MAC 계층(운영체제로 데이터를 넘기는 부분)으로 데이터를 전달할 때는 이 8바이트를 하드웨어적으로 잘라내어 버리기(Strip) 때문이다. OS와 와이어샤크는 이미 예쁘게 잘려진 목적지 MAC 주소부터만 볼 수 있다.

📢 섹션 요약 비유: 편지(프레임)를 담은 봉투가 목적지에 도착하면, 우체국 기계가 "가위로 봉투의 양끝(Preamble과 FCS)을 잘라내고" 알맹이 편지만 사용자(운영체제)에게 건네주는 것과 같습니다. 사용자는 잘려 나간 종이 부스러기를 볼 수 없습니다.