| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 应用层基础知识 -> 正文阅读 |
|
[网络协议]应用层基础知识 |
目录 运输层为应用进程提供了端到端的通信服务。应用层协议则解决某一类应用问题。应用层的许多协议都是基于客户服务器方式。(客户和服务器指的是两个应用进程,描述的是进程之间服务与被服务的关系,客户是服务请求方,服务器是服务提供方)。万维网的应用层协议是HTTP。 一、域名系统DNS(Domain Name System)域名系统将域名解析为IP地址。 1、域名结构例:mail.cumt.edu.cn其中mail为四级域名,cumt为三级域名,edu为二级域名,cn为顶级域名,它们都为标号,标号之间用点隔开。 (1)命名规则标号都由英文字母和数字组成,每一个标号不超过63个字符,也不区分大小写。标号中除连字符外不能使用其他的标点符号。级别最低的域名写在最左边。由多个标号组成的完整域名总共不超过255个字符。 (2)域名分类●原先的域名共分为3大类:国家顶级域名(中国cn、美国us、英国uk等)、通用顶级域名(公司企业com、网络服务机构net、教育机构edu等)、基础结构域名(顶级域名只有一个arpa) ●我国把二级域名分为类别域名和行政区域名两大类 2、域名解析过程●主机向本地域名服务器的查询一般都是采用递归查询。即,如果主机所查询的本地域名服务器不知道该被查询的IP地址,那么本地域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文。因此,递归查询返回的查询结果是所要查询的IP地址或报错。 ●本地域名服务器向根域名服务器查询通常是采用迭代查询。即,当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器:“你下一步映像哪一个域名服务器进行后续查询”。
3、高速缓存为了提高DNS查询效率,并减轻根域名服务器的负荷和减少互联网上的DNS查询报文数量,在DNS服务器中广泛的使用了高速缓存。高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。 二、文件传送协议FTPFTP提供交互式的访问,允许客户指明文件的类型和格式,并允许文件具有存取,还可以减少或消除在不同操作系统下处理文件的不兼容性。 1、特点(1)复制整个文件若要存取一个文件,就必须先获得一个本地的文件副本;若要修改文件,只能对文件的副本进行修改,然后再将修改后的文件副本传回到原节点。 (2)联机访问允许多个程序同时对一个文件进行存取。与数据库系统的不同之处是用户不需要调用一个特殊的客户进程,而是由操作系统提供对远地共享文件进行访问的服务。这使得用户可以用远地文件作为输入和输出来运行任何应用程序,而操作系统中的文件系统则提供对共享文件的透明存取。透明存取的优点是将原来用于处理本地文件的应用程序用来处理远地文件时,不需要对该应用程序作明显的改动。这属于文件共享协议的网络文件系统NFS。 2、传送文件可能出现的问题●计算机存储数据的格式不同 ●文件的目录结构和文件命名的规定不同 ●对于相同的文件存取功能,操作系统使用的命令不同 ●访问控制方法不同 3、基于TCP的FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务,其中服务器进程有两大部分组成:一个主进程(负责接收新的请求)、若干个从属进程(负责处理单个请求),主进程和从属进程的处理是并发进行的。 (1)主进程的工作步骤●打开熟知端口21,使客户进程能够连接上 ●等待客户进程发出连接请求 ●启动从属进程处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。 ●回到等待状态,继续接受其他客户进程发来的请求。 (2)控制连接和数据连接FTP的客户和服务器之间要建立两个并行的TCP连接:“控制连接”和“数据连接”。 一般连接服务器常用端口为21,传送数据常用端口为20。 4、网络文件系统NFSNFS允许应用进程打开一个远地文件,并能在该文件的某个特定位置上开始读写数据。在网络上传送的只是少量的修改数据。 5、基于UDP的简单文件传送协议TFTP使用客户服务器方式。因为使用UDP数据报因此需要有自己的差错改正措施。TFTP只支持文件传输而不支持文件交互。TFTP没有一个庞大的命令集,没有列目录的功能,也不能对用户进行身份鉴别。常用端口号为69。 TFTP的工作很像是停止等待协议。发送完一个文件块后就等待对方的确认,确认时应指明所确认的块编号。发完数据后在规定时间内收不到确认就要重发数据PDU。发送确认PDU的一方若在规定时间内收不到下一个文件块,也要重发确认PDU。这样就可保证文件的传送不致因某一个数据报的丢失而告失败。 (1)主要特点●每次传送的数据报文中有512字节的数据,但最后一次可不足512字节 ●数据报文按序编号,从1开始 ●支持ASCII码或二进制传送 ●可对文件进行读或写 ●使用很简单的首部 (2)优点●TFTP可用于UDP环境。 三、远程终端协议TELNET●TELNET,又称终端仿真协议,是一个简单的远程终端协议。用户用TELNET就可在其所在地通过TCP连接注册/登录到远地的另一台主机上。TELNET能将用户的键盘输入传到远地主机,同时也能将远地主机的输出通过TCP连接返回到用户屏幕。这种服务是透明的。 ●TELNET使用客户服务器模式。在本地运行TELNET客户进程,而在远地主机则运行TELNET服务器进程。和FTP相似,服务器的主进程等待新请求,并产生从属进程来处理每一个连接。 ●TELNET能适应不同计算机和操作系统的差异。它定义了数据和命令应怎样通过互联网。这些定义就是所谓的网络虚拟终端NVT(Network?Virtual?Terminal)。客户软件把用户的击键和命令转换成NVT格式,并送交给服务器。服务器软件把收到的数据和命令从NVT格式转换成远地系统所需的格式。向用户返回数据时,服务器把远地系统的格式转换为NVT格式,本地用户再从NVT格式转换到本地系统所需的格式。 四、超文本传输协议HTTPHTTP是面向事务的应用层协议。HTTP协议定义了浏览器怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器。它不仅能传送完成超文本跳转所必需的信息,而且也传送任何可从互联网上得到的信息(如:文本、超文本、声音和图像)。 1、工作过程每个万维网网点都有一个服务器进程,它不断地监听TCP的端口80,以便发现是否有浏览器向它发出连接建立请求。一旦监听到连接建立请求并建立了TCP连接后,浏览器就向万维网服务器发出浏览某个页面的请求,服务器接着就返回所请求的页面作为响应。最后,TCP连接就被释放了。在浏览器和服务器之间的请求和响应的交互,必须按照规定的格式和遵循一定的规则这些格式和规则就是超文本传送协议HTTP。 2、特点HTTP使用了面向连接的TCP作为运输层协议,HTTP报文纹通常使用TCP连接传送,保证了数据的可靠传输。 (1)无连接虽然HTTP使用了TCP连接,但通信的双方在交换HTTP报文前不需要先建立HTTP连接。 (2)无状态同一个客户第二次访问同一个服务器上的页面时,服务器的响应与第一次被访问时的相同。因为服务器并不记得这个曾经访问过的用户,也不记得为该客户曾经服务过多少次。这个特点简化了服务器的设计,使服务器更容易支持大量并发的HTTP请求。 3、HTTP/1.0和HTTP/1.1(1)HTTP/1.0的主要缺点每请求一个文档就要有两倍往返时间开销(一个用于建立TCP连接,另一个用于请求和接受万维网文档) (2)HTTP/1.1改进:持续连接持续连接就是万维网服务器在发送响应后仍然在一段时间内保持这条连接,使同一个客户和该服务器可以继续在这条连接上传送后续的HTTP请求报文和响应报文。这并不局限于传送同一个页面上链接的文档,而是只要这些文档都在同一个服务器上就行。 ●持续连接的两种工作方式:非流水线方式和流水线方式。 ●非流水线方式,是客户在收到前一个响应后才能发出下一个请求。因此,在TCP连接已建立后,客户每访问一次对象都要用去一个往返时间RTT。这比非持续连接要用去两倍RTT的开销,节省了建立TCP连接所需的一个RTT时间。但非流水线方式还是有缺点的,因为服务器在发送完一个对象后,其TCP连接就处于空闲状态,浪费了服务器资源。 ●流水线方式,是客户在收到HTTP的响应报文之前就能够接着发送新的请求报文。因此,一个接一个的请求报文到达服务器后,服务器就可以持续发回响应报文。因此,客户访问所有的对象只需花费一个RTT时间,使TCP连接中的空闲时间减少,提高了下载文档效率。 五、简单邮件传输协议SMTP1、特点SMTP规定了在两个相互通信的SMTP进程之间应如何交换消息。 SMTP使用客户服务器方式,因此负责发送邮件的SMTP进程就是SMTP客户,而负责接收邮件的SMTP进程就是SMTP服务器。SMTP常用端口号为25。 ●SMTP未规定邮件内部的格式,邮件如何存储,以及邮件系统应以多快的速度来发送邮件,SMTP也都未作出规定。SMTP规定了14条命令和21种应答消息。每条命令用几个字母组成,而每一种应答信息一般只有一行信息,由一个3位数字的代码开始,后面可以附上很简单的文字说明。 2、缺点●SMTP不能传送可执行文件或其他的二进制对象。 ●SMTP限于传送7位的ASCII码。许多其他非英语国家就无法传送。 ●SMTP服务器会拒绝超过一定长度的邮件。 ●某些SMTP的实现并没有完全按照SMTP的互联网标准。常见的问题有:回车换行的删除和增加、超过76个字符时的处理是截断或自动换行、后面多余空格的删除、将制表符tab转换为若干个空格。 六、邮件读取协议POP3和IMAP1、邮局协议第三版本POP3POP3使用客户服务器的工作方式。在接收邮件的用户计算机中的用户代理必须运行POP3客户程序,而在收件人所连接的ISP的邮件服务器中则运行POP服务器程序和SMTP服务器程序。 (1)特点只要用户从POP3服务器读取了邮件,POP3服务器酒吧该邮件删除。 这在某些情况下不太方便。为了解决这一问题,POP3进行了一些功能扩充,其中包括让用户能事先设置邮件读取后仍然在POP3服务器中存放的时间。 2、网际报文存取协议IMAPIMAP比POP3复杂得多。IMAP是一个联机协议。 在使用IMAP时,在用户的计算机上运行IMAP客户程序,然后与接收方的邮件服务器上的IMAP服务器程序建立TCP连接。用户在自己的计算机上就可以操纵邮件服务器的邮箱。 当用户计算机上的IMAP客户程序打开IMAP服务器的邮箱时,用户就可看到邮件的首部。若用户需要打开某个邮件,则该邮件才传到用户的计算机上。 用户可以根据需要为自己的邮箱创建便于分类管理的层次式的邮箱文件夹,并且能够将存放的邮件从某一个文件夹中移动到另一个文件夹中。用户也可按某种条件对邮件进行查找。在用户未发出删除邮件的命令之前,IMAP服务器邮箱中的邮件一直保存着。 (1)优点用户可以在不同的地方使用不同的计算机随时上网阅读和处理自己在邮件服务器中的邮件。IMAP还允许收件人只读取邮件中的某一个部分。 (2)缺点如果用户没有将邮件复制到自己的计算机上,则邮件一直存放在IMAP服务器上。要想查阅邮件,必须先上网。 七、动态主机配置协议DHCP互联网现在广泛使用的是动态主机配置协议DHCP(Dynamic Host Configuration Protocol),它提供了即插即用联网的机制。这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与。 DHCP使用客户服务器模式。DHCP对运行客户软件和服务器软件的计算机都适用。当运行客户软件的计算机移至一个新的网络时,就可使用DHCP获取其配置信息而不需要手工干预。DHCP给运行服务器软件而位置固定的计算机指派一个永久地址,而当这计算机重新启动时其地址不改变。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 9:59:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |