Download ppt - 第 9 章 应 用 层

Transcript
Page 1: 第 9 章  应 用 层

Page 1/38 电子科技大学

第 9 章 应 用 层第 9 章 应 用 层

9.1 域名系统DNS

9.2 文件传送协议FTP

9.3 远程登录TELNET

9.4 电子邮件

9.5 万维网WWW

9.6 动态主机配置协议DHCP

Page 2: 第 9 章  应 用 层

Page 2/38 电子科技大学

9.1 域名系统 DNS9.1 域名系统 DNS

• 9.1.1 域名系统概述

许多应用层软件经常直接使用域名系域名系统统 DNS (Domain Name System) ,但计算机的用户只是间接而不是直接使用域名系统。

因特网的域名系统 DNS 是一个联机分布式数据库系统,并采用客户服务器方式。

Page 3: 第 9 章  应 用 层

Page 3/38 电子科技大学

• 9.1.2 因特网的域名结构

任何一个连接在因特网上的主机或路由器,都有一个一个惟一的层次结构的名字惟一的层次结构的名字,即域名域名 (domain name) 。

现在顶级域名 TLD (Top Level Domain) 有三类:

( 1 )国家顶级域名国家顶级域名 nTDL

( 2 )国际顶级域名国际顶级域名 Itdl

( 3 )通用顶级域名通用顶级域名 gTDL

图 9-1 是因特网名字空间的结构,它实际上是一个倒过来的树,树根在最上面而没有名字。

Page 4: 第 9 章  应 用 层

Page 4/38 电子科技大学

Page 5: 第 9 章  应 用 层

Page 5/38 电子科技大学

• 9.1.3 用域名服务器进行域名转换

共有以下三种不同类型的域名服务器: ( 1 )本地域名服务器本地域名服务器 (local name serve

r)

( 2 )根域名服务器根域名服务器 (root name server)

( 3 )授权域名服务器授权域名服务器 (authoritative nam

e server)

图 9-2 是管辖区的划分举例。

Page 6: 第 9 章  应 用 层

Page 6/38 电子科技大学

Page 7: 第 9 章  应 用 层

Page 7/38 电子科技大学

图 9-3 表示查询 IP 地址的过程。假定域名为m.xyz.com 的主机想知道另一个域名为 t.y.abc.com 的主机的 IP 地址。于是向其本地域名服务器 dns.xyz.com 查询。由于查询不到,就向根域名服务器 dns.com 查询。根据被查询的域名中的“ abc.com” 再向授权域名服务器dns.abc.com 发送查询报文,最后再向授权域名服务器 dns.y.abc.com 查询。以上的查询过程见图中的①→②→③→④的顺序。得到结果后,按照图中的⑤→⑥→⑦→⑧的顺序将回答报文传送给本地域名服务器 dns.xyz.com 。总共要使用 8 个 UDP 报文。这种查询方法叫做递归查询递归查询。

Page 8: 第 9 章  应 用 层

Page 8/38 电子科技大学

Page 9: 第 9 章  应 用 层

Page 9/38 电子科技大学

以后的过程如图 9-4 所示。这就是

递归与迭代相结合递归与迭代相结合的查询方法。可以看出,对

根域名服务器来说,负担减轻了一半。

Page 10: 第 9 章  应 用 层

Page 10/38 电子科技大学

Page 11: 第 9 章  应 用 层

Page 11/38 电子科技大学

9.2 文件传送协议 FTP9.2 文件传送协议 FTP

• 9.2.1 概述

文件传送协议文件传送协议 FTP (File Transfer Pr

otocol) 是因特网上使用得最广泛的文件传送协议。

文件共享协议中的另一大类是联机访联机访

问问 (on-line access) 。

Page 12: 第 9 章  应 用 层

Page 12/38 电子科技大学

• 9.2.2 FTP的主要工作原理

文件传送协议 FTP 只提供文件传送的一些基本的服务,它使用 TCP 可靠的运输服务。 FTP 的主要功能是减少或消除在不同操作系统下处理文件的不兼容性。

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

FTP 的工作情况如图 9-5所示。 在进行文件传输时, FTP 的客户和服务器之间要建立两个连接:“控制连接控制连接”和“数据连接数据连接”。

Page 13: 第 9 章  应 用 层

Page 13/38 电子科技大学

Page 14: 第 9 章  应 用 层

Page 14/38 电子科技大学

FTP 一般都是交互式地工作。作为例

子,图 9-6 给出了用户机器上显示出的信息。

Page 15: 第 9 章  应 用 层

Page 15/38 电子科技大学

Page 16: 第 9 章  应 用 层

Page 16/38 电子科技大学

9.3 远程登录 TELNET9.3 远程登录 TELNET

远程登录远程登录 TELNETTELNET 是一个简单的远程终端是一个简单的远程终端

协议协议。用户用 TELNET 就可在其所在地通过 TCP 连

接注册 ( 即登录 ) 到远地的另一个主机上 ( 使用主机名

或 IP 地址 ) 。

现在由于 PC 机的功能越来越强,用户就

较少使用 TELNET 了。

图 9-7 说明了 NVT 的意义。

Page 17: 第 9 章  应 用 层

Page 17/38 电子科技大学

Page 18: 第 9 章  应 用 层

Page 18/38 电子科技大学

9.4 电子邮件9.4 电子邮件• 9.4.1 概述

电子邮件电子邮件 (e-mail) 是因特网上使用得最多的和最受用户欢迎的一种应用。电子邮件将邮件发送到 ISP 的邮件服务器,并放在其中的收信人邮邮箱箱 (mail box) 中,收信人可随时上网到 ISP 的邮件服务器进行读取。

简单邮件传送协议简单邮件传送协议 SMTP (Simple Mail Transfer Protocol)[RFC 821] 和因特网文本报文格式 [RFC 822] ,它们已成为因特网的事实上的标准。

Page 19: 第 9 章  应 用 层

Page 19/38 电子科技大学

由于因特网的 SMTP 只能传送可打印的 ASCII码邮件,因此在 1993年又制定了新的电子邮件标准[RFC 1521, 1522] ,即“通用因特网邮件扩充通用因特网邮件扩充” MIME MIME (Multipurpose Internet Mail Extensions) 。 MIME 在其邮件首部中说明了邮件的数据类型 ( 如文本、声音、图像、视像等 ) 。 MIME 邮件可同时传送多种类型的数据。这在多媒体通信环境下是非常有用的。

一个电子邮件系统应具有图 9-8 所示的 3 个主要组成部件,这就是用户代理用户代理、邮件服务器邮件服务器,以及电子邮件使用的协议。协议。

Page 20: 第 9 章  应 用 层

Page 20/38 电子科技大学

Page 21: 第 9 章  应 用 层

Page 21/38 电子科技大学

用户代理用户代理 UA(User Agent) 就是用户与电子邮件系统的接口,在大多数情况下它就是在用户 PC 机中运行的程序。

用户代理至少应当具有以下 3 个功能: · 撰写撰写。 · 显示显示。 · 处理处理。 邮件服务器邮件服务器是电子邮件系统的核心构件。邮件服务

器需要使用两个不同的协议两个不同的协议。一个协议用于发送邮件发送邮件,即 SMTP协议,而另一个协议用于接收邮件接收邮件,即邮局协议邮局协议 POP (Post Office Protocol) 。

Page 22: 第 9 章  应 用 层

Page 22/38 电子科技大学

电子邮件由信封信封 (envelope) 和内容内容 (c

ontent) 两部分组成。 TCP/IP体系的电子邮件系统规定电子电子

邮件地址邮件地址 (e-mail address) 的格式如下: 收信人邮箱名 @ 邮箱所在主机的域名 在发送电子邮件时,邮件服务器只使用邮件服务器只使用

电子邮件地址中的后一部分电子邮件地址中的后一部分,即目的主机的域名即目的主机的域名。

Page 23: 第 9 章  应 用 层

Page 23/38 电子科技大学

• 9.4.2 简单邮件传送协议 SMTP

使用 SMTP 时,收信人可以是和发信人连接在同一个本地网络上的用户,也可以是因特网上其他网络的用户,或者是与因特网相连但不是 TCP/IP 网络上的用户。 1 .连接建立

2 .邮件传送

3 .连接释放

Page 24: 第 9 章  应 用 层

Page 24/38 电子科技大学

• 9.4.3 电子邮件的信息格式

一个电子邮件分为信封信封和内容内容两大部分。 邮件内容首部包括一些关键字,后面加上冒号。

最重要的关键字是: To 和 Subject 。 “To:” 后面填入一个或多个收信人的电子邮件

地址。。 “Subject:” 是邮件的主题主题。它反映了邮件的主

要内容。 邮件首部还有一项是抄送“ Cc:” 。这两个字符来自“ Carbon copy” ,意思是留下一个“复复写副本写副本”。这是借用旧的名词,表示应给某某人发送一个邮件副本。

Page 25: 第 9 章  应 用 层

Page 25/38 电子科技大学

• 9.4.4 邮件读取协议 POP3 和 IMAP

现在常用的邮件读取协议有两个,即邮局协议第三个版本 POP3 和因特网报文存取协议因特网报文存取协议 IMAP (Inte

rnet Message Access Protocol) 。现分别讨论如下。 邮局协议 POP 是一个非常简单、但功能也有限的邮件读取协议。

POP 服务器只有在用户输入鉴别信息 ( 用户名和口令 ) 后才允许对邮箱进行读取。

Page 26: 第 9 章  应 用 层

Page 26/38 电子科技大学

在使用 IMAP 时,所有收到的邮件同样是先送到ISP 的邮件服务器的 IMAP 服务器。而在用户的 PC 机上运行 IMAP 客户程序,然后与 ISP 的邮件服务器上的 IMAP 服务器程序建立 TCP 连接。用户在自己的 PC 机上就可以操纵 ISP的邮件服务器的邮箱,就像在本地操纵一样,因此 IMAP 是一个联机协议。

注意不要将邮件读取协议 POP 和 IMAP与邮件传送协议 SMTP弄混。发信人的用户代理向源邮件服务器发送邮件,以及源邮件服务器向目的邮件服务器发送邮件,都是使用 SMTP 协议。而 POP 和 IMAP则是用户从目的邮件服务器上读取邮件所使用的协议。

Page 27: 第 9 章  应 用 层

Page 27/38 电子科技大学

• 9.4.5 通用因特网邮件扩充MIME

1 . MIME 概述

( 1 ) SMTP 不能传送可执行文件或其他的二进制对象。

( 2 ) SMTP限于传送 7位的 ASCII码。 ( 3 ) SMTP 服务器会拒绝超过一定长度的邮件。 ( 4 )某些 SMTP 的实现并没有完全按照 [RFC

821] 的 SMTP标准。

Page 28: 第 9 章  应 用 层

Page 28/38 电子科技大学

MIME增加的 5 个新的邮件首部的名称及其意义 ( 有的可以是选项 ) 。

( 1 ) MIME-Version :标识 MIME 的版本。现在的版本号是 1.0 。若无此行,则为英文文本。

( 2 ) Content-Description :这是可读字符串,说明此邮件是什么。和邮件的主题差不多。

( 3 ) Content-Id :邮件的惟一标识符。 ( 4 ) Content-Transfer-Encoding :在传送

时邮件的主体是如何编码的。 ( 5 ) Content-Type :说明邮件的性质。

Page 29: 第 9 章  应 用 层

Page 29/38 电子科技大学

2 .内容传送编码

下面介绍几种常用的内容传送编码内容传送编码 Content-

Transfer-Encoding 。 最简单的编码使用 7 bit 或 8 bit( 即 7位或 8

位 ASCII码 ) ,而每行不能超过 1000 个字符。 另一种编码称为 quoted-printable ,这种编码方法可用于当邮件中包含了非英文的文本。

对于任意的二进制文件,可用 base64编码( 有人称为 ASCII armor) 。

Page 30: 第 9 章  应 用 层

Page 30/38 电子科技大学

3 .内容类型

MIME标准规定 Content-Type 说明

必须含有两个标识符,即内容类型类型 (type) 和子子

类型类型 (subtype) ,中间用“ /” 分开。

表 9-1列出了 7 种基本内容类型和 1

5 种子类型,以及简单的说明。

Page 31: 第 9 章  应 用 层

Page 31/38 电子科技大学

Page 32: 第 9 章  应 用 层

Page 32/38 电子科技大学

Page 33: 第 9 章  应 用 层

Page 33/38 电子科技大学

MIME 的内容类型中的 Multipart 是很有用的,因为它使邮件增加了相当大的灵活性。标准为 Multipart 定义了四种可能的子类型,每个子类型都提供重要功能。

( 1 ) mixed 子类型允许单个报文含有多个相互独立的子报文,每个子报文可有自己的类型和编码。

( 2 ) alternative 子类型允许单个报文含有同一数据的多种表示。

( 3 ) parallel 子类型允许单个报文含有可同时显示的各个子部分。

( 4 ) digest 子类型允许单个报文含有一组其他报文。

Page 34: 第 9 章  应 用 层

Page 34/38 电子科技大学

9.5 万维网 WWW9.5 万维网 WWW

• 9.5.1 概述

万维网万维网 WWW (World Wide Web) 并

非某种特殊的计算机网络。万维网是一个大规模

的、联机式的信息储藏所,英文简称为 Web 。图

9-9 说明了万维网提供分布式服务的特点。

Page 35: 第 9 章  应 用 层

Page 35/38 电子科技大学

Page 36: 第 9 章  应 用 层

Page 36/38 电子科技大学

正是由于万维网的出现,使因特网从仅由少数计算机专家使用变为普通百姓也能利用的信息资源。

万维网是一个分布式的超媒体超媒体 (hypermedia)

系统,它是超文本超文本 (hypertext) 系统的扩充。 万维网以客户服务器方式工作。客户程序向客户程序向

服务器程序发出请求服务器程序发出请求,服务器程序向客户程序返回客户所服务器程序向客户程序返回客户所要的万维网文档要的万维网文档。在一个客户程序主窗口上显示出的万维网文档称为页面页面 (page) 。

Page 37: 第 9 章  应 用 层

Page 37/38 电子科技大学

• 9.5.2 统一资源定位符URL

1 . URL 的格式

<URL 的访问方式 >://< 主机 >:<端口 >/< 路径 > (9-2)

2 .使用 FTP 的 URL

ftp://rtfm.mit.edu

3 .使用 HTTP 的 URL

http://< 主机 >:<端口 >/< 路径 >

Page 38: 第 9 章  应 用 层

Page 38/38 电子科技大学

• 9.5.3 超文本传送协议 HTTP

1 . HTTP 的操作过程

万维网的大致工作过程如图 9-10

所示。

Page 39: 第 9 章  应 用 层

Page 39/38 电子科技大学

Page 40: 第 9 章  应 用 层

Page 40/38 电子科技大学

HTTP规定在 HTTP 客户与 HTTP 服务器

之间的每次交互都由一个 ASCII码串构成的请求和一个“类 MIME ( 即 [RFC 822] MIME-like)” 的响应组成。

用户浏览页面的方法有两种。一种方法是在浏览器的 Location窗口中键入所要找的页面的 URL 。另一种方法是在某一个页面中用鼠标点击一个可选部分,这时浏览器自动在因特网上找到所要链接的页面。

Page 41: 第 9 章  应 用 层

Page 41/38 电子科技大学

2 .万维网高速缓存

万维网高速缓存万维网高速缓存 (Web cache) 是一种

网络实体,它能代表浏览器发出 HTTP 请求,因此

万维网高速缓存又称为代理服务器代理服务器 (proxy server) 。

设图 9-11 中的校园网有许多人用 PC

机的浏览器访问因特网上很多的服务器。

Page 42: 第 9 章  应 用 层

Page 42/38 电子科技大学

Page 43: 第 9 章  应 用 层

Page 43/38 电子科技大学

3 . HTTP 的报文结构

典型的 HTTP 请求报文如下:

GET /dirABC/docu1.html HTTP/1.1{这是请求行 }Connection: close {此行和以下都是首部行 }User-agent: Mozilla/4.0Accept: text/html, image/gif, image/jpegAccept-language: en {此处有一个空行 }

Page 44: 第 9 章  应 用 层

Page 44/38 电子科技大学

典型的HTTP响应报文如下:

HTTP/1.1 200 OK { 这是状态行 } Connection: close {此行开始的 6 行都是首部行 } Date: Thu,06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 09:23:24 GMT Content-Length: 8765 { 文件长度的字节数 } Content-Type: text/html {此处有一个空行 } DATA DATA DATA DATA DATA… {从这开始就是所请求的文件 }

Page 45: 第 9 章  应 用 层

Page 45/38 电子科技大学

• 9.5.4 超文本标记语言 HTML

1 . HTML 概述

超文本标记语言超文本标记语言 HTML (HyperText Markup

Language) 中的 Markup 的意思就是“设置标记设置标记”。因此HTML也常译为超文本置标语言超文本置标语言。

当浏览器从服务器读取某个页面的 HTML 文档后,就按照 HTML 文档中的各种标签,根据浏览器所使用的显示器的尺寸和分辨率大小,重新进行排版并恢复出所读取的页面。

Page 46: 第 9 章  应 用 层

Page 46/38 电子科技大学

2 . HTML 的格式与标签 元素元素 (element) 是 HTML 文档结构的基本组成

部分。一个 HTML 文档本身就是一个元素。每个 HTML 文档由两个主要元素组成:首部首部 (head) 和主体主体 (body) ,主体紧接在首部的后面。首部包含文档的标题标题 (title) ,以及系统用来标识文档的一些其他信息。标题相当于文件名。

主体部分常由若干更小的元素组成,如段落段落 (paragraph)、表格表格 (table) 和列表列表 (list)等。

HTML 用一对标签 ( 即一个开始标签和一个结束标签 ) 或几对标签来标识一个元素。

Page 47: 第 9 章  应 用 层

Page 47/38 电子科技大学

表 9-2给出一些常用的 HTML标签以及简要的说明。

Page 48: 第 9 章  应 用 层

Page 48/38 电子科技大学

Page 49: 第 9 章  应 用 层

Page 49/38 电子科技大学

• 9.5.5 万维网中的链接

1 .链接到其他网点上的页面

每个链接有一个起点起点和终点终点。 HTML规定,在 HTML 文档中定义一个链接的语法是:

• <A HREF=“...”> X </A> (9-3)

Page 50: 第 9 章  应 用 层

Page 50/38 电子科技大学

2 .链接到一个本地文件

链接可以指向自己的计算机中的某一个文件。

这叫做本地链接本地链接。

3 .链接到本文件中的某个地方

图 9-12画出了远程链接和在本文件中链接

的区别。

Page 51: 第 9 章  应 用 层

Page 51/38 电子科技大学

Page 52: 第 9 章  应 用 层

Page 52/38 电子科技大学

4 .浏览器的结构

图 9-13 是一个浏览器的主要组成部分。

Page 53: 第 9 章  应 用 层

Page 53/38 电子科技大学

Page 54: 第 9 章  应 用 层

Page 54/38 电子科技大学

关于浏览器还有一些内容,简述如下。

( 1 )动态文档动态文档 (dynamic document)

( 2 )活动文档活动文档 (active document)

( 3 )搜索引擎搜索引擎 (search engine)

Page 55: 第 9 章  应 用 层

Page 55/38 电子科技大学

9.6 动态主机配置协议 DHCP9.6 动态主机配置协议 DHCP

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

DHCP 对运行客户软件和服务器软件的计算机都适用。

DHCP 使用客户服务器方式。 DHCP很适合于经常移动位置的计算机。