6.应用层
域名系统 DNS
域名服务器
-
根域名服务器
根域名服务器是最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都知道所有的顶级域名服务器的域名和 IP 地址。
不管是哪一个本地域名服务器,若要对互联网上任何一个域名进行解析,只要自己无法解析,就首先求助于根域名服务器。
在互联网上共有 13 个不同 IP 地址的根域名服务器,它们的名字是用一个英文字母命名,从 a 一直到 m(前 13 个字母)。 a.rootservers.net -
顶级域名服务器
顶级域名服务器(即 TLD 服务器)负责管理在该顶级域名服务器注册的所有二级域名。
当收到 DNS 查询请求时,就给出相应的回答(可能是最后的结果,也可能是下一步应当找的域名服务器的 IP 地址)。 -
权限域名服务器
负责一个区的域名服务器。
当一个权限域名服务器还不能给出最后的查询回答时,就会告诉发出查询请求的 DNS 客户,下一步应当找哪一个权限域名服务器。 -
本地域名服务器
本地域名服务器对域名系统非常重要。
当一个主机发出 DNS 查询请求时,这个查询请求报文就发送给本地域名服务器。
每一个互联网服务提供者 ISP,或一个大学,甚至一个大学里的系,都可以拥有一个本地域名服务器,
这种域名服务器有时也称为默认域名服务器。
域名解析
主机向本地域名服务器的查询一般都是采用递归查询
本地域名服务器向根域名服务器的查询通常是采用迭代查询
本地域名服务器采用递归查询(比较少用)
- 每个域名服务器都维护一个高速缓存,存放最近用过的名字以及从何处获得名字映射信息的记录。
- 可大大减轻根域名服务器的负荷,使互联网上的 DNS 查询请求和回答报文的数量大为减少。
- 为保持高速缓存中的内容正确,域名服务器应为每项内容设置计时
器,并处理超过合理时间的项(例如,每个项目只存放两天)。 - 当权限域名服务器回答一个查询请求时,在响应中都指明绑定有效存在的时间值。增加此时间值可减少网络开销,而减少此时间值可提高域名转换的准确性。
文件传送协议
FTP
当客户进程向服务器进程发出建立连接请求时,要寻找连接服务器进程的熟知端口 (21),同时还要告诉服务器进程自己的另一个端口号码,用于建立数据传送连接。
接着,服务器进程用自己传送数据的熟知端口 (20) 与客户进程所提供的端口号码建立数据传送连接。
由于 FTP 使用了两个不同的端口号,所以数据连接与控制连接不会发生混乱。
TFTP
其熟知端口号码为 69
TFTP 使用客户服务器方式和使用 UDP 数据报,因此 TFTP 需要有自己的差错改正措施。
TFTP 的工作很像停止等待协议
远程终端协议 TELNET
TELNET 也使用客户服务器方式。在本地系统运行 TELNET 客户进程,而在远地主机则运行 TELNET 服务器进程。
和 FTP 的情况相似,服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接。
万维网 WWW
万维网以客户 - 服务器方式工作。
浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器。
- 使用统一资源定位符 URL (Uniform Resource Locator) 来标志万维网上的各种文档。
- 用超文本传送协议 HTTP (HyperText Transfer Protocol)实现万维网上各种超链的链接
- 超文本标记语言 HTML (HyperText Markup Language) 使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到互联网上的任何一个万维网页面
持续连接的两种工作方式
非流水线方式,流水线方式
代理服务器
http报文结构
cookie
万维网站点可以使用 Cookie 来跟踪用户。
Cookie 表示在 HTTP 服务器和客户之间传递的状态信息。
使用 Cookie 的网站服务器为用户产生一个唯一的识别码。利用此识别码,网站就能够跟踪该用户在该网站的活动。
垂直搜索引擎 (Vertical Search Engine) 针对某一特定领域、特定人群或某一特定需求提供搜索服务。
电子邮件
电子邮件地址的格式
:收件人邮箱名@邮箱所在主机的域名
SMTP 通信的三个阶段:连接建立,邮件传送,连接释放
pop3和imap
动态主机配置协议 DHCP
在协议软件中,给协议参数赋值的动作叫做协议配置。
一个协议软件在使用之前必须是已正确配置的。
连接到互联网的计算机的协议软件需要配置的参数包括:
IP 地址
子网掩码
默认路由器的 IP 地址
域名服务器的 IP 地址
DHCP 使用客户 - 服务器方式
DHCP 中继代理(relay agent)
简单网络管理协议 SNMP
网络管理的五大功能
- 故障管理:故障检测、隔离和纠正。
- 配置管理:初始化网络、并配置网络。
- 计费管理:记录网络资源的使用。
- 性能管理:估价系统资源的运行状况及通信效率等。
- 网络安全管理:对授权机制、访问控制、加密和加密关键字的管理
简单网络管理协议 SNMP (Simple Network Management Protocol) 中的管理程序和代理程序按客户–服务器方式工作。
管理程序运行 SNMP 客户程序,向某个代理程序发出请求(或命令),代理程序运行 SNMP 服务器程序,返回响应(或执行某个动作)。
在网管系统中,往往是一个(或少数几个)客户程序与很多的服务器程序进行交互
应用进程跨越网络的通信
socket
P2P 应用
具有集中目录服务器的 P2P 工作方式Napster
具有全分布式结构的 P2P 文件共享程序Gnutella