QoS 달성을 위한 대표 전략 두 가지
1. 데이터 스트림과 상호 작용하며 자원 할당을 조절
2. 엔드 투 엔드 스트림 경로의 모든 리소스에 필요 자원을 미리 고려하여 예약
실시간 시스템이란?
- 주어진 시간 범위내에서 결과를 처리해서 전달하는 프로세스
실시간 시스템의 주 성질은 정확성이고 이것은 에러 없는 것만 의미하지 않고, 결과가 제시되는 시간도 의미
속도나 효율성은 실시간 시스템의 주 성질이 아님
실시간 시스템의 데드라인에는 soft와 hard가 존재함
- soft : 기한을 놓쳐도 용납할 수 없는 결과를 초래하지 않는 경우
- hard : 기한 놓치면 시스템 오류로 이어지는 경우
실시간 시스템의 보증은 처리 기계가 붕괴되거나, 도착 시간이 알려지지 않은 무작위 간격으로 발생하는 사건은 불가능
실시간 시스템의 특징
1) 예측 가능하고 빠른 응답
2) 높은 수준의 스케줄러빌리티 (민감한 작업의 기한을 만족시킬 수 있는 자원 활용 정도)
3) 시스템 과부하에서의 안정성
타이밍 보장을 위한 성질
1) 멀티태스킹
- 실시간 시스템은 다양한 개별 태스크로 구성되어있으므로, 이를 잘 분배해서 CPU 할당해야함
2) 짧은 인터럽트 지연
3) 빠른 컨텍스트 스위칭
4) 메모리 관리
- 가상 메모리 페이징으로 인한 불필요한 지연을 방지하기 위해 중요 코드와 데이터를 메모리 고정 필수
5) 적당한 스케줄링
- OS 차원에서 시간 제한 작업에 대한 적절한 스케줄링 필요
6) 미세 간격 타이머 서비스 필요 (밀리초, 마이크로초..)
7) 태스크 간 통신을 위한 매커니즘 (message queue, shared memory, semaphore, event flag ..)
멀티미디어 시스템은 전통적인 실시간 시스템과 비교해서 다른 요구사항을 가짐
1) 내결함성이 덜 엄격함. 짧은 시간의 실패가 어떠한 붕괴를 가져오지는 않음
- 원격 수술을 위한 의료기기 등에서는 예외
2) 기한을 놓치는 것이 심각한 실패가 아님
- 약간의 프레임 드랍이나 오디오 지터로 인한 갭이 인간의 민감함 범주 미만일 수 있음
3) 미디어 데이터의 연속은 주기적인 샘플링과 이미지 신호의 결과임
4) 대역폭은 가변적이며 협상 가능함
사람과 상호작용하는 시나리오에서는 약간의 지연도 체감이 크고, 첫 프레임 지연에는 덜 민감한데
일단 스트리밍 시작된 이후부터는 민감도 커짐
프로세싱과 통신 제약
1) 메모리를 복사하지 않고 다루는 버퍼 관리 메커니즘이 필요
2) 계층형 통신 아키텍처에서는 계층마다 다루는 PDU (Protocol Data Unit)이 다름
-> 상위계층과 하위계층 사이의 데이터 분할 및 재조립 시 지연이 최소화되어야 함
3) 일부 프로토콜은 재전송과 같은 오류 복구 메커니즘이 존재하는데, 이를 위해서는 버퍼 공간이 넉넉해야하며
단말까지의 지연이 늘어나므로 지연 증가 가능성을 계산에 넣어야 함
QoS는 시나리오에 따라 목표가 달라지므로 파라미터화하여 유동적으로 애플리케이션에서 변경가능한 구조로 설계해야함

- 개별 레이어는 다른 레이어와 연결되는 QoS 파라미터를 가짐
- 계층이 너무 많아지면 성능 오버헤드 일으키고, E2E 품질 영향 미침
멀티미디어 QoS의 계층별 분류
1. 인지적(Perceptual) QoS — 사용자 관점
- 핵심: 사람이 직접 느끼는 주관적 만족도와 비용.
- 내용: "영상이 좋은지 나쁜지", "화면 크기가 큰지 작은지", 그리고 "내가 이 서비스를 쓰기 위해 지불할 의향이 있는 가격(Pricing)"까지 포함.
2. 응용 프로그램(Application) QoS — 소프트웨어 관점
- 핵심: 앱이 원활히 돌아가기 위해 필요한 구체적 규격과 대처 방안.
- 내용:
- 미디어 품질: 프레임 레이트, 해상도, 단말 간 지연, 지터.
- 미디어 간 관계: 오디오와 비디오의 동기화 스큐(Skew).
- 적응 규칙 (Adaptation Rules): 네트워크 대역폭이 부족할 때 어떻게 대처할 것인가(예: 화질 낮추기).
- (참고: 이를 코드나 시스템으로 표현하는 방법으로 스크립트 기반, 파라미터 기반, 객체 지향적 접근 등이 있음)
3. 시스템(System) QoS — 운영체제(OS) 및 컴퓨팅 관점
- 핵심: 응용 프로그램의 요구를 받아 OS가 처리해야 할 자원 할당 기준.
- 내용:
- 정량적 기준: 초당 비트 수(bps), 처리 시간, 태스크 주사율, 버퍼 크기.
- 정성적 기준: 스트림 간 동기화, 순서 보장 배달, 오류 복구, 스케줄링 메커니즘.
4. 네트워크(Network) QoS — 전송 계층 관점
- 핵심: 라우터와 네트워크 구간에서 보장해야 할 성능 계약.
- 내용:
- 네트워크 부하: 트래픽의 형태(버스트성, 패킷 크기 등).
- 네트워크 성능: 지연 상한선(Delay Bound), 패킷 손실률 등. 이를 흔히 트래픽 계약(Traffic Contract) 형태로 묶어서 관리
5. 디바이스(Device) QoS — 하드웨어 관점
- 핵심: 카메라, 스피커, 디스플레이 같은 실제 하드웨어가 요구하는 타이밍과 처리량
계층별 서비스 객체와 QoS 파라미터
- 네트워크 & 전송 계층
- 대상 객체 : 네트워크 연결, 가상 회선(VC), 패킷 스트림
- 파라미터 : 처리량, 에러율, 지연 허용 한계, 패킷 지터, 플로우 스펙 (RSVP 등 자원 예약)
- 운영체제 계층
- 대상 객체 : 태스크 (프로세스,스레드), 메모리 청크
- 파라미터 : 마감 시간, 처리 시간, 메모리 크기, pinned memory 여부 등
- 미들웨어 계층
- 대상 객체 : 분산 객체, 원격 호출 메소드, 컴포넌트
- 파라미터 : 타이밍 및 동기화 파라미터
QoS Service Class

- 서비스 클래스의 종류 (최소 3가지)
- 보장형 서비스 (Guaranteed Class): 높은 품질과 확실한 QoS 보장 (자원 미리 예약, 신뢰성 높음)
- 최선형 서비스 (Best Effort Class): 보장 없이 가능한 만큼만 제공 (자원 활용률은 높으나 충돌 발생 가능)
- 예측형 서비스 (Predictive Class): 통계적 특성 기반 예측 제공 (중간 단계)
- 결정하는 핵심 요소: (1) 제공되는 QoS의 신뢰성, (2) 자원 이용률
- Best Effort 클래스 구간: 수용 가능한 품질(acceptable quality) 수준의 요구사항이며, 충돌(Conflicts) 가능성이 존재함.
- Guaranteed 클래스 구간: 고품질(high quality)의 원하는 QoS(desired QoS)를 만족하기 위해 자원을 확실하게 할당함. (오른쪽으로 갈수록 QoS 증가)
결정론적(Deterministic) QoS 표현 및 수식
- 기본 매핑 수식:
- T: 서비스가 유지되는 시간 도메인(Time domain)
- R: QoS 파라미터 값을 나타내는 양의 실수 도메인
-
QoS: T -> R
- QoS 경계값 지정 방식:
- 단일 값 (Single Value): 평균값, 계약값, 임계값, 타겟값 등
- 범위 값 (Pair of Values): 최소값과 최대값의 쌍 [QoS_min, QoS_max]
-
QoS_min <= QoS(t) <= QoS_max
- 실제 활용 예시 (ATM 네트워크의 VBR 대역폭):
-
B_min <= B(t) <= B_max
-
1. QoS 파라미터 범위와 트레이드오프
- 허용 영역과 비허용 영역 구분
- 쌍 값(Pair value) 명시는 QoS 범위를 허용 품질 영역([QoS_{min}, QoS_{max}])과 비허용 품질 영역(QoS(t) < QoS_{min})으로 분리함.
- 전체 QoS를 지정하기 위해 최고 값(QoS_{max}), 평균 값(QoS_{save}), 최저 값(QoS_{min})의 트리플 값(Triple of values)을 활용할 수 있음.
- 해상도와 프레임 레이트의 트레이드오프
- 비디오 데이터 처리 시 해상도와 프레임 레이트 간에는 상충 관계가 존재함.
- 해상도를 높이면(예: 640×480) 처리량 증가로 인해 프레임 레이트가 낮아지고, 해상도를 낮추면(예: 80×40) 높은 프레임 레이트(30fps) 유지가 가능해짐.
- 특정 해상도 미만 또는 최소 프레임 레이트 미만의 구간은 Unacceptable Region(비허용 영역)으로 정의됨.
2. 통계적 보장과 예측형 서비스
- 통계적 보장 (Statistical Bounds)
- 패킷 오류율이나 대역폭 등에 대한 통계적 경계를 다룸.
- 대역폭 요구사항의 확률적 표현 예시: P(B > B_{min}) = p (최소 대역폭 B_{min}보다 큰 대역폭 B가 제공될 확률이 p이며, p는 1에 가까운 값임).
- 예측형 서비스 (Predictable Service)
- 과거 네트워크 동작 이력(History)을 기반으로 QoS 파라미터 경계를 추정함.
- 전체 평균 기반 예측:
- 슬라이딩 윈도우 기반 예측: (슬라이딩 대역폭 히스토리 윈도우 길이 L)
- 과거 통신 시작점부터 또는 최근 이력까지의 데이터를 활용하여 대역폭 BP까지의 제공을 약속함.
3. 최선형 서비스(Best Effort)와 표준 기관의 서비스 클래스
- 최선형 서비스 (Best Effort Services)
- 보장이 없거나 부분적인 보장만 제공하는 서비스 형태임.
- 결정론적 또는 통계적 형태의 바인딩된 경계가 주어지지 않거나 QoS 파라미터 명시가 요구되지 않으며, 현재 대다수의 컴퓨팅 및 통신 서비스가 이에 해당함.
- 멀티미디어 서비스는 보장형 또는 예측형 서비스 클래스를 요구함.
- 표준 위원회별 서비스 클래스 분류
- IETF 표준 위원회: 인터넷 통합 서비스 모델을 도입하여 기존의 최선형 인터넷 서비스 외에 실시간 서비스(보장형 서비스 클래스)와 제어된 부하 링크 공유 서비스를 지원함.
- ATM Forum 표준 위원회: 4가지 서비스 클래스로 분류함.
- CBR (Constant Bit Rate)
- VBR (Variable Bit Rate) - 실시간 VBR 트래픽 클래스와 비실시간 VBR 트래픽 클래스로 세분화됨.
- ABR (Available Bit Rate)
- UBR (Unspecified Bit Rate)
'Engineering' 카테고리의 다른 글
| Multimedia Systems (0) | 2026.09.10 |
|---|---|
| latency optimization in interactive multimedia streaming (0) | 2026.09.10 |
| Real-Time Systems Design and Analysis (0) | 2026.09.10 |
| RTSP 정리 (0) | 2026.09.08 |
| Gstreamer Tracing (0) | 2026.09.07 |