07-数据链路层,以太网

1.关于以太网
以太网:Ethernet 当今主导地位的局域网组网技术(只与物理层数据链路层有关)
令牌环网、FDD环网之类的基本上淘汰了;
0
 
以太网的发展史:
  • 20世纪70年代,由Xerox公司联合Intel和DEC公司开发出以太网
  • 1973年,传输速率3Mb/s
  • 1980年,传输速率10Mb/s
  • 1990年,出现双绞线介质的以太网
  • 1992年,传输速率100Mb/s
  • 1998年,传输速率1000Mb/s
  • 2010年,IEEE发布40G/100G标准
  • 2013年,400G的以太网标准工作正式启动!
 
以太网的分类:
类型
支持速率/模式
需不需要冲突检测CSMA/CD技术
DIX以太网
10Mbit/S以太网
需要CSMA/CD
IEEE802.3
10Mbit/S以太网
需要CSMA/CD
IEEE802.3u
100Mbit/S以太网
可以选择使用CSMA/CD
IEEE802.3z
1Gbit/S以太网
可以选择使用CSMA/CD
IEEE802.3ae
10Gbit/S以太网
不需要CSMA/CD
IEEE802.3ba
40/100Gbit/S以太网
不需要CSMA/CD
IEEE802.3x
全双工
不需要CSMA/CD
 
0
  • CSMA/CD载波侦听多路访问/冲突检测技术:用来避免在同一共享介质出现信号冲突的技术。
  • 工作流程:发前先听,变发边听,冲突停发,计算后重发
 
2.数据链路层的分层设计
 
0
 
0
在数据链路层定义了两个子层:LLC层和MAC层
LLC
Logical link control 逻辑链路控制
负责识别网络层的协议类型并对网络层的数据进行封装
向下层传递
MAC
Media access config 介质访问控制
负责控制物理层设备
处理硬件设备的物理寻址、定义网络拓扑及数据帧的传递顺序
 
 
3.以太网的帧结构
0
IEEE802.3是Ethernet的前生,目前基本未使用
 
1)Ethernet帧结构
0
 
中括号[a/b]:a表示当前字段前面累计的字节数,b表示当前字段的字节数
0
协议类型
代表上层的协议 (IP=0*0800 ARP=0*0806 IPv6=86DD )
帧大小范围
64B~1518B
MTU
最大传输单元,每次发送数据的最大值(默认为1500B,大于或小于该值的数据帧都有问题)
帧校验
通过一定的计算公式来对数据包的完整性检查
MAC地址
代表一个网络接口的物理地址,全球唯一
2)帧的大小范围
 帧大小范围为64~1518B,是根据数据的46~1500B加上其他字段的总大小计算出来的范围;
实际上可能有小于64B的帧,这种帧一般会有问题的;
0
例如:
 
 3)帧校验
帧校验是指对数据包括包头的校验;
发送方发送数据前通过一定的公式对数据包进行计算,得到一个值,保存在帧最后4位中;
更改帧任何一个字段的值得到的计算结果都不同;
接收方收到数据帧后,也会按公式计算,如果得到的值和帧校验值不同则表示数据错误,丢弃该帧;
一个帧中很多协议包头都有自己的校验:例如IP、TCP中都有自己的校验和字段,用来做校验
0
FCS帧校验序列 4B:用来检测数据的完整性,不完整的会被之间丢弃(不会重传,靠上层实现重传)
 
4)MAC地址
mac地址总厂48位二进制,一般用16进制表示;
前24位代表厂商,可以查oui文档来确定具体厂商;
0
前24位是IEEE电气和电子工程师协会分配给厂商,后24位是厂商分配的用户
 
0
 
4.数据帧的接收和发送
收到数据时,会由低层到高层解封装;
首先会看都数据链路层的以太网包头;
以太网包头的第一个字段是目的地址,也就发送方目的Mac地址,也就是接收方自己的mac地址;
也就是说,对接收方而言:对一帧数据解封装时,如果看到的目标地址和自己的网卡mac地址一样时才会接收,然后做校验和验证,继续向下一层解封装;
例如:
    在ping一个地址时:封装成数据帧;
    这里有一个问题:
        源地址时自己的mac地址,源ip是自己的ip,目标ip是dns服务器告诉的;
        但是无法知道目标的mac地址;这需要通过ARP协议来获取;
0
主机接收到数据帧的动作:
    1.检测FCS,通过下一步(反则丢弃)
    2.检测DMAC,通过交给上层(反则丢弃)
 
 
 
posted @ 2020-11-30 15:39  L丶银甲闪闪  阅读(180)  评论(0编辑  收藏  举报