把RTP协议画在应用层
发布时间:2014/9/25 18:11:12 访问次数:1037
图8-10把RTP协议画在应用层。这是因为从S3C2410A20-YO80应用开发者的角度看,RTP应当是应用层的一部分。在应用程序的发送端,开发者必须编写用RTP封装分组的程序代码,然后把RTP分组交给UDP套接字接口。在接收端,RTP分组通过UDP套接字接口进入应用层后,还要利用开发者编写的程序代码从RTP分组中把应用数据块提取出来。
然而RTP的名称又隐含地表示它是一个运输层协议。这样划分也是可以的,因为RTP封装了多媒体应用的数据块,并且由于RTP向多媒体应用程序提供了服务(如时间戳和序号),因此也可以把RTP看成是在UDP之上的一个运输层子层的协议。
RTP还有两点值得注意。首先,RTP分组只包含RTP数据,而控制是由另一个配套使用的RTCP协议提供的(这在下一节介绍)。其次, RTP在端口号1025至刂65535之间选择一个未使用的偶数UDP端口号,而在同一次会话中的RTCP则使用下一个奇数L1DP端口号。但端口号50⒄和5005则分别用作RTP和RTCP的默认端口号。
图8-11给出了RTP分组的首部格式,下面进行简单的介绍。
图8-10把RTP协议画在应用层。这是因为从S3C2410A20-YO80应用开发者的角度看,RTP应当是应用层的一部分。在应用程序的发送端,开发者必须编写用RTP封装分组的程序代码,然后把RTP分组交给UDP套接字接口。在接收端,RTP分组通过UDP套接字接口进入应用层后,还要利用开发者编写的程序代码从RTP分组中把应用数据块提取出来。
然而RTP的名称又隐含地表示它是一个运输层协议。这样划分也是可以的,因为RTP封装了多媒体应用的数据块,并且由于RTP向多媒体应用程序提供了服务(如时间戳和序号),因此也可以把RTP看成是在UDP之上的一个运输层子层的协议。
RTP还有两点值得注意。首先,RTP分组只包含RTP数据,而控制是由另一个配套使用的RTCP协议提供的(这在下一节介绍)。其次, RTP在端口号1025至刂65535之间选择一个未使用的偶数UDP端口号,而在同一次会话中的RTCP则使用下一个奇数L1DP端口号。但端口号50⒄和5005则分别用作RTP和RTCP的默认端口号。
图8-11给出了RTP分组的首部格式,下面进行简单的介绍。