美文网首页《图解TCP/IP》虫虫
《图解TCP/IP》之应用协议

《图解TCP/IP》之应用协议

作者: 笙绳省盛 | 来源:发表于2019-02-23 13:19 被阅读10次

    1.应用层协议概要

    • 应用协议的定义
      利用网络的应用程序有很多,包括Web浏览器、电子邮件、远程登录、文件传输、网络管理等。能够让这些应用进行特定通信处理的正是应用协议。
      应用协议是为了实现某种应用而设计和创造的协议。
    • 应用协议与协议的分层
      网络应用由不同的用户和软件供应商开发而成。为了实现网络应用的功能,在应用之间进行通信时将其连接的网络协议是非常重要的。设计师和开发人员根据所开发模块的功能和目的,可以利用现有的应用协议,也可以自己定义一个新的应用协议。

    2.远程登录

    实现从自己的本地计算机登录到网络另一端计算功能的应用就叫做远程登录。通过远程登录到通用计算机或UNIX工作站以后,不仅可以直接使用这些主机上的应用,还可以对这些计算机进行参数设置。远程登录主要使用TELNET和SSH两种协议。

    1.TELNET

    TELNET利用TCP的一条连接,通过这一条连接向主机发送文字命令并在主机上执行。本地用户好像直接与远端主机内部的Shell相连着似的,直接在本地进行操作。
    TELNET可以分为两类基本服务。一是仿真终端功能,二是协商选项机制。

    2.SSH

    SSH是加密的远程登录系统。TELNET中登录时无需输入密码就可以发送,容易造成通信窃听和非法入侵的危险。使用SSH后可以加密通信内容。即使信息被窃听也无法破解所发送的密码、具体命令以及命令返回的结果是什么。

    SSH还包括很多非常方便的功能:

    • 可以使用更强的认证机制。
    • 可以转发文件。
    • 可以使用端口转发功能。
      端口转发是指将特定端口号所收到的消息转发到特定的IP地址和端口号码的一种机制。由于经过SSH连接的那部分内容被加密,确保了信息安全,提供了更为灵活的通信。
    3.文件传输

    FTP是在两个相连的计算机之间进行文件传输时使用的协议。
    互联网上有一种FTP服务器是允许任何人进行访问的,这种服务器叫做匿名服务器。登录这些服务器时使用匿名或ftp都可以。

    • FTP的工作机制概要
      FTP使用两条TCP连接:一条是用来控制,另一条用于数据的传输。
      用于控制的TCP连接主要在FTP的控制部分使用。例如登录用户名和密码的验证、发送文件的名称、发送方式的连接,可以通过ASCLL码字符串发送请求和接收应答。在这个连接上无法发送数据,数据需要一个专门的TCP进行连接。
      FTP控制用的连接使用的是TCP21号端口。在TCP21号端口上进行文件GET、PUT以及文件一览等操作时,每次都会建立一个用于数据传输的TCP连接。数据的传输和文件一览表的传输正是在这个新建的连接上进行。当数据传送完毕时。传输数据的这条连接也会被断开,然后会在控制用的这条连接上继续进行命令或应答的处理。
    • 通过ASCLL码字符串进行的交互处理
      FTP中请求命令中使用着“RETR”等ASCLL码字符串。而针对这些命令的应答则使用“200”等3位数字的ASCLL码字符串。TCP/IP的应用协议中有很多使用这种ASCLL码字符串的协议。

    4.电子邮件

    电子邮件,就是指网络上的邮政。通过电子邮件人们可以发送编写的文字内容、数码相片,还可以发送各种报表计算得出的数据等所有计算机可以存储的信息。

    1.电子邮件的工作机制

    提供电子邮件服务的协议叫做SMTP。SMTP为了实现高效发送邮件内容,在其传输层使用了TCP协议。


    屏幕快照 2019-02-23 上午10.13.07.png
    2.邮件地址

    使用电子邮件时需要拥有的地址叫做邮件地址。它就相当于通信地址和姓名。
    互联网中电子邮件地址的格式如下:
    名称@通信地址
    例如master@tcpip.kusa.ac.jp中的master为名称,tcpip.kusa.ac.jp为地址。电子邮件的地址和域名的构造相同。此处,kusa.ac.jp表示域名,tcpip则表示master接收邮件的主机名称或为发送邮件所用的子网名称。

    3.MIME

    现在,电子邮件所能发送的数据类型已被扩展到MIME,可以发送静态图像、动画、声音、程序等各种形式的数据。
    MIME基本上由首部和正文两部分组成。首部不能是空行,因为一旦出现空行,其后的部分将被视为正文。如果MIME首部的“Content-Type”中指定“Multipart/Mixed”,并以“boundary=”后面字符作为分隔符,那么可以将多个MIME消息组合成为一个MIME消息。这就叫做multipart。即,各个部分都由MIME首部和正文组成。


    屏幕快照 2019-02-23 上午10.27.01.png
    屏幕快照 2019-02-23 上午10.27.06.png
    4.SMTP

    SMTP是发送电子邮件的协议。它使用的是TCP的25号端口。SMTP建立一个TCP连接以后,在这个连接上进行控制和应答以及数据的发送。客户端以文本的形式发出请求,服务端返回一个3位数字的应答。

    每个指令和应答的最后都必须追加换行指令(CR、LF)。 屏幕快照 2019-02-23 上午10.30.36.png
    屏幕快照 2019-02-23 上午10.31.54.png
    5.POP

    POP协议是一种用于接收电子邮件的协议。发送端的邮件根据SMTP协议将被转发给一直处于插电状态的POP服务器。客户端再根据POP协议从POP服务器接收对方发来的邮件。在这个过程中,为了防止他人盗窃邮件内容,还要进行用户验证。


    屏幕快照 2019-02-23 上午10.38.42.png
    屏幕快照 2019-02-23 上午10.39.43.png
    屏幕快照 2019-02-23 上午10.39.48.png
    6.IMAP

    IMAP也是接收电子邮件的协议。在POP中邮件由客户端进行管理,而在IMAP中邮件则由服务器进行管理。
    使用IMAP时,可以不必从服务器上下载所有的邮件也可以阅读。由于IMAP是在服务器端处理MIME信息,所以它可以实现当某一封邮件含有10个附件时“只下载其中的第7个附件”的功能。

    5.WWW

    1.WWW基本概念

    WWW定义了3个重要的概念,它们分别是访问信息的手段与位置(URI,Uniform Resource Identifier)、信息的表现形式(HTML,HyperText Markup Language)、以及信息转发(HTTP,HyperText Transfer Protocol)等操作。

    2.URI

    URI用于标识资源。
    URI所表示的组合叫做方案。在众多URI的Scheme中WWW主要用其中的http和https表示Web页的位置和访问Web页的方法。
    URI的http方案的具体格式如下:
    http://主机名/路径
    http://主机名:端口号/路径
    http://主机名:端口号/路径?访问内容#部分信息

    其中主机名表示域名或者IP地址,端口号表示传输端口号。

    3.HTML

    HTML是记述Web页的一种语言。它可以指定浏览器中显示的文字、文字的大小和颜色。此外,不仅可以对图像或动画进行相关设置,还可以设置音频内容。

    4.HTTP

    当用户在浏览器的地址栏里输入想要访问Web页的URI以后,HTTP的处理即会开始。HTTP中默认使用80端口。它的工作机制,首先是客户端向服务器的80端口建立一个TCP连接,然后在这个TCP连接上进行请求和应答以及数据报文的发送。


    屏幕快照 2019-02-23 上午11.01.15.png

    6.网络管理

    1.SNMP

    在TCP/IP的网络管理中可以使用SNMP收集必要的信息。它是一款基于UDP/IP的协议。
    SNMP中管理端叫做管理器,被管理端叫做代理。决定管理器与代理之间的通信中所要交互信息的正是SNMP。


    屏幕快照 2019-02-23 上午11.13.24.png
    2.MIB

    SNMP中交互的信息是MIB。MIB是在树形结构的数据库中为每个项目附加编号的一种信息结构。
    SNMP访问MIB信息时使用数字序列。这些数字序列各自都有其易于理解的名字。
    MIB相当于SNMP的表示层,它是一种能够在网络上传输的结构。SNMP中可以将MIB值写入代理,也可以从代理中读取MIB值。通过这些操作可以收集冲突的次数和流量统计等信息,可以修改接口的IP地址,还可以进行路由器的启停、设备的启动和关闭等处理。

    3.RMON

    RMON时Remote Monitoring MIB的缩写。MIB由监控网络中某个设备接口的众多参数构成。RMON则由监控网络上线路的众多参数构成。
    RMON中可监控的信息从原来的一个点扩展到了一条线上。这样可以更高效率地监控网络。可监控的内容上也增加了很多从用户角度看极为有意义的信息,如网络流量统计等。

    7.其他应用层协议

    1.多媒体通信实现技术
    • H.323
      H.323是由ITU开发用于在IP网上传输音频、视频的一种协议。
      H.323定义了4个主要组件。它们分别是终端、网关、网闸以及多点控制元。

    • SIP
      与H.323相对的TCP/IP协议即是SIP协议。SIP的提出要晚于H.23,但是普遍被认为更适用于互联网。H.323的规范内容较多、对应起来比较复杂,而相比之下SIP的构成则简单了许多。
      终端之间进行多媒体通信时,需要具备事先解析对方地址、呼出对方号码并对所要传输的媒体信息进行处理等功能。此外,还需要具备中断会话和数据转发的功能。这些功能都被统一于SIP协议中。它相当于OSI参考模型中的会话层。

    • RTP
      UDP不是一种可靠性传输协议。因此有可能发生丢包或乱序等现象。因此采用UDP实现实时的多媒体通信需要附加一个表示报文顺序的序列号字段,还需要对报文发送时间进行管理。这些正是RTP的主要职责。
      RTP为每个报文附加时间戳和序列号。接收报文的应用,根据时间戳决定数据重构的时机。序列号则根据每发出一次报文加一的原则进行累加。RTP使用这个序列号对同一时间戳的数据进行排序,掌握是否有丢包的情况发生。

    • 数字压缩技术
      MPEG是决定数字压缩规范的ISO/IEC工作组。在这里所制定的规范叫做MPEG。在MPEG的众多规范当中,MPEG1主要用于VideoCD,而MPEG2主要用于DVD和数字电视播放领域。

    • P2P
      网络上的终端或主机不经服务器直接1对1相互通信的情况叫做P2P。P2P主机中具备客户端和服务端两方面的功能,以对等的关系相互提供服务。

    • LDAP
      LDAP是访问目录服务的一种协议,也叫轻量级目录访问协议。所谓“目录服务”是指网络上存在的一种提供相关资源的数据库的服务。LDAP定义了目录树的结构、数据格式、命名规则、目录访问顺序和安全认证。

    相关文章

      网友评论

        本文标题:《图解TCP/IP》之应用协议

        本文链接:https://www.haomeiwen.com/subject/znyuyqtx.html