计算机网络中的常用表项梳理

核心表项对比

表项

全称

工作层级

主要功能

涉及设备

典型生命周期

MAC表

媒体访问控制表

数据链路层(二层)

Mac地址和端口关系

交换机、网桥

动态学习

FDB表

转发数据库

(Forwarding DataBase)

数据链路层(二层)

Mac地址与端口关系,一般还包括vlanId

交换机、网桥

动态学习(默认5分钟)

ARP表

Address Resolution Protocol

地址解析协议表

网络层与数据链路层之间(二层和三层间)

Ip地址和mac地址的关系

主机、路由器

动态(通常2-20分钟)

路由表

Routing Table

网络层(三层)

存储目标网络与下一跳的映射关系

路由器、三层交换机、主机

静态或动态更新

详细解析

MAC表 & FDB表

事实上mac表和fdb表广义上可以说是一个东西,大多数情况下都是指代的同一个东西。狭义上的区别是mac表只有mac地址和端口关系,而fdb表则包含了vlanId信息。

因为fdb表包含更多的信息,所以现在业务上一般都使用包含了vlanId的fdb表。

那么这两个表项用来干嘛的?

主要是二层间数据转发时候使用,目标地址为mac,通过该表找到对应mac所在的端口,进一步将报文通过该端口转发发去。

这里需要提一下dot协议:

Dot1d:即 IEEE 802.1D,是 生成树协议(STP, Spanning Tree Protocol) 的标准,用于防止网络中的环路,确保冗余链路环境下数据帧的无环转发。

Dot1q:即 IEEE 802.1Q,是 VLAN 标签(VLAN Tagging) 的标准,用于在以太网帧中插入 VLAN 信息,实现虚拟局域网(VLAN)的划分。

特性

802.1D (Dot1d)

802.1Q (Dot1q)

用途

防止网络环路(STP)

VLAN 标签(Trunking)

工作层次

数据链路层(L2)

数据链路层(L2)

依赖关系

不依赖 VLAN

依赖 VLAN 环境

帧格式

不修改帧结构

在以太网帧头插入 4 字节 VLAN Tag

典型应用

交换机防环

跨交换机的 VLAN 通信

  • Dot1d(802.1D) 解决 环路问题(STP)。
  • Dot1q(802.1Q) 解决 VLAN 跨设备通信问题(Trunking)。

我们在读取mac表(或者说fdb表)信息时,都是读取以上两个信息,一般是优先读取dot1q的表项信息,如果其不存在则读取dot1d表项的信息。

ARP表

       在设备发送ip包出去的时候,此时传输数据只有ip头部,传输到二层需要封装帧头和帧尾,这时候需要查询arp表确定下一跳的mac地址,用于三层ip包封装成二层帧时的地址填充。

       我们来看下网络中数据发送和接受流程中的封装和解封装情况:

封装(Encapsulation):发生在发送端,是自上而下(从高层到低层)的过程

应用数据 → TCP/UDP头部 → IP包头 → 以太网帧头帧尾

解封装(Decapsulation):发生在接收端,是自下而上(从低层到高层)的过程

去掉以太网帧头帧尾 → 解析IP包头 → 处理传输层头部 → 交付应用数据

      

发送端封装流程:

[IP包] → (查询ARP表获得MAC) → [添加帧头] → [完整以太网帧]

            ↑

        需要ARP表

接收端解封装流程:

[完整以太网帧] → [检查MAC] → [去掉帧头] → [IP包]

                        ↓

                    不需要ARP表

       即发送前要封装,封装需要MAC,MAC来自ARP表。

路由表

       决定数据包在三层中的下一跳地址,包括目标网络、子网掩码、下一跳、出接口等信息。

       可以通过静态配置或通过路由协议动态学习,包含管理距离和度量值等路由选择参数,存在于三层设备(路由器、三层交换机)和主机上

       这个表项相对来说我们更常见一点,偶尔会遇到在主机上配置路由的情况,罗列一下对应的命令:

环境

命令

Windows

route print

Linux

ip route show

网络设备(交换机、路由器等)

Show ip route

       另外还有在Windows增加路由的命令,举例如下:
       Windows环境:

       route -p ADD 10.10.5.0 MASK 255.255.255.0 10.10.5.254

       Linux环境:

       route add -net 10.10.5.75 netmask 255.255.255.8 gw 10.10.5.254

ND表

       Ipv6中的邻居发现协议表(neighborhood discovery protocol)

       相当于ipv6协议的ARP表,实现ipv6地址到mac地址的解析。

总结

       数据流转过程中的表项协作:
       1、应用层:主机名解析(host文件/DNS)

       2、网络层:路由表决定出口和下一跳

       3、ARP/ND表:将下一跳ip解析为mac地址

       4、数据链路层:FDB/MAC表决定具体从哪个物理口转发出去

路由表:三层,解决“下一跳去哪”的问题,静态或根据协议更新(如ospf每30分钟刷新)

ARP表:二层和三层间,解决“目标MAC是谁”的问题,20分钟老化 

FDB/MAC表:二层,解决“从哪个口出去”的问题,5分钟老化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/89935.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/89935.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度轮岗:任命新CFO,崔珊珊退居业务二线

文 | 大力财经2025 年 7 月 1 日,百度组织再次变革,崔珊珊退居二线引发的行业关注。百度创始人李彦宏发布的内部信,宣布的新一轮组织调整里,崔珊珊退居二线这一变动,格外引人瞩目。崔珊珊,这位在百度人力资…

TAMPER-RTC(STM32F103) 引脚说明

我来查看ST官方手册中关于TAMPER-RTC引脚的具体说明。 Ran tool Ran tool Ran tool Read file: doc/STM32F103VGT6/STM32F103VGT6_specification.txt Read file: doc/STM32F103VGT6/STM32F103VGT6_specification.txt Ran tool Read file: doc/STM32F103VGT6/STM32F103VGT6_spec…

BUUCTF在线评测-练习场-WebCTF习题[极客大挑战 2019]HardSQL1-flag获取、解析

解题思路 打开靶场、熟悉的感觉 上次是过滤了很多字符,用了双写绕过进行注入即可,这次进阶了难度 先老规矩判断下闭合 11 123 报错提示 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version…

MyBatis动态SQL进阶:复杂查询与性能优化实战

引言 在复杂业务场景中&#xff0c;SQL查询往往需要动态拼接条件、复用代码片段&#xff0c;并支持批量操作。MyBatis的动态SQL功能提供了强大的解决方案&#xff0c;本文将深入解析<choose>条件分支、<sql>片段复用、批量操作优化等核心技巧&#xff0c;助你写出高…

@Transactional 注解失效的场景及原因分析

先分析一下 1&#xff0c;内部调用&#xff0c;原对象调用&#xff0c;不是代理对象调用 2&#xff0c;private方法&#xff0c;源码中&#xff0c;只能是public方法 3&#xff0c;异常被捕获了&#xff0c;事物拦截器&#xff0c;无法感知 4&#xff0c;子线程调用&#x…

使用unity创建项目,进行动画制作

1. 创建unity项目 error: error CS0006: Metadata file Library/PackageCache/com.unity.collab-proxy2.8.2/Lib/Editor/PlasticSCM/log4netPlastic.dll could not be found error CS0006: Metadata file Library/PackageCache/com.unity.collab-proxy2.8.2/Lib/Editor/Plasti…

Centos系统及国产麒麟系统设置自己写的go服务的开机启动项完整教程

1、创建服务文件 在 /etc/systemd/system/ 下新建服务配置文件&#xff08;需sudo权限&#xff09;&#xff0c;例如&#xff1a; sudo nano /etc/systemd/system/mygo.service 如下图&#xff0c;创建的mygo.service 2、创建内容如下&#xff1a; DescriptionThe go HTTP a…

Java面试宝典: IO流

1. 下面哪个流类属于面向字符的输入流() 选项: A. BufferedWriter B. FileInputStream C. ObjectInputStream D. InputStreamReader 答案:D 详细分析: 字符流与字节流的本质区别: 字符流(Character Streams)以Unicode字符为单位操作数据,适用于文本处理字节流(Byte…

黑马python(二十五)

目录&#xff1a;1.数据输出-输出为Python对象2.数据输出-输出到文件中3.综合案例1.数据输出-输出为Python对象2.数据输出-输出到文件中移动文件到文件夹&#xff1a;生成了好多文件&#xff0c;因为Rdd是有分区的 &#xff0c;会把数据分散到各个分区去存储&#xff0c;因为电…

【LeetCode 热题 100】41. 缺失的第一个正数——(解法一)暴力解

Problem: 41. 缺失的第一个正数 题目&#xff1a;给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 文章目录整体思路完整代码时空复杂度时间复杂度&#xff1a;O(N log N)…

在运行 Laravel Sail 前,需安装 Docker Desktop 并完成基础配置/具体步骤

一、安装 Docker Desktop&#xff08;必备环境&#xff09; Windows 系统 &#xff08;windows安装包 有两个版本&#xff09; 架构版本查看 1. Win R‌ 输入 ‌cmd‌ 打开命令提示符&#xff1b; 2. ‌输入命令‌&#xff1a; bash echo %PROCESSOR_ARCHITECTURE% 3. ‌结果…

AI 应用于进攻性安全

一、引言 大语言模型&#xff08;LLM&#xff09;和 AI 智能体的出现推动进攻性安全变革&#xff0c;其在侦察、扫描、漏洞分析、利用、报告五个阶段展现出数据分析、代码生成、攻击场景规划等能力&#xff0c;能提升安全团队效率与扩展性&#xff0c;但存在 “幻觉” 等局限性…

微控制器中的EXTI0(External Interrupt 0)中断是什么?

微控制器中的EXTI0(External Interrupt 0)中断是什么? EXTI0(External Interrupt 0) 是微控制器(如STM32等ARM Cortex-M系列芯片)中的一个外部中断线,专门用于处理来自特定GPIO引脚的外部信号触发中断。以下是详细说明: 1. 基本概念 EXTI(External Interrupt/Event …

EasyGBS平台内置AI算法了,算法成为了视频平台的标配

今年五一的时候立了个flag&#xff08;《国标GB28181平台EasyGBS未来研发方向在哪&#xff1f;》&#xff09;&#xff0c;我想不能再局限在只是满足于传统视频平台的功能&#xff0c;传统的EasyGBS也就是接入几种视频协议&#xff0c;什么RTSP、ONVIF、RTMP、GB28181这些&…

C# 常量与变量

在 C# 中&#xff0c;常量和变量是存储数据的基本方式&#xff1a; // 常量&#xff1a;使用 const 关键字声明&#xff0c;必须在声明时初始化&#xff0c;且值不能改变 const double Pi 3.14159; const string Message "Hello, World!"; ​ // 变量&#xff1a;…

TensorRT-LLM:大模型推理加速的核心技术与实践优势

大型语言模型推理就像让一头300公斤的大熊猫玩平衡木——显存消耗和计算效率这对双胞胎问题随时可能让表演翻车。以主流的7B参数模型为例&#xff0c;FP16精度下仅模型权重就吃掉14GB显存&#xff0c;这还没算上推理过程中不断膨胀的KV Cache——当处理2048长度的对话时&#x…

免费棱光 PDF:免安装 加水印 去水印 批量格式转换

各位办公小能手们&#xff0c;今天给大家介绍一款超棒的PDF处理工具——棱光PDF&#xff01;它完全免费&#xff0c;专门解决咱对PDF文件的常见操作需求。绿色免安装&#xff0c;体积小得跟颗花生米似的&#xff0c;打开就能用。它有三大核心功能&#xff0c;分别是水印管理、格…

(二)复习(Error Pattern/Result Pattern/)

文章目录 项目地址一、Error Pattern1.1 定义Error类1. ErrorType 可发生的错误类型2. Error类3. ValidataionError1.2 给每个实体创建Error类1. CategoryError类2. TicketErrror类3. EventErrror类二、Result Pattern1.1 自定义返回Result1. 泛型类2. 泛型方法1.2 Api层的Resu…

20250705-day6

NATO&#xff1a;北大西洋公约组织 Software Crisis&#xff1a;软件危机 Paradigm&#xff1a;设计范型 Waterfall Model&#xff1a;瀑布模型 Prototype Model&#xff1a;原型模型&#xff08;又称快速模型&#xff09; Spiral Model&#xff1a;螺旋模型 Agile&#xff1a;…

视频播放中时钟的概念及音视频同步概念

author: hjjdebug date: 2025年 07月 05日 星期六 18:20:45 CST descrip: 视频播放中时钟的概念及音视频同步概念 文章目录 1.前言: 视频播放:1. 固定延时时间2. 根据frame的duration来延时.3. 根据frame的PTS 来播放3.1. 时钟是什么?3.2. 时钟的用途. 2.音视频同步: 1.前言: …