본문 바로가기

📌 SW전공-개념/데이터통신

✅ [개념 ch3-12] 데이터 링크 계층 | 노드-투-노드 통신과 프레이밍 완벽 정리

 

 


 

 

1. 데이터 링크 계층(Data Link Layer)이란

1.1 정의

데이터 링크 계층 = OSI 7계층 모델 중 2계층으로, 물리 계층에서 직접 연결된 두 노드 간의 데이터 전송을 담당

 

비유: 우편 시스템에서 한 우체국 → 다음 우체국으로 우편물을 안전하게 전달하는 과정과 비슷합니다.

이 계층은 비트 스트림을 프레임(Frame) 이라는 논리적 단위로 묶어 전송하며, 오류를 감지·수정하고 흐름을 제어해요.

 

1.2 노드-투-노드(Node-to-Node) 통신의 핵심

데이터 링크 계층은 인접한 두 노드 간(홉 단위)에서만 동작합니다.

[호스트 A] ── 데이터 링크 ── [라우터 R1] ── 데이터 링크 ── [라우터 R2] ── 데이터 링크 ── [호스트 B]
            ↑                            ↑                            ↑
        한 홉                          한 홉                          한 홉

⭐ 라우터를 거칠 때마다 새 데이터 링크 프레임이 생성됩니다. (이전에 배운 "MAC 주소는 홉마다 변경"의 근거)

 

1.3 데이터 링크 계층의 두 서브 계층

데이터 링크 계층은 내부적으로 두 부분으로 나뉘어요.

서브 계층역할
DLC (Data Link Control) 프레이밍, 흐름 제어, 오류 제어
MAC (Medium Access Control) 공유 매체 접근 관리 (충돌 방지, CSMA/CD 등)

⭐ 이번 편에서는 DLC에 집중합니다. MAC은 LAN 환경(이더넷·Wi-Fi)에서 더 깊이 다뤄요.

 

1.4 데이터 링크 계층의 3대 핵심 기능

기능 역할
프레이밍(Framing) 비트 스트림 → 프레임 단위로 묶기
오류 제어(Error Control) 비트 오류 감지·수정, 재전송 요청
흐름 제어(Flow Control) 송신 속도 조절, 수신 버퍼 보호

 


2. 프레이밍(Framing)이란

2.1 정의

프레이밍 = 끊임없이 이어지는 비트 스트림을 논리적 단위인 '프레임'으로 묶는 과정

비유: 긴 기차에 객실(프레임)이 없다면 승객(데이터 비트)들이 어디서 내리고 타야 할지 알 수 없겠죠. 프레이밍은 데이터의 시작과 끝을 명확히 해서 객실(프레임)으로 구분하는 작업입니다.

 

2.2 왜 프레이밍이 필요한가

이유 설명
오류 감지·수정의 단위 프레임 단위로 오류 검사
흐름 제어의 단위 프레임 단위로 ACK 주고받음
재전송의 단위 손상된 프레임만 재전송

 

2.3 핵심 과제 — 프레임 경계 표시

프레임의 시작과 끝을 어떻게 표시할까요?

그리고 데이터 안에 표시 패턴과 같은 비트열이 있으면 어떻게 구분할까요? 이를 해결하는 다양한 방식이 있습니다.

 


 

3. 프레이밍 방식 3종 ⭐⭐⭐⭐⭐

3.1 바이트 지향 프레이밍 (Byte-Oriented)

원리: 특별한 바이트(예: FLAG = 0x10) 로 프레임의 시작과 끝을 표시

문제 발생 시나리오: 데이터 내부에 우연히 FLAG 바이트가 있다면?

해결책 — 바이트 스터핑(Byte Stuffing):

  • 데이터 내부의 FLAG 바이트 앞에 ESC 바이트 추가
  • 수신측에서는 ESC를 보면 그 다음 바이트가 데이터임을 알고 ESC 제거
 
원본 데이터:        ... FLAG ...
바이트 스터핑 후: ... ESC FLAG ...
                    ↑ 이것은 데이터다!라는 표시

대표 사용처: PPP 프로토콜

 

3.2 비트 지향 프레이밍 (Bit-Oriented)

원리: 특별한 비트 패턴(01111110) 으로 프레임 경계 표시

문제 발생 시나리오: 데이터 안에 01111110이 우연히 나타나면?

해결책 — 비트 스터핑(Bit Stuffing):

  • 데이터 내부에 1이 5개 연속으로 나타나면 그 뒤에 0을 강제로 삽입
  • 수신측에서는 1이 5개 연속 후 0이 나오면 그 0을 제거
 
원본 데이터:        ... 011111100 ...
비트 스터핑 후:     ... 0111110100 ...
                          ↑ 강제 삽입된 0

대표 사용처: HDLC 프로토콜

 

3.3 물리 계층 코딩 위반 (Coding Violation)

원리: 선 부호화에서 사용하지 않는 비 데이터 코드를 활용해 프레임 경계 표시

예시: 4B/5B 인코딩에서 사용하지 않는 코드를 프레임 시작·끝 신호로 사용

대표 사용처: 이더넷(Ethernet)프리앰블 + SFD (Start of Frame Delimiter) 사용

[이더넷 프레임 구조]
[프리앰블 7바이트][SFD 1바이트][목적지 MAC][출발지 MAC][데이터]...
       ↑              ↑
   동기화 신호     프레임 시작 표시

 

3.4 3종 비교 ⭐

방식 경계 표시 스터핑 대표 프로토콜
바이트 지향 FLAG 바이트 바이트 스터핑 (ESC 삽입) PPP
비트 지향 01111110 비트 스터핑 (5개 1 후 0 삽입) HDLC
물리 계층 코딩 비 데이터 코드 불필요 (코드 자체로 구분) 이더넷

 


 

4. 비트 스터핑 상세 예시

4.1 송신측

단계 비트
원본 0 1 1 1 1 1 1 0
1이 5개 연속 후 0 강제 삽입 0 1 1 1 1 1 0 1 0

 

4.2 수신측

수신 데이터: 0111110 1 0

수신측은 1이 5개 연속 후 나오는 0을 제거합니다.

단계 비트
수신 0 1 1 1 1 1 0 1 0
1이 5개 연속 후 0 → 제거 0 1 1 1 1 1 1 0 (원본 복원)

핵심: 송신측의 스터핑과 수신측의 디스터핑이 정확한 역과정을 이룹니다.

 


 

5. 프레임의 일반 구조

대부분의 프레임은 다음과 같은 구조를 따릅니다.

[FLAG][헤더][데이터(페이로드)][FCS/체크섬][FLAG]
  ↑     ↑       ↑                 ↑           ↑
 시작  주소·    네트워크 계층    오류 검출   끝
       제어    데이터          코드
       정보

 

필드 역할
FLAG 프레임 시작·끝 표시
헤더 주소(MAC), 제어 정보, 순서 번호
페이로드 상위 계층 데이터 (네트워크 계층 패킷)
FCS (Frame Check Sequence) 오류 감지 코드 (CRC 등)

6. 한눈에 정리

6.1 데이터 링크 계층

역할 : 노드-투-노드 통신 (인접 노드 간)
계층 : OSI 2계층
서브 : DLC (제어) + MAC (매체 접근)
3대 기능 : 프레이밍 + 오류 제어 + 흐름 제어

 

6.2 프레이밍 3종

바이트 지향 (PPP)         → ESC 스터핑
비트 지향 (HDLC)          → 5개 1 후 0 삽입
물리 계층 코딩 (이더넷)   → 비 데이터 코드 + 프리앰블/SFD

 


🎯 Lv.1 객관식 — 개념 및 중요 내용 확인 (10문제)


📝 1번 문제

데이터 링크 계층의 OSI 모델상 위치는?

① 1계층 (물리)

② 2계층

③ 3계층 (네트워크)

④ 4계층 (전송)

 

✅ 정답: ②

📖 해설 데이터 링크 계층 = OSI 모델 2계층입니다.

계층 명칭
1 물리
2 데이터 링크
3 네트워크
4 전송
5 애플리케이션 (TCP/IP)

📝 2번 문제

데이터 링크 계층의 통신 단위는?

① 비트

② 프레임

③ 데이터그램

④ 메시지

 

✅ 정답: ②

📖 해설

계층 PDU
1 물리 비트
2 데이터 링크 프레임(Frame)
3 네트워크 데이터그램
4 전송 세그먼트
5 애플리케이션 메시지

📝 3번 문제

데이터 링크 계층의 핵심 통신 방식은?

① 종단 간(End-to-End) 통신

② 노드-투-노드 통신 (인접 노드 간)

③ 브로드캐스트 통신만

④ 단방향 통신만

 

✅ 정답: ②

📖 해설

데이터 링크 계층 = 인접한 두 노드 간(홉 단위) 통신입니다.

[호스트] ── 데이터 링크 ── [라우터] ── 데이터 링크 ── [호스트]
         ↑한 홉                      ↑한 홉

⭐ 라우터를 거칠 때마다 새 프레임이 생성되어요. 이게 바로 "MAC 주소는 홉마다 변경"의 이유입니다.


📝 4번 문제

데이터 링크 계층의 3대 핵심 기능에 해당하지 않는 것은?

① 프레이밍

② 오류 제어

③ 흐름 제어

④ 라우팅

 

✅ 정답: ④

📖 해설

라우팅은 3계층(네트워크)의 역할입니다. 데이터 링크 계층은 인접 노드 간 통신만 책임지고, 경로 결정은 하지 않아요.

데이터 링크 3대 기능
프레이밍
오류 제어
흐름 제어

📝 5번 문제

데이터 링크 계층의 두 서브 계층은?

① TCP, UDP

② DLC, MAC

③ IP, ICMP

④ HTTP, FTP

 

✅ 정답: ②

📖 해설

서브 계층 역할
DLC (Data Link Control) 프레이밍·오류 제어·흐름 제어
MAC (Medium Access Control) 공유 매체 접근 관리 (충돌 방지)

⭐ DLC는 "데이터 링크 자체의 제어", MAC은 "공유 매체 접근 관리"라고 외우세요.


📝 6번 문제

프레이밍(Framing)의 핵심 정의는?

① 데이터를 압축하는 과정

② 비트 스트림을 논리적 단위인 프레임으로 묶는 과정

③ 디지털을 아날로그로 변환

④ 라우팅 경로를 결정

 

✅ 정답: ②

📖 해설

프레이밍 = 비트 스트림 → 프레임으로 묶기

비유: 긴 기차에 객실(프레임)을 만들어 승객(비트)을 구분하는 것과 같아요. 시작과 끝을 명확히 해서 오류 검사·재전송·흐름 제어의 기본 단위가 됩니다.


📝 7번 문제

바이트 지향 프레이밍에서 데이터 내부에 FLAG 바이트가 나타날 때 사용하는 기법은?

① 비트 스터핑

② 바이트 스터핑 (ESC 바이트 삽입)

③ 데이터 압축

④ 무시하고 전송

 

✅ 정답: ②

📖 해설

바이트 스터핑 = 데이터 내부 FLAG 앞에 ESC 바이트 삽입

원본:    ... FLAG ...
스터핑 후: ... ESC FLAG ...
              ↑ 이것은 데이터!

수신측에서는 ESC를 보면 그 뒤 바이트를 데이터로 처리하고 ESC를 제거합니다. PPP 프로토콜이 대표 사용처예요.


📝 8번 문제

비트 지향 프레이밍에서 사용하는 프레임 경계 표시 패턴은?

① 0x7E (10진수)

② 01111110 (이진수)

③ 11111111 (이진수)

④ 00000000 (이진수)

 

✅ 정답: ②

📖 해설

비트 지향 프레이밍의 FLAG = 01111110

이 패턴은 데이터 안에 우연히 나올 가능성을 막기 위해 비트 스터핑(1이 5개 연속 후 0 삽입) 을 사용해요.

HDLC 프로토콜이 이 방식을 사용합니다.


📝 9번 문제

비트 스터핑에서 송신측이 데이터에 0을 강제로 삽입하는 조건은?

① 0이 5개 연속될 때

② 1이 5개 연속될 때

③ 1이 8개 연속될 때

④ FLAG 패턴이 정확히 나올 때만

 

✅ 정답: ②

📖 해설

비트 스터핑 규칙: 1이 5개 연속되면 그 뒤에 0을 강제로 삽입

원본:    01111110 (FLAG와 같음)
스터핑: 011111010 ← 1이 5개 연속 후 0 삽입

이렇게 하면 데이터 안에 절대 01111110이 나오지 않아요. 수신측은 1이 5개 연속 후 0을 보면 그 0을 제거합니다.


📝 10번 문제

다음 중 프레이밍 방식과 대표 프로토콜 매칭이 잘못된 것은?

① 바이트 지향 — PPP

② 비트 지향 — HDLC

③ 물리 계층 코딩 — 이더넷

④ 비트 지향 — 이더넷

 

✅ 정답: ④

📖 해설

 

프레이밍 방식 대표 프로토콜
바이트 지향 PPP
비트 지향 HDLC
물리 계층 코딩 이더넷 (프리앰블 + SFD)

⭐ 이더넷은 물리 계층 코딩 위반 방식을 사용합니다. 비트 지향이 아니에요.

 

 

 

 


 

 

 

🎯 Lv.2 객관식 — 심화 개념 확인 (10문제)


📝 1번 문제

다음 중 데이터 링크 계층과 다른 계층의 차이로 옳은 것은?

① 데이터 링크는 종단 간 통신, 네트워크는 노드-투-노드 통신

② 데이터 링크는 노드-투-노드 통신, 네트워크는 호스트 간 종단 간 통신

③ 데이터 링크와 물리 계층 모두 라우팅을 담당

④ 데이터 링크는 비트, 물리는 프레임 단위로 통신

 

✅ 정답: ②

📖 해설

계층 통신 범위 단위
1 물리 신호 전송 비트
2 데이터 링크 노드-투-노드 프레임
3 네트워크 호스트 간 종단 데이터그램

⭐ "데이터 링크 = 홉 단위, 네트워크 = 종단 간"이 핵심 차이입니다.


📝 2번 문제

다음 중 데이터 링크 계층의 흐름 제어가 필요한 가장 본질적인 이유는?

① 데이터를 압축하기 위해

② 빠른 송신자가 느린 수신자를 압도해 수신 버퍼 오버플로우 발생을 방지

③ 라우팅 경로를 최적화하기 위해

④ IP 주소를 자동 할당하기 위해

 

✅ 정답: ②

📖 해설

비유: 수도꼭지(송신자)에서 물(데이터)이 너무 빠르게 쏟아지면 싱크대(수신자 버퍼)가 넘칩니다. 흐름 제어는 송신 속도를 수신자가 처리할 수 있는 속도에 맞추는 것이에요.

흐름 제어의 목적 = 수신자 버퍼 보호.


📝 3번 문제

다음 사례에서 사용된 프레이밍 방식은?

"송신측에서 데이터 '01111110'을 보내려고 하는데, 비트 패턴이 FLAG와 동일해서 그대로 보내면 수신측이 프레임 끝으로 오해할 수 있다. 그래서 송신측은 '011111010'으로 변환해 보냈다."

 

① 바이트 지향 + 바이트 스터핑

② 비트 지향 + 비트 스터핑

③ 물리 계층 코딩

④ 패리티 비트 추가

 

✅ 정답: ②

📖 해설

1이 5개 연속 후 0을 강제 삽입하는 것은 비트 지향 + 비트 스터핑 방식입니다.

원본:    01111110
스터핑:  011111010
              ↑ 강제 삽입된 0

⭐ HDLC 프로토콜이 사용하는 대표적인 방식입니다.


📝 4번 문제

다음 시나리오에서 사용된 프레이밍 방식은?

"PPP 프로토콜에서 데이터 안에 FLAG와 동일한 바이트가 있을 때, 그 앞에 ESC 바이트를 추가해 데이터임을 표시한다."

 

① 비트 지향 + 비트 스터핑

② 바이트 지향 + 바이트 스터핑

③ 물리 계층 코딩 위반

④ 단순 NRZ 부호화

 

✅ 정답: ②

📖 해설

PPP는 바이트 지향 프레이밍을 사용하며, ESC 바이트로 바이트 스터핑을 합니다.

 

프로토콜 프레이밍 스터핑
PPP 바이트 지향 ESC 바이트
HDLC 비트 지향 5개 1 후 0

📝 5번 문제

이더넷이 사용하는 프레임 경계 표시 방식은?

① 01111110 비트 패턴

② FLAG 바이트 (0x10)

③ 프리앰블 + SFD (Start of Frame Delimiter)

④ 패리티 비트

 

✅ 정답: ③

📖 해설

이더넷 = 프리앰블 + SFD 방식 (물리 계층 코딩 위반)

[프리앰블 7바이트][SFD 1바이트][MAC 주소 등...][CRC]
       ↑              ↑
    동기화           프레임 시작

프리앰블은 송수신 동기화에, SFD는 프레임의 시작을 알리는 역할이에요.


📝 6번 문제

비트 스터핑에서 수신측이 비트 1이 5개 연속된 후 0이 나타나면 어떻게 처리하는가?

① 그 0을 제거하여 원본 데이터 복원

② 0을 1로 변환

③ 프레임을 폐기

④ 송신측에 NAK 전송

 

✅ 정답: ①

📖 해설

비트 디스터핑(De-stuffing) = 1이 5개 연속 후 0이 나오면 그 0 제거

송신측 스터핑과 수신측 디스터핑은 정확한 역과정입니다.

[송신측]            [수신측]
01111110            011111010
   ↓ 스터핑              ↓ 디스터핑
011111010           01111110
                     (원본 복원)

📝 7번 문제

다음 중 데이터 링크 계층의 두 서브 계층의 역할이 잘못 매칭된 것은?

① DLC — 프레이밍, 오류 제어, 흐름 제어

② MAC — 공유 매체 접근 관리, 충돌 방지

③ DLC — 라우팅 경로 결정

④ MAC — CSMA/CD, CSMA/CA

 

✅ 정답: ③

📖 해설

라우팅은 3계층(네트워크)의 역할입니다. DLC는 프레이밍·오류·흐름 제어를 담당해요.

서브 계층 핵심 역할
DLC 프레이밍, 오류 제어, 흐름 제어 ✅
MAC 공유 매체 접근 관리 (CSMA/CD, CSMA/CA) ✅

📝 8번 문제

다음 중 프레이밍이 필요한 이유로 가장 적절하지 않은 것은?

① 오류 감지의 단위로 사용

② 흐름 제어의 단위로 사용

③ 재전송의 단위로 사용

④ 데이터 압축의 단위로 사용

 

✅ 정답: ④

📖 해설

데이터 압축은 소스 코딩의 영역이지 프레이밍과 무관합니다.

프레이밍이 필요한 이유
✅ 오류 감지·수정의 단위
✅ 흐름 제어의 단위
✅ 재전송의 단위

📝 9번 문제

다음 중 일반적인 프레임 구조에 포함되지 않는 필드는?

① FLAG (시작·끝)

② 헤더 (주소·제어 정보)

③ 페이로드 (상위 계층 데이터)

④ DNS 캐시

 

✅ 정답: ④

📖 해설

DNS 캐시는 5계층 애플리케이션의 영역입니다. 프레임은 다음과 같이 구성돼요.

[FLAG][헤더][페이로드][FCS][FLAG]
  ↑     ↑      ↑        ↑
 경계  주소   네트워크  오류
       제어   계층      검출
              데이터

📝 10번 문제

다음 시나리오를 분석한 설명 중 가장 정확한 것은?

"호스트 A에서 호스트 B로 데이터 전송 시, 중간에 라우터 R1과 R2를 거친다. A→R1, R1→R2, R2→B 각 구간에서 데이터가 새로운 프레임으로 캡슐화된다."

 

① 한 프레임이 종단 간 그대로 유지된다

② 데이터 링크 계층은 노드-투-노드 통신이므로 각 홉마다 새 프레임이 생성된다

③ 라우터는 데이터 링크 계층을 사용하지 않는다

④ 프레임은 항상 호스트에서만 생성된다

 

✅ 정답: ②

📖 해설

데이터 링크 계층은 노드-투-노드(홉 단위) 통신이므로, 라우터를 거칠 때마다 새 프레임이 생성됩니다.

[A] ──프레임1── [R1] ──프레임2── [R2] ──프레임3── [B]
   각 구간마다 새 프레임 (MAC 주소도 변경)

⭐ 이전에 배운 "IP 주소는 종단 간 불변, MAC 주소는 홉마다 변경" 의 직접적인 근거가 바로 이거예요.

 

 


 

 

 

🎯 Lv.3 — 객관식 + 빈칸 채우기 혼합 (10문제)


📝 1번 문제 [빈칸형]

다음 데이터 링크 계층 정의 빈칸을 채우시오.

데이터 링크 계층은 OSI 모델의 ( ㄱ )계층으로, 물리 계층에서 직접 연결된 두 ( ㄴ ) 간의 데이터 전송을 담당한다.
통신 단위는 ( ㄷ )(이)며, 두 서브 계층은 ( ㄹ )와(과) ( ㅁ )(이)다.
3대 핵심 기능은 ( ㅂ ), ( ㅅ ), ( ㅇ )(이)다.

✅ 정답

  • ㄱ: 2
  • ㄴ: 노드(Node)
  • ㄷ: 프레임(Frame)
  • ㄹ: DLC (Data Link Control)
  • ㅁ: MAC (Medium Access Control)
  • ㅂ, ㅅ, ㅇ: 프레이밍(Framing), 오류 제어(Error Control), 흐름 제어(Flow Control)

📖 해설 ⭐ 데이터 링크 계층 핵심 정리:

2계층 + 노드-투-노드 + 프레임
서브: DLC + MAC
3대 기능: 프레이밍 + 오류 제어 + 흐름 제어

📝 2번 문제 [빈칸형]

다음 프레이밍 3종 빈칸을 채우시오.

프레이밍 방식 경계 표시 스터핑 기법 대표 프로토콜
바이트 지향 ( ㄱ ) 바이트 ( ㄴ ) 스터핑 ( ㄷ )
비트 지향 ( ㄹ ) 패턴 ( ㅁ ) 스터핑 ( ㅂ )
물리 계층 코딩 비 데이터 코드 불필요 ( ㅅ )

✅ 정답

  • ㄱ: FLAG (예: 0x10)
  • ㄴ: 바이트(Byte) — ESC 삽입
  • ㄷ: PPP
  • ㄹ: 01111110
  • ㅁ: 비트(Bit) — 5개 1 후 0 삽입
  • ㅂ: HDLC
  • ㅅ: 이더넷(Ethernet) — 프리앰블 + SFD

📖 해설 ⭐ 프레이밍 3종 한 묶음 외우기:

바이트 지향  → FLAG + ESC 스터핑    → PPP
비트 지향   → 01111110 + 비트 스터핑 → HDLC
물리 코딩   → 프리앰블 + SFD        → 이더넷

📝 3번 문제 [객관식]

다음 중 비트 스터핑(Bit Stuffing) 규칙으로 옳은 것은?

① 0이 3개 연속되면 1을 삽입

② 1이 5개 연속되면 그 뒤에 0을 강제로 삽입

③ FLAG 패턴이 데이터에 정확히 나올 때만 0 삽입

④ 데이터 시작 부분에 무조건 0 삽입

 

✅ 정답: ②

📖 해설

단계 규칙
송신측 (스터핑) 1이 5개 연속 → 뒤에 0 강제 삽입
수신측 (디스터핑) 1이 5개 연속 후 0 → 그 0 제거

⭐ "5개 1 → 0 삽입"이라는 규칙은 데이터 안에 절대 01111110(FLAG)이 나오지 않게 막는 거예요.


📝 4번 문제 [빈칸형]

다음 비트 스터핑 변환의 빈칸을 채우시오. (1이 5개 연속되면 그 뒤에 0 삽입)

원본 데이터: 01111110 11111111 비트 스터핑 후: ( ㄱ ) ( ㄴ )

 

✅ 정답

  • ㄱ: 011111010
  • ㄴ: 111110111

📖 해설

[01111110 처리]
0 1 1 1 1 1 1 0
       ↑5개 1 후 0 삽입 (강제)
0 1 1 1 1 1 0 1 0  ← 스터핑 결과

[11111111 처리]
1 1 1 1 1 1 1 1
       ↑5개 1 후 0 삽입
1 1 1 1 1 0 1 1 1  ← 스터핑 결과

⭐ 송신측은 무조건 1이 5개 연속되면 그 뒤에 0을 삽입합니다. 그 다음 비트가 무엇이든 상관없어요.


📝 5번 문제 [객관식]

다음 사례에서 가장 적합한 프레이밍 방식은?

"이더넷 LAN에서 두 컴퓨터가 통신할 때, 4B/5B 인코딩의 비 데이터 코드를 사용해 프레임 시작과 끝을 구분한다."

 

① 바이트 지향 (PPP)

② 비트 지향 (HDLC)

③ 물리 계층 코딩 위반 (이더넷)

④ ESC 스터핑

 

✅ 정답: ③

📖 해설

이더넷은 물리 계층 코딩 위반 방식을 사용합니다. 4B/5B 인코딩에서 사용하지 않는 비 데이터 코드를 프레임 경계 신호로 활용해요.

[이더넷 프레임]
[프리앰블][SFD][목적지 MAC][출발지 MAC][데이터][CRC]
   ↑         ↑
 동기화     시작 표시

⭐ 이더넷은 스터핑이 불필요해요 — 비 데이터 코드는 데이터 안에 절대 나올 수 없기 때문이에요.


📝 6번 문제 [빈칸형]

다음 빈칸을 채우시오.

데이터 링크 계층의 통신은 종단 간(End-to-End)이 아니라 ( ㄱ ) 통신이다. 따라서 데이터가 호스트 A에서 라우터 R1, R2를 거쳐 호스트 B로 갈 때, 각 구간마다 ( ㄴ )이(가) 새로 생성된다. 그 결과 ( ㄷ ) 주소는 종단 간 불변이지만, ( ㄹ ) 주소는 홉마다 변경된다.

✅ 정답

  • ㄱ: 노드-투-노드(Node-to-Node) 또는 홉 바이 홉(Hop-by-Hop)
  • ㄴ: 프레임(Frame)
  • ㄷ: IP
  • ㄹ: MAC

📖 해설

⭐ 이전에 배운 "IP는 불변, MAC은 변경"의 근본 원인이 바로 데이터 링크 계층의 노드-투-노드 통신입니다.

[A]──프레임1──[R1]──프레임2──[R2]──프레임3──[B]
   IP A→B     IP A→B      IP A→B   (불변)
   MAC A→R1   MAC R1→R2   MAC R2→B  (홉마다 변경)

📝 7번 문제 [객관식]

다음 중 프레임의 일반 구조에서 FCS(Frame Check Sequence)의 역할은?

① 프레임의 시작을 표시

② 프레임의 끝을 표시

③ 오류 감지 (CRC 등)

④ 송신자의 IP 주소

 

✅ 정답: ③

📖 해설 FCS = 오류 감지 코드 (주로 CRC 사용)

[FLAG][헤더][페이로드][FCS][FLAG]
                       ↑
                  오류 감지 코드

수신측은 FCS를 검사해 프레임이 손상되었는지 확인합니다. CRC가 가장 강력하고 자주 사용돼요.


📝 8번 문제 [빈칸형]

다음 데이터 링크 계층 종합 표 빈칸을 채우시오.

항목 핵심
통신 범위 ( ㄱ ) (인접 노드 간)
통신 단위 ( ㄴ )
두 서브 계층 ( ㄷ ) + ( ㄹ )
3대 기능 프레이밍 + ( ㅁ ) + ( ㅂ )
프레이밍 3종 바이트 지향 + ( ㅅ ) + 물리 계층 코딩
PPP의 프레이밍 ( ㅇ ) 지향
HDLC의 프레이밍 ( ㅈ ) 지향

✅ 정답

  • ㄱ: 노드-투-노드(Node-to-Node)
  • ㄴ: 프레임(Frame)
  • ㄷ: DLC
  • ㄹ: MAC
  • ㅁ: 오류 제어(Error Control)
  • ㅂ: 흐름 제어(Flow Control)
  • ㅅ: 비트 지향(Bit-Oriented)
  • ㅇ: 바이트(Byte)
  • ㅈ: 비트(Bit)

📖 해설 

[12편 한 줄 요약]
계층 : OSI 2계층, 노드-투-노드, 프레임 단위
서브 : DLC + MAC
기능 : 프레이밍 + 오류 제어 + 흐름 제어
프레이밍 : 바이트(PPP), 비트(HDLC), 물리 코딩(이더넷)

📝 9번 문제 [객관식]

다음 시나리오를 분석한 설명 중 가장 정확한 것은?

"PPP 프로토콜로 데이터를 보내는데, 페이로드 안에 FLAG와 동일한 바이트가 우연히 포함되어 있다. 송신측은 FLAG 바이트 앞에 ESC 바이트를 추가해 전송했고, 수신측은 ESC를 보면 그 다음 바이트를 데이터로 처리한 후 ESC를 제거했다."

① 이는 비트 스터핑의 사례다

② 이는 바이트 스터핑의 사례로, 송수신측이 정확한 역과정을 통해 원본 데이터를 복원한다

③ 데이터가 손실된다

④ FLAG 바이트는 프레임 안에 절대 나타나지 않는다

 

✅ 정답: ②

📖 해설

바이트 스터핑(ESC 삽입) ↔ 디스터핑(ESC 제거) 의 정확한 역과정입니다.

[송신측]
원본:    ... FLAG ...
스터핑:  ... ESC FLAG ...
            ↑ "이건 데이터!" 표시

[수신측]
수신:    ... ESC FLAG ...
디스터핑: ... FLAG ... ← 원본 복원

⭐ PPP는 바이트 지향이라 ESC 스터핑을 사용해요. 비트 스터핑은 HDLC가 사용합니다.


📝 10번 문제 [빈칸형]

다음 프레임 일반 구조의 빈칸을 채우시오.

[( ㄱ )][헤더][페이로드][( ㄴ )][( ㄱ )]

ㄱ. 프레임의 시작과 끝을 표시: ( )
ㄴ. 오류 감지를 위한 코드 (주로 CRC 사용): ( )
ㄷ. 헤더에 포함되는 주요 정보 3가지: ( ), ( ), ( )

 

✅ 정답

  • ㄱ: FLAG
  • ㄴ: FCS (Frame Check Sequence) 또는 체크섬
  • ㄷ: 주소(MAC), 제어 정보, 순서 번호

📖 해설 ⭐ 프레임 구조 한 묶음:

[FLAG][헤더 (주소·제어·순서)][페이로드 (네트워크 계층 데이터)][FCS][FLAG]
  ↑               ↑                       ↑                  ↑
 경계        제어 정보              상위 계층 데이터        오류 검출