1、以太网两个逻辑
2、以太网诞生以太网设备发展和链路物理介质速率提升
开始以同轴电缆作为网络媒体,采用载波多路访问和冲突检测(CSMA/CD )机制,传输速率10Mbps
以太网原理-----CSMA/CD
CSMA/CD—载波侦听多路访问/冲突检测,是一种在共享介质条件下多点通讯的有效手段,其基本规则如下:
(1)若介质空闲,传输;否则,转2);
(2)若介质忙,一直监听到信道空闲,然后立即传输;
(3)若在传输中测得冲突,则发出一个短小的人为干扰(jamming)信号,使得所有站点都知道发生了冲突并停止传输;
(4)发完人为干扰信号,等待一段随机的时间后,再次试图传输,回到1)重新开始。
- CS:载波监听
发送数据之前进行监听,确保线路空闲,减少冲突机会
- MA:多址访问
每个站点发送的数据,可同时被多个站点接收
- CD:冲突监测
3、以太网帧结构边发送边检测,发现冲突就停止发送,然后延迟一个随机时间之后继续发送
(冲突监测方式:由于两个站点同时发送信号,经过叠加后,会使线路上电压的摆动值超过正常值的一杯,由此判断冲突)
3.1基本帧结构
DMAC代表目的终端的MAC地址,SMAC代表源MAC地址,而LENGTH/TYPE字段长度是2字节,则根据值的不同有不同的含义:当LENGHT/TYPE> 1500时,代表该数据帧的类型(比如该帧是属于哪个上层协议的数据单元),当LENGTH/TYPE <1500时,代表该数据帧的长度(802.3,不太常用?)。DATA/PAD则是具体的数据,因为以太网数据帧的最小长度必须不小于64字节(根据半双工模式下最大距离计算获得的),所以如果数据长度加上帧头不足64字节,需要在数据部分增加填充内容。
当LENGTH/TYPE取值大于1500的时候,MAC子层可以根据LENGTY/TYPE的值直接把数据帧提交给上层协议,这时候就没有必要实现LLC子层。这种结构便是目前比较流行的ETHERNET_II,大部分计算机都支持这种结构。注意,这种结构下数据链路层可以不实现LLC子层,而仅仅包含一个MAC子层。
根据LENGTH/TYPE字段的取值,来把接收到的数据帧提交给上层协议模块,是这样进行的:每个上层协议都提供了一个回调函数,这个回调函数在数据链路层是可见的而且可以调用的,这样当数据链路层接收到一个数据帧之后,根据数据帧里的LENGTH/TYPE字段的取值来判断相应的协议模块,然后调用相应协议的回调函数(把数据帧的数据部分作为参数),该回调函数执行的结果就是把数据帧的数据部分挂到上层协议的接收队列中,然后给上层协议发送一个消息,告诉上层协议有一个数据包到来,然后返回,其他的事情就有上层协议来做了
FCS则是帧校验字段,来判断该数据帧是否出错。
3.2 最小帧长和最大传输距离
最小帧长:
由于C S M A / CD算法的限制,以太网帧必须不能小于某个最小长度。高层协议要保证这个域至少包含4 6字节。如果实际数据不足46个字节,则高层协议必须执行某些(未指定)填充算法。数据域长度的上限是任意的,但已经被设置为1 5 0 0字节。
规定最小帧长的原因: