计算机网络第六章:应用层

1 域名系统 DNS

1.1 域名系统概述

  • 许多应用层软件经常直接使用域名系统 DNS (Domain Name System),但计算机的用户只是间接而不是直接使用域名系统
  • 因特网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS
  • 名字到 IP 地址的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器

1.2 因特网的域名结构

  • 因特网采用了层次树状结构的命名方法
  • 任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名
  • 域名的结构由标号序列组成,各标号之间用点隔开,各标号分别代表不同级别的域名
    在这里插入图片描述

域名只是个逻辑概念:

  • 域名只是个逻辑概念,并不代表计算机所在的物理地点
  • 变长的域名和使用有助记忆的字符串,是为了便于人来使用。而 IP 地址是定长的 32 位二进制数字则非常便于机器进行处理
  • 域名中的“点”和点分十进制 IP 地址中的“点”并无一一对应的关系。点分十进制 IP 地址中一定是包含三个“点”,但每一个域名中“点”的数目则不一定正好是三个

顶级域名 TLD (Top Level Domain):

  • 国家顶级域名 nTLD:如: .cn 表示中国,.us 表示美国,.uk 表示英国,等等
  • 通用顶级域名 gTLD:最早的顶级域名是:.com(公司和企业),.net(网络服务机构),.org(非赢利性组织), .edu(美国专用的教育机构), .gov(美国专用的政府部门),.mil(美国专用的军事部门),.int(国际组织)
  • 基础结构域名(infrastructure domain):这种顶级域名只有一个,即 arpa,用于反向域名解析,因此又称为反向域名

因特网的域名空间:
在这里插入图片描述

1.3 域名服务器

  • 一个服务器所负责管辖的(或有权限的)范围叫做区(zone)
  • 各单位根据具体情况来划分自己管辖范围的区。但在一个区中的所有节点必须是能够连通的
  • 每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射
  • DNS 服务器的管辖范围不是以“域”为单位,而是以“区”为单位

区的不同划分方法举例:
在这里插入图片描述
树状结构的 DNS 域名服务器:
在这里插入图片描述
域名的解析过程:

  • 主机向本地域名服务器的查询一般都是采用递归查询。如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文
  • 本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询

2 文件传送协议

2.1 FTP概述

  • 文件传送协议 FTP (File Transfer Protocol) 是因特网上使用得最广泛的文件传送协议
  • FTP 提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限
  • FTP 屏蔽了各计算机系统的细节,因而适合于在异构网络中任意计算机之间传送文件
  • RFC 959 很早就成为了因特网的正式标准

文件传送并非很简单的问题:

  • 网络环境中的一项基本应用就是将文件从一台计算机中复制到另一台可能相距很远的计算机中
  • 初看起来,在两个主机之间传送文件是很简单的事情
  • 其实这往往非常困难。原因是众多的计算机厂商研制出的文件系统多达数百种,且差别很大

2.2 FTP 的基本工作原理

网络环境下复制文件的复杂性:

  • 计算机存储数据的格式不同
  • 文件的目录结构和文件命名的规定不同
  • 对于相同的文件存取功能,操作系统使用的命令不同
  • 访问控制方法不同

FTP 特点:

  • 文件传送协议 FTP 只提供文件传送的一些基本的服务,它使用 TCP 可靠的运输服务
  • FTP 的主要功能是减少或消除在不同操作系统下处理文件的不兼容性
  • FTP 使用客户服务器方式。一个 FTP 服务器进程可同时为多个客户进程提供服务。FTP 的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求

主进程的工作步骤如下:

  • 打开熟知端口(端口号为 21),使客户进程能够连接上
  • 等待客户进程发出连接请求
  • 启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程
  • 回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行

两个连接:

  • 控制连接在整个会话期间一直保持打开,FTP 客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件
  • 实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到 FTP 客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程
  • 数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行
    在这里插入图片描述

两个不同的端口号:

  • 当客户进程向服务器进程发出建立连接请求时,要寻找连接服务器进程的熟知端口(21),同时还要告诉服务器进程自己的另一个端口号码,用于建立数据传送连接
  • 接着,服务器进程用自己传送数据的熟知端口(20)与客户进程所提供的端口号码建立数据传送连接
  • 由于 FTP 使用了两个不同的端口号,所以数据连接与控制连接不会发生混乱

使用两个不同端口号的好处:

  • 使协议更加简单和更容易实现
  • 在传输文件时还可以利用控制连接(例如,客户发送请求终止传输)

3 按远程终端协议 TELNET

  • TELNET 是一个简单的远程终端协议,也是因特网的正式标准
  • 用户用 TELNET 就可在其所在地通过 TCP 连接注册(即登录)到远地的另一个主机上(使用主机名或 IP 地址)
  • TELNET 能将用户的击键传到远地主机,同时也能将远地主机的输出通过 TCP 连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上

客户服务器方式:

  • 现在由于 PC 机的功能越来越强,用户已较少使用 TELNET 了
  • TELNET 也使用客户服务器方式。在本地系统运行 TELNET 客户进程,而在远地主机则运行 TELNET 服务器进程
  • 和 FTP 的情况相似,服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接

TELNET 使用网络虚拟终端 NVT 格式:
在这里插入图片描述
网络虚拟终端 NVT 格式:

  • 客户软件把用户的击键和命令转换成 NVT 格式,并送交服务器
  • 服务器软件把收到的数据和命令,从 NVT 格式转换成远地系统所需的格式
  • 向用户返回数据时,服务器把远地系统的格式转换为 NVT 格式,本地客户再从 NVT 格式转换到本地系统所需的格式

4 万维网 WWW

4.1 万维网概述

  • 万维网 WWW (World Wide Web)并非某种特殊的计算机网络,万维网是一个大规模的、联机式的信息储藏所
  • 万维网用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息,这种访问方式称为“链接”

万维网提供分布式服务:
在这里插入图片描述
超媒体与超文本:

  • 万维网是分布式超媒体(hypermedia)系统,它是超文本(hypertext)系统的扩充
  • 一个超文本由多个信息源链接成。利用一个链接可使用户找到另一个文档。这些文档可以位于世界上任何一个接在因特网上的超文本系统中。超文本是万维网的基础
  • 超媒体与超文本的区别是文档内容不同。超文本文档仅包含文本信息,而超媒体文档还包含其他表示方式的信息,如图形、图像、声音、动画,甚至活动视频图像

万维网的工作方式:

  • 万维网以客户服务器方式工作
  • 浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器
  • 客户程序向服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档
  • 在一个客户程序主窗口上显示出的万维网文档称为页面(page)

万维网必须解决的问题:

  1. 怎样标志分布在整个因特网上的万维网文档?
    使用统一资源定位符 URL (Uniform Resource Locator)来标志万维网上的各种文档,使每一个文档在整个因特网的范围内具有唯一的标识符 URL
  2. 用何协议实现万维网上各种超链的链接?
    在万维网客户程序与万维网服务器程序之间进行交互所使用的协议,是超文本传送协议 HTTP (HyperText Transfer Protocol)。HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送
  3. 怎样使各种万维网文档都能在因特网上的各种计算机上显示出来,同时使用户清楚地知道在什么地方存在着超链?
    超文本标记语言 HTML (HyperText Markup Language)使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到因特网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来
  4. 怎样使用户能够很方便地找到所需的信息?
    为了在万维网上方便地查找信息,用户可使用各种的搜索工具(即搜索引擎)

4.2 统一资源定位符 URL

URL的格式:

  • 统一资源定位符 URL 是对可以从因特网上得到的资源的位置和访问方法的一种简洁的表示
  • URL 给资源的位置提供一种抽象的识别方法,并用这种方法给资源定位
  • 只要能够对资源定位,系统就可以对资源进行各种操作,如存取、更新、替换和查找其属性
  • URL 相当于一个文件名在网络范围的扩展。因此 URL 是与因特网相连的机器上的任何可访问对象的一个指针

URL 的一般形式:

  • 由以冒号隔开的两大部分组成,并且在 URL 中的字符对大写或小写没有要求
  • URL 的一般形式是:
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

4.3 超文本传送协议 HTTP

  • 为了使超文本的链接能够高效率地完成,需要用 HTTP 协议来传送一切必须的信息
  • 从层次的角度看,HTTP 是面向事务的(transaction-oriented)应用层协议,它是万维网上能够可靠地交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础

万维网的工作过程:
在这里插入图片描述
用户点击鼠标后所发生的事件:

  1. 浏览器分析超链指向页面的 URL
  2. 浏览器向 DNS 请求解析 www.tsinghua.edu.cn 的 IP 地址
  3. 域名系统 DNS 解析出清华大学服务器的 IP 地址
  4. 浏览器与服务器建立 TCP 连接
  5. 浏览器发出取文件命令: GET /chn/yxsz/index.htm
  6. 服务器给出响应,把文件 index.htm 发给浏览器
  7. TCP 连接释放
  8. 浏览器显示“清华大学院系设置”文件 index.htm 中的所有文本

HTTP 的主要特点:

  • HTTP 是面向事务的客户服务器协议
  • HTTP 1.0 协议是无状态的(stateless)
  • HTTP 协议本身也是无连接的,虽然它使用了面向连接的 TCP 向上提供的服务

请求一个万维网文档所需的时间:
在这里插入图片描述
HTTP 的报文结构,HTTP 有两类报文:

  • 请求报文——从客户向服务器发送请求报文
  • 响应报文——从服务器到客户的回答
  • 由于 HTTP 是面向正文的(text-oriented),因此在报文中的每一个字段都是一些 ASCII 码串,因而每个字段的长度都是不确定的

5 电子邮件

5.1 概述

  • 电子邮件(e-mail)是因特网上使用得最多的和最受用户欢迎的一种应用
  • 电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取
  • 电子邮件不仅使用方便,而且还具有传递迅速和费用低廉的优点
  • 现在电子邮件不仅可传送文字信息,而且还可附上声音和图像

电子邮件的一些标准:

  • 发送邮件的协议:SMTP
  • 读取邮件的协议:POP3 和 IMAP
  • MIME 在其邮件首部中说明了邮件的数据类型(如文本、声音、图像、视像等),使用 MIME 可在邮件中同时传送多种类型的数据

电子邮件的最主要的组成构件:
在这里插入图片描述

5.2 简单邮件传送协议 SMTP

  • SMTP 所规定的就是在两个相互通信的 SMTP 进程之间应如何交换信息
  • 由于 SMTP 使用客户服务器方式,因此负责发送邮件的 SMTP 进程就是 SMTP 客户,而负责接收邮件的 SMTP 进程就是 SMTP 服务器

SMTP 通信的三个阶段:

  1. 连接建立:连接是在发送主机的 SMTP 客户和接收主机的 SMTP 服务器之间建立的。SMTP不使用中间的邮件服务器
  2. 邮件传送
  3. 连接释放:邮件发送完毕后,SMTP 应释放 TCP 连接

5.3 电子邮件的信息格式

  • 一个电子邮件分为信封和内容两大部分,RFC 822 只规定了邮件内容中的首部(header)格式,而对邮件的主体(body)部分则让用户自由撰写
  • 用户写好首部后,邮件系统将自动地将信封所需的信息提取出来并写在信封上。所以用户不需要填写电子邮件信封上的信息,邮件内容首部包括一些关键字,后面加上冒号。最重要的关键字是:To 和 Subject

5.4 邮件读取协议 POP3 和 IMAP

  • 邮局协议 POP 是一个非常简单、但功能有限的邮件读取协议,现在使用的是它的第三个版本 POP3
  • POP 也使用客户服务器的工作方式
  • 在接收邮件的用户 PC 机中必须运行 POP 客户程序,而在用户所连接的 ISP 的邮件服务器中则运行 POP 服务器程序

IMAP 协议 (Internet Message Access Protocol) :

  • IMAP 也是按客户服务器方式工作,现在较新的是版本 4,即 IMAP4
  • 用户在自己的 PC 机上就可以操纵 ISP 的邮件服务器的邮箱,就像在本地操纵一样
  • 因此 IMAP 是一个联机协议。当用户 PC 机上的 IMAP 客户程序打开 IMAP 服务器的邮箱时,用户就可看到邮件的首部。若用户需要打开某个邮件,则该邮件才传到用户的计算机上

IMAP 的特点:

  • IMAP最大的好处就是用户可以在不同的地方使用不同的计算机随时上网阅读和处理自己的邮件
  • IMAP 还允许收件人只读取邮件中的某一个部分。例如,收到了一个带有视像附件(此文件可能很大)的邮件。为了节省时间,可以先下载邮件的正文部分,待以后有时间再读取或下载这个很长的附件
  • IMAP 的缺点是如果用户没有将邮件复制到自己的 PC 机上,则邮件一直是存放在 IMAP 服务器上。因此用户需要经常与 IMAP 服务器建立连接

6 动态主机配置协议 DHCP

  • 为了将软件协议做成通用的和便于移植,协议软件的编写者把协议软件参数化。这就使得在很多台计算机上使用同一个经过编译的二进制代码成为可能
  • 一台计算机和另一台计算机的区别,都可通过一些不同的参数来体现
  • 在软件协议运行之前,必须给每一个参数赋值

协议配置:

  • 在协议软件中给这些参数赋值的动作叫做协议配置
  • 一个软件协议在使用之前必须是已正确配置的
  • 具体的配置信息有哪些则取决于协议栈

需要配置的项目:

  1. IP 地址
  2. 子网掩码
  3. 默认路由器的 IP 地址
  4. 域名服务器的 IP 地址

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

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值