文章目录
第六章应用层
6.1域名系统DNS
6.1.1 域名系统概述
- 应用层许多协议都基于客户服务器方式
- 域名系统作用
- 因特网采用层次结构的命名树作为主机名字,采用分布式的DNS
- 名字到IP地址的解析需要由若干域名服务器程序来完成,运行该程序的机器称为域名服务器
6.1.2 因特网的域名结构
- 因特网采用层次树状结构的命名方法
- 域名的结构由标号序列组成,各标号分别代表不同级别的域名
. . . . 三 级 域 名 . 二 级 域 名 . 顶 级 域 名 ....三级域名.二级域名.顶级域名 ....三级域名.二级域名.顶级域名 - 域名是逻辑概念,域名系统中的点和点分十进制中的点没有一一对应关系
- 顶级域名TLD
6.1.3 域名服务器
- 一个服务器所负责管辖的(或有权限的)范围叫做区,一个区中的所有节点必须能连通
- 每个区设置权限域名服务器,保存该区所有主机的域名到IP地址的映射
- DNS服务器的管辖范围是“区”,不是“域”
- 对于 icec.nefu.edu.cn,nefu.edu.cn是域, icec.nefu.edu.cn是区
- 域名服务器的类型
(1)根域名服务器:最重要,知道所有的顶级域名服务器的域名和IP地址,因特网上共有13套装置(不是13个机器)。不直接把域名换成IP地址
(2)顶级域名服务器
(3)权限域名服务器:负责一个区
(4)本地域名服务器/默认域名服务器:对于因特网上无法解析的域名,首先求助于根域名服务器 - 提高域名服务器的可靠性:设置主域名服务器和辅助域名服务器,主域名服务器定期把信息复制到辅助域名服务器,但只在主域名服务器更改数据
- 主机向本地域名服务器采用递归查询,本地域名服务器向根域名服务器采用迭代查询
8. 每个域名服务器维护一个高速缓存,可减轻根域名服务器的负荷,并为域名服务器中的每项内容设置计时器
6.2 文件传送协议
6.2.1 FTP 概述
- FTP文件传送协议file transfer protocol
- FTP提供交互式访问,允许客户指明文件的类型与格式,并允许文件有存取权限。FTP屏蔽了个计算机系统的细节,适合在异构网络中传送文件
6.2.2 FTP 的基本工作原理
- FTP特点
(1)FTP使用TCP可靠的运输服务
(2)FTP主要功能是减少或消除在不同操作系统下处理文件的不兼容性
(3)使用客户服务器方式。一个FTP服务器可同时为多个客户进程提供服务。FTP服务器由主进程(负责接收新的请求)和从属进程(处理单个请求)组成 - 主进程和从属进程的处理并发进行
- 两个连接
(1)控制连接:不用来传输文件
(2)数据连接:用于传输文件
- FTP使用两个不同的端口号(服务器进程的熟知端口号和客户进程的端口号),数据连接与控制连接不会发生混乱
- 使用不同端口号的好处
(1)使协议更加简单易于实现
(2)在传输文件时还可以利用控制连接 - NFS网络文件系统(了解):采用另一种思路。允许应用进程打开一个远地文件,并能在该文件的某个特定位置上开始读写数据。可使用户只复制大文件中的一个很小片段,传送的只是少量数据的修改
6.2.3 简单文件传送协议 TFTP
- TFTP使用客户服务器方式和UDP数据报,因此TFTP需要有自己的差错改正措施
- TFTP只支持文件传输不支持交互,不能鉴别用户身份
- TFTP特点
(1)每次传送的协议数据单元PDU有512字节,最后一次可不足512字节
(2)协议数据单元PDU也称为文件块,每块从1开始按序编号
(3)支持ASCLL码或二进制传送
(4)可对文件进行读或写
(5)使用很简单的首部 - TFTP的工作模式很像停止等待协议
6.3 远程终端协议 TELNET
- 用户使用telnet可在其所在地通过TCP连接登录到远地的另一个主机上(使用主机名或IP地址)
- telnet使用客户服务器方式,在本地运行telnet客户进程,远地运行telnet服务器进程
- 网络虚拟终端NVT格式
6.4 万维网 WWW
6.4.1 概述
- 万维网不是某种特殊的计算机网络,它用链接的方式从因特网上的一个站点访问另一个站点,主动的获取丰富的信息
- 万维网提供分布式的服务
- 万维网是分布式超媒体系统,是超文本系统的扩充
- 一个超文本由多个信息源链接成,用户利用一个链可找到另一个文档
- 万维网以客户-服务器方式工作
- 浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器
- 在一个客户程序主窗口上显示出的万维网文档称为页面
- 使用统一资源定位符URL来标志万维网上的各种文档
- 在万维网客户程序与万维网服务器程序间使用超文本传送协议http。http是应用层协议,使用TCP连接进行可靠传输
- 超文本标记语言html,使万维网文档能在因特网上的各种计算机上显示出来
6.4.2 超文本传送协议 HTTP
- Http是面向事务的应用层协议/客户服务器协议。http本身也是无连接的,它使用了面向连接的TCP向上提供服务
- 用户点击鼠标后所发生的事件
(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 中的所有文本。
- http1.0是无状态的。http/1.1使用持续连接
- 持续连接的两种工作方式
(1)非流水线方式
(2)流水线方式 - 代理服务器/万维网高速缓存,代表浏览器发出http请求
- 使用高速缓存可减少访问因特网服务器的时延
6.5 电子邮件
6.5.1 电子邮件概述
- 电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取
- 发送邮件的协议:SMTP
读取邮件的协议:POP3 和 IMAP
- 邮件服务器按照客户-服务器方式工作,功能是发送和接收文件,需要发送和读取两个不同的协议
6.5.2 简单邮件传送协议 SMTP
- SMTP规定两个相互通信的SMTP进程间如何交换信息
- SMTP使用客户-服务器方式
- SMTP通信的三阶段
(1)连接建立
(2)邮件发送
(3)连接释放:发送完毕后,释放TCP连接
6.5.3 邮件读取协议 POP3 和 IMAP
- 邮局协议POP:客户服务器的工作方式。只能本地删除
- IMAP:客户服务器的工作方式。IMAP最大的好处就是用户可以在不同的地方使用不同的计算机随时上网阅读和处理自己的邮件本地服务器都可删除
6.5.4 基于万维网的电子邮件
- 电子邮件从 A 发送到网易邮件服务器是使用 HTTP 协议。
两个邮件服务器之间的传送使用 SMTP。
邮件从新浪邮件服务器传送到 B 是使用 HTTP 协议
6.5.5 通用因特网邮件扩充 MIME
- SMTP缺点:限于传送7位ASCll码
MIME:没用改动或取代SMTP,定义了非ASCll码的编码规则
6.6 动态主机配置协议 DHCP
- 为了将软件协议做成通用的和便于移植,协议软件的编写者把协议软件参数化
- 在协议软件中给这些参数赋值的动作叫做协议配置
- 需要配置的项目
(1) IP 地址
(2) 子网掩码
(3) 默认路由器的 IP 地址
(4) 域名服务器的 IP 地址 - 动态主机配置协议 DHCP 提供了即插即用连网(plug-and-play networking)的机制
需要 IP 地址的主机在启动时就向 DHCP 服务器广播发送发现报文(DHCPDISCOVER),这时该主机就成为 DHCP 客户。
本地网络上所有主机都能收到此广播报文,但只有 DHCP 服务器才回答此广播报文。
DHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的 IP 地址池(address pool)中取一个地址分配给该计算机。DHCP 服务器的回答报文叫做提供报文(DHCPOFFER)。
- DHCP:客户服务器方式
- DHCP服务器本身只能工作在本地服务器(局域网),要想多个网络共享,必须DHCP中继代理(一般是路由器)
- DHCP中继代理以单播方式转发发现报文
- DHCP租用期—8小时,租用期数值由DHCP服务器自己决定
6.7 简单网络管理协议 SNMP
6.7.1 网络管理的基本概念
- 网络管理包括对硬件、软件和人力的使用、综合与协调,以便对网络资源进行监视、测试、配置、分析、评价和控制,这样就能以合理的价格满足网络的一些需求,如实时运行性能,服务质量等。网络管理常简称为网管。CS模型,网络管理员(C),被管对象(S)
- 网络的每一个被管设备中可能有多个被管对象。
被管设备有时可称为网络元素或网元。
6.7.2 管理信息结构 SMI
- SMI 定义了命名对象和定义对象类型(包括范围和长度)的通用规则
- SMI 的功能:
(1) 被管对象应怎样命名;
(2) 用来存储被管对象的数据类型有哪些种;
(3) 在网络上传送的管理数据应如何编码。
6.7.3 管理信息库 MIB
MIB 在被管理的实体中创建了命名对象,并规定了其类型
6.7.4 SNMP 的协议数据单元和报文
- 三部分:
(1)SNMP 本身
(2)管理信息结构 SMI(Structure of Management Information)
(3)管理信息库 MIB - SNMP两种操作:读、写操作
- SNMP使用无连接的UDP