TCP/IP应用层对应了OSI参考模型的上三层(会话层、表示层和应用层),它包括了一些服务。
这些服务是与终端用户相关的认证、数据处理及压缩,应用层还要告诉传输层哪个数据流
是由哪个应用程序发出的。应用层主要包括一下协议:
文件传输类:HTTP、FTP、TFTP;
远程登录类:Telnet;
电子邮件类:SMTP;
网络管理类:SNMP;
域名解析类:DNS;
Http
Http(Hypertext Transfer Protocol,超文本链接协议)是一个应用层的、面向对象的协议,它适用
于分布式超媒体信息系统。
WWW(World Wide Web,也称Web)服务器使用的主要协议就是HTTP。由于HTTP支持的服务
器不限于WWW,还可以是其他服务,因此HTTP允许用户子啊统一的界面下,采用不同的协
议访问不同 服务,如FTP、SMTP、NNTP等。
HTTP服务:
FTP(File Transfer Protocol,文件传输协议)是一个用于简化IP网络上系统之间文件传输的协议。
采用FTP协议,用户可以高效从Internet上的FTP服务器下载大量的数据文件,已达到资源共享
和传递信息的目的。
一个FTP站点可以是公用的、私有的、或者两者兼之。用户可以为FTP帐号定义权限,让它可
以访问整个FTP服务的目录结构,或者是特定的区域。
FTP服务器可以设置为允许任何人连接和传输文件,这种访问方式被称为匿名访问。当使用匿
名方式登陆到FTP站点时,系统默认使用“anonymous”作为用户名,用“guest”某个E-mail地
址作为密码。匿名FTP经常用于发布大量的公用领域或共享软件。
实际上,FTP已经包含于Internet Exploer浏览器中,因此用户可以使用浏览器Web的程序来浏览
FTP服务器。
FTP服务的主动模式和被动模式
FTP包含两种连接模式:控制连接和数据连接。
控制连接
控制连接用于传递用户端的命令和服务器端对命令的响应,它使用服务器的21端口。
数据连接
数据连接用于传输文件和其他数据,如目录列表等。这汇总连接在需要数据传输时建
立,而一旦数据传输完毕就关闭,每次使用的端口也不一定相同。而且,数据连接既
可能是服务器端发起的。
FTP服务器数据连接的主动模式和被动模式
FTP的数据连接也存在两种模式:主动模式和被动模式。主动(PORT)模式从服务器端
向客户端发起连接;被动(PASV)模式是客户端像服务器端发起连接。
当FTP被设置为主动模式时,首先客户端像服务器的FTP端口(默认是21)发送连接请求
服务器接收连接,建立一条控制连接。当需要传输数据时,客户端在控制连接上用
PORT名利告诉服务器:“打开了XXXX端口,你来连接我”。于是服务器从20端口向
客户端的XXXX端口发送连接请求,最后建立一条数据连接来传输数据。
当FTP被设置为被动模式时,首先客户端向服务器的FTP端口(默认是21)发送连接请求,
服务器接收连接,建立一条控制连接。当需要传输数据时,服务器在命令链路上用
PASV命令告诉客户端:“我打开了XXXX端口,你来连接我”。于是客户端向服务器
的XXXX端口发送连接请求,最后建立一条数据连接来传输数据。
当进行FTP连接时,IE 通常被设置为被动模式,而FTP客户端软件(如FlashFXP、CutFTP)
一般为主动模式。如果服务器和客户端之间存在防火墙,主动模式经常会引起一些麻烦。
例如,客户端位于防火墙之后,通常防火墙允许所有内部向外部的连接,但是对于外部
向内部发起的连接却存在很多限制。在这种情况下,客户端可以正常地和客户端建立控
制连接,而如果使用主动模式的数据连接,一些数据传输命令就很难成功运行,因为防
火墙会足赛从服务器向客户发起的数据传输连接。因此在使用主动模式的FTP数据连接
时,防火墙上的配置会比较麻烦。
TFTP
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是基于UDP的应用。TFTP在设计是
用与小文件传输的,它对内存和处理器的要求很低,速度快。但那是TFTP不具备FTP的
许多功能,它只能从文件服务器获得或写入文件,而不能列出目录,也不能进行认证,
所以它没有建立连接的过程及错误恢复的功能,适用范围也不像FTP那么广泛。
一个最常见的TFTP应用例子就是使用TFTP服务器来备份或恢复Cisco路由器、Catalyst交
换机的IOS镜像和配置文件。
SNMP
SNMP(Simple Network Management Protocol)即简单网络管理协议,它允许第三方的管理系
统集中采集来自许多网络设备的数据,为网络管理系统提供了底层网络管理的框架。利
用SNMP,一个管理管理工作站可以远程管理所有支持这种协议的网络设备,包括监视
网络状态、修改网络设备配置、接收网络事件警告等。
SNMP被设计成与协议无关,所以它可以被使用在IP、IPX、AppleTalk、OSI以及其他用
到的传输协议上。
SNMP 提供了监控联网设备的能力,它采用了分布式体系结构,这个体系结构由两部分
组成:管理系统和代理。
管理系统(Management System.):管理系统是任意的一台运行SNMP管理软件的计算机。任
何管理系统的主要功能都是从代理那里请求信息。
代理(Agents):代理是任何一种运行SNMP代理软件的设备,如服务器或者路由器。代理的
主要功能是发送管理系统所请求的信息。
SNMP是一种非连接协议,非连接的意思是它不支持像Telnet或FTP这种专门的连接。通过
使用请求报文和返回响应的方式,SNMP在代理和管理系统之间传送信息。这种机制减轻
了代理的负担,它不必非得支持其他协议及基于连接模式的处理过程。因此,SNMP协议
提供了一种独有的机制来处理可靠性和故障检测方面的问题。
DNS
域名管理系统DNS(Domain Name System)是一台域名解析服务器。在互联网中我们通常用
一些域名(如 www.baidu.com)来代替难记的IP地址(如 220.181.6.19)以定位计算机和服务。
DNS服务器中包含了域名和相应的IP地址的映射。因此DNS的作用是把域名转换成网络可
以标识的IP地址。
在Windows 2000中,可以使用nslookup命令来查询对于那个某个域名的IP地址。

TCP应用层主要协议相关推荐

  1. TCP/IP 应用层常用协议

    一.UDP 1.DNS:域名系统 DNS是因特网使用的命名系统,用来把人们使用的机器名字转换为IP地址. 现在顶级域名TLD分为三大类:国家顶级域名nTLD:通用顶级域名gTLD;基础结构域名 域名服 ...

  2. TCP/UDP协议总结与应用层常见协议及端口

    TCP/UDP协议总结与应用层常见协议及端口 1.TCP协议 TCP协议概述 TCP的应用场景 TCP的特点 TCP的报文格式 TCP三次握手 TCP四次挥手 2.UDP协议 UDP概述 UDP的应用 ...

  3. 基于TCP或UDP协议的应用层协议

    TCP和UDP都是传输层协议,上面是应用层,下面是网络层 TCP与UDP区别: TCP(传输控制协议)提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连 ...

  4. 计算机网络7层协议模型,计算机网络(一) OSI七层模型及TCP/IP dubbo协议

    3.TCP/IP 四层模型: TCP/IP协议:是一个网络通信模型,是OSI 七层模型的简化,为4层模型,泛指众多(TCP,UDP,IP等)协议: OSI TCP/IP 功能 协议 应用层 应用层 文 ...

  5. 协议分析中的TCP/IP网络协议

    " TCP/IP协议作为互联网的基础,在协议分析中不可或缺,本文介绍在对协议进行分析还原的过程中的一些要点,快速掌握协议还原的精髓." 注意,本文比较枯燥乏味,若非需要了解TCP/ ...

  6. TCP/IP网络协议的通俗理解,socket,http,soap。

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来我花了一些时间去了解这些网络协议,现在对TCP/IP网络 ...

  7. Delphi开发环境中应用层网络协议的实现

    已经进入Internet网络时代了,许多新出的软件都拥有网络功能.其实,在这些软件背后所依靠的技术基础就是一系列的Inernet网络协议标准,亦即TCP/IP系列协议. 下面本人简要介绍一下在Delp ...

  8. 网络协议入门(OSI七层和TCP/IC四层协议)

    Android网络知识 Android作为一个移动端操作系统,是一定会涉及到网络知识的,会用不是我们的目标,深入了解其中的原理才是能让我们提升的根本. 1.关于网络传输 首先,在互联网中任何的数据传输 ...

  9. 基于UDP/TCP的网络协议(端口分配)

    每一个应用层(TCP/IP参考模型的最高层)协议一般都会使用到两个传输层协议之一: 面向连接的TCP传输控制协议和无连接的包传输的UDP用户数据报文协议. 运行在TCP协议上的协议: HTTP(Hyp ...

最新文章

  1. mysql sae_新浪SAE的mysql与百度SAE的代码区别?
  2. 网络协议 9 - TCP协议(下):聪明反被聪明误
  3. 分布式锁三种实现方式(DB,redis,zookeeper)比较
  4. 剑桥毕业之后创业的可能的在商学院的出路
  5. 使用DataSet对象添加记录
  6. 贪心/栈 - 去除重复字母
  7. 执行终端Ubuntu中-lz编译错误的解决
  8. amoeba mysql proxy_mysql proxy amoeba安装配置
  9. mongodb 下载地址,mongodb.dll 下载
  10. 平均薪资 38.4 万!3 步教你成为区块链开发者,收好这份学习指南!
  11. 贪心 FZU 2013 A short problem
  12. 电商项目面试题 及mysql面试题 太难没啥用
  13. linux查看app路径下文件卡死
  14. Eclipse-导入maven项目
  15. js基础-5-数据类型,作用域,优先级
  16. php意外进程退出,php FastCGI 进程意外退出 错误解决方法
  17. 快学scala下载[pdf] pdf转doc java提取pdf(forty day)
  18. TBS1237 1/4 扫 48 通道 LED 背光驱动芯片
  19. 数据库设计经验谈之一
  20. 数据流—DataStreamAPI

热门文章

  1. 【VBA研究】输出PDF文件合并时出错
  2. 管理学生营养餐很重要
  3. 详细分析:摄像头像素为何不是越高越好
  4. 柠檬浏览器 for linux,柠檬浏览器app官网下载_柠檬浏览器最新官网下载_18183软件下载...
  5. webpack打包命令报错显示无法加载文件——解决办法
  6. 谷歌账号注册时中国大陆手机号无法验证,“此电话号码无法用于进行验证”快速解决。2023年新方法
  7. h5在twitter里登陆功能使用体验
  8. python虚函数_虚函数和纯虚函数的区别
  9. apktool 用法命令详解
  10. rabbitmq用户及vhost配置