물리 계층의 역할
비트가 전기·빛·전파 신호로 변환되는 원리와 유무선 매체·대역폭·감쇠·물리 장비의 성능 한계를 이해합니다.
지금까지 우리는 계층 모델이라는 큰 그림과 캡슐화의 원리를 살펴보았습니다.
이제 그 가장 아래쪽, 데이터가 실제로 물리적 세계에서 어떻게 이동하는지를 들여다볼 차례입니다.
코드를 작성하고 API를 호출하는 개발자에게 전기 신호나 광 펄스 같은 이야기가 왜 필요할까요?
직접 물리 계층을 구현할 일은 없겠지만, 네트워크 성능 문제를 진단할 때 이 병목이 물리적인 한계에서 오는 것인지, 소프트웨어 설정의 문제인지를 구분할 수 있어야 하기 때문입니다.
비트를 신호로, 신호를 비트로
물리 계층의 본질적인 역할은 딱 하나입니다.
0과 1로 이루어진 비트(Bit)를 물리적 매체가 전달할 수 있는 신호(Signal)로 변환하고, 반대로 수신된 신호를 다시 비트로 복원하는 것입니다.
여기서 신호는 매체에 따라 다릅니다.
구리 케이블에서는 전기 신호(전압의 변화)이고, 광섬유에서는 빛의 온/오프(광 펄스)이며, 무선 통신에서는 전자기파(라디오 주파수)입니다.
물리 계층이 신경 쓰는 것은 오직 비트를 정확하게 보내고 받는 것뿐입니다.
그 비트들이 IP 주소인지, HTTP 요청인지는 전혀 모르고 알 필요도 없습니다.
인코딩과 변조
비트를 신호로 변환할 때는 비트열을 어떤 심볼 패턴으로 바꿀지와 그 심볼을 매체 위의 어떤 물리 신호로 실을지를 함께 생각해야 합니다.
실제 유선 링크도 다중 전압 레벨을 쓰고, 무선 링크도 오류 정정 코딩과 변조를 함께 사용합니다.
라인 코딩과 심볼 인코딩
| 방식 | 원리와 사용 예 |
|---|---|
| NRZ | 두 레벨로 비트 표현 · 초기 시리얼 통신 |
| Manchester | 비트 중간 천이로 클록 동기화 · 10BASE-T |
| 4B/5B | 4비트를 5비트 코드로 매핑 · 100BASE-TX |
| 8B/10B | 8비트를 10비트로 매핑하고 DC 밸런스 유지 · 1000BASE-X |
| PAM 계열 | 여러 진폭 레벨로 심볼당 여러 비트 표현 · 고속 구리·광 링크 |
NRZ는 단순하지만 동기화가 어렵습니다.
11111111처럼 같은 값이 계속되면 수신 측의 클록이 어긋날 수 있기 때문입니다.
Manchester 인코딩은 매 비트마다 전압 변화가 있어 클록 동기화가 용이하지만, 같은 데이터 속도를 내려면 더 넓은 신호 대역이 필요합니다.
PAM 계열처럼 여러 전압 레벨을 쓰는 방식은 심볼당 더 많은 비트를 담을 수 있지만, 신호 품질 요구도 함께 높아집니다.
반송파 변조
무선처럼 반송파(carrier wave)를 사용하는 환경에서는 반송파의 특성을 변화시켜 데이터를 실습니다.
| 변조 | 변화시키는 성질 |
|---|---|
| ASK | 반송파 진폭 |
| FSK | 반송파 주파수 |
| PSK | 반송파 위상 |
| QAM | 서로 직교하는 성분으로 진폭과 위상 조합 |
변조 이름만으로 효율 순위를 정할 수는 없습니다. 심볼 수, 오류 정정 코딩, 채널 대역폭과 SNR을 함께 비교해야 합니다.
Wi-Fi 6/6E는 조건이 좋을 때 1024-QAM을 사용할 수 있습니다.
하나의 심볼로 10비트(1024가지 상태)를 표현할 수 있어 대역폭 효율이 높지만, 신호 대 잡음비가 낮아지면 더 낮은 변조 단계로 내려갑니다.
유선 전송 매체
꼬임 쌍선 (Twisted Pair Cable)
우리가 흔히 랜선이라고 부르는 케이블입니다.
두 가닥씩 꼬아 한 쌍을 만들고, 일반적인 이더넷 케이블은 이런 쌍 4개, 즉 8가닥의 도선으로 구성됩니다.
| 케이블 | 주파수 사양과 링크 조건 |
|---|---|
| Cat5e | 100 MHz · 1 Gb/s 100 m, 설치 채널 조건을 충족하면 2.5/5 Gb/s도 지원 |
| Cat6 | 250 MHz · 1 Gb/s 100 m, 10 Gb/s는 누화 등 채널 조건에 따라 약 55 m까지 |
| Cat6a | 500 MHz · 10 Gb/s 100 m, 차폐·비차폐 제품 존재 |
| Cat7 | 600 MHz · 10 Gb/s 100 m 계열, 각 쌍 차폐 |
| Cat8 | 2000 MHz · 25/40 Gb/s 30 m 채널, 데이터센터용 |
광섬유 (Fiber Optic Cable)
빛을 이용하여 데이터를 전송합니다.
전기적 간섭의 영향을 받지 않고, 장거리 전송에 유리합니다.
실제 최대 거리와 광원은 광섬유 종류뿐 아니라 트랜시버 표준, 파장, 속도에 따라 달라집니다.
| 광섬유 | 구조와 사용 조건 |
|---|---|
| 싱글모드 (SMF) | 코어 약 9 μm · 레이저 사용 · WAN·해저 링크 등 장거리 구성 |
| 멀티모드 (MMF) | 코어 50/62.5 μm · VCSEL/LED 등 · 데이터센터의 고속 단거리 구성 |
| 거리·속도·비용 | 광섬유 등급과 트랜시버·파장·링크 예산의 조합으로 결정; 종류만으로 최대치나 비용 순서를 단정하지 않음 |
동축 케이블 (Coaxial Cable)
중심 도체를 절연체와 외부 도체가 감싸는 구조로, 전자기 차폐 성능이 좋습니다.
현재는 CATV 인터넷(DOCSIS)에서 주로 사용됩니다.
무선 전송 매체
| 기술 | 대역과 PHY 조건 |
|---|---|
| Wi-Fi 4 · 802.11n | 2.4/5 GHz · 600 Mb/s는 40 MHz, 4개 공간 스트림, 짧은 보호 구간 등 최대 조합 |
| Wi-Fi 5 · 802.11ac | 5 GHz · 채널 폭, 변조·코딩, 공간 스트림 수에 따라 링크 속도 결정 |
| Wi-Fi 6 · 802.11ax | 2.4/5 GHz · 최대 조합은 160 MHz, 8개 공간 스트림, 1024-QAM 등 |
| Wi-Fi 6E | Wi-Fi 6 기능을 6 GHz로 확장; 지역별 허용 대역 확인 |
| Wi-Fi 7 · 802.11be | 지원 지역·장비에서 6 GHz의 320 MHz, 4096-QAM 등 사용; 최대 8개 공간 스트림 |
| Bluetooth 5 계열 | 2.4 GHz · LE 1M/2M과 장거리용 LE Coded 125/500 kb/s를 구분; Classic 모드는 별도 |
| 5G NR | 3.5 GHz·28 GHz 등은 배치 예시. 대역·채널 폭·공간 스트림·통신사 구성에 따라 속도와 커버리지 결정 |
일반적으로 높은 주파수 대역은 더 넓은 채널을 제공하기 쉬워 속도 면에서 유리하지만, 파장이 짧아 장애물 투과와 도달 거리에서 불리한 경우가 많습니다.
표의 PHY 조건은 애플리케이션 처리량이나 도달 거리를 보장하지 않습니다. 실제 처리량에는 경쟁·재전송·프로토콜 오버헤드가, 도달 거리에는 출력·안테나·장애물·규제가 함께 영향을 줍니다.
5G NR Release 17의 주파수 범위는 FR1 410–7125 MHz, FR2-1 24.25–52.6 GHz, FR2-2 52.6–71 GHz입니다. 이 전체 범위를 모든 국가나 장비가 사용하는 것은 아닙니다.
대역폭, 전송 속도, 신호 감쇠
물리 계층을 이해할 때 혼동하기 쉬운 세 가지 개념을 정리합니다.
대역폭(Bandwidth)은 사용 가능한 주파수 범위(Hz)입니다.
주파수 범위가 넓을수록 더 많은 데이터를 실을 수 있습니다.
전송 속도(Data Rate)는 실제로 비트를 전송하는 빠르기(bps)입니다.
대역 제한된 단일 AWGN(가산 백색 가우스 잡음) 채널에서 평균 신호 전력 제약을 둔 용량은 다음과 같습니다.
: 채널 용량(bps), : 대역폭(Hz), : 선형값으로 표현한 신호 대 잡음비
다음 코드의 매체 이름과 SNR은 계산을 위한 가정입니다. 구리의 여러 쌍이나 무선 MIMO를 종합한 장비 속도도, 실제 측정 처리량도 아닙니다.
import math
def channel_capacity(bandwidth_hz, snr_db):
"""샤논 채널 용량 계산"""
snr_linear = 10 ** (snr_db / 10)
capacity = bandwidth_hz * math.log2(1 + snr_linear)
return capacity
# 일반적인 매체별 채널 용량 예시
scenarios = [
("Cat5e (100MHz, SNR 25dB)", 100e6, 25),
("광섬유 (10GHz, SNR 30dB)", 10e9, 30),
("Wi-Fi 5 (80MHz, SNR 35dB)", 80e6, 35),
("5G mmWave (400MHz, SNR 20dB)", 400e6, 20),
]
for name, bw, snr in scenarios:
cap = channel_capacity(bw, snr)
unit = "Gbps" if cap > 1e9 else "Mbps"
val = cap / 1e9 if cap > 1e9 else cap / 1e6
print(f"{name}")
print(f" 이론적 최대 용량: {val:.1f} {unit}\n")신호 감쇠(Attenuation)는 신호가 매체를 따라 이동하면서 점차 약해지는 현상입니다.
| 매체 | 감쇠와 링크 설계 |
|---|---|
| UTP | 저항·누화와 채널 길이 제한을 확인; 필요하면 스위치 등으로 링크 구간을 나눔 |
| 광섬유 | 산란·흡수와 트랜시버 광 예산을 확인; 장거리 시스템에서 EDFA 등 사용 |
| Wi-Fi | 거리뿐 아니라 벽·간섭·출력·안테나를 확인; AP 추가·배치 또는 메시 구성 검토 |
| 해저 광 링크 | 광 손실·시스템 설계에 맞춰 리피터 구간 결정; 하나의 고정 간격이 모든 케이블에 적용되지는 않음 |
물리 계층 장비
| 장비 | 역할과 계층 |
|---|---|
| 리피터 | 약해진 신호를 증폭·재생 · L1 |
| 허브 | 다중 포트 리피터, 수신 포트 외 포트에 신호 복제 · L1 |
| NIC | 디지털 데이터와 신호 변환, MAC 처리 · L1/L2 |
| 미디어 컨버터 | 구리·광섬유 등 매체 변환 · L1 |
| 모뎀 | 반송파의 변조·복조 · DSL·케이블 링크의 L1 |
# NIC 상태 및 링크 속도 확인
ethtool eth0 | grep -E "Speed|Duplex|Link"
# 무선 인터페이스 신호 강도 확인
iwconfig wlan0 | grep -E "Signal|Bit Rate"
# 케이블 연결 상태 확인 (carrier 파일)
cat /sys/class/net/eth0/carrier # 1=연결, 0=미연결
cat /sys/class/net/eth0/speed # 링크 속도 (Mbps)
# MTU 확인
ip link show eth0 | grep mtu소프트웨어 최적화로는 물리적 한계를 넘을 수 없다는 점이 물리 계층이 개발자에게 알려주는 가장 중요한 메시지입니다.
먼 지역 간 RTT에는 광섬유 내부 전파 속도, 실제 해저 케이블 경로, 라우터 처리 시간이 함께 반영되며, 이것은 어떤 코드 최적화만으로 사라지지 않습니다.
다음 절에서는 물리 계층 바로 위에서, 비트들을 의미 있는 단위로 묶어 전달하는 이더넷과 MAC 주소를 살펴보겠습니다.