第六章 应用层
6-01 因特网的域名结构是怎么样的?它与目前的电话网的号码结构有何异同之处? 答:
(1)域名的结构由标号序列组成,各标号之间用点隔开: … . 三级域名 . 二级域名 . 顶级域名 各标号分别代表不同级别的域名。
(2)电话号码结构分为国家号(中国 +86)、区号、本机号。
6-02 域名系统的主要功能是什么?域名系统中的本地域名服务器、根域名服务器、顶级域名服务器以及权限域名权服务器有何区别? 答:
域名系统的主要功能:将域名解析为主机能识别的IP地址。例如www.cdutetc.cn --> 110.189.108.9
因特网上的域名服务器系统也是按照域名的层次来安排的。每一个域名服务器都只对域名体系中的一部分进行管辖。共有三种不同类型的域名服务器。即本地域名服务器、根域名服务器、授权域名服务器。 本地域名服务器:当一个本地域名服务器不能立即回答某个主机的查询时,该本地域名服务器就以DNS客户的身份向某一个根域名服务器查询。若根域名服务器有被查询主机的信息,就发送DNS回答报文给本地域名服务器,然后本地域名服务器再回答发起查询的主机。但当根域名服务器没有被查询的主机的信息时,它一定知道某个保存有被查询的主机名字映射的权限域名服务器的IP地址。
根域名服务器:通常,根域名服务器用来管辖顶级域名服务器。根域名服务器并不直接对顶级域名服务器下面所属的所有的域名进行转换,但它一定能够找到下面的所有二级域名的权限域名服务器。每一个主机都必须在权限域名服务器处注册登记。 权限域名权服务器:通常,一个主机的授权域名服务器就是它的主机ISP的一个域名服务器。授权域名服务器总是能够将其管辖的主机名转换为该主机的IP地址。因特网允许各个单位根据本单位的具体情况将本域名划分为若干个域名服务器管辖区。一般就在各管辖区中设置相应的授权域名服务器。
6-03 举例说明域名转换的过程。域名服务器中的高速缓存的作用是什么? 答:
(1)把不方便记忆的IP地址转换为方便记忆的域名地址。例如110.189.108.9--> www.cdutetc.cn (2)域名服务器中的高速缓存的作用:可大大减轻根域名服务器的负荷,使因特网上的DNS 查询请求和回答报文的数量大为减少。
6-04 设想有一天整个因特网的DNS系统都瘫痪了(这种情况不大会出现),试问还可以给朋友发送电子邮件吗? 答:不能。
6-05 文件传送协议FTP的主要工作过程是怎样的?为什么说FTP是带外传送控制信息?主进程和从属进程各起什么作用? 答:(1)FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。
FTP 的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。 主进程的工作步骤:
1、打开熟知端口(端口号为 21),使客户进程能够连接上。 2、等待客户进程发出连接请求。
3、启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
4、回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
FTP的客户和服务器之间要建立两并行的TCP连接:控制连接、数据连接。
控制连接在整个会话期间一直保持打开,FTP 客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。 实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到 FTP 客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程。数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。
由于FTP使用了一个分离的控制连接,因此FTP的控制信息是带外(out of band)传送的。
6-06 简单文件传送协议TFTP与FTP的主要区别是什么?各用在什么场合? 答:
(1)FTP 只提供文件传送的一些基本的服务,它使用 TCP 可靠的运输服务。 FTP 的主要功能是减少或消除在不同操作系统下处理文件的不兼容性。
FTP 使用客户服务器方式。一个 FTP 服务器进程可同时为多个客户进程提供服务。
FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
(2)TFTP 是一个很小且易于实现的文件传送协议。
TFTP 使用客户服务器方式和使用 UDP 数据报,因此 TFTP 需要有自己的差错改正措施。 TFTP 只支持文件传输而不支持交互。
TFTP 没有一个庞大的命令集,没有列目录的功能,也不能对用户进行身份鉴别。
6-07 远程登录TELNET的主要特点是什么?什么叫做虚拟终端NVT? 答:(1)用户用 TELNET 就可在其所在地通过 TCP 连接注册(即登录)到远地的另一个主机上(使用主机名或 IP 地址)。
TELNET 能将用户的击键传到远地主机,同时也能将远地主机的输出通过 TCP 连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。 (2)TELNET定义了数据和命令应该怎样通过因特网,这些定义就是所谓的网络虚拟终端NVT。
6-08 解释以下名词。各英文缩写词的原文是什么?
WWW,URL,HTTP,HTML,CGI,浏览器,超文本,超媒体,超链,页面,活动文档,搜索引擎。 答:
WWW:万维网WWW(World Wide Web)并非某种特殊的计算机网络。万维网是一个大规模的、联机式的信息储藏所,英文简称为Web。万维网用链接的方法能非常方便地从因特
网上的一个站点访问另一个站点(也就是所谓的“链接到另一个站点”),从而主动地按需获取丰富的信息。
URL:为了使用户清楚地知道能够很方便地找到所需的信息,万维网使用统一资源定位符URL(Uniform Resource Locator)来标志万维网上的各种文档,并使每一个文档在整个因特网的范围内具有唯一的标识符URL。
HTTP:为了实现万维网上各种链接,就要使万维网客户程序与万维网服务器程序之间的交互遵守严格的协议,这就是超文本传送协议HTTP。HTTP是一个应用层协议,它使用TCP连接进行可靠的传送。
CGI:通用网关接口CGI是一种标准,它定义了动态文档应该如何创建,输入数据应如何提供给应用程序,以及输出结果意如何使用。
浏览器:一个浏览器包括一组客户程序、一组解释程序,以及一个控制程序。
超文本:超文本的基本特征就是可以超链接文档。你可以指向其他位置,该位置可以在当前的文档中、局域网中的其他文档,也可以在因特网上的任何位置的文档中。这些文档组成了一个杂乱的信息网。目标文档通常与其来源有某些关联,并且丰富了来源;来源中的链接元素则将这种关系传递给浏览者。
超媒体:超级媒体的简称,是超文本(hypertext)和多媒体在信息浏览环境下的结合。 超链:超链接可以用于各种效果。超链接可以用在目录和主题列表中。浏览者可以在浏览器屏幕上单击鼠标或在键盘上按下按键,从而选择并自动跳转到文档中自己感兴趣的那个主题,或跳转到世界上某处完全不同的集合中的某个文档。超链接(hyper text),或者按照标准的叫法称为锚(anchor),是使用标签记的,可以用两种方式表示。锚的一种类型是在文档中创建一个热点,当用户激活或选中(通常是使用鼠标)这个热点时,会导致游览器进行链接。
页面:类似于单篇文章页面,但是和单篇文章。不同的是:1.每个页面都可以自定义样式,而单篇文章则共用一个样式。2.页面默认情况一般不允许评论,而单篇文章默认情况允许评论。3.页面会出现在水平导航栏上,不会出现在分类和存档里,而单篇文章会出现在分类和存档里,不会出现在水平导航栏上。 活动文档(active document):提供屏幕连续更新的技术。这种技术是把所有的工作都转移给浏览器端。每当浏览器请求一个活动文档时,服务器就返回一段活动文档程序副本,使该程序副本在浏览器端运行。
搜索引擎:搜索引擎指能够自动从互联网上搜集信息,经过整理以后,提供给用户进行查阅的系统。
6-09 假定一个超链从一个万维网文档链接到另一个万维网文档时,由于万维网文档上出现了差错而使得超链指向一个无效的计算机名字。这时浏览器将向用户报告什么? 答:404 Not Found。
6-10 假定要从已知的URL获得一个万维网文档。若该万维网服务器的IP地址开始时并不知道。试问:除 HTTP外,还需要什么应用层协议和传输层协议?
答:应用层协议需要的是DNS。运输层协议需要的是UDP(DNS)使用和TCP(HTTP使用)。
例如,假定用户用鼠标点击了IE浏览器页面上的一个链接,其URL是http://www.tsinghua.edu.cn/chn/yxsz/index.htm,则所发生的几个事件如下: (1)浏览器分析链接指向页面的URL。
(2)浏览器向DNS请求解析www.tsinghua.edu.cn的IP地址。
(3)域名系统DNS解析出清华大学服务器的IP地址为116.111.4.100。
(4)浏览器与服务器建立TCP连接(在服务器端IP地址是116.111.4.100,端口是80)。 (5)浏览器发出取文件命令:GET/chn/yxsz/index.htm。
(6)服务器www.tsinghua.edu.cn给出响应,把文件index.htm发送给浏览器。 (7)释放TCP连接。
(8)浏览器显示“清华大学院系设置”文件index.htm中的所有文本。
6-11 你所使用的浏览器的高速缓存有多大?请进行一个试验:访问几个万维网文档,然后将你的计算机与网络断开,然后再回到你刚才访问过的文档。你的浏览器的高速缓存能够存放多少各页面? 答:IE工具?Internet选项?常规标签?Internet临时文件?设置?使用的磁盘空间:596MB。
6-12 什么是动态文档?试举出万维网使用动态文档的一些例子。 答:Dynamic document 动态文档:与WWW文档有关的计算机程序,它能生成所需的文档。 当浏览器需要动态文档时,服务器就运行该程序并发送输出到浏览器。动态文档程序对每个需求可生成不同的输出。
6-13 浏览器同时打开多少个TCP连接进行浏览的优缺点如何?请说明理由。 答:优点:简单明了方便。 缺点:卡的时候容易死机。
6-14 当使用鼠标点击一个万维网文档是,若该文档除了有文本外,还有一个本地.gif图像和两个远地.gif图像。试问:需要使用那个应用程序,以及需要建立几次UDP连接和几次TCP连接?
答:若使用HTTP/1.0,则需要建立0次UDP连接;4次TCP连接(文本1个和图像3个各使用1个)。
若使用HTTP/1.1,则需要建立0次UDP连接;1次TCP连接(文本1个和图像3个都使用这一个TCP连接)。
6-15 假定你在浏览器上点击一个URL,但这个URL的ip地址以前并没有缓存在本地主机上。因此需要用DNS自动查找和解析。假定要解析到所要找的URL的ip地址共经过n个DNS服务器,所经过的时间分别是RTT1,RTT2,……RTTn。假定从要找的网页上只需要读取一个很小的图片(即忽略这个小图片的传输时间)。从本地主机到这个网页的往返时间是RTTw。试问从点击这个URL开始,一直到本地主机的屏幕上出现所读取的小图片,一共需要经过多少时间? 解:
解析IP地址需要时间是:RTT1+RTT2+…+RTTn。
建立TCP连接和请求万维网文档需要的时间是:2RTTw。 一共需要的时间是:RTT1+RTT2+…+RTTn+2RTTw
6-16 在上题中,假定同一台服务器的HTML文件中又链接了三个非常小的对象。若忽略这些对象的发送时间,试计算客户点击读取这些对象所需的时间。 (1)没有并行TCP连接的非持续HTTP; (2)使用并行TCP连接的非持续HTTP;

