Rtp

  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Rtp as PDF for free.

More details

  • Words: 1,549
  • Pages: 30
RTP/RTCP 정보통신공학과 유영찬

CONTENTS INTRODUCTION REAL-Time SERVICE RTP RTCP PROBLEM OF RTP/RTCP

INTRODUCTION 기존의 응용 - 처리율 , 지연 그리고 신뢰성이 가장 민감 실시간 응용 - 시간적인 것이 이슈 보내는 시간에 맞게 데이터를 전송 대드라인 실시간 응용에 필요한 요소 - 낮은 지터 , 낮은 대기시간 , 낮은 오버헤더 , 낮은 오버해더 처리 시 간 - 네트워크 트레픽 상테에 따른 동적인 적응 - 리얼타임서비스와 리얼타임서비스가 아닌 서비스가 쉽게 통합 가능 - 서비스 수나 네트워크 크기에 변함없이 성능과 효율이 좋아야 함 - IP,TCP 그리고 UDP 로는 제공하기 힘듬 그래서 RTP/RTCP 가 필요

REAL-TIME SERVICE PLAYBAC K POINT

ME RTP ME RTP ME RTP ME RTP ME RTP ME RTP ME RTP

DEADLIN E SOURCE

DESTINATI ON

RTP RTP : A Transport protocol for Real-Time APPLICATION (RFC 1889), MC DATE STORED 와 REAL-TIME 서비스 실시간데이터를 멀티케스트 또는 유니케스트 네트웍크를 이용 해서 전송하는 네트웍 전송 기능을 제공 RTCP 라는 프로토콜에 의해 데이터 전송 기능 제어 하위 계층에 무관하게 설계 별도의 독립된 계층이라기 보다는 하나의 응용에 의해 사용 RTP 의 헤더는 전송도중에 수정 가능

RTP 구성요소 & 특징 구성 요소 - RTP : REAL-TIME PROTOCOL - RTCP : RTP CONTROL PROTOCOL RTP 의 특징 - 순서 번호 제공 - 미디어간의 동기화 제공 - 페이로드 , 프레임 확인 - 멀티케스트에 우호적 - 미디어에 독립적 - 믹서와 트렌스레이터 기능 제공 - QoS 피드백 제공 - 패킷 암호화 제공 - 다중화 제공

APPLICATION

RTP Transport protocol (for real time media)

RTP PROTOCOL STACK Media encaps. (H.261, MPEG)

RTCP

RTP

UDP

IP

RTP HEADER V=2(2 )

P (1)

X (1)

CC(4)

M PT(7) (1) Timestamp(32)

Sequence number(16)

SSRC identifier CSRC identifier

PAYLOAD TYPE 탑 재 유 형

인코딩 이름

0 8 9 15 31

PCMU PCMA G722 G728 H.261

A/V

A A A V

클럭비 (Hz)

채널 수(오 디오 )

8000 8000 8000 8000 90000

1 1 1

RTP 의 상위 12byte 는 위와 같이 고정 되어 있으며 CSRC identifier 필드는 MIXER 기능 이 제공 되었을 경우에는 사용된다 .

고 정

RTP HEADER CON’T Version(V) : 2 비트 필드로 현재는 항상 2 값을 가진다 . Padding(P) : 1 비트 필드로 헤더에 페딩이 되어 있는가를 표기 Extension(X): 1 비트 필드로 고정헤더 이외의 헤더가 확장되었 다는 것을 표기한다 . CSRC Count(CC) : 4 비트 필드로 고정 헤더 이후에 나열되는 CSRC 식별자의 수를 나타낸다 . MARKER(M) : - 1 비트 필드로 프로파일에 의해 결정 - 패킷 스트림 내에서 프레임 경계와 같은 중요한 이벤트를 표시하는데 이용 - 프로파일에서 페이로드 타입의 값과 실제 페이로드 형식을 연결

RTP HEADER CON’T Sequnce Number(SN) - 16 비트 필드로 송신되는 각 RTP 패킷에 대해 1 씩 증가 - 수신 측에서는 패킷 분실을 검출하거나 패킷의 순서를 마추는데 이용 - 초기값은 보안을 위해 무작위로 설정된다 . Timestamp : 32 비트 필드로 RTP 데이터 패킷의 첫번째 바이트의 샘플링 순간 을 표기 Synchronization Source(SSRC) Identifier : 32 비트 필드로 동기화 소 스를 표기 - 이 값은 같은 RTP 세션 내에서 같은 SSRC 값을 갖지 않는 값을 위해 무작 위로 추출 한다 . Contributing Source(CSRC) Identifiers :32 비트 필드로 15 개 까지 사용 가능 - 현제까지 페이로드에 들어있는 자료들에 해당하는 소스 (SSRC) 값을 저 장 - 15 개의 SSRC 값을 저장 가능 , 15 개가 넘을경우 무시

UDP HEADER 0

15 16

16-bit source port number 16-bit UDP Length

31

16-bit destination port nunber 16-bit UDP checksum

Data(if any)

16-bit source port number : 소스측의 응용 식별자 16-bit destination port nunber : 목적지의 응용 식별자 16-bit UDP Length : UDP 데이터 그램의 크기 16-bit UDP checksum : UDP 헤더 체크 Data(if any) : 페이로드

8byte

VARY RTP HEADER 프로파일에 따른 RTP 헤더 변경 - Maker 비트와 PT 필드는 프로파일에 종속된 정보 수송 - 프로파일을 제거하려면 32 비트의 추가 비트가 필요 - PT 필드는 프로파일에서 재정의 할 수 있으며 Marker 비트가 있는 경우는 이 필드의 최상위 비트에 기록 되어야 한다 . - 특정의 페이로드 형식을 위해 필요한 정보들은 패킷의 페이로드 섹션에 기록됨

RTP HEADER EXTENTION 부가적인 정보를 필요로 하는 새로운 기능들을 실험할 수 있도 록 하는 데 이용 확장과 무관한 다른 응용들에서는 확장부가 무시될 수 있도록 설계 패킷의 페이로드 섹션에 등록 X 비트가 1 일때 고정헤더 뒤에 추가된다 . DEFINED BY PROFILE Header extension DEFINED BY PROFILE : 프로파일에 의해 정의되어있는 값 LENGTH : 확장 헤더의 크기 HEADER EXTENTION : 헤더 정보

LENGTH

RTP MIXER & TRANSRATOR TRANSRATOR - 고화질의 영상을 저화질의 영상으로 변경 MIXER - 하나 이상의 소스로부터 받은 RTP 팻킷들을 결합하여 하나 의 RTP 패킷으로 만들어 전달하는 방식 - 각각의 소스로부터 온 스트림들은 타이밍이 다르기 때문에 MIXER 는 새로운 타이밍 소스를 만들어 낸다 . - 각소스의 SSRC 값은 CSRC 값에 기록한다 . - 오직 오디오 회의 시스템에서만 적용

MIXER METHOD E1

E6

E1:17

E6:15 M1:48(1,17)

M1

T1

E2:1

E4:47

E2 E3

E3:64

M1:48(1,17) E4:47

M2:12(64)

E4:47 M3:89(64, 45)

E7

M3:89(64, 45)

E4 M2

T2

E6:15 M1:48(1, 17)

M3 E5:45 E5

E : End System M : Mixer T : Translator Source:SSRC(CSRCs)

RTCP RTCP : RTP CONTROL PROTOCOL 주기적으로 세션에 참가한 모든 참가자들에게 제어 패킷을 보냄 - 데이터 분배의 품질에 대한 피드백을 제공 : RTCP 의 SR 와 RR 메시지 에 의해 제공 - RTP 소스의 식별을 위해 지속적인 식별자 수송 CNAME(Canonical Name) : SSRC 는 충돌이 발생하거나 프로그램이 다시 시작될 경우에 변경될 수 있기 때문에 CNAME 을 유지 - 최소한의 세션 제어 정보 수송 : 세션에 참가는 사람의 신상 정보 제공 모든 참가자들은 RTCP 패킷을 보내는 것은 의무 각각의 참가자들은 RTCP 패킷을 받는것을 바탕으로 참가자 수 확인 참가자의 수가 많을 수로 RTPC 의 패킷양을 조절 해야함

RTCP 세션 간격 5%

95%

RTCP

RTP RTP 세션 대역폭

20%

80%

SDES (Except CNAME) RTCP 대역폭

RTCP MESSAGE 200

Sender Report

201

Receiver Report

202

Source Description

203

Bye

204

Application Specific

SR : SENDER REPORT 012 3

Heade r

V=2 P

8 RC

16 PT(SR=200)

31 Length

SSRC of Sender NTP Timestamp, Most Siginficant Word

Sender Information (Only in SR)

NTP Timestamp, Least Siginficant Word RTP Timestamp Sender’s Packet Count Sender’s Octet Count

Sender report

SSRC_1 (SSRC of First Source) Fraction Lost

Cumulative Number of Packets Lost Extended Highest Sequence Number Received Interarrival Jitter Last SR (LSR) Delay Since Last SR (DLSR) SSRC_2 ......... Profile-specific Extensions Padding Octets

Number of Paddings

SR Con’t Report Count(RC) : 5 비트 필드로 이 패킷에 포함된 수신 보고 블 록의 수를 표기 Packet Type(PT) : 8 비트 필드로 RTCP SR 의 패킷의 경우 200 Length : 16 비트 필드로 전체 패킷의 길이 NTP Timestamp : 64 비트 필드로 이 보고가 보내진 시간을 표기 RTP Timestamp : 32 비트 필드로 NTP Timestamp 의 시간과 비슷한 시간을 표기한다 . Sender’s packet count : 전송 시작에서 부터 이 SR 패킷이 생 성될 때 까지 이 송신자에 의해 전송된 RTP 데이터 패킷의 총 수 Sender’s octet count : 전송 시작에서부터 이 SR 패킷이 생성될 때 까지 이 송신자에 의해 전송된 RTP 데이터 패킷에서 헤더와 채워 넣기를 제외한 페이로드 바이트의 수를 표기

SR Con’t SSRC_n : 수신 보고 블록의 정보가 해당되는 소스의 SSRC 식별자 를 표기 Fraction lost : 이전 SR 또는 RR 패킷이 송신된 이후 분실된 RTP 데이터 패킷의 비율이 고정 소수로 표현 Cumulative number of packets lost : 소스 SSRC_n 으로부 터 수신 시작 이래로 분실한 총 RTP 데이터 패킷의 수 Extended highest sequence number erceived : 수신된 RTP 패킷의 최신 순번을 표기 Interarrival jitter : 지터 표기 Last SR Timestamp(LSR) : 소스 SSRC_n 으로부터 최근에 받 은 RTCP SR 의 일부인 64 비트 NTP 타임 스탬프의 중간 32 비 트를 나타낸다 . Delay since last SR(DLSR) : 소스 SSRC_n 으로 부터의 최종 SR 패킷 수신과 이 수신 보고 블록 송신간의 지연을 표기

RR :RECIVER REPORT 0

2 3 V=2 P

8 RC

16

PT(SR=200, RR=201)

31 Length

SSRC of Sender SSRC_1 (SSRC of First Source) Fraction Lost

Cumulative Number of Packets Lost Extended Highest Sequence Number Received Interarrival Jitter Last SR (LSR) Delay Since Last SR (DLSR) SSRC_2 ......... Profile-specific Extensions

SDES Header Chunk

0 2 3 31 V=2 P

8 SC

16 PT(SDES=202)

Length

SSRC/CSRC_1 SDES Items ........

Chunk

SSRC/CSRC_2 SDES Items ........

........ Padding Octets

Number of Paddings

SDES Con’t Packet Type(PT) : RTCP SDES 패킷의 경우 202 Source Count(SC) : SDES 패킷에 포함된 SSRC/CSRC 의 수를 표기 CNAME NAME EMAIL PHONE LOC TOOL NOTE PRIV

SEDS ITEM CNAME(Canonical End-point Identifier,1) 0

7

CNAME

15

length

31

User and domain name…

Name(2) 0

7

NAME

15

length

31

Common name of source

Email(3) 0

7

EMAIL

15

length

Email address of source

31

BYE 0

2 3 V=2

P

8 SC

16 PT(BYE=203)

31 Length

SSRC/CSRC

........

Length

Reason for Leaving ........ (Opt)

Padding Octets

Number of Paddings

APPLICATION 0

2 3 V=2

P

8 Subtype

16 PT(APP=204)

31 Length

SSRC/CSRC

Name(ASCII)

Application-dependent Data ........

Padding Octets

Number of Paddings

APPLICARION Con’t Subtype : APP 패킷들이 하나의 유일한 이름으로 정의될 수 있도록 하는 부 타입으로 사용되거나 응용에 종속되는 데이터를 위해 사용될 수 있음 Packet Type(PT) : RTCP APP 패킷은 204 번 Name : 응용이 수신할 다른 APP 패킷들에 대해 유일하도록 APP 패킷을 정의하는 이름으로 사용자에 의해 선택 Application-specific Data : 가변 길이의 필드로 APP 패킷에 없을수도 있음 , 응용에 의해서 되며 , 32 비트의 배수 이어야 함

RTCP PACKET RTCP Packet Combination R SR/RR SDES(CNAME..e tc)

BYE(Reason)

R : Encryption, 32-bit integer SR, RR ; Sender report, Receive report SDES : SDES data and item BYE : BYE Message SR/RR and CNAME of SDES is mandatory

PROBLEM OF RTP/RTCP Competition of Bandwidth - Time Scale - Non Error Control Weight Over Header - RTP(12byte) + UDP(8byte) + IP(20byte) Congestion by RTCP - A Number of initial Packets

Related Documents

Rtp
May 2020 7
Rtp
May 2020 9
Rtp
May 2020 7
Comunicado Rtp
November 2019 14
Rtp Slides
May 2020 8
Rtp Tutorial
May 2020 7