패킷부터 SoC NoC까지, 데이터 통신 프로토콜 완벽 가이드
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
📡 데이터 통신 프로토콜 입문 — 패킷·계층·라우팅에서 SoC NoC까지
초보자를 위한 통신 프로토콜 큰 그림 정리 · 2026-04-29
💡 한 줄 요약 — 데이터 통신 프로토콜은 컴퓨터들 사이의 "공통 언어"입니다. 인터넷의 거대 네트워크부터 손톱만 한 SoC 내부까지, 결국 같은 원리(쪼개기·계층·캡슐화·라우팅)가 작동합니다.
1. 들어가며 — 왜 "약속"이 필요한가
데이터 통신 프로토콜(Protocol)은 서로 다른 하드웨어·소프트웨어가 데이터를 주고받기 위해 사전에 합의한 "대화 규칙"입니다. 두 사람이 영어라는 공통 언어로 대화하듯, 컴퓨터·네트워크 장비·반도체 IP 코어도 동일한 규칙을 따라야 비로소 의미 있는 비트(bit) 교환이 가능합니다.
본 보고서는 다음 흐름으로 전체 그림을 잡습니다 — (1) 인터넷 프로토콜의 일반 개념 → (2) 패킷·계층·캡슐화 → (3) 라우팅과 지연시간 최적화 → (4) SoC(System-on-Chip) 내부의 AMBA·NoC. 비유와 표준 근거를 함께 제시해, 처음 보는 독자도 큰 흐름을 따라갈 수 있도록 구성했습니다.
2. 패킷(Packet)이란 무엇인가 — "쪼개서 보내는" 이유
📦 2-1. 정의
패킷은 "Package(화물)"와 "Bucket(덩어리)"의 합성어로, 통신에서 데이터를 보내는 최소 전송 단위입니다. 큰 가구를 분해해 여러 상자에 나눠 배송한 뒤 도착지에서 다시 조립하는 것에 비유할 수 있습니다.
⚙️ 2-2. 왜 쪼개는가
▶ 오류 복구 효율 — 통째로 보내다가 비트 한 개가 깨지면 전체를 재전송해야 합니다. 쪼개 보내면 손상된 패킷만 다시 보내면 됩니다.
▶ 공유 자원 활용 (Statistical Multiplexing) — 한 사용자가 회선을 독점하지 않고 여러 패킷이 시간을 나눠 흘러갑니다.
▶ 파이프라이닝 효과 — 첫 패킷이 다음 노드에 도착하면 곧바로 두 번째 패킷이 출발할 수 있어, 전체 전송 완료 시간이 짧아집니다.
📊 2-3. 회선 교환 vs 패킷 교환
| 항목 | 🔌 회선 교환 (Circuit) | 📦 패킷 교환 (Packet) |
|---|---|---|
| 경로 점유 | 통화 내내 전용 경로 | 패킷 단위 가변 경로 |
| QoS (서비스 품질) | 결정론적, 대역폭 보장 | 통계적, 가변적 |
| 지터 (Jitter) | 거의 없음 | 존재 — 버퍼링·혼잡에 따라 변동 |
| 약점 | 통신이 없어도 자원 낭비 | 버퍼 오버플로우, 패킷 손실 가능 |
3. 계층 구조(Layering) — 책임을 나누는 기술
🏗️ 3-1. 왜 층(Layer)으로 나누는가
한 부분이 바뀌어도 다른 층을 건드리지 않아도 되도록 관심사 분리(Separation of Concerns)를 구현한 것이 계층 구조입니다. 우체국 시스템에서 "편지지 양식"이 바뀌어도 "집배원 동선"은 그대로 유지되는 원리와 같습니다.
📚 3-2. OSI 7계층 — 표준의 출처
중요한 사실: OSI 7계층은 IETF의 RFC가 아니라 ISO(국제표준화기구)의 표준 ISO/IEC 7498-1:1994입니다. 실무 인터넷에서는 이를 4계층으로 단순화한 TCP/IP 모델이 사용되며, 그 동작 요건은 RFC 1122 (Requirements for Internet Hosts, 1989)가 정의합니다.
| 계층 | 이름 | 핵심 역할 | 데이터 단위 |
|---|---|---|---|
| L7 | 응용 (Application) | 사용자 프로그램·데이터 원본 | Data |
| L4 | 전송 (Transport) | 분할·재조립, 신뢰성/순서 제어 | Segment |
| L3 | 네트워크 (Network) | 목적지 IP 주소 부여, 경로 결정 | Packet |
| L2 | 데이터 링크 (Data Link) | 인접 장비 MAC 주소, 오류 검출 | Frame |
| L1 | 물리 (Physical) | 전기·빛 신호로 비트 송수신 | Bit |
🔤 3-3. 핵심 약어 풀이
▶ TCP (Transmission Control Protocol) — 도착 확인·재전송 기반의 신뢰성 전송.
▶ IP (Internet Protocol) — 주소 체계와 경로 지정의 기반. 목적지 "지도".
▶ MAC (Media Access Control) 주소 — 네트워크 카드(NIC)의 물리적 고유 번호.
4. 캡슐화(Encapsulation) — 데이터의 옷 입기
송신 측에서는 상위 계층 데이터에 각 계층 정보를 담은 헤더(Header)가 차례로 붙습니다. 이 과정을 캡슐화(Encapsulation)라 합니다.
수신 측은 거꾸로 하위 계층부터 헤더를 한 겹씩 벗겨 원본 데이터를 복원합니다 — 역캡슐화(De-encapsulation). 이 두 과정 덕에 송·수신 양쪽이 같은 "층"끼리 대화할 수 있는 듯한 추상화가 만들어집니다.
5. 라우팅(Routing) — 패킷이 길을 찾는 원리
패킷의 IP 헤더에는 출발지·도착지 IP 주소가 기록되어 있습니다. 중간 노드인 라우터(Router)가 자신이 가진 라우팅 테이블(Routing Table)을 참조해 "어느 인터페이스로 내보낼지"를 매 홉(hop)마다 결정합니다. 동적 라우팅 프로토콜은 링크 상태·혼잡도를 반영해 경로를 갱신하므로, 같은 출발지·도착지 사이라도 패킷마다 다른 길을 갈 수 있습니다.
⚡ 지연시간을 줄이는 메커니즘
① 다중화 (Multiplexing) — 회선 유휴 시간 최소화.
② 파이프라이닝 — 패킷 단위로 끊김 없이 흘려보내기.
③ Cut-through Switching — 헤더만 읽고 즉시 다음 노드로 전달 (Store-and-Forward 대비 빠름).
④ QoS·Strict Priority Scheduling — 음성·영상·게임처럼 지연에 민감한 패킷에 우선순위 부여.
⑤ TSN (Time-Sensitive Networking) — 산업·차량 영역에서 결정론적 실시간성을 보장하기 위한 표준군.
6. SoC 레벨의 데이터 전송 — AMBA(Bus) vs NoC(Packet)
🔌 6-1. AMBA — 공유 복도 같은 버스
ARM이 정의한 SoC 내부 표준 버스 규격으로, AXI/AHB/APB 등이 있습니다. 본질은 "공유 복도(Bus)"입니다. 한 트랜잭션이 점유하는 동안 다른 모듈은 중재(Arbitration)를 기다립니다 — IP 코어 수가 늘면 병목이 가속화됩니다.
🌐 6-2. NoC — 칩 안의 작은 인터넷
칩 내부에 작은 인터넷을 만든 것이 NoC입니다. 데이터를 플릿(flit)·패킷으로 쪼개 메시(mesh)·토러스 등의 토폴로지를 따라 라우팅합니다. 칩 안에서도 OSI/TCP-IP와 동일한 "패킷·헤더·라우팅·QoS" 개념이 그대로 적용됩니다.
📈 6-3. 2024년 벤치마크 — 누가 유리한가
※ IEEE Xplore 2024-02 인용 — 대규모·고트래픽에서 NoC는 처리량 약 2.5배, 지연시간 약 30~40% 개선.
💬 "While AXI4 exhibits lower latency for point-to-point transfers, NoC architectures outperform in multi-core contention scenarios by distributing traffic through a mesh topology."
즉, 어떤 전송 방식이 우월한가는 단정할 수 없고 트래픽 양과 IP 개수가 결정 요인입니다. AI 가속기·멀티코어 SoC가 일반화되며 NoC 채택이 가속되는 이유가 여기에 있습니다.
7. 실시간 통신은 어떻게 성립하는가
실시간성(Real-time)은 단순히 "빠르다"가 아니라 "정해진 시간 안에 반드시 도착한다(Deterministic Delivery)"를 의미합니다. 패킷 교환은 본래 통계적이라 지터(Jitter)가 발생합니다. 이를 극복하기 위해 다음 기술들이 결합됩니다.
즉 "쪼개기"의 효율성과 "전용 경로"의 정시성을 동시에 잡으려는 시도가 현대 네트워크의 본질적인 과제입니다.
8. 라운드 간 보충·정정 사항
▶ 정정 1 — 1라운드는 OSI 7계층의 출처를 모호하게 다뤘으나, 2라운드에서 ISO/IEC 7498-1:1994가 OSI의 공식 표준이며 RFC 1122는 TCP/IP 4계층 요건 문서임을 명확히 했습니다. 두 문헌은 보완 관계지 동일하지 않습니다.
▶ 정정 2 — 1라운드는 NoC가 무조건 우월한 듯한 인상을 줄 수 있으나, 2라운드 벤치마크가 소규모에서는 AXI가 유리함을 보여주므로 본문에서는 이 조건을 명시했습니다.
▶ 검증 — 명시적 모순은 발견되지 않았습니다. 라운드 간 보완 관계로 정리됩니다.
9. 핵심 요약 (Take-aways)
✓ 1. 데이터는 효율과 신뢰성을 위해 패킷으로 쪼개진다.
✓ 2. 송신 측은 계층마다 헤더를 덧붙이는 캡슐화, 수신 측은 역캡슐화로 원본을 복원한다.
✓ 3. IP 주소·라우팅 테이블·라우터의 협업이 가변 경로 위에서도 패킷이 목적지를 찾게 한다.
✓ 4. 파이프라이닝·Cut-through·QoS·TSN이 결합되어 패킷 망에서도 실시간성이 가능해진다.
✓ 5. SoC 내부에서도 같은 원리가 작동한다 — AMBA(Bus)는 작은 시스템에, NoC(Packet)는 다중 코어·고트래픽 환경에 유리하다(IEEE 2024 벤치마크).
이 큰 그림만 잡고 있어도, 이후 TCP의 흐름 제어, IP의 서브넷팅, NoC 토폴로지 같은 세부 주제로 자연스럽게 확장해 나갈 수 있습니다. 패킷·계층·캡슐화·라우팅 — 이 네 가지 키워드가 인터넷 백본부터 손톱만 한 칩 내부까지 일관되게 흐르는 통신의 본질입니다.
📚 References
본 콘텐츠는 학습·정보 전달 목적이며, 기술 표준의 세부 동작은 각 RFC·ISO·IEEE 원문을 참조하시기 바랍니다.
📄 Raw Data
# 데이터 통신 프로토콜 입문: 패킷·계층·라우팅에서 SoC 내부 NoC까지 ## 1. 들어가며 — 왜 "약속"이 필요한가 데이터 통신 프로토콜(Protocol)은 서로 다른 하드웨어·소프트웨어가 데이터를 주고받기 위해 사전에 합의한 **"대화 규칙"**입니다. 두 사람이 영어라는 공통 언어로 대화하듯, 컴퓨터·네트워크 장비·반도체 IP 코어도 동일한 규칙을 따라야 비로소 의미 있는 비트(bit) 교환이 가능합니다. 본 보고서는 (1) 인터넷 프로토콜의 일반 개념 → (2) 패킷·계층·캡슐화 → (3) 라우팅과 지연시간 최적화 → (4) SoC(System-on-Chip) 내부의 AMBA·NoC까지, 초보자가 큰 흐름을 이해할 수 있도록 비유와 표준 근거를 함께 제시합니다. --- ## 2. 패킷(Packet)이란 무엇인가 — "쪼개서 보내는" 이유 ### 2-1. 정의 패킷은 "Package(화물)"와 "Bucket(덩어리)"의 합성어로, 통신에서 데이터를 보내는 **최소 전송 단위**입니다. 큰 가구를 분해해 여러 상자에 나눠 배송한 뒤 도착지에서 다시 조립하는 것에 비유할 수 있습니다. ### 2-2. 왜 쪼개는가 - **오류 복구 효율**: 통째로 보내다가 비트 한 개가 깨지면 전체를 재전송해야 합니다. 쪼개 보내면 손상된 패킷만 다시 보내면 됩니다. - **공유 자원 활용 (통계적 다중화, Statistical Multiplexing)**: 한 사용자가 회선을 독점하지 않고 여러 패킷이 시간을 나눠 흘러갑니다. - **파이프라이닝 효과**: 첫 패킷이 다음 노드에 도착하면 곧바로 두 번째 패킷이 출발할 수 있어, 전체 전송 완료 시간이 짧아집니다. > **회선 교환(Circuit) vs 패킷 교환(Packet) 비교 (Round 2 종합)** > > | 항목 | 회선 교환 | 패킷 교환 | > |---|---|---| > | 경로 점유 | 통화 내내 전용 경로 | 패킷 단위 가변 경로 | > | QoS(서비스 품질, Quality of Service) | 결정론적(Deterministic), 대역폭 보장 | 통계적, 가변적 | > | 지터(Jitter, 지연 변이) | 거의 없음 | 존재 — 버퍼링·혼잡에 따라 변동 | > | 약점 | 통신이 없어도 자원 낭비 | 버퍼 오버플로우, 패킷 손실 가능 | --- ## 3. 계층 구조(Layering) — 책임을 나누는 기술 ### 3-1. 왜 층(Layer)으로 나누는가 한 부분이 바뀌어도 다른 층을 건드리지 않아도 되도록 **관심사 분리(Separation of Concerns)**를 구현한 것이 계층 구조입니다. 우체국 시스템에서 "편지지 양식"이 바뀌어도 "집배원 동선"은 그대로 유지되는 원리와 같습니다. ### 3-2. OSI 7계층 — 표준의 출처 중요한 사실: **OSI 7계층은 IETF의 RFC가 아니라 ISO(국제표준화기구)의 표준 ISO/IEC 7498-1:1994**입니다(Round 2). 실무 인터넷에서는 이를 4계층으로 단순화한 TCP/IP 모델이 사용되며, 그 동작 요건은 **RFC 1122 (Requirements for Internet Hosts — Communication Layers, 1989)**가 정의합니다. | 계층 | 이름 | 핵심 역할 | 데이터 단위 | |---|---|---|---| | L7 | 응용 (Application) | 사용자 프로그램·데이터 원본 | Data | | L4 | 전송 (Transport) | 분할·재조립, 신뢰성/순서 제어 | **Segment** | | L3 | 네트워크 (Network) | 목적지 IP 주소 부여, 경로 결정 | **Packet** | | L2 | 데이터 링크 (Data Link) | 인접 장비 MAC 주소 부여, 오류 검출 | **Frame** | | L1 | 물리 (Physical) | 전기·빛 신호로 비트 송수신 | Bit | ### 3-3. 핵심 약어 풀이 - **TCP (Transmission Control Protocol, 전송 제어 프로토콜)**: 도착 확인·재전송 기반의 신뢰성 전송. - **IP (Internet Protocol, 인터넷 프로토콜)**: 주소 체계와 경로 지정의 기반. 목적지 "지도". - **MAC (Media Access Control, 매체 접근 제어) 주소**: 네트워크 카드(NIC)의 물리적 고유 번호. --- ## 4. 캡슐화(Encapsulation)와 역캡슐화 — 데이터의 옷 입기/벗기 송신 측에서는 상위 계층 데이터에 각 계층 정보를 담은 **헤더(Header)**가 차례로 붙습니다. 이 과정을 **캡슐화(Encapsulation)**라 합니다. ``` [App Data] → [TCP Header | App Data] ← Segment (L4) → [IP Header | TCP Header | App Data] ← Packet (L3) → [MAC Header | IP ... | App Data | FCS] ← Frame (L2) → 0/1 비트 스트림 ← Bit (L1) ``` 수신 측은 거꾸로 하위 계층부터 헤더를 한 겹씩 벗겨 원본 데이터를 복원합니다 — **역캡슐화(De-encapsulation)**. 이 두 과정 덕에 송·수신 양쪽이 같은 "층"끼리 대화할 수 있는 듯한 추상화가 만들어집니다. --- ## 5. 패킷이 목적지를 찾는 원리 — 라우팅(Routing) - 패킷의 IP 헤더에는 **출발지·도착지 IP 주소**가 기록되어 있습니다. - 중간 노드인 **라우터(Router)**가 자신이 가진 **라우팅 테이블(Routing Table)**을 참조해 "어느 인터페이스로 내보낼지"를 매 홉(hop)마다 결정합니다. - 동적 라우팅 프로토콜은 링크 상태·혼잡도를 반영해 경로를 갱신하므로, 패킷마다 다른 길을 갈 수 있습니다(가변 경로). ### 지연시간을 줄이는 메커니즘 1. **다중화(Multiplexing)**: 회선 유휴 시간 최소화. 2. **파이프라이닝**: 패킷 단위로 끊김 없이 흘려보내기. 3. **Cut-through Switching**: 헤더만 읽고 즉시 다음 노드로 전달(전체 수신 후 보내는 Store-and-Forward 대비 빠름) — Round 2. 4. **QoS·Strict Priority Scheduling**: 음성·영상·게임처럼 지연에 민감한 패킷에 우선순위 부여. 5. **TSN (Time-Sensitive Networking)**: 산업·차량 영역에서 결정론적 실시간성을 보장하기 위한 표준군. --- ## 6. SoC 레벨의 데이터 전송 — AMBA(Bus) vs NoC(Packet) ### 6-1. AMBA (Advanced Microcontroller Bus Architecture) ARM이 정의한 SoC 내부 표준 버스 규격으로, **AXI/AHB/APB** 등이 있습니다. 본질은 "공유 복도(Bus)"입니다. 한 트랜잭션이 점유하는 동안 다른 모듈은 중재(Arbitration)를 기다립니다 — IP 코어 수가 늘면 병목이 가속화됩니다. ### 6-2. NoC (Network-on-Chip) 칩 내부에 작은 인터넷을 만든 것이 NoC입니다. 데이터를 **플릿(flit)/패킷**으로 쪼개 메시(mesh)·토러스 등의 토폴로지를 따라 라우팅합니다. 칩 안에서도 OSI/TCP-IP와 동일한 "패킷·헤더·라우팅·QoS" 개념이 그대로 적용됩니다. ### 6-3. 2024년 벤치마크가 말하는 것 (Round 2) - 소규모(IP 코어 4~8개): **AXI가 더 낮은 지연시간**. NoC는 패킷화·라우팅 연산의 상수 오버헤드 때문에 손해. - 대규모·고트래픽(16개 이상): NoC가 **처리량 최대 2.5배, 지연시간 약 30~40% 개선** 보고 (IEEE Xplore, 2024-02 인용). - 인용구: *"While AXI4 exhibits lower latency for point-to-point transfers, NoC architectures outperform in multi-core contention scenarios by distributing traffic through a mesh topology."* 즉, 어떤 전송 방식이 우월한가는 단정할 수 없고 **트래픽 양과 IP 개수**가 결정 요인입니다. AI 가속기·멀티코어 SoC가 일반화되며 NoC 채택이 가속되는 이유가 여기에 있습니다. --- ## 7. 실시간 통신은 어떻게 성립하는가 실시간성(Real-time)은 단순히 "빠르다"가 아니라 **"정해진 시간 안에 반드시 도착한다(Deterministic Delivery)"**를 의미합니다. 패킷 교환은 본래 통계적이라 지터(Jitter)가 발생합니다. 이를 극복하기 위해 - L3/L4에서 **QoS·DiffServ** 기반 우선순위 큐잉, - L2에서 **TSN** 기반 시간 동기화·예약 전송, - SoC 내부에서는 **Virtual Channel·Priority Arbiter**로 결정론적 채널 보장, 같은 기술을 결합합니다. 즉 "쪼개기"의 효율성과 "전용 경로"의 정시성을 동시에 잡으려는 시도가 현대 네트워크의 본질적인 과제입니다. --- ## 8. 라운드 간 보충·정정 사항 - 1라운드는 OSI 7계층의 출처를 모호하게 다뤘으나, 2라운드에서 **ISO/IEC 7498-1:1994가 OSI의 공식 표준이며 RFC 1122는 TCP/IP 4계층 요건 문서**임을 명확히 했습니다. 두 문헌은 보완 관계지 동일하지 않습니다. - 1라운드는 NoC가 무조건 우월한 듯한 인상을 줄 수 있으나, 2라운드 벤치마크가 **소규모에서는 AXI가 유리**함을 보여주므로 본문에서는 이 조건을 명시했습니다. - 명시적 모순은 발견되지 않았습니다(라운드 간 보완 관계). --- ## 9. 핵심 요약 (Take-aways) 1. 데이터는 **효율과 신뢰성**을 위해 패킷으로 쪼개진다. 2. 송신 측은 계층마다 헤더를 덧붙이는 **캡슐화**, 수신 측은 **역캡슐화**로 원본을 복원한다. 3. **IP 주소·라우팅 테이블·라우터**의 협업이 가변 경로 위에서도 패킷이 목적지를 찾게 한다. 4. **파이프라이닝·Cut-through·QoS·TSN**이 결합되어 패킷 망에서도 실시간성이 가능해진다. 5. SoC 내부에서도 같은 원리가 작동한다 — **AMBA(Bus)는 작은 시스템에, NoC(Packet)는 다중 코어·고트래픽 환경에 유리**하다(IEEE 2024 벤치마크). 이 큰 그림만 잡고 있어도, 이후 TCP의 흐름 제어, IP의 서브넷팅, NoC 토폴로지 같은 세부 주제로 자연스럽게 확장해 나갈 수 있습니다. --- ## References - [위키백과 인터넷 프로토콜 스위트](https://ko.wikipedia.org/wiki/인터넷_프로토콜_스위트) - [RFC 1122 Requirements for Internet Hosts](https://datatracker.ietf.org/doc/html/rfc1122) - [IEEE Xplore Digital Library](https://ieeexplore.ieee.org)
댓글
댓글 쓰기