数据链路层与以太网
以太网: Ethernet ,当今主导地位的局域网组网技术
在我们组网时所用到的二层技术都是以太网技术。 它并不是一个协议。
以太网的发展:
- 20世纪70年代,由Xerox公司联合Intel和DEC公司开发出以太网
- 1973年,传输速率3Mb/s(实验室)
- 1980年,传输速率10Mb/s
- 1990年,出现双绞线介质的以太网1992年,传输速率10OMb/s
- 1998年,传输速率100OMb/s
- 2010年,IEEE发布40G/100G标准
- 2013年,400G的以太网标准工作正式启动!
- 目前的接入基本都是100Mb/s,甚至千兆。
我们接触的设备,交换机、光模块、网卡等等都是以太网设备
以太网的标准:
以太网(网络)标准图:
这些在当时开发以太网技术时,当时的标准的名字。
每个标准对应的速率不一样,其中千兆、万兆有两个标准,分别是用于双绞线(UTP)与光纤(Fiber)。而对应的接口名称都是ethernet,其中千兆的就是Gigabit Ethermet,缩写Gig E。
每种标准都会有距离限制,在超过该距离后,信号就会衰减,导致带宽降低。
光纤分为单模与多模,带S的就是单模,比如 SMF、SMP。多模的则是不带S带M,MMF。单模造价、成本、传输距离等方面都会比多模的好。高标准的光纤都是单模的,因为越高标准就越需要更高质量。
数据链路层的分层设计:
以太网就是2层,数据链路层,在数据链路层中还有两个子层。,LLC自层,MAC自层。,C子层在上,与在网络层通信,MAC子层在下,负责与物理层通信。
子层 | 备注 |
---|---|
LLC | Logical Link Control,逻辑链路控制 负责识别网络层的协议类型,接收上层数据包封装成帧后,向下层传递 |
MAC | Media Access Control,介质访问控制 负责控制与连接物理层的物理介质 处理硬件设备的物理寻址、定义网络拓扑及数据帧的传递顺序 |
以太网的帧结构:
在数据包封装中,除了添加目标地址,源地址,类型以外,还会在头部前导码、帧起始定界符。尾部添加帧校验序列(FCS)。数据则包含了物理链路层的所有上层数据。
计算二层封装的长度:
二层封装的固定长度是6+6+2+4,总共18个字节。
而数据部分的长度则是不固定的,在二层封装中最少是64字节,最长是1518字节。如果数据部分不足最短的46字节则会进行填充数据,直至46字节。
前导码与帧起始定界符是早期用于防止冲突的,现在抓包已经看不到,总共一共8字节。
而IP协议的头部是20字节,TCP的长度也是20字节。而两个协议加起来40字节,则会添加额外的数据打到46字节。
在流控方面也会有根据数据包长度进行流控
术语 | 备注 |
---|---|
协议类型 | 代表上层的协议,如: 0x0800代表IPv4 |
数据 | 所有上层协议数据 |
MTU | 最大传输单元,默认1500字节, 每次发送的数据的最大值 |
帧校验 | 通过一定的计算公式对数据包进行计算得出的值 |
MAC地址 | 48bit,十六进制表示,代表以太网接口的物理地址,全球唯一 |
抓包中以太网封装中有协议类型 0x0800,代表IPv4。IP协议字段中里有个协议号,所对应的上层协议则是6,而TCP协议报文中有端口号,可以根据端口号判断该服务。
MTU:如果随意调整,会导致不支持该MTU数值的设备将数据帧切割,增加设备资源占用。
帧校验:在收到帧之后会重新计算数据,通过帧校验对比,如果不一致则代表着该数据包有丢失数据或被修改,进行丢弃。
在接收数据帧后,会先看目标MAC是不是自己,如果是则会进行帧校验,比对通过后才会剥离以太网封装,进行下一步解包、
暂无评论内容