zoukankan      html  css  js  c++  java
  • 对TCP/IP协议的一些看法(15):应用层协议

    数据包从A传到B,其实是从A的应用层传到B'de应用层,因为我们用户不会去关注底层的数据包是怎么传输的,我们只要知道两者之间是否连通。因此可以说应用层是最接近用户的。首先介绍一下应用层的一个重要信息——端口。

    每个应用程序都有一个端口,接收方根据端口号将数据包传递给正确的应用程序。一般端口号小雨256的定义为常用端口,0~1023的端口都被系统所占用,所以用户只能使用大于1023的端口。比较著名的应用层协议所占的端口为FTP占据21端口,HTTP占据80端口,TELNET占据23端口,SSH占据22端口等。平时我们说某某端口被封掉了,只是在IP层把带有这个IP号的IP数据包给过滤了。

    上述著名的应用层协议还包括SNMP和SMTP,对他们的介绍可以参考其它文章,这里主要介绍下两个不常使用,但比较重要的应用层协议。

    1.bootp协议:当一台无盘计算机加电后,它会向网络广播一个bootp请求包,一个bootp服务器在收到这个请求后,从客户机的bootp文件中查找这个MAC地址(存在于bootp请求中),若找到相应的项目,就做出响应,告诉该机的IP地址及应该使用的引导文件。所以bootp又称为引导程序协议。

    bootp协议是一种基于UDP/IP的协议,可以让无盘站从一个中心服务器上获得IP,为局域网内的无盘工作站分配动态IP,包括了bootp请求包和bootp应答包。最后bootp服务器使用的端口为67,客户机使用的端口为68。

    2.tftp协议:tftp又称为简单文件传输协议,由于其传输的都是小数据,因此也是基于UDP/IP协议。它的工作原理如下:发送完一个文件块后就等待对方的确认,确认时应指明所确认的块号。发送完数据后若在规定时间内收不到确认报文就重发数据PDU,发送确认PDU的一方若在规定时间内收不到下一个文件块,也要重发确认PDU。

    总的来说,确定一次通信包括源端IP、目的IP、源端口号、目的端口号和协议号。

  • 相关阅读:
    ORACLE NOLOGGING研究
    由2013星光大道总决赛同步程序猿怎样成功?
    configure: error: mysql configure failed. Please check config.log for more information.
    The 2014 ACM-ICPC Asia Mudanjiang Regional Contest(2014牡丹江区域赛)
    about service in android
    极客标签互动课程系列 - Javascript生成SVG动画素描特效
    sql -- 移除数据中的换行符和回车符
    前端project师必需知识点
    spring装配集合
    【java项目实践】具体解释Ajax工作原理以及实现异步验证username是否存在+源代码下载(java版)
  • 原文地址:https://www.cnblogs.com/elninohjh/p/4252707.html
Copyright © 2011-2022 走看看