目录
前言
进入了公司以后,接下来要进行与公司设备相关的网络知识进行一定的复习和更进一步的深入学习。由于我们公司的设备主要与数据链路层与网络层的知识关系更大,故此特意对这两层的有关知识进行进一步的学习和了解。
数据链路层
1、概念
以TCP/IP为例子,数据链路层从下往上数是位于第二层的。见下图:
简单地说,数据链路层就是为了保证在物理层的基础上提供可靠的传输服务。它负责建立和管理节点间的链路,通过各种控制协议,将可能有差错的物理信道变为无差错的,能可靠传输的数据帧的数据链路。
2、两个子层
数据链路层一般分为两个子层:
(1)逻辑链路控制(LLC):建立和维护网络连接,执行差错校验、流量控制和链路控制。LLC是数据链路层的上层部分。
(2)介质访问控制(MAC):解决共享型网络中多用户对信道的竞争问题,完成网络介质的访问控制。MAC是数据链路层的下层部分。
(让我想起来CSMA/CD,带冲突检测的 载波监听多路访问控制技术)
3、具体工作
(1)封装:将网络层得到的数据根据网络层协议不同进行封装然后转发到物理层。
(2)解封:将物理层得到的比特流数据(其实就是帧数据),进行解封得到包(packet)转发给网络层。
(3)可靠传输:根据对端发送回来的信息判断是否有错误,比如以以太网帧结构为例,若发回的循环冗余校验字段(FCS)有问题则重发。
常用设备
1、网桥(Bridge)
这是交换机的前身,现在由于其自身效率低的缘故已经渐渐退出历史舞台。
2、交换机(Switch)
交换机现在分为二层交换机和三层交换机。
二层交换机
1、工作原理:交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,也就形成了一张属于自己的MAC地址表。在今后的通讯中,通过查MAC表就可以将数据进行快速转发了。
(下面的工作流程参考百度,我觉得写的不错,就放在这里)
具体的工作流程如下,也就是一个自学习的功能:
1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,
这样它就知道源MAC地址的机器是连在哪个端口上的;
2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;
3