数据帧的学习整理

数据帧的学习整理事先声明,本文档所有内容均在本人的学习和理解上整理,不具有权威性,甚至不具有准确性,本人也会在以后的学习中对不合理之处进行修改。在了解数据帧之前,我们得先知道OSI参考模型咱们从下往上数,数据帧在

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

事先声明,本文档所有内容均在本人的学习和理解上整理,不具有权威性,甚至不具有准确性,本人也会在以后的学习中对不合理之处进行修改。

在了解数据帧之前,我们得先知道OSI参考模型

数据帧的学习整理

咱们从下往上数,数据帧在第二层数据链路层处理。我们知道,用户发送的数据从应用层开始,从上往下逐层封装,到达数据链路层就被封装成数据帧。接下来,帧格式

Ethernet_II帧格式

数据帧的学习整理

 D.MAC:Destination Mac,顾名思义,目的mac地址,该字段长6字节,存放接收方的mac地址。

 S.MAC:Source MAC,源mac地址,该字段长6字节,存放发送方mac地址。

 Type:类型字段。用来标识上一层(网络层)的协议。字段值为0x0800表示上层协议为IP协议,字段值为0x0806表示上层协议是ARP协议。该字段长2字节。

 Data:该字段是来自网络层的数据,在整理数据包时会提到。该字段最少为46字节,最大1500字节。

 FCS:循环冗余校验字段,用来对数据进行校验,如果校验结果不正确,则将数据丢弃。该字段长4字节。

IEEE802.3帧格式
数据帧的学习整理
 Length:长度字段,定义Data字段的大小。
 LLC:Login Link Control 逻辑链路控制协议,它里面包含三个字段
  ①D.SAP/S.SAP  Destination/Source Service Access Point 目的/源服务访问点。SAP提供多个高层协议进程共用一个LLC层实体进行通信的机制。字段值不同代表不同帧类型
  ②Control  控制字段,定义LLC帧的类型:信息帧(I帧)、监控帧(S帧)和无编号帧(U帧)
 SNAP:Sub-network Access Protocol 子网访问协议。其中的Org Code字段设置为0,Type字段即封装上层网络协议,同Ethernet_II帧。
 
数据帧在网络中传输主要依据其帧头的目的mac地址。当数据帧封装完成后从本机物理端口发出,同一冲突域中的所有PC机都会收到该帧,PC机在接受到帧后会对该帧做处理,查看目的MAC字段,如果不是自己的地址则对该帧做丢弃处理。如果目的MAC地址与自己相匹配,则先对FCS进行校验,如果校验结果不正确则丢弃该帧。校验通过后会产看帧中的type字段,根据type字段值将数据传给上层对应的协议处理,并剥离帧头和帧尾(FCS)。
 
MAC地址
  MAC地址是唯一标识一台设备的序列号,和人的身份证类似,具有唯一性和标识性。一个MAC地址由48个比特位,一般按16进制表示。一般主机发送数据帧有三种方式:单播、组播、广播。三种发送方式的帧的D.MAC字段有些区别。单播时,MAC地址的第一个字节的第8个比特位为0;组播时,第一个字节的第8个比特位为1;广播时,48个比特位全为1,即表示为FF-FF-FF-FF-FF。
 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167233.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • windows10命令行进入指定目录_命令行返回上一级目录

    windows10命令行进入指定目录_命令行返回上一级目录假定我们想进入指定目录E:\Software\apache-tomcat\apache-tomcat\bin在命令行输入cdE:\Software\apache-tomcat\apache-tomcat\bin+回车发现……啊哦没反应改为先输入E:+回车再输入cdSoftware\apache-tomcat\apache-tomcat\bin+回车问题解决…

    2022年10月15日
    5
  • Python3列表_python tuple

    Python3列表_python tuple列表列表特点:是一种序列结构,与元组不同,列表具有可变性,可以追加、插入、删除、替换列表中的元素新增元素appendappend添加一个对象,可以是任意类型a=['zhangsa

    2022年7月31日
    8
  • winscp的root连接ubuntu“拒绝访问”的解决方法

    winscp的root连接ubuntu“拒绝访问”的解决方法问题如上所示。解决:1、修改ssh配置文件:vimetc/ssh/sshd_config在#PermitRootLoginwithout-password此行下新增一行:PermitRootLoginyes保存退出。2、重启sshservicesshrestart3、重新用root账户登陆,输入密码,成功登陆。…

    2025年12月9日
    3
  • 如何完全删除sql2012_如何完全删除mysql

    如何完全删除sql2012_如何完全删除mysql更新文章:由于楼主是在2017年写的内容,当时理解问题不深,可能就是稀里糊涂地解决掉了这个问题,把一些没有与SQL相关的东西都删除了,但那时并不影响到其他程序的运行状况。现如今更新下文章,为避免误导大家进行误删一些东西而存在其他问题的隐患。—感谢一位小伙伴的提醒。—更改时间:2019年3月19日工作忙,没能及时回复大家,请谅解!!卸载方法多种,但是通常会有卸载数据库不干净的情况。虽…

    2022年10月2日
    5
  • js 双向绑定数据

    js 双向绑定数据

    2021年6月13日
    114
  • 用stringstream读取数据「建议收藏」

    用stringstream读取数据「建议收藏」思想:全部读到一个字符串里,遇到”,”就换成空格,然后用这个字符串构造一个stringstream,用>>读到数组里。stringstream用法分为istream和ostringstream.1std::stringname(“zeta”);2intage=27;34ostringstreamos;5o

    2022年5月3日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号