首页 > 其他 > 详细

应用层知识

时间:2021-02-16 23:11:55      阅读:37      评论:0      收藏:0      [点我收藏+]

了解了体系结构的五层协议的读者应该知道,应用层是体系结构中的最高层,应用层协议定义的是应用进程间通信和交互的规则。应用层的作用是不同应用进程通过什么样的应用层协议来使用网络所提供的这些通信服务

 技术分享图片

(协议名的字母来源是英文翻译的首字母大写,看到陌生协议不要慌,不用刻意去记,重在理解)

 

应用层的重要协议有:

1.域名系统DNS

2.文件传输协议FTP

3.万维网WWW和HTTP协议

4.电子邮件的传送过程,SMAP和POP3协议

5.动态主机配置协议DHCP

一.域名系统DNS

域名系统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地址,而是告诉本地域名下一步应当找哪一个顶级域名服务器进行查询。

域名解析:从根域名服务器开始查找. --> 顶级域名服务器.com -->权限域名服务器.example
刚开始,不知道根域名服务器的地址,请求报文发给谁?-->本地域名服务器(也叫默认域名服务器)
 

在域名的解析过程,会有两种方法查询:递归查询迭代查询

递归查询:如果主机所询问的本地域名服务器不知道被查询域名的IP地址,那么本地域名域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文(替主机继续查询),而不是让主机继续下一步查询。如下左图

迭代查询:当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器”它下一步应该向哪一个域名服务器进行查询“,然后让本地域名服务器自己继续进行后续的查询。如下右图

技术分享图片技术分享图片

 

补充:1.每个域名服务器都维护一个高速缓存,存放最近用过的名字以及从何处获得名字映射信息的记录
           2.为保持高速缓存中的内容正确,域名服务器应为每项内容设置计时器,
            并处理超过合理时间的项

 

二.文件传输协议FTP

 文件传输协议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和HTTP协议

万维网WWW(World Wide Web)是一个大规模的,联机式的信息储藏所,简称Web。万维网用链接的方法能非常方便地从互联网上的一个站点访问另一个站点。万维网是一个分布式的超媒体系统,它是超文本系统的扩充。

超文本就是指包含指向其他文档的链接的文本。超文本文档仅包含文本信息,而超媒体文档还包含有图形,图像,声音,动画以及视频图像等其他信息。

 

万维网使用客户服务器的方式工作。

万维网把大量信息分布在整个互联网上。每台主机上的文档都独立进行管理。

 

通过DNS得到了IP地址,如何访问服务器指定的资源
--统一资源定位符URL:是用来表示从互联网上得到的资源位置和访问这些资源的方法。URL给资源的位置提供一种抽象的识别方法,并用这种方法给资源定位。互联网上的资源,都有唯一确定的URL。URL实际上就是在互联网上的资源的地址,它相当于一个文件名在网络范围的扩展,因此URL是与互联网相连的机器上的任何可访问对象的指针。同时也会读出所访问不同对象使用的协议。一般格式:

                                                  <协议>://<主机>:<端口>/<路径>

<协议> 是指出使用什么协议来获取该万维网文档,如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 有两类报文:

1. 请求报文---从客户向服务器发送请求报文,如图6-12(a)
2. 响应报文---从服务器到客户的回答,,如图6-12(b)
技术分享图片
HTTP 是面向文本 (text-oriented),报文中的每一个字段都是ASCII 码串,因而每个字段的长度都是不确定的
请求报文由三个部分组成:开始行、首部行和实体主体
▲请求行
1)方法:对所请求的对象进行的操作
2) URL
?3)版本:HTTP/1.0,1.1
方法不容易理解,这个给出一些常用的方法如下表6-1:
技术分享图片
如一个完整的请求行格式:(GET后面有一个空格)
GET  http://www/xyz.edu.cn/dir/index.htm.  HTTP/1.1
一个完整的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             {用户希望优先得到中文版本的文档}
                                {需要有一个空行}

 

响应报文由三个部分组成:状态行、首部行和实体主体
▲状态行
1)版本:HTTP/1.0,1.1
2)状态码:都是三位数字
3)短语:解释状态码的简单短语
状态码是不同开头的意义如下:
1xx 表示通知信息的,接收的请求正在处理
2xx 表示成功,请求正常处理完毕
3xx 表示重定向,表示要完成请求还必须采取进一步的行动
4xx 表示客户端错误状态码,服务器无法处理请求
5xx 表示服务器错误状态码,如服务器失效无法完成请求
响应报文常见三种状态:
HTTP/1.1  202  Accepted            {接受}
HTTP/1.1  400  Bad Request      { 错误的请求}
HTTP/1.1  404  Not Found          {找不到}
 
HTTP协议缺点:
1)通信使用明文(不加密),内容可能会被窃听。
解决:   和安全套接层SSL(Secure Socket Layer)或 安全层传输协议TLS组合使用
2)不验证通信方的身份,可能遭遇伪装。
解决:通过证书,确认身份,证书由值得信任的第三方机构颁发(确认客户端或服务器持有证书)
3)无法验证报文完整性。如下载一个内容无法确定客户端接收到的内容跟服务器一致,无法证明数据来自谁,有没有被篡改
解决:数据签名(附加在数据上的一段特殊的加密过的校验码)
三个解决方案可以由谁完成-->HTTPS协议
HTTPS缺点:HTTPS比HTTP慢2到100倍
由于HTTPS在通信过程还需要做加密解密处理,同时消耗CPU等资源

四.电子邮件

实时通信的缺点:

一.电话通信的主叫和被叫双方必须同时在场。

二. 有些电话常常不必要地打断被叫者的工作或者休息

电子邮件(e-mail)的出现解决了实时通信的缺点

电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可在自己方便上网时到自己所使用的邮件服务器进行读取。因此e-mail有时也称为”电子信箱“

电子邮件的两个重要标准:简单文件传输协议SMTP(Simple Mail Transfer Protocol)和互联网文本报文格式 
电子邮件系统应该具有如下图中的三个主要构件:用户代理,邮件服务器,以及邮件发送协议(如SMTP)和邮件读取协议(如POP3)
技术分享图片
用户代理UA(User Agent)就是用户与电子邮件系统的接口,大多数情况下它就是运行在用户电脑中的一个程序。
用户代理应该具有以下4个功能:
(1)撰写:给用户提供编辑信件的环境
(2)显示:能方便地在计算机屏幕上显示来信(包括附上的声音和图像)
(3)处理:处理包括发送邮件和接收邮件
(4)通信:发信人在撰写完邮件后,利用邮件发送协议发送到发送端的邮件服务器。收件人在接收邮件时,要使用邮件读取协议从本地邮件服务器接收文件。
 
邮件服务器需要使用两种不同的协议:
一种用于用户代理向邮件服务器发送邮件或在邮件服务器之间发送邮件,如SMTP协议
另一种协议用于用户代理从邮件服务器读取文件,如邮局协议POP3
 
邮件服务器必须能够同时充当客户和服务器。
 
SMTP特点:规定了在两个互相通信的SMTP进程之间应如何交换信息
 
电子邮件由信封和内容两部分组成。
 
 电子邮件的格式如下:
                 用户名 @ 邮件服务器的域名
例如:xyz@abc.com
"abc.com"就是邮件服务器的域名,”xyz"就是收件人的用户名,即收件人的邮箱名,该用户名在邮件服务器中必须是唯一的
 
邮件内容首部包括的最重要的关键字:To,Subject,Cc,From,Date,Reply-To
"To:" 后面填入一个或多个收件人的电子邮箱地址
“Subject:"是邮件的主题
”Cc:"是抄送,即表示给某某人发送一个邮件副本
 “From:"表示发件人地址(系统自动填入)
”Date:"表示发信日期(系统自动填入)
"Reply-To:"对方回信所用的地址
 
邮局读取协议POP3和IMAP
常用读取邮件协议有两个:邮局协议第三个版本POP3和网际报文存取协议IMAP(Internet Message Access Protocol)
 
POP3,IMAP都使用客户服务器的工作方式
POP3特点:
1.POP3服务器只有在用户输入鉴别信息(用户名和口令)后,才允许对邮箱进行读取。
2.只要用户从POP3服务器读取了邮件,POP3服务器就把该邮件删除。(POP3缺点)
 
IMAP最大的好处就是用户可以在不同的地方使用不同的计算机随时上网阅读和处理自己在邮件服务器中的邮件(弥补了POP3的缺点)
IMAP缺点:如果没有将邮件复制到自己的计算机上,则邮件一直存放在IMAP服务器上,要想查阅自己的邮件,必须先上网。
 
 

五.动态主机配置协议DHCP

给能够区分不同计算机的参数赋值叫做协议配置

一个协议软件在使用之前必须是已正确配置的,具体的配置信息有哪些取决于协议栈。

 

连接到互联网的计算机的协议软件需要配置的项目包括:

(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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!