文章目录
- 一.数据链路层简介
- 二.MAC地址
- 为什么有了ip地址,我们还要使用mac地址呢?
- 三.以太网
- 什么是以太网
- 以太网封装帧格式
- 认识MTU
- 谈谈 MTU对IP协议的影响.
一.数据链路层简介
- 数据链路层的位置和角色:位于物理层和网络层之间,负责实现两个直接相连的节点(主机/路由器)之间的可靠数据传输。
- 数据链路层协议的类型:ARP, PPP, HDLC, Frame Relay等
- 数据链路层的数据单元:以太网使用的帧结构,它包含源/目的MAC地址,协议类型,数据和FCS等字段。
二.MAC地址
mac地址的结构如下:
- MAC地址的作用:用于标识网络设备的物理地址,用于在本地网络进行通信。
- MAC地址的表示方法:48位长度,6组16进制数,如AA-BB-CC-DD-EE-FF。
- MAC地址的分类:单播/组播/广播地址。
看了上面的列举,大家又会冒出一个问题
为什么有了ip地址,我们还要使用mac地址呢?
- IP地址用于在网络层标识主机,用于路由选择和主机与主机之间的通信。MAC地址用于数据链路层,仅用于在同一个局域网中标识主机和通信。
- IP地址需要由网络管理员手动配置或通过DHCP动态获取,MAC地址由网络设备生产商预先配置好,通常不可修改。
- IP地址在网络内不是唯一的,MAC地址在同一个局域网中是唯一的。
- IP地址与网络的物理连接没有直接关系,MAC地址与主机的物理接口直接对应。
- IP数据包交由路由器负责转发,通过查找对应IP地址的路由进行转发。MAC帧只能在同一局域网中通过交换机根据MAC地址进行转发。
- 同一IP地址的主机只要在不同的子网中就不会产生地址冲突。MAC地址在整个网络中需要保证唯一。
因此,在一个网络中同时使用IP地址和MAC地址的原因是: - 实现网络层和数据链路层的地址而隔离。IP地址实现主机在整个网络中的逻辑识别,MAC地址仅用于同一局域网中的主机识别。
- 同一网络或同一子网中的主机使用MAC地址通信,不同网络或子网的主机使用IP地址经路由器转发通信。
- IP地址需要人工配置并可能发生变化,但MAC地址由设备指定并固定不变,用于终端识别。
- 增强网络的安全性,通过MAC地址过滤可以限制客户端访问或者绑定其访问的专用资源。
综上,IP地址和MAC地址虽然都用于标识网络主机,但工作在不同的层次并有不同的特性。理解两者的差异和对应关系,可以帮助我们更好地认知网络体系结构和机制。这也是网络工程师必备的基础知识。
三.以太网
什么是以太网
以太网是一种常见的局域网(LAN)技术,最初是由美国计算机公司Xerox、Intel和Digital Equipment Corporation(DEC)共同开发的。它采用了一种称为CSMA/CD(Carrier Sense Multiple Access/Collision Detection,载波侦听多路访问/冲突检测)的访问控制协议,允许多台计算机共享同一条物理传输介质(例如电缆或光纤)。
以太网的工作原理是:当一台计算机需要发送数据时,它会先侦听物理介质上是否有其他计算机正在发送数据,如果没有,则该计算机可以开始发送数据。如果同时有多台计算机发送数据,就会产生冲突,此时所有计算机都会停止发送数据,并在随机的一段时间后重新尝试发送。这种冲突检测机制可以有效地防止数据包的碰撞和丢失,从而提高网络传输的效率和稳定性。
以太网封装帧格式
- 以太网标准:802.3,10Mbps,100Mbps,1000Mbps,10000Mbps等。
- 以太网帧结构:目标地址,源地址,长度/类型,数据,FCS等字段。
- 以太网传输方式:广播,确认,不确认,全双工,半双工。
- 以太网设备:交换机,集线器,网卡等。
- CSMA/CD机制:以太网上用于避免数据帧碰撞的机制,通过监听来检测碰撞并在有碰撞时延迟一定时间后重传。
认识MTU
MTU(Maximum Transmission Unit)最大传输单元,它指定一个网络接口可以处理的最大数据包大小。
如果承载的数据,长度超过MTU,就会在IP层进行分包,使每个分出来的结果,都能在MTU之内.
大概的流程如下
谈谈 MTU对IP协议的影响.
MTU对IP协议具有重要影响,主要表现在以下两个方面:
1.数据包分片
当一个IP数据包的大小超过了网络链路上的MTU时,数据包将被分割成多个较小的数据包进行传输,这个过程被称为数据包分片。分片会增加网络传输的延迟和负担,并且在接收端需要重新组装数据包,会占用更多的CPU和内存资源。因此,过大的MTU会导致数据包分片的频率增加,影响网络传输的效率和稳定性。
2.链路层协议
MTU的大小也会影响链路层协议的选择和设置。例如,以太网的MTU大小为1500字节,如果IP数据包的大小超过了1500字节,就需要进行分片。而对于其他类型的网络链路,MTU的大小可能会有所不同,需要根据实际情况进行设置。在进行网络配置时,需要选择合适的链路层协议,并设置合适的MTU大小,以确保网络通信的稳定和高效。
具体的流程如下: