7장 멀티미디어 네트워킹 Computer Networking: A Top Down Approach 5t edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009.
7장 목차 7.1 멀티미디어 네트워킹 응용 7.5 다양한 서비스 클래스 제공 7.2 스트리밍 저장 오디오 및 비디오 7.3 최선형 서비스를 최대로 활용하기 7.4 실시간 대화형 서비스 7.5 다양한 서비스 클래스 제공 7.6 QoS 보장
서비스 품질(Quality of Service) multimedia 응용: - data - network audio - network video(동영상) 응용 서비스가 요구하는 서비스 품질 - 손실(loss) - 지연(delay) - 지연 변이(delay jitter) QoS
QoS 데이터 음성과 동영상 주 관심 QoS을 위한 요구사항은 데이터 손실(data loss) image(정지 화상)의 경우도 데이터로 취급 audio와 video(동영상)의 경우 file 전체를 다운로드 받아서 local computer에서 play하는 경우는 데이터와 동일 데이터가 네트워크 서비스의 주 대상일 때는 QoS가 주 이슈가 되지 않았다. 음성과 동영상 패킷의 전송 지연(delay)과 지연 변이(delay jitter)는 음성과 동영상의 QoS에 결정적인 영향을 준다. 따라서 음성과 동영상을 포함하는 멀티미디어 네트워크 서비스에서는 QoS 보장이라는 것이 주 이슈가 되고 있다.
전송 지연(delay)과 지연 변이(jitter) Total packet Delay = transmission time + propagation time + queuing time 이것은 네트워크 전송 과정에서 발생하는 delay이고 상위 계층에서 발생하는 delay가 존재한다. 각 패킷들이 목적지 호스트에 도착할 때 걸리는 delay는 각각 다르다. 왜?
멀티미디어 네트워킹 서비스의 유형 데이터와는 반대 근본적인 특징: 멀리미디어 응용의 유형: 전송 지연(delay)에 민감 양종단간(end-to-end) 지연 지연 변이(delay jitter) 패킷 손실은 어느 정도 허용: 손실이 자주 발생하면 약간의 품질이 손상된다. 데이터와는 반대 멀리미디어 응용의 유형: 1) 저장(stored) 스트리밍 2) 생방송(live) 스트리밍 3) 실시간 대화형(real-time, interactive)
저장 스트리밍 서비스(1) 미디어는 소스(서버)에 저장 Client에 전송됨 스트리밍: client는 모든 미디어가 도착하기 전에 play한다. 도착 시간의 조건: 미디어의 패킷들은 자기가 play되어야 하는 시점 전에 도착해야 한다.
저장 스트리밍 서비스(2) Cumulative data 2. video sent 3. video received, streaming: 이 시점에서 client는 현재 도착한 패킷들을 갖고 play한다. 서버는 계속 나머지 패킷들을 전송하고 있다. 3. video received, played out at client Cumulative data 2. video sent 1. video recorded network delay time
저장 스트리밍 서비스 : 대화식 동작 VCR과 같은 기능: client는 일시정지(pause), 되감기(rewind), 빠른 진행(FF), push slider bar 초기 delay가 10초 이내면 OK 특정 동작을 행했을 때 1-2초 이내 반응을 보이면 OK 패킷들은 play되어야 하는 시점에 도착해야 한다.
생방송 멀티미디어 서비스 예: 인터넷 라디오 방송 스포츠 생방송 중계 스트리밍 (저장 스트리밍 서비스와 같다.) 재생할 패킷을 보관하는 버퍼가 있다. 첫 패킷이 도착한 후, 수 초가 경과하여 재생될 수 있다. 패킷이 도착하는 시간은 엄격한 제약이 있다. 대화식 빠른 진행(fast forward)은 가능하지 않다. 되감기(rewind), 일시 정지(pause)는 가능할 수도 있다.
실시간 대화형 멀티미디어 서비스 예: IP 전화, 화상 회의, 종단간(end-end) 지연의 요구조건: 음성: < 150 msec 양호, < 400 msec OK 상위 계층(패킷화 과정)과 네트워크 delay 포함 세션(session) 시작은? 어떻게 자신의 IP 주소, port number, encoding algorithms 등을 모든 상대에게 알려줄 수 있을까?
그렇다면 어떻게 QoS를 요구하는 멀티미디어 Internet과 멀티미디어 서비스 TCP/UDP/IP: “best-effort service” QoS를 보장하지 않는다. 그렇다면 어떻게 QoS를 요구하는 멀티미디어 서비스를 제공할 수 있는가? ? 멀티미디어 서비스는 응용 계층에서의 기술을 통해서 최대한도의 QoS를 보장할 수 있는 방법을 찾는다.
인터넷에서 멀티미디어 서비스를 제공하기 위한 접근 방법 통합 서비스 접근: 각 응용 서비스에 필요한 대역을 보장해 준다. 모든 노드들에 근본적인 변화가 요구된다. 자유 방임(Laissez-faire) 현재 그대로 사용 필요하면 대역을 더 제공 CDN, 응용 계층 멀티캐스트 차별 서비스 접근: 약간의 변화 필요 What’s your opinion?
음성 압축(audio compression) 아날로그 신호를 일정한 속도로 샘플링 전화: 8,000 samples/sec (PCM 코딩) CD 음악: 44,100 samples/sec 각 샘플은 계수화 e.g., 28=256 각 계수화 값은 비트로 표현 8 bits for 256 values 예: PCM: 전화 음성 64kbps CD: 1.411 Mbps MP3: 96, 128, 160 kbps 인터넷 전화: 5.3 kbps 부터
Analog-to-Digital 코딩 소스 신호가 아날로그인 경우 예, 전화의 음성 신호, 비디오 신호 이 경우 디지털 신호로 전송을 위해서 아날로그 신호를 디지털 데이터로 변환해야 한다. 아날로그 신호를 디지털 데이터로 변환하는 방법 PCM (Pulse Code Modulation) 전화망에서 음성 신호를 디지털 데이터로 변환할 때 사용한 전통적인 방법
PCM 3가지 단계로 구성된다. 아날로그 신호를 sampling Sampling된 신호를 계수화(quantization) 계수화된 값을 비트 스트림으로 부호화(encoding)
sampling 아날로그 신호를 매 T초 마다 전압의 크기를 측정한다.
Sample(측정) 주기 T는? 그러면 sampling 주기 T는 얼마로 해야 할까? Nyquist 정리에 의하면 채집율(sampling rate)은 신호에 포함된 최대 주파수의 최소한 두 배가 되어야 한다.
채집율에 따라 재생된 파형의 모습
전화망에서 음성 신호의 채집율 음성의 최대 주파수는 4KHz이다. 따라서 채집율은 매초 8000번이다.
계수화(quantization) Sample으로 얻은 값은 최대 진폭값과 최소 진폭값의 사이 값이다.
부호화(encoding) 계수화된 값을 비트 스트림으로 대체한다. 그러면 각 sample의 값을 몇 개의 비트 스트림으로 대체할 것인가? 전화망의 음성의 경우 매 sample 당 8비트로 대체한다. 그러면 음성을 PCM으로 코딩할 경우 비트율은 어떻게 되는가?
원래 신호로 복구
비디오 압축(video compression) video: 이미지 프레임을 일정한 속도로 play 예: 24 images/sec 디지털 이미지: 픽셀로 구성 각 픽셀은 비트로 표현 중복 프레임 내 공간 중복 프레임과 다음 프레임 간의 중복 예: MPEG 1 (CD-ROM) 1.5 Mbps MPEG2 (DVD) 3-6 Mbps MPEG4 (인터넷에서 자주 사용, < 1 Mbps)