答:对于持续HTTP连接方案,比较适合用于同一个TCP连接连续传送传输多个较小的对象,而对于非持续HTTP连接方案,以并行的方式同时传输多个较大对象更为合适。由此,我们可以设计如下方案:
(1)由于JPEG文件较小,下载一个JPEG文件的时间为tJ,下载HTML文件的时间为tHTML,采用持续连接对这9个Web对象件进行下载。
(2)5个视频文件较大,采用非持续连接进行并行下载,所需最长时间为2RTT+max(tv)。
因此,该下载该网页所需的时间大致为:2RTT+max{8?tJ+tHTML, 2RTT+max(tv)},需要的连接数目为6。
2. 参照习题6-9,假定在同一服务器上某HTML文件引用了3个非常小的对象。忽略发送时间,在下列情况下需要多长时间:
a. 没有并行TCP连接的非持续HTTP? b. 有并行连接的非持续HTTP? c. 有流水线的持续HTTP?
答:如果主机从DNS得到IP地址之前,已经访问了n个DNS服务器;相继产生的RTT依次为RTT1、….、RTTn,令RTT0表示本地主机和包含对象的服务器之间的RTT值。当在同一服务器上某HTML文件引用了3个非常小的对象,设用户与服务器之间的往返时延为RTT,传输HTML基本文件连同3个小对象的时间为t1:
a.获取IP地址的总时间为:RTT1+ RTT2+…+ RTTn.
一旦获取了IP地址,需要RTT0的时间去建立HTTP连接,然后需要2RTT0的时间去请求和获取对象。因此总的反应时间为:2RTT0+ RTT1+ RTT2+…+ RTTn+t1.
使用没有并行TCP连接且用非持续HTTP ,对每个对象都要打开一个HTTP连接,即需要时间:8*RTT0+ RTT1+ RTT2+…+ RTTn+3*t1。
b. 使用有并行连接的非持续HTTP ,在获取IP地址的总时间后,先打开基本HTML文件,需时2RTT0;然后并行打开3个连接,需时2RTT0 +t1,因此共需时4RTT0 +t1。因此总的反应时间为:
4*RTT0+ RTT1+ RTT2+…+ RTTn+ t1
c. 使用有流水线的持续HTTP时,在获取IP地址的总时间后,先建立连接后再顺序传输3个小对象,即2RTT0+3t1。因此总的反应时间为:
2*RTT0+ RTT1+ RTT2+…+ RTTn.+3 t1
3. 在图6-11中用cookie跟踪用户状态的例子中,如果此时用户张红又同时在亚马逊(amazon)公司网站上购买了图书,该网站为她分配了识别码5678。试说明当张红同时访问阿里巴巴和亚马逊网站时,这些识别码不会被误用。
答:这些识别码是不会被误用。因为在用户端系统中保留有一个cookie文件,用户的浏览器管理本用户在不同网站中的识别码。当用户与某网站连接时,HTTP是通过TCP连接与该网站连接,并在HTTP请求报文中填写对应该网站cookie首部行的识别码,如Set-cookie:1678。因此,不会误用网站的识别码的。
4. 考虑图6-12,其中有一个园区网和因特网相连。假定对象的平均长度为5M比特,从这个园区网的浏览器到初始服务器的平均请求率是每秒2个请求。还假定从访问链路的因特网一侧的路由器转发一个HTTP请求开始,到接收到其响应的平均时间是2秒。将总的平均响应时间建模为平均访问时延(即从因特网路由器到机构路由器的时延)和平均因特网时延之和。对于平均访问时延,使用 ,式中 是跨越访问链路发送一个对象所需的平均所需时间, 是对象对该访问链路的平均到达率。
a. 求出总的响应时间。
b. 现在假定在这个园区网LAN中安装了一个缓存器。假定命中率为0.4,求出总的响应时间。
答:a. 跨越速率为R的链路,发送一个长度为L的对象的时间为:L/R。因此: ?= (5MB)/100Mbps=0.4s,流量强度为:??β=0.4?2=0.8,因此平均访问时间为:?/(1-?β)=0.4/(1-0.8)=2s。因此,总的访问时间为:2s+2s=4s。
b. 假如在园区内安装了缓存器,命中率为40%,因此链路的流量强度将减少40%。因此,平均的访问时间为:0.4/(1-0.8?0.6)=0.78s。因此,总响应时间为:0.78+2s=2.78s。平均的访问时间为:0.4?0ses+0.6?2.78sec = 1.67s。
6-22讲
1. 多媒体应用是如何分类的?这些类型的应用各有哪些特点?
答:多媒体网路应用分为三类:流式存储音频和视频、流式实况音频和视频以及实时交互音频和视频。
这几种多媒体应用都具有时延敏感、丢包容忍的特点。此外,流式存储音频和视频应用中,客户根据需求请求存储在服务器上的被压缩的音频和视频文件。多媒体的内容已经预先录制,并以存储媒体的形式存储在服务器上。流式实况音频和视频应用中,多媒体内容不再存储,而是来源于实况电视和无线电广播。在实时交互音频和视频应用中,允许人们使用音频/视频互相实时通信,这类应用对时延及其时延抖动要求最高。
2. 在目前的因特网中,为了缓解多媒体应用的QoS问题,通常采用的是应用层解决方案。在应用层解决方案中,有哪些重要的技术?
答:在因特网上,所有通信都是基于IP的尽力而为的传送服务,无法确保
多媒体应用的QoS,因此只能采用应用层解决方案。其中包括:采用UDP而不是TCP作为运输层协议,避免拥塞控制的影响;设置客户缓冲区有效地改善时延抖动产生的影响;服务器调用适当副本以匹配客户带宽;使用丢包恢复技术,应对丢包;采用内容分发网络技术,以分散流量传输。
3. 在6.6.3节因特网电话的例子中,设h是添加到每个块首部的字节总数,包括UDP和IP首部。
a. 假设每20 s发出一个IP数据报,求该应用端产生的数据报的传输速率,以每秒比特为单位。
b. 当使用RTP时,h的典型值是什么?
答:a. 在20ms内发送160+h字节的数据,因此平均的传输速率为:
(160?h)?820kbps=(64+0.4h)kbps。
b. 当使用RTP时,因为IP首部为20字节,UDP首部为8字节,RTP首部为12字节,因此h=40字节。
6-23讲
1. 简述电子邮件的最主要的组件。这些组件之间交互使用了哪些协议?用户代理的作用是什么?没有用户代理是否可行?
答:电子邮件系统最重要的具有3个组件是:用户代理(UA)、邮件服务器和应用协议如SMTP和POP3等。用户代理是用户与电子邮件系统的接口,用户代理又称为电子邮件客户软件,它是运行在用户端系统的一个软件程序。邮件服务器包括发送方邮件服务器和接收方邮件服务器。
发送方用户代理向发送方邮件服务器,以及发送方邮件服务器向接收方邮件服务器发送邮件使用的是SMTP协议。接收方用户代理从接收方邮件服务器读取邮件则使用了POP3或是互联网邮件访问协议IMAP。
如果用户熟悉电子邮件应用层命令和规则,可以直接通过telnet直接操作邮件过程,此时没有用户代理也可以。
2. 引入MIME有何作用?MIME与SMTP的关系如何?
答:为了解决SMTP只支持7比特ASCII码传输的问题,在使用SMTP传输邮件之前,将二进制数据转换为ASCII编码数据,并在使用SMTP传输后再将ASCII码数据还原回二进制数据。
为了使电子邮件系统能够用SMTP传输非ASCII数据的内容,发送方用户代理必须在报文首部中包括多用途互联网邮件扩展(MIME)首部行。这样,用
户代理在用SMTP发送邮件前,先会将二进制文件转换为ASCII文件。并且在接收方,在提交给接收方用户代理前,再将该ASCII文件转换为二进制文件。
3. 电子邮件系统在运输层使用了TCP来传送邮件。为什么还会有发送的电子邮件对方没有收到的情况出现?请解释原因。
答:一份电子邮件必要经过:(1)从发送方用户代理通过SMTP向发送方邮件服务器,(2)发送方邮件服务器通过SMTP向接收方邮件服务器发送邮件,(3)接收方用户代理用POP3或IMAP从接收方邮件服务器读取邮件等3个环节。
尽管每个应用协议都是基于TCP的,可以保证邮件每次端到端传输的可靠性,但并不能保证:①在发送邮件服务器或接收邮件服务器因服务器故障或缓存溢等原因导致的邮件丢失;②邮件服务器未工作,邮件发送不出去。电子邮件本身并没有端到端的可靠性保障机制。
6-24讲
1. 回顾BitTorrent的工作过程。其中有哪些重要组件?有哪些重要协议?跟踪器起了什么作用?对等方列表起了什么作用?对等方之间交换彼此的块信息起了什么作用?
答:BitTorrent重要组件主要包括:跟踪当前活动对等方的跟踪器、需要交换信息的对等方和存放种子文件的Web服务器。
BitTorrent中主要的协议包括:运输层的TCP协议,应用层的HTTP和BT协议。
对等方列表记录了当前已知的参与共享某文件的所有活动结点的IP地址和具有的数据块信息。
通过对等方之间交换彼此的块信息,能够知道哪个对等方具有自己所需的数据块,并使用本地最少优先算法请求那些系统中副本数量最少的文件块,并向疏通对等方优化提供自己所需的数据块。
2. 在一个基于DHT的结构化P2P系统中,使用了Chord环形空间 [0, 127)来组织结点及其资源。用圆点分别标识为N1、N15、N30、N52、N68、N83、N101和N120等结点。类似地,所有资源经过散列求值后也被映射到该[0, 127)空间。
a) 试在图中用方点画出分别标识为K8、K31、K55、K76、K88、K107的资源。
b) 画出N15的查找器表的表项。 c) 画出从N15开始的搜索过程。
答:a. 在图上标识了K8、K31、K55、K76、K88、K107的资源。
N1K8N15N120N30K31K107N101N52K88K55N83N68K76
查找器表b. N15的查找器表的表项如下
N1K8N15+1N15+2N15+4N15+8N15+16N30N15+32N15+64K31N30N30N30N30N52N52N83N15N120K107N101N52K88K55N83N68K76
查找器表N1K8N15+1+2+4+8N30+16K31N15+1N15+2N15+4N15+8N15+16N15+32N15+64N30N30N30N30N52N52N83c. 从N15开始的搜索过程如下。
N120K107N101+64+32N52K88K55N83N68K76