由于不同应用程序之间相互通信要满足特定的规则,应用层就是为了给计算机网络中的不同应用提供不同的通信协议,
C/S工作方式:(客户机/服务器)
P2P工作方式:(对等工作方式)
协议名称 | 功能 |
DNS(域名系统) | 用于域名解析为IP地址 |
FTP(文件传输协议) | 用于两台主句之间的传输文件 |
Telnet(远程登录) | 用于远程登录一台网络主机 |
WWW(万维网) | 用于检索处于世界各地的信息资源 |
SMTP(简单的邮件传送) | 用于两台主机传送电子邮件 |
DHCP(动态主句配置协议) | 用于自动配置主句访问计算机网络所需的必要参数 |
SNMP(简单网络管理协议) | 用于管理计算机网络中的设备 |
域名系统是互联网中使用的命名系统。
域名组成:主机名.结构名.网络名.顶级域名
把IP地址换成 www. xxxxx.con 这种形式。
在域名系统中,采用的是层次树状结构,任何一个连接在互联网中的主机都有唯一的层次结构名,域名。
域名的结构:
- 三级域名.
- 二级域名.
- 顶级域名
域名只是一个逻辑概念,并不能反映计算机的物理地点
常用的顶级域名:
域名类型 | 含义 |
国家 | cn(中国) |
国家 | un(联合国) |
国家 | us(美国) |
国家 | un(英国) |
通用 | com(商业网络) |
通用 | org(非盈利组织) |
通用 | edu(教育部门) |
通用 | int(国际组织) |
域名结构具有隶属关系,最左边的域名范围越小,最右边的域名范围最大。
DNS服务器的作用:
计算机不能直接识别域名,域名服务器会把域名转换为IP地址,使得计算机可以识别域名。
由于现在的互联网数据庞大,所以服务器也进行分层管理。
根域名服务器是最重要的域名服务器。所有的根域名服务器都知道所有顶级域名服务器的域名和IP地址。
本地域名服务器无法解析的域名,都因该先求助于根域名服务器。
根服域名务器主要集中在欧美国家。1个为主根服务器在美国,由美国互联网机构Network Solutions运作。其余12个均为辅根服务器,其中9个在美国,2个在欧洲(位于英国和瑞典),1个在亚洲(位于日本)。
根服务器的作用:根服务器并不是直接将域名解析,而是告诉本地服务器下一步应当找的顶级服务器的IP地址,具体由顶级域名服务器做进一步的处理。
顶级域名服务器负责管理在该顶级域名服务器注册的所有二级域名。当收到DNS查询请求时,如果域名在顶级域名服务器的管辖范围中,那么可以直接给出相应的IP地址;不在管辖范围内的话,把应该找到域名服务器IP反馈给请求方。
权限域名服务器负责一个区的域名解析,保存该区的所有主机域名和IP地址的映射。当权限域名服务器无法给出结果时,就给出下一步应当请求的权限域名服务器地址。
本地域名服务器负责本地注册域名的解析,本地域名服务器也称默认域名服务器,当主机要进行域解析时首先求助于默认域名服务器。
访问网站时,会进行域名解析,域名解析会涉及4种域名服务器的协同合作。
注意:使用UDP是因为数据量少,且UDP速度快。
- 进行域名解析时,会向本地域名服务器发送解析请求,本地域名服务器无法解析,则求助于根域名服务器。
- 主机向本地域名服务器的查询采用递归查询的方式。递归查询是指当地主机向本地域名服务器发出域名解析时,本地域名服务器必须将解析出的结果返回给主机,没有结果的,则向高一级的域名服务器进行查询,直到得出结果返回主机。
- 本地域名服务器向根域名服务器的查询一般使用迭代查询方式,也可使用递归查询的方式
递归:客户端只发一次请求,要求对方给出最终结果。
迭代:客户端发出一次请求,对方如果没有授权回答,它就会返回一个能解答这个查询的其它名称服务器列表,客户端会再向返回的列表中发出请求,直到找到最终负责所查域名的名称服务器,从它得到最终结果。
由于数据量庞大,为提高DNS的查询速率,通常会在每个域名服务器中维护一个高速缓存,存放最近使用过的名字和相应映射信息记录。
当高数缓存数据过多时,且无用数据过多时,需要及时清理,所以域名服务器需要设置一个定时器,及时处理存放的内容(一般为2-3天)。
定时器时间必须取一个合理的值,以此减小不必要的网络开销,提高域名转换的准确性。
FTP是互联网中使用最广泛的文件传输协议,是互联网的正式标准。
FTP的最大特点为:屏蔽了文件传送双方计算机系统的异构性,使得双方能够方便的传送文件,并提供良好的交互性,可以指定文件格式和文件的访问权限。
影响文件传输的因素:
- 不同计算机文件格式不同
- 不同计算机系统文件格式不同
- 对于相同文件存取功能,操作系统使用的命令不同
- 采用的文件访问权限不同
FTP的功能:减小或消除不同系统下处理文件的兼容性
FTP使用的是TCP传输协议(可靠传输),保持通信可靠。
FTP使用的是客户/服务器方式:FTP服务器工作时,有一个主进程,和多个从属进程,主进程专门负责连接请求,从属进程专门用来数据传输,这种合作方式提高了工作效率。
- 打开FTP服务的21接口
- 等待客户进程发送连接请求
- 收到请求后,同意提供服务,启动从属进程,处理完后关闭,等待下一个客户发送请求
- 如果没有收到请求,一直等待,或FTP服务器关闭服务接口
由于有主进程和从属进程,所以FTP客户端需要启动两种不同的进程:
- 控制进程
- 数据传输进程
两个端口的不同可防止连接发生混淆。
NFS(网络文件传输系统)
由于FTP传输只有到100%传输后才能适用,如果传输出现问题,需要重新发送,当文件比较大时会造成通信资源的浪费。NFS解决了这个问题
NFS,允许应用进程打开一个远程文件,并能在这个文件中的特定位置上开始读写数据。这样发送方可以需要添加数据时,可以把要添加的数据和写文件的位置一起发给接收方。NFS减少了网络上传送的数据量。
TFTP(简单文件传输协议)(69端口)
TFTP时基于UDP的传输协议,允许主机间的快速的文件传输,为了保证传输质量,TFTP也有停止等待协议