002_10.htm
来自「通讯类的标准。对要开发SS7的朋友有很大帮助的。(通讯协议)」· HTM 代码 · 共 262 行
HTM
262 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0059)http://www.chinagk.org/technology/IPTech/002/css/002_10.htm -->
<HTML><HEAD><TITLE>002_10</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: 38px; WIDTH: 556px; POSITION: absolute; TOP: 102px
}
.ps1 {
LEFT: 38px; WIDTH: 243px; POSITION: absolute; TOP: 123px
}
.ps2 {
LEFT: 65px; WIDTH: 529px; POSITION: absolute; TOP: 146px
}
.ps3 {
LEFT: 38px; WIDTH: 121px; POSITION: absolute; TOP: 165px
}
.ps4 {
LEFT: 65px; WIDTH: 529px; POSITION: absolute; TOP: 187px
}
.ps5 {
LEFT: 38px; WIDTH: 563px; POSITION: absolute; TOP: 206px
}
.ps6 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 227px
}
.ps7 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 248px
}
.ps8 {
LEFT: 38px; WIDTH: 439px; POSITION: absolute; TOP: 269px
}
.ps9 {
LEFT: 491px; WIDTH: 95px; POSITION: absolute; TOP: 270px
}
.ps10 {
LEFT: 65px; WIDTH: 511px; POSITION: absolute; TOP: 290px
}
.ps11 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 312px
}
.ps12 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 331px
}
.ps13 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 352px
}
.ps14 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 373px
}
.ps15 {
LEFT: 38px; WIDTH: 55px; POSITION: absolute; TOP: 394px
}
.ps16 {
LEFT: 65px; WIDTH: 529px; POSITION: absolute; TOP: 414px
}
.ps17 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 435px
}
.ps18 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 456px
}
.ps19 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 477px
}
.ps20 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 498px
}
.ps21 {
LEFT: 38px; WIDTH: 423px; POSITION: absolute; TOP: 518px
}
.ps22 {
LEFT: 65px; WIDTH: 529px; POSITION: absolute; TOP: 539px
}
.ps23 {
LEFT: 38px; WIDTH: 557px; POSITION: absolute; TOP: 560px
}
.ps24 {
LEFT: 38px; WIDTH: 534px; POSITION: absolute; TOP: 581px
}
.ps25 {
LEFT: 588px; WIDTH: 7px; POSITION: absolute; TOP: 582px
}
.ps26 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 603px
}
.ps27 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 622px
}
.ps28 {
LEFT: 38px; WIDTH: 311px; POSITION: absolute; TOP: 643px
}
.ps29 {
LEFT: 65px; WIDTH: 536px; POSITION: absolute; TOP: 664px
}
.ps30 {
LEFT: 38px; WIDTH: 563px; POSITION: absolute; TOP: 685px
}
.ps31 {
LEFT: 38px; WIDTH: 324px; POSITION: absolute; TOP: 706px
}
.ps32 {
LEFT: 65px; WIDTH: 512px; POSITION: absolute; TOP: 728px
}
.ps33 {
LEFT: 65px; WIDTH: 529px; POSITION: absolute; TOP: 749px
}
.ps34 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 768px
}
.ps35 {
LEFT: 38px; WIDTH: 556px; POSITION: absolute; TOP: 789px
}
.ps36 {
LEFT: 38px; WIDTH: 300px; POSITION: absolute; TOP: 810px
}
.ps37 {
LEFT: 65px; WIDTH: 155px; POSITION: absolute; TOP: 832px
}
.ps38 {
LEFT: 53px; WIDTH: 175px; POSITION: absolute; TOP: 830px
}
.ps39 {
LEFT: 46px; WIDTH: 548px; POSITION: absolute; TOP: 830px
}
.ps40 {
LEFT: 38px; WIDTH: 196px; POSITION: absolute; TOP: 851px
}
.ps41 {
LEFT: 65px; WIDTH: 530px; POSITION: absolute; TOP: 872px
}
.ps42 {
LEFT: 38px; WIDTH: 53px; POSITION: absolute; TOP: 893px
}
.ps43 {
LEFT: 54px; WIDTH: 259px; POSITION: absolute; TOP: 31px
}
.ps44 {
LEFT: 547px; WIDTH: 43px; POSITION: absolute; TOP: 64px
}
.ft1 {
FONT-SIZE: 12px; FONT-FAMILY: "Times New Roman",Times,serif
}
.ft2 {
FONT-SIZE: 11px; FONT-FAMILY: "Times New Roman",Times,serif
}
.ft3 {
FONT-WEIGHT: bold; FONT-SIZE: 37px; FONT-STYLE: italic; FONT-FAMILY: "Times New Roman",Times,serif
}
.ft4 {
FONT-SIZE: 21px; COLOR: #000000; FONT-STYLE: italic; FONT-FAMILY: ""
}
.em0 {
FONT-SIZE: 12px; FONT-FAMILY: "Times New Roman",Times,serif
}
.em1 {
FONT-SIZE: 5px
}
.em2 {
FONT-SIZE: 13px; FONT-FAMILY: ""
}
.em3 {
FONT-WEIGHT: normal; FONT-SIZE: 13px; FONT-STYLE: italic
}
.em4 {
FONT-WEIGHT: normal; FONT-SIZE: 13px; FONT-STYLE: italic; FONT-FAMILY: ""
}
.im0 {
LEFT: 36px; WIDTH: 564px; 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_10.files/left.jpg" width=564
border=0></DIV><!-- text starts here --><SPAN
class=ps0><NOBR>如果同时存在包复制和包丢失,选择不当时,<SPAN
class=em0>FL</SPAN>会传送错误的信息。在实现中,在<SPAN class=em0>FL</SPAN>的运算</NOBR></SPAN>
<SPAN class=ps1><NOBR>中可能不需要考虑到达接收者的重复包。</NOBR></SPAN> <SPAN
class=ps2><NOBR><SPAN class=ft1>cumulative packets lost<SPAN
class=em2>域表示从会话开始起丢失的包的总数。丢失的包通过</SPAN>RTP<SPAN
class=em2>帧中顺序</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps3><NOBR>编号的差异来标识。</NOBR></SPAN> <SPAN class=ps4><NOBR><SPAN
class=ft1>extended sequence number received<SPAN
class=em2>域包含两个部分。最低的</SPAN>16<SPAN class=em2>比特是直到</SPAN>SR<SPAN
class=em2>产生时</SPAN></SPAN></NOBR></SPAN> <SPAN class=ps5><NOBR>从<SPAN
class=em0>SSRC<SPAN class=em1>n</SPAN></SPAN>得到的最大顺序编号。最高的<SPAN
class=em0>16</SPAN>比特是从发送最后一个<SPAN class=em0>SR</SPAN>起顺序编号的环绕总和。</NOBR></SPAN>
<SPAN class=ps6><NOBR>为了保证<SPAN
class=em0>RFC1889</SPAN>提出的算法描述了有效的顺序编号,必须进行测量,包括当会话中出现</NOBR></SPAN> <SPAN
class=ps7><NOBR>一个新的信源时,在这个信源的顺序编号可以被认为是有效之前,试用期的建立。试用期</NOBR></SPAN> <SPAN
class=ps8><NOBR>的定义为,在声明新的信源为有效之前,必须从信源发出具有连续编号的</NOBR></SPAN> <SPAN
class=ps9><NOBR><SPAN class=ft1>RTP<SPAN
class=em2>包的数量。</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps10><NOBR>在新信源的试用期内,统计数据毫无意义。在新的信源生效之前都不应该保存或者在</NOBR></SPAN> <SPAN
class=ps11><NOBR><SPAN class=ft1>RTCP<SPAN
class=em2>包中传送这些数据。如果来自新信源的包丢失,或者存在其他顺序编号问题,那么从</SPAN></SPAN></NOBR></SPAN>
<SPAN class=ps12><NOBR>造成不一致顺序编号的包开始进入试用期。人们已经认识到,严格的信源验证要求大量初始</NOBR></SPAN>
<SPAN class=ps13><NOBR>有效包,从而使得验证信源延迟,而这个信源可能完全有效。无论端点采用哪种信源验证算</NOBR></SPAN>
<SPAN class=ps14><NOBR>法,它都可以使用从新信源接收到的<SPAN class=em0>RTCP</SPAN>包,以减少在生命<SPAN
class=em0>RTCP</SPAN>流为有效之前所需要的包</NOBR></SPAN> <SPAN
class=ps15><NOBR>的数目。</NOBR></SPAN> <SPAN
class=ps16><NOBR>建议使用的单信源状态包含用来估计包丢失的参数。这个状态信息中记录了该信源接收</NOBR></SPAN> <SPAN
class=ps17><NOBR>到的所有包的数目。丢失的包数的计算方法是,期望的包数减去接收到的包数。获得这个数</NOBR></SPAN> <SPAN
class=ps18><NOBR>值的一种方法是,在产生<SPAN
class=em0>SR</SPAN>的间隔期内,为每个信源的期望包建立一个参数。如果<SPAN
class=em0>RTCP</SPAN>包的</NOBR></SPAN> <SPAN
class=ps19><NOBR>产生间隔本身随呼叫中信源的参与而改变,正如已经建议过的那样,我们必须提醒您注意设</NOBR></SPAN> <SPAN
class=ps20><NOBR>置这样一个期望的困难程度。如果一个实现选择折叠<SPAN
class=em0>RTCP</SPAN>产生间隔,必须注意:当间隔扩大</NOBR></SPAN> <SPAN
class=ps21><NOBR>时,不要错误报告丢失的包;当间隔缩小时,不要设置错误的期望值。</NOBR></SPAN> <SPAN
class=ps22><NOBR>在最简单的情况下,在一个会话期间内<SPAN class=em0>SR</SPAN>产生间隔会保持不变,<SPAN
class=em0>RTP</SPAN>包的有效载荷类型</NOBR></SPAN> <SPAN
class=ps23><NOBR>可以用来设置期望值(我们在<SPAN
class=em0>RTP</SPAN>配置的讨论中谈到了很多不同的有效载荷类型)。应该保证</NOBR></SPAN> <SPAN
class=ps24><NOBR>期望算法的简洁,在这种程度下,实用中很多编码解码器建议的打包速率的最小公约数为</NOBR></SPAN> <SPAN
class=ps25><NOBR><SPAN class=ft1>5</SPAN></NOBR></SPAN> <SPAN
class=ps26><NOBR><SPAN class=ft1>ms<SPAN
class=em2>。这一点很有帮助。这样,当一个新的会话开始并且一个新的信源得到验证之后,如果每</SPAN></SPAN></NOBR></SPAN>
<SPAN class=ps27><NOBR>秒钟都产生<SPAN class=em0>SR<SPAN
class=em2>,</SPAN></SPAN>使用<SPAN class=em0>10ms</SPAN>的打包速率,那么每个<SPAN
class=em0>SSRC</SPAN>期望的有效包数就是<SPAN class=em0>100</SPAN>。打包速率可</NOBR></SPAN>
<SPAN class=ps28><NOBR>以通过信令协议设置为<SPAN
class=em0>RTP</SPAN>配置所建议的不同数值。</NOBR></SPAN> <SPAN
class=ps29><NOBR>本书作者的观点是,把重复包计入产生它们的<SPAN
class=em0>SSRC</SPAN>所收到的有效包总数里是不明智的。</NOBR></SPAN> <SPAN
class=ps30><NOBR>除非出现普遍相互可操作的<SPAN class=em0>RTP</SPAN>实现,否则不会有正确计算<SPAN
class=em0>RTCP</SPAN>包发送间隔的方法。所以,</NOBR></SPAN> <SPAN
class=ps31><NOBR>我们希望在第一个这样的协议实例中,间隔是固定的。</NOBR></SPAN> <SPAN
class=ps32><NOBR><SPAN class=ft1>interarrival jitter<SPAN
class=em2>域包含在接受方测得的包间隔平均偏差,所使用的算法将在后面介绍。</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps33><NOBR><SPAN class=ft1>SSRC<SPAN class=em2>的</SPAN>last SR
timestamp<SPAN class=em2>(</SPAN>LSR<SPAN class=em2>,</SPAN><SPAN
class=em2>上一个时间戳)域是从该</SPAN>SSRC<SPAN class=em2>接收到的</SPAN>NTP<SPAN
class=em2>时间戳的</SPAN></SPAN></NOBR></SPAN> <SPAN class=ps34><NOBR>中间<SPAN
class=em0>32</SPAN>比特,只要接收到了一个<SPAN class=em0>NTP</SPAN>时间戳就可以了。如果没有接收到<SPAN
class=em0>NTP</SPAN>时间戳,那么这</NOBR></SPAN> <SPAN class=ps35><NOBR>个域应该设置为<SPAN
class=em0>0</SPAN>。记住,信源可能无法获得时钟,或者其他可接受的消逝的时间,因此,在</NOBR></SPAN> <SPAN
class=ps36><NOBR>会话持续期间,特定<SPAN class=em0>SSRC</SPAN>的这个域可能保持为<SPAN
class=em0>0</SPAN>。</NOBR></SPAN> <SPAN class=ps37><NOBR><SPAN
class=ft2>delay since last SR<SPAN
class=em2>(D L</SPAN></SPAN></NOBR></SPAN> <SPAN
class=ps38><NOBR>S</NOBR></SPAN> <SPAN class=ps39><NOBR>R)域是端点从发送者那里接收到一个<SPAN
class=em0>SR</SPAN>以后过去的时间。这个</NOBR></SPAN> <SPAN
class=ps40><NOBR>计数器的每一步代表<SPAN class=em0>1/65536</SPAN>秒。</NOBR></SPAN> <SPAN
class=ps41><NOBR>图<SPAN class=em0>2-5</SPAN>中是一个来自于音频会议的<SPAN class=em0>RTCP
SR</SPAN>包。为了简单起见,已经忽略掉链路层和网络</NOBR></SPAN> <SPAN
class=ps42><NOBR>层报头。</NOBR></SPAN> <SPAN class=ps43><NOBR><SPAN
class=ft3>66 <SPAN class=em3>IP </SPAN><SPAN
class=em4>电话技术:稳定的</SPAN><SPAN class=em3>VoIP</SPAN><SPAN
class=em4>服务集成</SPAN></SPAN></NOBR></SPAN> <SPAN class=ps44><NOBR><SPAN
class=ft4>文档</SPAN></NOBR></SPAN> </BODY></HTML>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?