花瓣小跑 发表于 2025-4-4 10:33:32

Linux网络:数据链路层&以太网

熟悉数据链路层

数据链路层 位于物理层和网络层之间,其作用是将源自物理层来的数据可靠地传输到相邻节点的目的主机的网络层,重要通过物理介质(如以太网,Wi-Fi等)将数据分割成帧,并在相邻节点之间举行传输。


[*]主机:配有IP地址,但不举行路由控制的设备
[*]路由器:既配有IP地址,又能举行路由控制、
[*]节点:主机和路由器的统称
[*]链路(Link):一个节点到另一个相邻节点的一段物理线路,中间没有任何其他节点。

[*]链路由传输介质和物理设备构成,传输介质重要有双绞线,光纤,微波。在两个节点举行通讯的时间,链路只是一条完整通讯路径的一部分

[*]数据链路(Data Link):把实际控制数据传输协议的硬件和软件加到链路上就构成了数据链路
   增补:报文在传输层叫数据段(Segment),在网络层叫数据报(Packet),在数据链路层叫做数据帧(Frame)
数据链路层的功能如下:


[*]封装成帧:将网络层交付下来的数据报封装成帧,每个帧包含了控制信息(如起始标志,目的MAC地址,源MAC地址等)和数据部分
[*]物理地址寻址:通过物理地址(MAC地址)来唯一标识网络中的设备,在数据链路层中利用MAC地址举行寻址和转发
[*]媒体访问控制:在共享介质的网络中,数据链路层利用媒体访问控制协议(如CSMA/CD,CSMA/CA等)来协调多个节点之间的传输,制止冲突和碰撞
[*]差错查抄与重传:数据链路层负责检测和纠正传输过程中可能发生的位错误,通过差错查验码(如循环冗余校验码CRC)来实现
[*]流量控制:数据链路层通过流量控制机制,确保发送方和吸收方之间的数据传输速率匹配,制止数据丢失或溢出
[*]链路管理:数据链路层负责创建,维护和开释链路链接,包罗链路的创建,终止,确认以及链路状态的管理
数据链路层的协议有许多种,常见的有以太网(Ethernet),无线局域网(Wi-Fi)和点对点协议(PPP)等。不同协议实用于不同的网络环境和需求
关于以太网

1. 根本概念

“以太网”不是一种具体的网络,而是一种技能尺度,既包含了数据链路层的内容,也包含了一些物理层的内容。例如:规定了网络拓扑结构,访问控制方式,传输速率等


[*]例如以太网中的网线必须利用双绞线,传输速率有10M,100M,1000M等
[*]以太网是当前应用最广泛的局域网技能;和以太网并列的另有令牌环网,无线LAN等
2. 以太网帧格式

https://i-blog.csdnimg.cn/direct/25c2d0b6b0214e5b85566565d9151f00.png
字段解释目的地址目的MAC地址源地址源MAC地址帧类型有效载荷的类型,0800表示IP数据报,0806表示ARP哀求应答,0835表示RARP哀求应答PAD以太网帧数据不能少于46不能大于1500字节,否则就要添加PAD就是随机值帧末尾CRC 校验码 两个结论:
① 报头和有效载荷怎样分离?
 MAC帧的报头是固定长度,即前14字节为报头,后续为有效载荷
② 有效载荷怎样向上交付?
 根据报头的类型字段,0800 代表IP协议;0806 代表ARP哀求/应答;0835 代表RARP哀求/应答。以此交付对应的上层
3. MAC vs IP

https://i-blog.csdnimg.cn/direct/b2e3bdcedde74e3690c2fc11cf4038cb.png
MAC地址和IP地址的区别
1、范围、层次及利用


[*]MAC地址是在局域网(子网,内网)范围内唯一标识设备的地址,一样平常只能在同一局域网内举行通讯(寻址 和 转发),例如:以太网的数据链路层利用MAC地址举行设备之间的通讯
[*]IP地址可以在广域网(公网,外网)范围内唯一标识设备的地址,可以在不同的网络中举行通讯(跨网络通讯 和 路由选择),例如:在因特网中的网络层利用IP地址举行主机之间的通讯
在路由转发的过程中,IP地址形貌的是路途总体的起点和尽头,MAC地址形貌的是路途上的每一个区间的起点和尽头
2、分配方式


[*]MAC地址由网卡厂商分配,通常是固定的,与设备绑定,一样平常环境下不会改变
[*]IP地址由网络管理员分配,可以是静态分配或动态分配(如DHCP),可以根据需要举行更改
证明如下:
https://i-blog.csdnimg.cn/direct/e0ed41f999ed4419b6eadaa4a86b4ad5.png
上面如果主机A想访问服务器B


[*]服务器B具有公网IP,以是主机A可以直接利用公网IP举行访问;IP数据报中源IP地址是私有IP——192.168.1.201/24,目的IP地址是公网IP——122.77.241.3/24
[*]但子网的数据要想发到公网,需要路由器根据路由表举行转发。以是要先将数据发给路由器,但IP报文内的目的IP又不能更改为路由器的IP地址,不然后续无法发送到服务器B。以是需要MAC地址,用于局域网(子网)内的数据发送
[*]主机A在MAC帧中,源MAC地址为自己的MAC地址,目的MAC地址为路由器的MAC地址,发送数据
[*]路由器收到主机A的数据帧,解包查看IP地址,发现不是给自己的,再根据路由表举行路由转发,途中可能还需要经过许多个路由器,利用的也是MAC地址,路由转发其实就是在多个局域网间跳转。
结论:MAC地址用于局域网内通讯,IP地址用于广域网通讯,即起点和尽头

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Linux网络:数据链路层&以太网