博客
关于我
Linux运维之道之网络基础学习1.3
阅读量:792 次
发布时间:2023-02-05

本文共 1181 字,大约阅读时间需要 3 分钟。

网络基础1.3

数据链路层解析

数据链路层位于物理层与网络层之间,是OSI模型中最下面的层。它负责实现与物理层的通信,完成数据的帧传输、帧同步以及帧差错检测等功能。

数据链路层的功能

  • 数据链路的建立、维护与拆除
  • 帧包装、帧传输与帧同步
  • 帧的差错恢复
  • 流量控制
  • 以太网概述

    以太网是我们日常使用的局域网技术,主要工作在数据链路层。以太网的核心设备是交换机,通过MAC地址实现节点间的通信。

    以太网MAC地址

    MAC地址用于识别以太网上的设备或设备组。它由48位二进制组成,通常表示为六个冒号分隔的双字节。

    802.3以太网帧格式

    以太网帧格式包含以下字段:

    • 帧头:包含目标MAC地址和源MAC地址。
    • 地址位:用于标识帧中包含多个地址的情况。
    • 长度/质量位:用于标识帧的长度及是否存在错误。
    • 数据字段:包含实际数据。
    • 循环校验码(FCS):用于检测帧是否完整且数据无误。

    数据链路层的两个子层

    数据链路层可以划分为两个子层:介质访问控制子层(MAC)逻辑链路控制子层(LLC)

    介质访问控制子层(MAC)

    MAC子层的主要功能包括:

  • 将上层交下来的数据包装成以太网帧进行发送。
  • 实现和维护与物理介质通信的协议。
  • 执行比特差错检测。
  • 管理MAC地址表,实现节点间的寻址。
  • 逻辑链路控制子层(LLC)

    LLC子层的功能包括:

  • 建立和释放数据链路层的逻辑连接。
  • 提供与上层网络层的接口。
  • 为帧添加序号,支持流量控制。
  • 以太网交换机

    以太网交换机是局域网中的核心设备,负责数据帧的转发。其工作原理基于MAC地址表来实现数据的智能转发。

    交换机的工作原理

  • MAC地址学习:通过接收数据帧,学习目标设备的MAC地址并更新MAC地址表。
  • 广播未知数据帧:如果目标MAC地址未在表中,向所有端口广播数据帧。
  • 接收方回应:接收到广播的设备会向交换机发送回应信息。
  • 单波通信:根据MAC地址表完成数据帧的单波转发。
  • MAC地址表的更新

  • 老化时间:MAC地址表的老化时间通常为300秒。
  • 动态更新:当交换机接收到来自不同端口的帧时,会重新学习目标MAC地址。
  • 单工、半双工、全双工

    单工

    • 只有一个信道,数据传输方向单向。

    半双工

    • 同一信道,数据传输方向单向。

    全双工

    • 具有双信道,支持双向数据传输。

    冲突处理

    • 在多个设备共享同一信道时,可能会产生冲突。
    • 交换机通过分割冲突域(背板交换矩阵结构)实现全双工通信,避免冲突。

    广播域与冲突域

    • 广播域:接收到同一广播消息的所有节点集合。
    • 冲突域:在以太网中,交换机分割冲突域但不分割广播域。

    交换机的内部交换方式

    存储转发

    • 最常用方式,支持错误检测,但延迟较大。
    • 适用于不同速率端口间的数据转换。

    快速转发

    • 延迟小,但不支持错误检测。
    • 适用于对延迟敏感的场景,但易丢包。

    分段过滤

    • 检查数据包长度是否为64字节(以太网帧),丢弃短包或假包。

    转载地址:http://uhkfk.baihongyu.com/

    你可能感兴趣的文章
    Linux 常用命令之cat、tac、nl
    查看>>
    linux 根目录扩容
    查看>>
    Linux 环境下将 ASM 磁盘映射到物理磁盘的完整指南
    查看>>
    Linux 进程间通信 --- 信号通信 --- signal --- signal(SIGINT, my_func); --- 按键驱动异步通知...
    查看>>
    linux 配置 skywalking
    查看>>
    linux 防火墙操作
    查看>>
    Linux--gdb/cgdb
    查看>>
    linux--make/进度条
    查看>>
    Linux--NFS和DHCP服务器
    查看>>
    Linux--进程状态
    查看>>
    Linux-服务器远程控制
    查看>>
    Linux/CentOS设置全局代理(http)
    查看>>
    Linux_ERROR 1045 (28000): Access denied for user 'root'@'localhost'
    查看>>
    Linux_服务器_01_查看公网IP
    查看>>
    Linux——gcc编译器
    查看>>
    Linux——静态库
    查看>>
    Linux上运行Nacos服务出现报错及解决方法
    查看>>
    linux下svn修改用户名和密码
    查看>>
    Linux下tar bz gz等压缩包的压缩和解压【转自www.bitsCN.com】
    查看>>
    linux下vi编辑器使用方法
    查看>>