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

  1. 본질: 프레임 릴레이 망에서 **CIR(Committed Information Rate)**은 통신사가 고객에게 24시간 무조건 보장하기로 약속한 최저 통신 속도(대역폭)이며, 이를 초과하는 데이터는 망이 한가할 때만 전송해주고 바쁠 땐 가차 없이 버려지는(Drop) '유연한 요금제'의 핵심 기준선이다.
  2. FECN (순방향 혼잡 알림): 통신사 망 내부에 트래픽이 꽉 막혀 혼잡이 발생했을 때, 스위치가 데이터를 받는 목적지(수신자) 쪽으로 가는 프레임의 헤더에 "지금 오는 길 엄청 막혀!"라고 경고 스티커를 붙여 보내는 알림 비트다.
  3. BECN (역방향 혼잡 알림): 통신사 망 내부가 막혔을 때, 데이터를 보내고 있는 출발지(송신자) 쪽으로 되돌아가는 프레임의 헤더에 "앞에 길 막혔으니 제발 데이터 좀 그만(천천히) 보내!"라고 경고 스티커를 붙여 보내는 알림 비트다.

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

  • 개념: 프레임 릴레이(Frame Relay) 프로토콜에서 트래픽의 전송 속도를 계약하고(CIR), 망 내부에 병목 현상(Congestion)이 생겼을 때 이를 양 끝단의 라우터에게 알려주는(FECN, BECN) 헤더 제어 비트 기술이다.

  • 필요성: X.25가 망 내부에서 무겁게 흐름 제어(속도 조절)를 하던 것을 버린 프레임 릴레이는, 스위치가 수만 개의 패킷을 막무가내로 쏟아내는 PC들 때문에 메모리(버퍼)가 꽉 차서 터져버릴 위험에 처했다. 스위치가 버퍼가 터지기 직전, "나 죽을 것 같아! 속도 좀 줄여!"라고 송수신자에게 SOS를 쳐야 하는데, 무거운 별도의 메시지를 만들지 않고 지나가는 프레임 겉면에 스티커(1비트)만 살짝 붙이는 가벼운 방식으로 이를 해결했다.

  • 💡 비유:

    • CIR: 통신사가 "출퇴근 시간에 아무리 길이 막혀도 **최소 시속 60km(CIR)**는 무조건 보장할게! 새벽에 차 없으면 100km까지 밟게 해 줄게!"라고 약속하는 가성비 요금제입니다.
    • FECN / BECN: 톨게이트 직원이 차가 너무 막히자, 부산(수신자)으로 가는 차 트렁크에 "오는 길 엄청 막힘!(FECN)" 딱지를 붙이고, 반대로 서울(송신자)로 돌아가는 차 트렁크에 "야! 차 그만 내려보내!(BECN)" 딱지를 붙여서 양쪽 동네에 도로 상황을 알리는 것입니다.

📢 섹션 요약 비유: 프레임 릴레이 망은 고속도로 중간에서 속도위반 딱지를 직접 끊지 않고, 지나가는 차 유리에 **"나 지금 길 막힘"**이라는 포스트잇만 살짝 붙여서 양 끝단의 출발지/도착지가 알아서 속도를 줄이게 유도하는 **"자율 규제 고속도로"**입니다.


Ⅱ. 혼잡 제어의 메커니즘과 DE 비트 (Deep Dive)

1. 요금 계약: CIR과 Burst Rate

기업 라우터의 포트가 100Mbps짜리라도, 10Mbps CIR 요금제를 계약했다면 평상시 보장받는 속도는 10Mbps다. 만약 기업이 갑자기 15Mbps의 트래픽을 쏟아낸다면?

  • 처음 10Mbps (CIR 내부): 통신사가 무조건 안전하게 배달을 보장한다.
  • 초과한 5Mbps (Burst): 스위치는 이 5Mbps 패킷들에 DE (Discard Eligible, 폐기 적격) 비트를 1로 세팅한다. 망이 널널하면 공짜로 배달해 주지만, 망이 조금이라도 붐비면 스위치는 뒤도 안 돌아보고 DE가 1인 패킷부터 쓰레기통에 처넣어버린다(Drop).

2. 혼잡 알림: FECN (Forward) / BECN (Backward)

망 한가운데 있는 프레임 릴레이 스위치의 메모리(버퍼)가 80% 이상 차오르면 병목이 시작된다.

  • FECN (Forward Explicit Congestion Notification):
    • 서울(송신) ──▶ 부산(수신)으로 가는 데이터 프레임이 막힌 스위치를 통과할 때, 스위치가 프레임 헤더의 FECN 비트를 1로 바꾼다.
    • 부산 라우터가 프레임을 받으면 "아, 중간에 길이 막히는구나. 서울 애들이 고생하겠네."라고 인지한다.
  • BECN (Backward Explicit Congestion Notification):
    • 부산(수신) ──▶ 서울(송신)로 돌아가는(응답) 프레임이 막힌 스위치를 통과할 때, 스위치가 헤더의 BECN 비트를 1로 바꾼다.
    • 서울 라우터가 프레임을 받으면 "헉! 내가 보내는 방향의 길이 막혔대! 데이터 쏘는 속도를 절반으로 줄여야지!"라고 스스로 전송 속도를 낮춘다. (Traffic Shaping 작동)
 ┌─────────────────────────────────────────────────────────────┐
 │                FECN과 BECN의 동작 방향성 도식                 │
 ├─────────────────────────────────────────────────────────────┤
 │                                                             │
 │   [ 서울 본사 (송신) ]                              [ 부산 지사 (수신) ]│
 │      │                                                  ▲    │
 │      │  1. 데이터 마구 쏨     [ 붐비는 스위치 ]               │    │
 │      └────────────────▶ (버퍼 폭발 직전) ──(FECN 붙여 보냄)─┘    │
 │                           │                                   │
 │   2. 송신 속도 감소! ◀──(BECN 붙여 보냄)── 부산에서 오는 일상 데이터 ──┘ │
 │                                                             │
 │   * 핵심: 스위치는 혼잡을 알리기 위해 일부러 새 패킷을 만들지 않는다.  │
 │     그냥 '지나가는' 패킷의 빈칸(비트)에 체크 표시만 할 뿐이다!       │
 └─────────────────────────────────────────────────────────────┘

📢 섹션 요약 비유: DE 비트는 비행기의 **"스탠바이(대기 예약) 티켓"**과 같습니다. 자리가 남으면 공짜로 태워주지만, 자리가 모자라면 1순위로 버려집니다. FECN/BECN은 앞뒤로 오가는 비행기 기장들끼리 **"난기류 조심해!"**라고 허공에서 수신호를 주고받는 극강의 효율적 통신법입니다.