zoukankan      html  css  js  c++  java
  • 常见应用层协议解析

    应用层常见的协议

    1、Telnet(远程登录)(c/s,tcp)

    远程登录功能允许用户与远程计算机进行动态交互,即用自己的键盘,鼠标等输入设备操纵远程计算机,运行远程计算机上的软件,在自己的显示器上了解运行情况,查看运行结果。默认端口23

    通信过程

    用户的终端实际上与本地的TELNET客户机程序进行通信,远程主机与远程TELNET服务器进行通信。然后通过TCP进行连接, 客户机与服务器之间采用NVT标准进行通信。

    1:建立与服务器的TCP连接;
    2:从键盘上接收用户输入的字符;
    3:把用户输入的字符串变成标准格式并送给服务器;
    4:从远程服务器接收输出的信息;
    5:把该信息显示在用户的屏幕上。

    2、FTP (文件传送协议)(C/S)(TCP)

    概述:
    文件传输协议,负责将文件从一台计算机传送到另一台计算机上,并且保证其传输的可靠性。
    客户端提出文件传输请求,服务器接收请求并提供服务。首先在本地计算机上启动FTP客户程序,利用他与远程计算机建立连接,远程计算机上的服务端FTP程序被激活。这样本地的FTP程序成为一个客户,而远程FTP程序成为服务器,他们之间通过TCP建立连接,端口号为21.

    FTP协议的客户机与服务器之间需要建立两个连接, 一个用于控制数据传输(端口21), 一个用于数据传输(端口20)。数据连接主要用于数据传输,完成文件内容的传输。控制连接主要用于传输FTP控制命令和服务器的回送消息。

    FTP的功能:

    1:可以从本地上传和从服务器下载文件; 
    2:能够传输各种类型的文件,包括文件,图片, 视频等; 
    3:能够提供对本地和远程计算机的目录操作。 
    4:对文件进行改名删除等操作。

    FTP的服务获取有两种方式:一种是通过输入用户名和登录口令, 另一种是输入anonymous作为用户名,邮箱地址作为登录口令进行登录。 FTP客户与服务器之间可以通过命令和回答进行交互。

    3:SMTP (简单邮件传输协议)(TCP)(C/S)

    概述:
    SMTP协议包括两个标准子集, 一个标准定义电子邮件信息的格式,另一个是传输邮件的标准。在互联网中,电子邮件的传送是依靠SMTP协议进行的。SMTP的主要任务是负责服务器之间的邮件传送,最大的特点是简单。只规定了电子邮件如何在互联网中通过TCP协议在发送方和接收方之间进行传送。

    工作方式:
    基于客户/服务器方式进行的。发送人的主机为客户方,收件人的邮件服务器为服务方。在传送邮件的过程中,需要使用TCP协议进行连接(默认端口号为25)。发送主机先将邮件发送到本地SMTP服务器上,本地SMTP服务器与接收方的邮件服务器建立可靠的TCP连接,从而保证了邮件传输的可靠性。

    注意:
    接收方必须使用POP3协议才能取得自己邮箱中的邮件。

    POP3协议的主要任务是实现用户计算机和邮件服务器的连接,从邮件服务器的电子邮箱中读取邮件。

    四:DNS (域名解析系统)(UDP)

    概述: 
    用域名系统来处理IP地址和主机名之间的转换, 在DNS中主机名即为域名。 
    DNS也是一个应用层协议,为了提供主机名到IP地址的转换服务,DNS是运行在UDP协议之上,使用53号端口。

    DNS通常被其他应用层协议(HTTP, SMTP, FTP)所使用, 以便将用户提供的主机名解析为IP地址。 域名是一种分布式并具有层次结构的命名机制

    5:SNMP (简单网络管理协议)(UDP)

    概述:
    SNMP:“简单网络管理协议”,用于网络管理的协议。SNMP用于网络设备的管理。SNMP的工作方式:管理员需要向设备获取数据,所以SNMP提供了“读”操作;管理员需要向设备执行设置操作,所以SNMP提供了“写”操作;设备需要在重要状况改变的时候,向管理员通报事件的发生,所以SNMP提供了“Trap”操作。
    SNMP被设计为工作在TCP/IP协议族上。SNMP基于TCP/IP协议工作,对网络中支持SNMP协议的设备进行管理。所有支持SNMP协议的设备都提供SNMP这个统一界面,使得管理员可以使用统一的操作进行管理,而不必理会设备是什么类型、是哪个厂家生产的。默认端口161

    6:TFTP (UDP)

    概述:
    TFTP协议全称为Trivial File Transfer Protocol。目标是在UDP之上上建立一个类似于FTP的但仅支持文件上传和下载功能的传输协议,所以它不包含FTP协议中的目录操作和用户权限等内容;

    工作流程:
    l server在端口为69的UDP上等待Client发出写文件请求包
    l Client通过UDP发送符合TFTP请求格式的WRQ包给Server。从UDP包角度看,该UDP包的源端口由Client随意选择,而目标端口则是Slient的69。
    l Server收到Client的这个请求包后,需发送ACK给Client。对于写请求包,Server发送的ACK包确认号为0。
    l Client发送DATA数据给Server,Sver接收数据并写文件
    l 当Client发送的DATA数据长度小于512字节时,Server认为这次WRQ请求完成

    优点:
    l 每个数据包大小固定,这样在内存分配处理的时候比较直接
    l 实现简单
    l 每个数据包都有确认机制,可以实现一定程度的可靠性

    缺点:
    l 传输效率不高
    l 滑动窗口机制太简单,并且该窗口仅有一个包的大小
    l 超时处理机制并不完善,RFC1350并没有给出详细的处理机制说明

    原文:https://blog.csdn.net/mellymengyan/article/details/51115521 

  • 相关阅读:
    jQuery中获取元素的属性方法attr()简单用法
    【经验】angularjs 实现带查找筛选功能的select下拉框
    【经验】Angularjs 中使用 layDate 日期控件
    在 VPS 上一键安装KMS服务脚本
    Windows 使用 TCPing 工具来获取 TCP延迟、端口通顺情况、已禁Ping服务器的延迟
    Linux 初级教程:初步进入 Linux 世界
    Debian/Ubuntu TCP拥塞控制技术 ——TCP-BBR 一键安装脚本
    Linux 下 iptables 配置详解
    在 Ubuntu 上安装 LaTeX
    代码审计学习之反射型XSS
  • 原文地址:https://www.cnblogs.com/liaopeng123/p/11280473.html
Copyright © 2011-2022 走看看