计算机网络-应用层协议
前言:本章将介绍关于应用层的协议,如下图所示
一、应用协议的概要
利用网络的应用程序有很多,包括Web浏览器、电子邮件、远程登陆、文件传输、网络管理等,能够让这些应用进行通信处理的正是应用协议。
网络应用由不同的用户和软件供应商开发而成。为了实现网络应用的功能,在应用之间进行通信时将其连接的网络协议是非常重要的。设计师和开发人员根据所开发模块的功能,可以利用现有的应用协议,也可以自己定义一个新的应用协议。
应用协议可以直接享用传输层以下的基础部分。因为开发和只要关心选用那种应用协议、如何开发即可,而不必担心应用中的数据应该以何种方式发送到目标主机等问题。这也是得益于网络层的功劳
二、下面我们介绍几种应用协议
1、远程登陆协议Telnet
TELNET利用TCP的一条连接,通过这一条连接向主机发送文字命令并在主机上执行。本地用户好像直接与远端主机内部的Shell相连着似的,直接在本地进行操作。
TELNET可以分为两类基本服务。一是仿真终端功能,二是协商选项机制。
SSH是加密的远程登录系统。TELNET中登录时无需输入密码就可以发送,容易造成通信窃听和非法入侵的危险。使用SSH后可以加密通信内容。即使信息被窃听也无法破解所发送的密码、具体命令以及命令返回的结果是什么。
2、文件传输协议 FTP
FTP是在两个相连的计算机之间进行文件传输时使用的协议,FTP也需要登陆到对方的计算机后才能进行相应的操作。互联网上有一种FTP服务器是允许任何人进行访问的,这种服务器叫匿名服务器。登陆这些服务器使用匿名或ftp都可以。
FTP服务器中以目录结构保存着各种文件,FTP客户机是安装了FTP客户端软件的用户计算机。
FTP使用TCP提供的可靠传输服务。
FTP客户机和服务器之间的通信是由若干个进程实现的,分为FTP服务器进程和客户机进程。
常用的FTP客户端工具软件有 Flashftp、 Leapftp和 Cuteftp等。
3、电子邮件协议 SMTP、POP
SMTP是发送电子邮件的协议。它使用的是TCP的25号端口。SMTP建立一个TCP连接以后,在这个连接上进行控制和应答以及数据的发送。客户端以文本的形式发出请求,服务端返回一个3位数字的应答。
POP协议是一种用于接收电子邮件的协议。发送端的邮件根据SMTP协议将被转发给一直处于插电状态的POP服务器。客户端再根据POP协议从POP服务器接收对方发来的邮件。在这个过程中,为了防止他人盗窃邮件内容,还要进行用户验证。
4、文本传输协议 HTTP
—超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和万维网(WWW = World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。
HTTP协议作为TCP/IP模型中应用层的协议也不例外。HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。如下图:
HTTP
(1)工作原理:在浏览器的地址栏输入URI以后,HTTP的处理即会开始,其默认使用80端口。工作机制为首先客户端向服务器的80端口建立一个TCP连接,然后通过此连接进行TCP的请求、应答以及数据传输
(2)使用协议:HTTP1.0中,每一个命令和应答都会触发一次TCP连接的建立和断开;HTTP1.1中,在一个TCP连接中可以有多个应答和命令,也被称为保持连接。
HTML
是描述Web页的一种语言(数据格式),可以指定浏览器中显示的文字、文字的大小和颜色。其可被理解为WWW通用的数据表现协议,属于OSI的第六层表示层。通常与XML一样为<标签名></标签名>的树形包含数据格式
URI
(1)定义:表示互联网中资源(文件)的具体位置的字符串称为URL,表示互联网中地址名字的字符串称为URN,而URI可以作为所有资源的识别码,为更广义的概念,常规格式为http://主机名:端口号/路径?访问内容#部分信息
(2)使用:主机名表示IP地址或者域名,端口号表示传输端口号,省略时表示http的默认端口为80。URI可以使用特定的方案(如file,http,https等)来定义相关功能的页面
5、网络管理协议 SNMP
基于UDP/IP的协议,其中管理端叫做管理器,被管理端叫做代理。其主要操作是将“消息处理”、“用户安全”、“访问控制”三部分分开考虑,相关的操作有动作检查、修改设置、事件通知等等