📄 002_7.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0058)http://www.chinagk.org/technology/IPTech/002/css/002_7.htm -->
<HTML><HEAD><TITLE>002_7</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>.pg {
LEFT: 0px; WIDTH: 635px; POSITION: absolute; TOP: 0px; HEIGHT: 983px
}
BODY {
FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: ""; BACKGROUND-COLOR: #ffffff
}
A {
TEXT-DECORATION: none
}
.ps0 {
LEFT: 64px; WIDTH: 530px; POSITION: absolute; TOP: 104px
}
.ps1 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 123px
}
.ps2 {
LEFT: 37px; WIDTH: 562px; POSITION: absolute; TOP: 144px
}
.ps3 {
LEFT: 37px; WIDTH: 557px; POSITION: absolute; TOP: 164px
}
.ps4 {
LEFT: 37px; WIDTH: 116px; POSITION: absolute; TOP: 185px
}
.ps5 {
LEFT: 64px; WIDTH: 529px; POSITION: absolute; TOP: 206px
}
.ps6 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 226px
}
.ps7 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 247px
}
.ps8 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 268px
}
.ps9 {
LEFT: 37px; WIDTH: 558px; POSITION: absolute; TOP: 288px
}
.ps10 {
LEFT: 37px; WIDTH: 273px; POSITION: absolute; TOP: 311px
}
.ps11 {
LEFT: 64px; WIDTH: 530px; POSITION: absolute; TOP: 330px
}
.ps12 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 350px
}
.ps13 {
LEFT: 37px; WIDTH: 557px; POSITION: absolute; TOP: 371px
}
.ps14 {
LEFT: 37px; WIDTH: 555px; POSITION: absolute; TOP: 393px
}
.ps15 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 414px
}
.ps16 {
LEFT: 37px; WIDTH: 229px; POSITION: absolute; TOP: 433px
}
.ps17 {
LEFT: 64px; WIDTH: 529px; POSITION: absolute; TOP: 455px
}
.ps18 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 474px
}
.ps19 {
LEFT: 37px; WIDTH: 547px; POSITION: absolute; TOP: 495px
}
.ps20 {
LEFT: 64px; WIDTH: 338px; POSITION: absolute; TOP: 516px
}
.ps21 {
LEFT: 64px; WIDTH: 530px; POSITION: absolute; TOP: 536px
}
.ps22 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 557px
}
.ps23 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 578px
}
.ps24 {
LEFT: 37px; WIDTH: 497px; POSITION: absolute; TOP: 598px
}
.ps25 {
LEFT: 37px; WIDTH: 136px; POSITION: absolute; TOP: 629px
}
.ps26 {
LEFT: 64px; WIDTH: 530px; POSITION: absolute; TOP: 662px
}
.ps27 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 683px
}
.ps28 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 704px
}
.ps29 {
LEFT: 37px; WIDTH: 519px; POSITION: absolute; TOP: 724px
}
.ps30 {
LEFT: 569px; WIDTH: 25px; POSITION: absolute; TOP: 726px
}
.ps31 {
LEFT: 37px; WIDTH: 563px; POSITION: absolute; TOP: 745px
}
.ps32 {
LEFT: 37px; WIDTH: 556px; POSITION: absolute; TOP: 766px
}
.ps33 {
LEFT: 37px; WIDTH: 95px; POSITION: absolute; TOP: 786px
}
.ps34 {
LEFT: 64px; WIDTH: 136px; POSITION: absolute; TOP: 807px
}
.ps35 {
LEFT: 64px; WIDTH: 201px; POSITION: absolute; TOP: 829px
}
.ps36 {
LEFT: 64px; WIDTH: 213px; POSITION: absolute; TOP: 850px
}
.ps37 {
LEFT: 64px; WIDTH: 236px; POSITION: absolute; TOP: 871px
}
.ps38 {
LEFT: 64px; WIDTH: 250px; POSITION: absolute; TOP: 891px
}
.ps39 {
LEFT: 371px; WIDTH: 150px; POSITION: absolute; TOP: 54px
}
.ps40 {
LEFT: 541px; WIDTH: 37px; POSITION: absolute; TOP: 31px
}
.ps41 {
LEFT: 44px; WIDTH: 43px; POSITION: absolute; TOP: 64px
}
.ft0 {
FONT-SIZE: 13px; FONT-FAMILY: "Times New Roman",Times,serif
}
.ft2 {
FONT-SIZE: 13px; FONT-FAMILY: Arial,Helvetica,sans-serif
}
.ft3 {
FONT-STYLE: italic; FONT-FAMILY: ""
}
.ft4 {
FONT-WEIGHT: bold; FONT-SIZE: 37px; FONT-STYLE: italic; FONT-FAMILY: "Times New Roman",Times,serif
}
.ft5 {
FONT-SIZE: 21px; COLOR: #000000; FONT-STYLE: italic; FONT-FAMILY: ""
}
.em0 {
FONT-SIZE: 13px; FONT-FAMILY: ""
}
.em1 {
FONT-SIZE: 13px; FONT-FAMILY: "Times New Roman",Times,serif
}
.em2 {
FONT-SIZE: 13px; FONT-FAMILY: ""
}
.em3 {
FONT-STYLE: italic; FONT-FAMILY: "Times New Roman",Times,serif
}
.im0 {
LEFT: 33px; WIDTH: 562px; POSITION: absolute; TOP: 24px
}
</STYLE>
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY>
<DIV class=pg></DIV><!-- bitmap and vector images are written here -->
<DIV class=im0><IMG height=64 src="002_7.files/right.jpg" width=563
border=0></DIV><!-- text starts here --><SPAN class=ps0><NOBR><SPAN
class=ft0>SSRC<SPAN class=em0>(</SPAN>32<SPAN class=em0>比特):<SPAN
class=em1>SSRC</SPAN>标识同步信源。同步信源就是发送者,它可以是一台机器、一个</SPAN></SPAN></NOBR></SPAN>
<SPAN class=ps1><NOBR>广播服务器或者一个人。<SPAN
class=em1>SSRC</SPAN>的数值是随机选取的,因此在同一个<SPAN
class=em1>RTP</SPAN>段内没有两个发送者</NOBR></SPAN> <SPAN class=ps2><NOBR>具有相同的<SPAN
class=em1>SSRC</SPAN>标识。当呼叫建立起来时,可能会出现冲突,也就是发送者具有相同标识。</NOBR></SPAN> <SPAN
class=ps3><NOBR>当检测到冲突时,<SPAN class=em1>RTP</SPAN>中的一个简单的机制被指定用来解决它。当只有一个<SPAN
class=em1>SSRC</SPAN>时,<SPAN class=em1>CSRC</SPAN></NOBR></SPAN> <SPAN
class=ps4><NOBR>数值域被设置为<SPAN class=em1>0</SPAN>。</NOBR></SPAN> <SPAN
class=ps5><NOBR>在<SPAN class=em1>RTP</SPAN>中解决<SPAN
class=em1>SSRC</SPAN>冲突很简单。首先,每个<SPAN class=em1>RTP</SPAN>包的接收者需要记住与每个<SPAN
class=em1>SSRC</SPAN>相关的</NOBR></SPAN> <SPAN
class=ps6><NOBR>信源传输地址。如果从一个新的信源传输地址接收到一个已经存在并且有效的<SPAN class=em1>SSRC<SPAN
class=em0>——</SPAN></SPAN>不是</NOBR></SPAN> <SPAN
class=ps7><NOBR>接收者自身,接收者忽略这个包,并可选地更新<SPAN
class=em1>SSRC</SPAN>检测到的冲突的统计数据。如果发现接</NOBR></SPAN> <SPAN
class=ps8><NOBR>收者自己的<SPAN
class=em1>SSRC</SPAN>形成了环,也就是说,从一个不同的信源传输地址出现,或者接收者自己被</NOBR></SPAN> <SPAN
class=ps9><NOBR>确定为包的始发站,那么将在环状的<SPAN class=em1>SSRC</SPAN>中发送一个<SPAN
class=em1>RTCP BYE</SPAN>包,选择一个新的数值。</NOBR></SPAN> <SPAN class=ps10><NOBR><SPAN
class=ft0>BYE<SPAN class=em0>包会有效地把参与者从当前会话中挂断。</SPAN></SPAN></NOBR></SPAN>
<SPAN class=ps11><NOBR>如果一个信源改变它的信源传输地址,它还必须选择一个新的<SPAN
class=em1>SSRC</SPAN>标识,以免被解释为</NOBR></SPAN> <SPAN
class=ps12><NOBR>环路信源。这是一个非常有趣的问题,当网络中存在混合器和转换器时会出现这种问题。混</NOBR></SPAN> <SPAN
class=ps13><NOBR>合器插入自己的<SPAN class=em1>SSRC<SPAN
class=em0>,</SPAN></SPAN>而转换器原封不动地转发包,但是它把自己的信源传输地址( <SPAN
class=em1>IP</SPAN>地址</NOBR></SPAN> <SPAN class=ps14><NOBR><SPAN
class=ft0>+UPD<SPAN class=em0>端口号)放到包中。当一个端点从两个不同的源传输地址接收到具有相同</SPAN>SSRC<SPAN
class=em0>数值的</SPAN></SPAN></NOBR></SPAN> <SPAN class=ps15><NOBR><SPAN
class=ft0>RTP<SPAN class=em0>包时,环路已经闭合。当一个信源发现与它自身相同的</SPAN>SSRC<SPAN
class=em0>包时,也会形成闭环,但是</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps16><NOBR>最初选择中的冲突也会有相同的效果。</NOBR></SPAN> <SPAN class=ps17><NOBR><SPAN
class=ft0>CSRC<SPAN class=em0>列表(<SPAN class=em1>0</SPAN>~<SPAN
class=em1>15</SPAN>项,每项</SPAN>32<SPAN class=em0>比特):<SPAN
class=em1>CSRC</SPAN>列表标识了提供这个包中包含的有效载荷的</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps18><NOBR>所有信源。这只对混合过的包有意义。标识符的数量是由<SPAN class=em1>CC</SPAN>域确定的。<SPAN
class=em1>CSRC</SPAN>标识符是包信</NOBR></SPAN> <SPAN class=ps19><NOBR>源最初的<SPAN
class=em1>SSRC<SPAN class=em0>,</SPAN></SPAN>由混合器插入。<SPAN
class=em1>CSRC</SPAN>域用来当端点发出有效载荷时对信源标识进行更正。</NOBR></SPAN> <SPAN
class=ps20><NOBR>让我们看看两个已解码的<SPAN class=em1>RTP</SPAN>包,以说明报头域的使用。</NOBR></SPAN>
<SPAN class=ps21><NOBR>图<SPAN class=em1>2-3a</SPAN>中是从一个信源来的典型的<SPAN
class=em1>VoIP µLaw</SPAN>包。图<SPAN class=em1>2-3b</SPAN>中是在帧边界处的<SPAN
class=em1>H.261 RTP</SPAN>视</NOBR></SPAN> <SPAN
class=ps22><NOBR>频包,并对基本的报头做了修改以包含特定信息。在有效载荷开始出现之前,在基本协议报</NOBR></SPAN> <SPAN
class=ps23><NOBR>头之后的数据包含<SPAN class=em1>H.261</SPAN>控制信息。这种类型的报头扩展是得到<SPAN
class=em1>ITU-T H.323</SPAN>要求的规定许可</NOBR></SPAN> <SPAN
class=ps24><NOBR>的(参看参考文献<SPAN class=em1>[1]</SPAN>中,使用<SPAN
class=em1>H.263+</SPAN>的<SPAN
class=em1>H.323</SPAN>视频流的有效载荷报头格式的实例)。</NOBR></SPAN> <SPAN
class=ps25><NOBR><SPAN class=ft2>2.1.2 <SPAN
class=em2>简单介绍</SPAN>RTCP</SPAN></NOBR></SPAN> <SPAN class=ps26><NOBR>在<SPAN
class=em1>RFC1889</SPAN>中说明的和<SPAN class=em1>RTP</SPAN>相配的控制协议是<SPAN
class=em1>RTCP</SPAN>。<SPAN class=em1>RTCP</SPAN>经常被误认为是信令协议,但</NOBR></SPAN>
<SPAN class=ps27><NOBR>是它不是。<SPAN
class=em1>RTCP</SPAN>包把关于会话质量的端到端信息传送给每个参与者。像包延迟、抖动、收到</NOBR></SPAN> <SPAN
class=ps28><NOBR>和包丢失等数值对网络而言非常有价值,可以用来实时估计网络自身的状态。<SPAN
class=em1>RTCP</SPAN>作为核心</NOBR></SPAN> <SPAN
class=ps29><NOBR>可以用来监视数据传输是否发生,端点也可以用它来确定在网络故障的情况下,相应的</NOBR></SPAN> <SPAN
class=ps30><NOBR><SPAN class=ft0>RTP</SPAN></NOBR></SPAN> <SPAN
class=ps31><NOBR>流部分是否被丢失。<SPAN class=em1>RTP</SPAN>和<SPAN
class=em1>RTCP</SPAN>并不需要在相同的端到端路径上路由,但是如果能够实现,</NOBR></SPAN> <SPAN
class=ps32><NOBR>这样做有重大意义。如果使用了服务质量路由,网络设计考虑可以规定<SPAN
class=em1>RTCP</SPAN>包不能经过相同</NOBR></SPAN> <SPAN
class=ps33><NOBR>的路由器集合。</NOBR></SPAN> <SPAN class=ps34><NOBR>有<SPAN
class=em1>5</SPAN>种类型的<SPAN class=em1>RTCP</SPAN>包:</NOBR></SPAN> <SPAN
class=ps35><NOBR><SPAN class=ft0>• SR<SPAN class=em0>:</SPAN>Sender Report<SPAN
class=em0>,</SPAN><SPAN class=em0>发送者报告</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps36><NOBR><SPAN class=ft0>• RR<SPAN class=em0>:</SPAN>Receiver
Report<SPAN class=em0>,</SPAN><SPAN class=em0>接收者报告</SPAN></SPAN></NOBR></SPAN>
<SPAN class=ps37><NOBR><SPAN class=ft0>• SDES <SPAN
class=em0>:</SPAN>Source DEScription<SPAN class=em0>,</SPAN><SPAN
class=em0>信源说明</SPAN></SPAN></NOBR></SPAN> <SPAN class=ps38><NOBR><SPAN
class=ft0>• BYE <SPAN class=em0>:</SPAN>Hang up from a session<SPAN
class=em0>,</SPAN><SPAN class=em0>挂断会话</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps39><NOBR><SPAN class=ft3>第<SPAN
class=em3>2</SPAN>章 包网络的介质传输</SPAN></NOBR></SPAN> <SPAN
class=ps40><NOBR><SPAN class=ft4>63</SPAN></NOBR></SPAN> <SPAN
class=ps41><NOBR><SPAN class=ft5>文档</SPAN></NOBR></SPAN> </BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -