【计算机网络(微课版)】第6章 应用层 课后习题及答案

6.1 简述应用层协议定义的内容。

解答:(1)交换的报文类型,如请求报文和响应报文; 

(2)各种报文类型的语法,如报文中的各个字段及其详细描述; 

(3)字段的语义,即包含在字段中的信息的含义;

(4)进程何时,如何发送报文及对报文进行响应。

6.2 因特网的域名结构是怎样的?这样的结构有什么优点?

解答:因特网采用层次树状结构的命名方法,任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名(domain name)。这里,“域”(domain)是名字空间中一个可被管理的划分。域还可以继续划分为子域,如二级域、三级域等等。域名的结构由若干个分量组成,各分量之间用点(请注意,是小数点的点)隔开。各分量分别代表不同级别的域名。每一级的域名都由英文字母和数字组成(不超过63个字符,并且不区分大小写字母),级别最低的域名写在最左边,而级别最高的顶级域名则写在最右边。

因特网域名的层次结构便于管理,等级的命名方法便于维护名字的唯一性。同时针对层次结构容易设计出高效的域名查询机制。

6.3 域名系统为什么不只使用一个域名服务器,而需要有很多服务器组成的分布式层次结构?

解答:集中方式有如下缺点:单点故障,可靠性差;流量集中导致周边网络拥塞;所有查询必须访问远程集中数据库;大量数据难以维护。而采用分布式层次结构可以解决这些问题。

6.4 域名系统的主要功能是什么?域名系统中的根服务器和权威服务器有何区别?权威服务器与管辖区有何关系?

解答:DNS为其他各种网络应用提供一种核心服务,即名字服务,用来把计算机的名字转换为对应的IP地址。

名字空间相关信息(其中最重要的就是域名和IP地址的映射关系)必须保存在计算机中,供所有其他应用查询。显然不能将所有信息都存储在一台计算机中。DNS的方法是将域名信息分布到叫做域名服务器的许多计算机上。DNS将整个名字空间划分为许多区(zone),每个区的域名信息由一个权威域名服务器负责管理。

根域名服务器是最高层次的域名服务器。根域名服务器并不直接管辖某个区的域名信息,但每个根域名服务器都知道所有的顶级域名服务器的域名及其IP地址。

6.5 举例说明域名解析的过程。域名服务器中的高速缓存的作用是什么?

解答:域名解析的过程例子:教材图6-6。为了提高DNS查询效率,并减轻根域名服务器的负荷和减少因特网上的DNS查询报文数量,在域名服务器中广泛地使用了高速缓存(有时也称为高速缓存域名服务器)。高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。

6.6 DNS有哪两种域名解析方式,简述这两种方式区别和特点。

解答:递归查询: 被请求的域名服务器负责域名的解析,当被请求者自己无法解析时,代替请求者查询,服务器负担重。

迭代查询: 被请求的服务器不能解析时仅返回另一个服务器的域名和地址,让请求者自己重新查询,即回答“我不知道这个名字, 请问这个服务器吧!”。请求这负担重。

6.7 为什么通常从请求主机到本地域名服务器的查询采用的是递归查询,而其余的查询采用迭代查询?

解答:从理论上讲,任何DNS查询既可以采用递归查询也可以采用迭代查询。但由于递归查询对于被查询的域名服务器负担太大,而采用迭代查询对请求主机产生的负担太大。通常从请求主机到本地域名服务器的查询是递归查询,而其余的查询是迭代查询。

6.8 对同一个域名向DNS服务器发出好几次的DNS请求报文后,每一次得到IP地址都不一样。这可能吗?

解答:可能。DNS允许用同一个主机名对应一个IP地址集合。DNS服务器收到该主机名的解析请求时,随机或循环返回地址集合中的一个地址。一些热门网站,可以利用该服务将网站复制到多个服务器上,这些服务器公用同一个域名,从而实现在这些服务器上的负载分配。

6.9 根据所学原理,你认为部署一个DNS权威域名服务器必须做哪些基本配置?

解答:必须做3种基本配置,具体如下:

(1)该服务器上配置至少一个根服务器的地址。大部分DNS服务器程序在其配置中提供了所有13个根服务器的完整列表。

(2)该服务器中要配置所管理的域或者子域,及维护的域名信息。

(3)要在上级域名服务器中将相关子域委托给该服务器管理,并记录该服务器的地址。

6.10 解释以下名词。各英文缩写词的原文是什么?

WWW、URL、HTTP、HTML、浏览器、超文本、超媒体、超链、页面、动态文档、活动文档。

解答:

WWW (World Wide Web)是万维网的英文缩写。万维网并非某种特殊的计算机网络。万维网是一个大规模的、联机式的信息储藏所,现在经常只用一个英文字Web来表示万维网。万维网利用网页之间的链接(或称为超链接,即到另一个网页的指针)将不同网站的网页链接成一张逻辑上的信息网,从而用户可以方便地从因特网上的一个站点访问另一个站点,主动地按需获取丰富的信息。

URL (Uniform Resource Locator)是统一资源定位符的英文缩写。万维网使用URL来标志万维网上的各种文档,并使每一个文档在整个因特网的范围内具有唯一的标识符URL。

HTTP (HyperText Transfer Protocol) 是超文本传送协议的英文缩写。HTTP是浏览器与万维网服务器之间的交互所遵守的协议。HTTP是一个应用层协议,它使用TCP连接进行可靠的传送。

HTML (HyperText Markup Language)是超文本标记语言的英文缩写。使得万维网页面的制作者可以很方便地用超链接从本页面的某处链接到因特网上的任何一个万万维网页面,并且制作出来页面能够在任何浏览器的窗口中显示。

浏览器是在万维网客户程序,用来向Web服务器请求页面,并向用户显示从Web服务器请求的页面。

超文本由多个信息源链接成,而这些信息源的数目实际上是不受限制的。利用一个链接可使用户找到另一个文档,而这又可链接到其他的文档(依次类推)。这些文档可以位于世界上任何一个接在因特网上的超文本系统中。超文本是万维网的基础。

超媒体与超文本的区别是文档内容不同。超文本文档仅包含文本信息,而超媒体文档还包含其他多媒体对象,如图形、图像、声音、动画,甚至活动视频图像。

超链就是超文本的链接,超链是隐藏在页面文字或图片后面的URL,该URL指向另一个页面或文件,通常与超链关联文字是用特殊方式显示的(例如用不同的颜色,或添加了下划线),而当我们将鼠标移动到这些地方时,鼠标的箭头就变成了一只手的形状。

页面就是显示在浏览器中的万维网文档,也称为网页。

动态文档是指文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建的。

活动文档是一种能提供页面连续变化而无需不断请求服务器的技术。实际上一个活动文档就是一段程序或嵌入了程序脚本的HTML文档。活动文档中的程序可以在浏览器运行,从而产生页面的变化(例如弹出下拉菜单或显示动画等)。

6.11 假定一个超链从一个万维网文档链接到另一个万维网文档时,由于万维网文档上出现了差错而使得超链指向一个无效的计算机名字。这时浏览器将向用户报告什么?

解答:域名无法解析。

6.12 假定在同一Web服务器上的某HTML文件引用了3个非常小的对象(例如图片)。忽略发送时间,往返时延为RTT,不考虑连接释放时间,在下列各种情况下将该页面完整接收下来需要多长时间?

(1) 采用非并行TCP连接的HTTP非持续连接方式;

(2) 采用并行TCP连接的HTTP非持续连接方式;

(3) 采用HTTP持续连接非流水线方式;

(4) 采用HTTP持续连接流水线方式。

解答:(1)8RTT; (2)4RTT; (3)5RTT; (4)3RTT。

6.13 考虑一个电子商务网站需要保留每一个客户的购买记录。描述如何使用Cookie机制来完成该功能。

解答:步骤如下。

(1)用户第1次访问电子商务网站时,服务器在HTTP响应报文中的cookie首部行中加入一个新产生的用户ID,并在服务器的后端数据库中建立相应记录。

(2)在用户主机中产生Cookie文件,由用户浏览器管理。

(3)用户下一次访问时,浏览器在其HTTP请求报文中的Cookie首部行中引用服务器所分配的用户ID,用户的购买记录会被记录在后台数据库中。

6.14 简述Web缓存的作用和工作原理。

解答:Web缓存器可以减少对客户机请求的响应时间,减小一个机构内部网络与因特网接入链路的通信量,作为代理服务器的另一个作用就是可以用来隔离内外网络。用户配置浏览器: 通过Web缓存访问Web,浏览器发送所有HTTP请求到Web缓存,若对象在缓存中: 缓存返回对象,否则每个缓存器从原始服务器请求对象,存储在本地,然后返回一个复本给客户机。

6.15 请进行一个实验:把你的计算机与网络断开,用脱机方式访问几个你经常访问的Web网站,看能不能够正常显示这些页面。在你的计算机中找到你浏览器的高速缓存的文件夹,看看里面存放了多少个页面?

解答:略,IE默认的缓存位置是C:\Documents and Settings\用户名\Local Settings\Temporary Internet Files\

6.16 试比较万维网静态文档、动态文档和活动文档的区别。

解答:静态文档是指该文档创作完毕后就存放在万维网服务器中,在被用户浏览的过程中,内容不会改变。由于这种文档的内容不会改变,因此用户对静态文档的每次读取所得到的返回结果都是相同的。在万维网发展的早期,所有的文档都是静态的。然而,随着万维网技术的发展越来越多的网页都是动态生成的,即动态文档。

动态文档是指文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建的,其内容通常来源于数据库并根据客户请求报文中的数据动态生成的。当浏览器请求到达时,万维网服务器要运行另一个应用程序,并把控制转移到此应用程序。接着,该应用程序对浏览器发来的数据进行处理,并输出HTTP格式的文档,万维网服务器把应用程序的输出作为对浏览器的响应。

活动文档是一种能提供页面连续变化而无需不断请求服务器的技术。实际上一个活动文档就是一段程序或嵌入了程序脚本的HTML文档。活动文档中的程序可以在浏览器运行,从而产生页面的变化(例如弹出下拉菜单或显示动画等)。由于所有的更新工作都由浏览器自己在本地完成,无需向服务器不断请求页面,因此可以提高应用的响应速度,并对网络带宽的要求也不会太高。对于万维网服务器,活动文档和静态文档没有什么区别,活动文档仅在浏览器一端“活动”。活动文档有时也叫做客户端动态文档。

6.17 试述电子邮件的最主要的组成部件。用户代理UA的作用是什么?没有UA行不行?

解答:电子邮件系统的三个主要组成构件:用户代理、邮件服务器,以及发送和接收电子邮件所需的协议。用户代理UA就是用户与电子邮件系统的接口,又称为电子邮件客户端软件。用户代理使用户能够通过一个很友好的接口(目前主要是用窗口界面)来撰写、发送、接收和阅读邮件。现在可供大家选择的用户代理有很多种。没有UA用户就不能处理和发送邮件。

6.18 电子邮件的信封和内容在邮件的传送过程中起什么作用?

解答:电子邮件由信封和内容两部分组成。电子邮件的传输程序根据邮件信封上的信息来传送邮件。用户在从自己的邮箱中读取邮件时才能见到邮件的内容。在邮件的信封上,最重要的就是收件人的电子邮件地址(或电子信箱地址),没有信封就不能将邮件正确地发送到收件人的邮件。

6.19 电子邮件的地址格式是怎样的?请说明各部分的意思。

解答:电子邮件的地址格式为:收件人邮箱名@邮箱所在服务器域名。符号“@”应读作“at”,表示“在”的意思。用户名是收件人自己定义的字符串标识符,作为收件人在这个域名中的邮箱名。标志收件人邮箱名的字符串在邮箱所在的邮件服务器中必须是唯一的,由于一个邮箱所在邮件服务器的域名在因特网中是唯一的,因此每一个用户的电子邮件地址在因特网中也是唯一的。

6.20 试简述SMTP通信的三个阶段的过程。

解答:

1. 连接建立。发件人的邮件送到发送方邮件服务器的邮件缓存后,SMTP客户就每隔一定时间对邮件缓存扫描一次。如发现有邮件,就使用SMTP的熟知端口号码(25)与接收方邮件服务器的SMTP服务器建立TCP连接。

2. 邮件传送。邮件的传送从MAIL命令开始。MAIL命令后面有发件人的地址。下面跟着一个或多个RCPT命令,取决于把同一个邮件发送给一个或多个收件人。RCPT命令的作用就是:先弄清接收方系统是否已做好接收邮件的准备,然后才发送邮件。再下面就是DATA命令,表示要开始传送邮件的内容了。

3. 连接释放。邮件发送完毕后,SMTP客户应发送QUIT命令。SMTP若同意释放TCP连接,邮件传送的全部过程即结束。

6.21 试述邮局协议POP的工作过程。在电子邮件中,为什么必须使用POP和SMTP这两个协议?IMAP与POP有何区别?

解答:由于SMTP是一种“推”协议,不能用来完成读取邮件这样“拉”的任务,发送邮件是客户主动将邮件“推送”到邮件服务器的过程,而接收邮件是客户主动从邮件服务器“拉取”邮件的过程。因此SMTP协议用来发送电子邮件,而POP协议用来读取电子邮件。

邮局协议POP是一个非常简单、但功能有限的邮件读取协议。当用户需要从邮件服务器的邮箱中下载电子邮件时,客户就开始读取邮件。客户(用户代理)在TCP端口110打开到服务器的连接。它然后发送用户名和口令,访问邮箱。用户可以列出邮箱中的邮件清单,并逐个读取邮件文件。

POP3有两种工作方式:下载并删除方式和下载并保留方式。下载并删除方式就是在每一次读取邮件后就把邮箱中的这个邮件删除。保存方式就是在读取邮件后仍然在邮箱中保存这个邮件。删除方式通常用在用户使用固定计算机工作的情况,用户在本地计算机中保存和管理所收到的邮件。下载并保留方式允许在不同的计算机上多次读取同一邮件。

虽然POP3提供了下载并保留方式,但它不允许用户在服务器上管理他的邮件,例如创建文件夹,对邮件进行分类管理等。因此POP3用户代理采用的主要模式是将所有邮件下载到本地进行管理。这种方式对于经常使用不同计算机上网的移动用户来说是非常不方便的。

另一个读取邮件的协议是因特网报文存取协议IMAP。在使用IMAP时,在用户的PC上运行IMAP客户程序,然后与接收方的邮件服务器上的IMAP服务器程序建立TCP连接。用户在自己的PC上就可以操纵邮件服务器的邮箱,就像在本地操纵一样,因此IMAP是一个联机协议。用户可以根据需要为自己的邮箱创建便于分类管理的层次式的邮箱文件夹,并且能够将存放的邮件从某一个文件夹中移动到另一个文件夹中。用户也可按某种条件对邮件进行查找。在用户未发出删除邮件的命令之前,IMAP服务器邮箱中的邮件一直保存着。这样就省去了用户PC硬盘上的大量存储空间。

IMAP最大的好处就是用户可以在不同的地方使用不同的计算机(例如,使用办公室的计算机、或家中的计算机,或在外地使用笔记本计算机)随时上网阅读和处理自己的邮件。

6.22 MIME与SMTP的关系是怎样的?什么是quoted-printable编码和base64编码?

解答:由于SMTP限于传送7位的ASCII码,不能传送可执行文件或其他的二进制对象。为解决SMTP传送非ASCII码文本的问题,提出了通用因特网邮件扩充MIME。MIME并没有改动或取代SMTP,只是一个辅助协议。MIME在发送方把非ASCII码数据转换为ASCII码数据,交给SMTP传送。在接收方再把收到的数据转换为原来的非ASCII码数据。

quoted-printable编码适用于当所传送的数据中只有少量的非ASCII码,例如汉字。这种编码方法的要点就是对于所有可打印的ASCII码,除特殊字符等号“=”外,都不改变。等号“=”和不可打印的ASCII码以及非ASCII码的数据的编码方法是:先将每个字节的二进制代码用两个十六进制数字表示,然后在前面再加上一个等号“=”。

对于任意的二进制文件,可用base64编码。这种编码方法是先将二进制代码划分为一个个24位长的单元,然后将每一个24位单元划分为4个6位组。每一个6位组按以下方法转换成ASCII码。6位的二进制代码共有64种不同的值,从0到63。用A表示0,用B表示1,等等。26个大写字母排列完毕后,接下去再排26个小写字母,再后面是10个数字,最后用+表示62,而用/表示63。再用两个连在一起的等号==和一个等号=分别表示最后一组只有8位或16位的代码。解码时对回车和换行都忽略,因此它们可在编码后的字符串中的任何地方插入。

6.23 一个二进制文件共3072字节长。若使用base64编码,并且每发送完80字节就插入一个回车符CR和一个换行符LF,问一共发送了多少个字节?

解答:发送编码后的数据3072´32/24=4095字节,插入回车符换行符104个,因此一共发送了4200字节。

6.24 电子邮件系统使用TCP传送邮件。为什么有时我们会遇到邮件发送失败的情况?为什么有时对方会收不到我们发送的邮件?

解答:电子邮件系统虽然使用TCP传送邮件,但并不是在发件者和收件者之间直接使用TCP传送邮件,而是通过用户代理发送到发件方邮件服务器,然后发件方邮件服务器发送到收件方邮件服务器,若邮件服务器出现故障则可能导致我们收不到邮件。

6.25 当我们用浏览器访问某个网站时,如果输入的网站地址错误,浏览器会立即提示出现了错误,为什么我们在发送电子邮件时,当收件人地址写错时并不能立即得到错误信息呢?

解答:因为用户代理是先将邮件发送给邮件服务器,邮件服务器再在合适的时候将邮件发送给收件人所在的邮件服务器。当我们用用户代理发送邮件时邮件服务器并不处理邮件中的地址,也发现不了该错误,若邮件地址中的收件人邮箱所在邮件服务器域名错误,在发送方邮件服务器发送该邮件时会发现该错误,若邮件地址中是收件人邮箱名错误则要等该邮件发送到收件人邮箱所在邮件服务器时才可能发送该错误。

6.26 用户经常需要在不同的地方和不同的主机上接收和发送电子邮件,使用哪种邮件访问方式比较合适?

解答:IMAP或使用基于万维网的电子邮件。

6.27 文件传送协议FTP的主要工作过程是怎样的?主进程和从属进程各起什么作用?

解答:FTP基于客户/服务器体系结构。一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。

主进程的工作步骤如下:

(1)打开熟知端口(端口号为21),使客户进程能够连接上。

(2)等待客户进程发出连接请求。

(3)启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。

(4)回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。

6.28 某用户利用FTP从远程主机下载了3个文件,在FTP客户机和FTP服务器之间至少要建立最少次TCP连接?为什么?

解答:4个TCP连接。一次控制连接,3次数据连接。

6.29 假设在因特网上有一台FTP服务器,其域名为ftp.jfjlgdx.edu.cn,IP地址为212.56.121.23,FTP服务器进程在默认端口守候并支持匿名访问(用户名:anonymous,口令:guest)。如果某个用户直接用服务器域名访问该FTP服务器,并从该服务器下载文件File1和File2,请给出FTP客户进程与FTP服务器进程之间的交互过程。

解答:交互过程大致如下。

(1)首先要完成对该服务器域名ftp.jfjlgdx.edu.cn的解析,最终获得该服务器的IP地址212.56.121.23。

(2)FTP的客户进程与服务器进程之间使用TCP建立起一条控制连接,并经过它传送包括用户名和密码在内的各种FTP命令。

(3)控制连接建立之后,客户进程和服务器进程之间使用TCP建立两次数据连接,分别完成文件File1和File2的传输。

(4)当文件File1和File2传输完成之后,客户进程与服务器进程分别释放数据连接和控制连接。

6.30 如果一台计算机要接入到因特网,那么它必须配置哪些协议参数?DHCP协议的作用是什么?

解答:一台连接到因特网的计算机通常需要配置以下参数:

(1) IP地址。

(2) 子网掩码。

(3) 默认路由器的IP地址。

(4) 域名服务器的IP地址。

动态主机配置协议DHCP (Dynamic Host Configuration Protocol)提供了一种机制,称为即插即用连网(plug-and-play networking)。这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与。

6.31 简述DHCP的工作过程。为什么要使用广播?

答:DHCP客户广播DHCP服务器发现报文。DHCP服务器应答DHCP提供报文。客户机发送DHCP请求报文。服务器应答DHCP确认报文。

使用广播发送DHCP服务器发现报文是因为客户不知道服务器的IP地址,但又想与之通信。

6.32 一台服务器采用P2P文件分发方式把一个大文件(长度为L)分发给n台客户机。假设文件传输的瓶颈是各主机的上行速率R,并且每个对等方只能在接收完整个文件后才能向其它对等方转发。请计算文件分发到所有对等方的最短时间。

解答:

6.33 重新考虑上题文件分发任务,但可以将这个非常大的文件划分为一个个非常小的数据块进行分发,即一个对等方在下载完一个数据块后就能向其他对等方转发,并同时可下载其它数据块。不考虑分块增加的控制信息,试计算整个大文件分发到所有对等方的最短时间。

解答:L/R

6.34 在P2P对等方中搜索文件的方式主要有哪几种?简述各自的优缺点。

答:集中式目录、洪泛查询和DHT。

集中式目录方式的优点是简单高效;缺点主要是单点故障、性能瓶颈。

洪泛查询方式的优点是完全分布无单点故障的问题,但缺点是查询流量大,可扩展性差,洪泛查询范围受限。

DHT的优点是对精确查询高效、可靠、可扩展性好,但缺点是结构维护机制比较复杂,当结点频繁加入或退出会导致较高的维护代价,难以实现基于内容的模糊查询。

6.35 考虑一个5位ID空间的Chord覆盖网络,该覆盖网络有结点1, 4, 7, 12, 15, 20, 27。假设结点1要查找对象16,请写出查找步骤,并给出相关结点的索引表。

解答:查找步骤:1->12->15->20

结点1的索引表:4, 4, 7, 12, 20;结点12的索引表:15, 15, 20, 20, 1;

结点15的索引表:20, 20, 20, 27, 1;结点20的索引表:27, 27, 27, 1, 4;

6.36 常用的多媒体应用(流式存储音频/视频、流式实况音频/视频和实时交互音频/视频)都各有何特点?

解答:

流式存储音频/视频是一些经过压缩并存储在服务器中的文件,客户端可以通过因特网边下载边播放这些文件,也就是我们有时所说的音频/视频点播。所谓“流式”是指可以在下载文件的同时连续播放该文件。流式音频/视频又称为流媒体。

流式实况音频/视频(又称为音频/视频直播)类似于传统的广播电台和电视台播放的音频和视频节目,区别在于它们是通过因特网来传输的。这样的应用主要包括因特网广播电台和因特网电视。

实时交互音频/视频这类应用允许人们相互之间使用音频/视频进行实时的交互。典型的实例是因特网电话和因特网视频会议。

6.37 试简述RTP协议和SIP协议的要点。

解答:实时传输协议RTP (Real-time Transport Protocol)用于传输多种格式的多媒体数据,RTP协议分组封装在UDP报文中进行传输,并提供序号、时间戳等机制,在UDP之上为实时多媒体网络应用提供端到端的传输服务。

会话发起协议SIP (Session Initiation Protocol)是一个由IETF制定的一套较为简单且实用的实时交互协议,能够用来定位用户、建立、管理和终止多媒体会话(呼叫),支持双方、多方或多播会话,但并不强制使用特定的编解码器和多媒体传输协议。

6.38 在万维网中寻找两个流式存储音频或视频网站。用Wireshark软件分析:

(1) 该站点是否使用了元文件?

(2) 音频/视频是利用UDP还是TCP进行传输的?

(3) 是否使用了RTP?

(4) 是否使用了RTSP?

解答:略

6.39 TCP接收缓冲区和媒体播放器的播放缓冲区在作用上有什么区别?

解答:TCP接收缓冲区用来存放已正确接收但接收方还来不及读取的数据,或者未按序到达,还不能提交给上层应用的数据。主要是用来匹配收发双方的速度的。

而媒体播放器的播放缓冲区是用来延迟播放的,将不等时到达的数据通过缓存后再以恒定速率按顺序将这些分组的数据进行播放。

6.40 RTP协议能否为应用层提供可靠传输服务?请说明理由。

解答:不能。RTP底层采用提供不可靠传输服务的UDP,并且RTP本身也没有确认和差错恢复机制。

6.41 在RTP分组首部中为什么要使用序号、时间戳?

解答:接收方可以通过序号检测是否丢失了分组,然后通过丢失分组恢复技术重构丢失的数据,以实现数据播放的连续性。要注意的是,RTP本身并不提供修复数据丢失的任何措施,而只是把数据丢失的信息提供给媒体应用,并由应用来决定如何处理。

接收方使用时间戳来消除网络中引入的分组时延抖动,使接收方能够以恒定速率播放媒体。时间戳还可用于视频应用中声音和图像的同步。

6.42 试比较CDN与Web缓存的相似之处和区别。

解答:都是将内容复制到与用户距离较近的地方,从而避免了大量重复数据的远程传输,大大改善整个系统的传输时延和网络流量。但CDN是主动将内容推送到用户附近,而Web缓存是其他用户访问时缓存到用户附近。另外,在CDN中,用户是先直接访问原始服务器,然后被重定向到副本结点;而使用Web缓存时,用户是先访问缓存,如果缓存没有,缓存再到原始服务器获取内容。

6.43 请说明IP多播和应用层多播的区别。为什么目前流式实况频/视频应用多采用应用层多播技术来实现?

解答:IP多播是通过多播路由器实现分组的复制和转发,而应用层多播的基本思想是把对多播数据的路由选择、复制和转发任务,交给位于网络边缘的多播组成员主机来完成,而不是由网络核心的路由器来直接处理多播数据。成员主机之间的数据传输依然采用的是IP单播。IP多播的效率要比P2P应用层多播的效率要高,但广泛应用IP多播的前提是所有路由器都要具有复杂的IP多播功能,这势必增加路由器的负担和实现的复杂性,因此IP多播并没有得到很好发展和广泛使用。事实上把过于复杂的功能引入到网络层,就违反了因特网设计的“端到端原则”,而应用层多播正是将复杂的功能放在了位于网络边缘的端系统上。

6.44 在SIP协议中,SIP注册服务器的作用是什么?

解答:由于在SIP中,用户呼叫对方的SIP地址不一定是IP地址,但实际通信是需要对方的IP地址。SIP的注册服务器和DNS服务器非常类似:DNS服务器把主机名解析成IP地址,而SIP注册服务器把SIP地址转换成IP地址。用户在任何时候使用SIP时,都应向注册服务器报告现在使用的IP地址。当主叫方需要和该被叫方通信时,通过注册服务器查找注册的被叫方的IP地址。

6.45 考察6.10.2节中TCP服务器代码的第28、29行。如果客户端发送一个比较长的字符串(例如5000字节),如何修改这两行代码才能正确接收完客户端发送的字符串,并说明原因。

解答:扩大buf,并循环调用recv进行接收数据直到返回值小于等于0,代码略。注意:TCP的发送方由于流量控制和拥塞控制或将数据分多次发送过来,同时5000字节也大于以太网的最大帧长了。

6.46 判断正误:

(1) 在浏览器和Web服务器之间使用流水线方式的持久连接的话,一个TCP报文段可能携带两个不同的HTTP服务请求报文。

(2) 高质量视频传输属于能容忍数据丢失的网络应用。

(3) 假设用户请求由某些文本和两幅图片组成的Web页面(不使用内含图像文档)。对于这个页面,浏览器将会发送一个请求报文并接收三个响应报文。

(4) 由于P2P文件共享系统采用的是对等体系结构,因此在该系统中的一次通信会话中不存在客户机进程和服务器进程的概念。

(5) 全球目前有十几个根域名服务器,世界上任何一个联网计算机的域名都可以在其中至少一个根域名服务器的数据库中直接查询得到。

(6) 两个不同的Web页面(例如,www.mit.edu/research.html及www.mit.edu/students.html)可能通过同一个持久连接发送。

解答:(1)√(2)√(3)×(4)×(5)×(6)√

你可能感兴趣的:(——,计算机网络,——,计算机网络,课后习题)