• 以太网的帧结构


    以太网的帧结构分两种:
    第一种是Ethernet_II的帧结构,如下图所示:

    DMAC:指(destination mac)目的地址,即是接收信息设备的物理地址。
    SMAC:指(source MAC)源地址,即是发送信息设备的物理地址。
    Type:用来标识data字段中包含的高层协议,即是通告接收信息的设备如何解释该数据字段(数据的封装
    都是从应用层到低层逐渐添加的,在数据链路层以上的数据都封装在了data字段中)。其中:(1)IP协议帧
    该字段为0800(2)ARP协议帧该字段为0806(3)RARP协议帧该字段为0835(4)IPX和SPX协议帧该字段
    为8137。
    Data:数据字段,上层下到本层的数据都被包含到了这里面。前面讲到,它必须大于46字节,但必须小
    于1500字节。
    CRC:( Cyclic Redundancy CHeck)即是循环冗余校验字段。发送数据的设备会提供一个包含MAC字段、Type
    字段、Data字段的CRC码,然后计算出CRC码填入到该处,起到错误检测控制的功能。
    第二种是IEEE802.3的帧结构,如下如所示:

    DMAC、SMAC、Data和CRC字段不再赘述。
    这种帧结构用length字段替代了type字段,并从Data字段中划出了3byte作为LLC字段,作为服务访问点
    (SAP)的新区域来解决识别上层协议的问题。
    Length:即是长度字段,记录Data字段的长度。
    LLC:由目的服务访问点DSAP(Destination Service Access Point)、源服务访问点SSAP(Source Service
    Access Point)和Control字段组成。
    两种帧格式应用情况:
    现在大多数TCP/IP设备都使用Ethernet _II的帧格式。由于大规模使用的TCP/IP系统(4.2/3 BSD UNIX)的
    出现时间介于RFC 894和RFC 1042之间,为了兼容老设备而采用了RFC 894的实现,所以802. 3标准并没有
    如预期那样得到普及。

  • 相关阅读:
    一个网络传输框架——zeroMQ 调研笔记
    Node.js的cluster模块——Web后端多进程服务
    boost::spirit unicode 简用记录
    HTTP的长连接和短连接——Node上的测试
    MongoDB 驱动以及分布式集群读取优先级设置
    Lua知识备忘录
    MongoDB使用小结:一些常用操作分享
    此项目与Visual Studio的当前版本不兼容的报错
    @Controller和@RestController的区别
    SQLSERVER中计算某个字段中用分隔符分割的字符的个数
  • 原文地址:https://www.cnblogs.com/cyrusxx/p/12562839.html
Copyright © 2020-2023  润新知