了解了体系结构的五层协议的读者应该知道,应用层是体系结构中的最高层,应用层协议定义的是应用进程间通信和交互的规则。应用层的作用是不同应用进程通过什么样的应用层协议来使用网络所提供的这些通信服务。
(协议名的字母来源是英文翻译的首字母大写,看到陌生协议不要慌,不用刻意去记,重在理解)
应用层的重要协议有:
1.域名系统DNS
2.文件传输协议FTP
3.万维网WWW和HTTP协议
4.电子邮件的传送过程,SMAP和POP3协议
5.动态主机配置协议DHCP
域名系统DNS(Domain Name System)是互联网所使用的系统,用来把便于人们记忆的机器名字-->IP地址
域名是因为在这种命名系统中使用了很多的“域”,所以叫域名系统而不是“名字系统”。同时呢,域名系统很明确地指明这种系统是用在互联网中。
DNS被设计成联机分布式系统-->单个计算机出了故障,也不会妨碍整个DNS系统的正常运行
DNS采用客户服务器方式
DNS使大多数名字在本地进行解析(也就是地址转换),仅少量解析需要在互联网上通信。-->DNS系统效率高
解析过程由分布在互联网上的许多域名服务器程序(简称为域名服务器)共同完成的
二者需要转换的有必要的:
域名:便于人们记忆和使用,长度不固定,机器难处理,如百度:baidu.com
IP地址:即32位的二进制地址或者点分十进制的形式来表示,长度固定(32位),机器处理方便,如220.181.38.148
域名中若包含点,也与IP地址中的点分十进制中的点无关
点分十进制IP地址:一定包含三个“点"。
现在域名的命名由互联网采用了层次树状结构的命名方法,若不采用分等级的域名难以管理一个很大的而且经常变化的名字集合
该命名方法可以使任何一个连接在互联网上的主机或者路由器,都有一个唯一的层次结构的名字。即域名。域同时可划分为子域,接着继续划分,继而有顶级域,二级域,三级域等等
域名结构: ... . 三级域名 . 二级域名 . 顶级域名
例.mail.cctv.com是三级域名
从日常生活中我们也可以看到一些熟知的域名后缀:com, cn, edu, net, org......这些都是一些比较著名的机构的所特有的,如edu表示中国的教育机构,com表示中国的企业机构,cn表示中国等。
可以用域名树表示互联网的域名系统,根在最上面(没有名字),树叶就是单台计算机的名字,不能再往下划分区域。
互联网的域名空间:
DNS服务器的管辖范围不是以”域“为单位,而是以”区“为单位,区才是DNS服务器的实际管辖范围,实际上”区“是“域”的子集。
所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。
需要清楚一点:在DNS的查询过程中,根域名服务器并不直接把待查询的域名直接转换为IP地址,而是告诉本地域名下一步应当找哪一个顶级域名服务器进行查询。
在域名的解析过程,会有两种方法查询:递归查询和迭代查询
递归查询:如果主机所询问的本地域名服务器不知道被查询域名的IP地址,那么本地域名域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文(替主机继续查询),而不是让主机继续下一步查询。如下左图
迭代查询:当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器”它下一步应该向哪一个域名服务器进行查询“,然后让本地域名服务器自己继续进行后续的查询。如下右图
文件传输协议FTP(File Transfer Protocol)是互联网上使用最广泛的文件传输协议,FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限(如访问文件的用户必须经过授权)
FTP是文件共享协议的一大类,FTP是基于TCP协议的文件传送协议。发送文件为了确保收得到。(TCP是可靠传输)
简单文件传输协议TFTP也是文件共享协议的一大类,TFTP是基于UDP协议的文件传送协议。(UDP是不可靠传输)
文件共享协议的特点是:会复制整个文件,当要存取一个文件,就必须先获得一个本地的文件副本,如果要修改文件,只能对文件的副本进行修改,不能直接对原文件修改,然后再将修改后的文件副本传回到原结点。
文件共享协议中的另一大类是联机访问,这意味着允许多个程序同时对一个文件进行存取。
FTP的主要功能是:减少或消除在不同操作系统下处理文件的不兼容性。
FTP协议使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
简单文件传输协议TFTP(Trivial File Transfer Protocol)是一个很小且易于实现的文件传输协议。
TFTP使用客户服务器方式。但由于它使用UDP数据报,因此TFTP需要有自己的差错改正措施。
TFTP只支持传输不支持交互。
TFTP没有庞大的命令集,没有列目录的功能,也不能对用户的身份进行鉴别。
TFTP主要优点:1.可用于UDP环境,当需要将程序或文件同时向许多机器下载时往往就需要使用TFTP。
2.TFTP所占内存较小。
万维网WWW(World Wide Web)是一个大规模的,联机式的信息储藏所,简称Web。万维网用链接的方法能非常方便地从互联网上的一个站点访问另一个站点。万维网是一个分布式的超媒体系统,它是超文本系统的扩充。
超文本就是指包含指向其他文档的链接的文本。超文本文档仅包含文本信息,而超媒体文档还包含有图形,图像,声音,动画以及视频图像等其他信息。
万维网使用客户服务器的方式工作。
万维网把大量信息分布在整个互联网上。每台主机上的文档都独立进行管理。
<协议>://<主机>:<端口>/<路径>
<协议> 是指出使用什么协议来获取该万维网文档,如HTTP协议。
:// 是固定格式
<主机 >是该万维网文档在哪一台主机,这里的主机是指该主机在互联网上的域名
<端口>/<路径> 有时可以省略
使用最多的一种URL:使用HTTP的URL
HTTP的URL的一般形式:http://<主机>:<端口>/<路径>
HTTP的默认端口号是80,通常可省略
如清华大学的主页的URL:http://www.tsinghua.edu.cn
用户使用URL不仅可以访问万维网的页面,而且还能够通过URL使用其他的互联网应用程序。
--超文本传送协议HTTP:
HTTP协议定义了浏览器怎样向万维网服务器请求万维网文档。以及服务器怎样把文档传送给浏览器。HTTP是万维网上能够可靠地交换文件(包括文本,声音,图像等各种多媒体文件)的重要基础。
HTTP 不仅传送完成超文本跳转所必需的信息,而且也传送任何可凑从互联网上得到的信息。
浏览器和万维网客户是同义词。
HTTP工作过程:
1)服务器进程监听端口80,以便发现是否有浏览器向它发出连接建立请求
2)一旦监听到,建立连接,浏览器向服务器发送某个页面的请求,服务器作出响应
3)释放连接
在浏览器和服务器之间的请求和响应的交互,必须按照规定的格式和一定规则。这些格式和规则就是超文本传送协议HTTP
HTTP协议本身是无连接的。
HTTP 使用了面向连接的TCP作为运输层协议,保证了数据的可靠传输。
HTTP是无状态的。即同一个客户第二次访问同一个服务器上的页面时,服务器的响应与第一次时相同,因为服务器并不记得曾经访问过的这个客户,也不记得为该客户服务过多少次。
HTTP的报文结构
HTTP 有两类报文:
GET /dir/index.htm HTTP/1.1 {请求行使用了相对URL} Host: www.xyz.edu.cn {首部行的开始。这行给出主机域名} Connection: close {告诉服务器发送完请求的文档后就可释放连接} User-Agent: Mozilla/5.0 {用户代理使用的是火狐浏览器Firefox} Accept-Language: cn {用户希望优先得到中文版本的文档} {需要有一个空行}
实时通信的缺点:
一.电话通信的主叫和被叫双方必须同时在场。
二. 有些电话常常不必要地打断被叫者的工作或者休息
电子邮件(e-mail)的出现解决了实时通信的缺点
电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可在自己方便上网时到自己所使用的邮件服务器进行读取。因此e-mail有时也称为”电子信箱“
给能够区分不同计算机的参数赋值叫做协议配置
一个协议软件在使用之前必须是已正确配置的,具体的配置信息有哪些取决于协议栈。
连接到互联网的计算机的协议软件需要配置的项目包括:
(1)IP地址
(2)子网掩码
(3)默认路由器的IP地址
(4)域名服务器的IP地址
以上四个项目都在不同的层中有涉及,这里给出一个正在配置的客户的配置界面帮助参考理解这几个项目,图片如下
根据图片可以看出对应关系
IP地址---IP Address
子网掩码---Subnet Mask
默认路由器的IP地址---Default Gateway
域名服务器的IP地址---DNS Server(这个是DNS的服务器的IP地址,不是客户自己的)
而这些项目就是需要使用DHCP协议可以自动获得的,现在图片的显示情况是需要手动设置的,即“static"。当换成红色方框内的选择时就可自己获取所需的项目
DHCP给运行服务器软件而位置固定的计算机指派一个永久地址,而当这计算机重新启动时其地址不改变
DHCP使用客户服务器的方式。
需要IP地址的主机在启动时就向DHCP服务器广播发送发现报文(DISCOVER)(将目的IP地址置为全1,即255.255.255.255.255),是为了发现DHCP服务器的IP地址,此时该主机成为DHCP的客户。在本地网络上的所有主机都能够收到这个广播报文,只有DHCP服务器才回答此报文,该报文叫做提供报文。具体的DHCP工作过程如下图:
DHCP适用于经常移动的计算机。
在Windows操作系统中的自动获取IP地址过程就是使用DHCP协议
到此,应用层的主要知识都已介绍完成。
其余的还有一些内容,但是对于计算机专业的学生不要求深入了解,因此不再赘述。
原文:https://www.cnblogs.com/jinyu-231/p/xiaopangzi_YYC.html