图解TCP/IP-----应用协议
此系列博客,图片文字观点均是来自《图解 TCP/IP》,仅作为学习用途。
1、应用层协议概述
*应用协议的定义
利用网络的应用程序有很多,包括Web浏览器、电子邮件、远程登陆、文件传输、网络管理等等,能够让这些应用进行特定通信处理的正是应用协议。
*应用层协议与协议的分层
网络应用由不同的用户和软件供应商开发而成。应用可以直接享用传输层以下的基础部分。
2、远程登陆
远程登录是为了实现TSS(分时系统)环境,是将主机和终端的关系应用到计算机网络上的一个结果。实现从自己本地计算机登陆到网络另一端计算功能的应用就叫做远程登陆。远程登陆到通用计算机或者UNIX工作站后,不仅可以直接使用这些主机上的应用,还可以对这些计算机进行参数设置。远程登录主要有TELNET和SSH两种协议。
2.1 TELNET
TELNET 利用TCP的一条连线,通过一条连接向主机发送文字命令并在主机上执行,本地用户好像可以直接与远端主机内部Shell(Shell是操作系统提供给用户的,便于使用该系统中各种功能的一种用户接口。)相连着似的,直接在本地进行操作。TELNET可以分为两类基本服务,一是仿真终端功能,二是协商选项机制。
TELNET经常用于登陆路由器或高性能交换机等网络设备进行相应的设置。通过TELNET登陆主机或路由器等设备需要将自己的登陆用户名和密码注册到服务端。
*选项
TELNET中除了处理用户所输入的文字外,还提供选项的交互和协商功能。 TELNET客户端是利用TELNET协议实现远程登陆的客户端程序,很多情况下它的程序名就是telnet命令。
2.2 SSH
SSH是加密的远程登陆系统。TELNET中登陆时无需输入密码就可以发送,容易造成通信窃听和非法入侵的危险。使用SSH后可以加密通信内容。
SSH还包括很多功能:可以使用更强的认证机制,可以转发文件,可以使用端口转发功能。
端口转发是指经过特定的端口号所接收到消息转发到特定的IP地址和端口号码的一种机制。

3、文件传输
FTP是在两个相连的计算机之间进行文件传输时使用的协议,FTP也需要登陆到对方的计算机后才能进行相应的操作。互联网上有一种FTP服务器是允许任何人进行访问的,这种服务器叫匿名服务器。登陆这些服务器使用匿名或ftp都可以。
*FTP工作机制
FTP使用两条TCP连接,一条用来控制,另一条用来数据文件传输。用于控制的TCP连接主要在FTP控制部分使用,例如登陆用户名和密码的验证、发送文件的名称、发送文件的设置。利用这个连接可以通过ASCII码字符串发送请求和应答,在这个连接上无法发送数据,数据需要一个专门的TCP进行连接。
FTP控制用的连接使用的是TCP的21号端口,在TCP的21号端口上进行文件GET(RETR)、PUT(STOR)、以及文件一览等操作时,每次都会建立一个用于数据传输的TCP连接。数据的传输和文件一览表的传输正是在这个新建的连接上进行的,当数据传送完毕之后,传输数据的连接也会被断开,然后会在控制用的连接上继续进行命令或应答的处理。
*通过ASCII码字符串进行的交互处理
FTP中请求命令中使用RETR等ASCII码字符串,针对这些命令的应答则使用如“200”等3位数字的ASCII码字符串,TCP/IP的应用协议中有很多使用这种ASCII码字符串的协议。
对ASCII码字符串型的协议来说,换行很重要,一行字符串表示一个命令或一个应答,空白则用来标识与参数之间的分隔符。也就是命令和应答消息通过换行区分,参数用空格区分,换行由“CR”和“LF”两个控制符号组成。
下表列出了FTP的主要命令和应答消息。


4、电子邮件
工作机制。
邮件地址。
MIME
SMTP
POP
IMAP
5、WWW
WWW基本概念
URI(URL)标识资源
HTML(WWW通用的数据表现协议)
HTTP
JavaScript、CGI、Cookie
6、网络管理
SNMP
MIB
RMON
7、其他应用层协议
多媒体通信实现技术(H.323、SIP、RTP)
P2P
LDAP


浙公网安备 33010602011771号