IEEE 802.1Qav — Ethernet AVB 스택의 큐 관리·트래픽 셰이핑 프로토콜. 정식 명칭은 FQTSS (Forwarding and Queuing Enhancements for Time-Sensitive Streams). SRP가 예약한 대역 내에서 AVB 프레임과 비-AVB 프레임을 스케줄링하고, Time-Sensitive Stream에 대해 통신 성능을 보장하거나 최적화한다. 핵심은 CBS(Credit-Based Shaper) 알고리즘.
주요 개념
트래픽 셰이핑 (Traffic Shaping)
과도한 네트워크 점유를 피하기 위해 네트워크 통신량을 제어.
- 대역폭 확보 및 통신 성능 보장·최적화.
- 패킷 끊김(jitter), 패킷 손실(loss), 반응 시간(low latency) 최적화.
- 예약된 대역폭 이내에 AVB/비-AVB 프레임을 전송.
MSDU (MAC Service Data Unit)
- 데이터 링크 계층은 LLC 계층과 MAC 계층으로 나뉘며, LLC 계층이 MAC 계층 위에 위치.
- LLC 계층으로부터 MAC 계층이 데이터를 받는 단위.
SR Class A / B
IEEE 802.1Qav는 SR (Stream Reservation) Class A와 B 두 종류의 Time-Sensitive 트래픽 클래스를 제공한다. Class A가 Class B보다 엄격한 요구사항을 가진다.
| Class | Latency 목표 | 전송 주기 | 비고 |
|---|---|---|---|
| Class A | 2 ms / 7 hop | 8000 packets/s (125 μs/pkt) | 더 높은 우선순위 |
| Class B | 50 ms / 7 hop | — | Class A보다 느슨한 지연 요구 |
예시로 7 Hops를 경유하는 네트워크에서 Class A 스트림의 presentation time은 2 ms 이내로 도달해야 함.
Transmission Selection
비-AVB / AVB 프레임을 송출하기 위한 스케줄링 알고리즘. 802.1Qav는 두 종류를 조합.
| 알고리즘 | 값 | 용도 |
|---|---|---|
| SP (Strict Priority) | 0 | 비-AVB 프레임 전송을 위한 기초 알고리즘. 프레임 우선순위에 따라 전송. 모든 Bridge 지원 필수 |
| CBS (Credit-Based Shaper) | 1 | AVB 프레임 전송 전용. SR Class A/B의 Credit을 기반으로 스케줄링 |
| Reserved | 2-255 | 미래 표준용 |
| Vendor-specific | four-octet integer | 벤더 특정 알고리즘 |
FQTSS 요구사항
- 모든 포트는 최소 2개 트래픽 클래스 지원.
- 최소 한 개 트래픽 클래스는 SP 알고리즘 지원.
- 최소 한 개 트래픽 클래스는 SR Class 지원하며, 이는 모든 포트에서 CBS 를 지원해야 함.
- Ethernet AVB 프레임 전송을 위해서는 CBS 알고리즘 지원 필수.
CBS (Credit-Based Shaper)
SR Class A/B에 할당된 Credit 변수를 가감하며 프레임 전송 가능 여부를 결정.
SR Class 전송 조건
Credit이 양수이고 송신 충돌이 없을 때 전송.
- 충돌 프레임이 없어야 함 (동시 전송 프레임 없음).
- Credit ≥ 0 인 특정 비트 조건 충족 시 AVB 프레임은 대기열에서 해제.
- Credit이 sendSlope 비율로 감소하는 동안 메시지 전송.
Credit 동작
| 상태 | Credit 변화 |
|---|---|
| 전송할 Class A 메시지 없음 | Credit 변경 없음 (idle slope 상태) |
| Credit 충분 → Class A 프레임 전송 | sendSlope 비율로 Credit 감소 |
| 다른 프레임 전송 중이라 Class A 메시지 대기 | idleSlope로 Credit 증가 — 이후 전송 시간 보장 |
결과적으로 AVB 트래픽은 평균 전송률이 예약 대역폭을 초과하지 않도록 자동 조절되며, 비-AVB 트래픽과 공정하게 링크를 공유.
우선순위 매핑
802.1p PCP 3 bit의 Priority 값을 가용 트래픽 클래스 개수에 따라 매핑하는 기본 조건 — SR Class 대응 Priority는 CBS 지원 트래픽 클래스에 매핑, CBS 지원 클래스는 SP 지원 클래스보다 높은 우선순위.
| Priority | 2 classes | 3 | 4 | 5 | 6 | 7 | 8 |
|---|---|---|---|---|---|---|---|
| 0 (기본) | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 2 | 1 | 1 | 2 | 3 | 4 | 5 | 6 |
| 3 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 4 | 0 | 0 | 1 | 1 | 1 | 1 | 2 |
| 5 | 0 | 0 | 1 | 1 | 1 | 2 | 3 |
| 6 | 0 | 0 | 1 | 2 | 2 | 3 | 4 |
| 7 | 0 | 0 | 1 | 2 | 3 | 4 | 5 |
Priority 2·3이 일반적으로 SR Class B·A에 배정되는 영역.
네트워크 지연
- SR Class A 목표: 2 ms / 7 Hop.
- Bridge 평균 지연은 최악의 Talker 지연과 동일하다고 가정하는 것이 일반적.
- 큰 네트워크에서 스트리밍 메시지가 많은 경우 2 ms / 7 Hop 초과 가능성 존재 → AVB Gen1의 한계.
AVB Gen2 제안: Pre-Emption
AVB Gen1의 CBS만으로는 길이가 긴 비-AVB 프레임이 Class A 프레임 송신을 지연시키는 문제를 해결하지 못한다. Gen2에서는 Pre-Emption 기법을 추가.
- 긴 프레임(예: 비-AVB B)을 연속적으로 조각내어 전송.
- Class A 프레임이 도착하면:
- Suspend B — 송신 중인 B를 중단.
- Transmit A — Class A 프레임 우선 전송.
- Resume B — B의 나머지 조각 이어서 전송.
- CBS와 결합되어 Credit 변동 + 프레임 조각화를 병행.
이 개념은 이후 TSN의 IEEE 802.1Qbu (Frame Preemption) 로 표준화.