当前位置: 首页 > news >正文

【计算机网络】第三章 数据链路层(虚拟机与局域网)

文章目录

    • 3.9 以太网交换机自学习和转发桢的流程
    • 3.10 以太网交换机的生成树协议STP
    • 3.11 虚拟局域网
      • 3.11.1 虚拟局域网VLAN概述
      • 3.11.2 虚拟局域网VLAN的实现机制



在这里插入图片描述

3.9 以太网交换机自学习和转发桢的流程

以太网交换机的自学习和转发数据帧的流程如下:

自学习(Learning):

当交换机收到一帧时,它会检查帧中的源MAC地址,并将其与接收端口相关联。
交换机将源MAC地址与接收端口的映射信息存储在一个所谓的MAC地址表(也称为CAM表或转发表)中。

转发(Forwarding):

当交换机接收到目标主机的数据帧时,它会查找目标MAC地址在MAC地址表中的对应端口。

如果在MAC地址表中找到了目标MAC地址的映射信息,则交换机将该数据帧只转发到对应的端口上。

如果在MAC地址表中没有找到目标MAC地址的映射信息,则交换机将该数据帧广播到所有其他端口上(除接收端口外)。

在广播过程中,其他连接的交换机也会学习到该源MAC地址与对应端口的映射信息,并更新各自的MAC地址表。

更新(Updating):

交换机会周期性地检查MAC地址表中的条目,并根据实际网络流量情况进行更新。
如果长时间未收到某个MAC地址的数据帧,则该条目可能被删除,以释放存储空间。
通过自学习和转发的过程,以太网交换机可以实现根据MAC地址进行精确的数据帧转发,提高网络的传输效率和安全性。


交换机 工作在数据链路层(也包括物理层)
交换机 工作在数据链路层(也包括物理层),它收到桢后,在桢交换表中查找桢的目的MAC地址所对应的接口号,然后通过该接口转发桢。

以太网交换进行转发决策时使用的PDU地址是()
A 目的物理地址 B目的IP地址
C源物理地址 D 源IP地址


在这里插入图片描述

习题2

3.10 以太网交换机的生成树协议STP

以太网交换机使用 生成树协议STP 可以在增加冗余链路来提高网络可靠性的同时又 避免网络环路带来的各种问题。

  • 无论交换机之间采用怎样的物理连接,交换机都能够自动计算并构建一个逻辑上没有环路的网络,其逻辑扩扑结构必须是树型的(无逻辑环路)。
  • 最终生成的树型逻辑扩扑要确保连通整个网络
  • 当首次连接交换机或网络物理扩扑发生变化时(有可能是人为改变或故障),交换机都将生成树的重新计算

3.11 虚拟局域网

3.11.1 虚拟局域网VLAN概述

众多交换机组成的巨大广播域会带来包括 广播风暴 在内的弊端。
网络中会频繁出现广播信息:

  • TCP/IP 协议栈中的很多协议都会使用广播:
    • 地址解析协议ARP(已知 IP 地址,找出其相应的 MAC 地址)
    • 路由信息协议RIP(一种小型的内部路由协议)
    • 动态主机配置协议DHCP(用于自动配置 IP 地址)

SO,分割广播域变得尤为主要:

  • 使用 路由器 可以隔离广播域(路由器工作在 网络层 ),但是路由器成本较高
  • 虚拟局域网 VLAN 技术营运而生

虚拟局域网VLAN(Virtual Local Area Network)是一种将局域网内的设备划分成与物理位置无关的逻辑组的技术,这些逻辑组具有某些共同的需求。同一个VLAN可以广播通信,不同的VLAN不能广播通信。

3.11.2 虚拟局域网VLAN的实现机制

是在交换机上实现的,需要交换机实现两大功能:

  • 能处理带有VLAN标记的桢(IEEE 802.1Q桢)
  • 交换机的端口可以支持不同的端口类型

交换机的端口类型有以下三种:(Access Trunk Hybrid)

接入端口(Access Port):接入端口用于连接终端设备,如计算机、打印机等。每个接入端口通常只允许一个VLAN使用,并将接收到的数据帧按照所属VLAN进行转发。

通道组端口(Trunk Port):通道组端口用于连接两个交换机之间或交换机与路由器之间的链路。它可以传输多个VLAN的数据帧,并使用特定的协议(如VLAN Trunking Protocol,VTP)来识别和传递不同VLAN之间的数据。

混杂端口(Mirrored Port):混杂端口是用于网络监控和分析的一种特殊端口类型。它可以将所有进出该交换机的数据帧复制并发送到特定的监控设备,以便进行流量分析、故障排除等操作。

这些不同类型的端口在交换机中起到不同的作用,根据实际需要选择合适的端口类型来满足网络配置和需求。



在这里插入图片描述

相关文章:

  • python实战之PyQt5桌面软件
  • C++从入门到精通——缺省参数
  • 【scala】使用gradle和scala构建springboot程序
  • 数字乡村战略实施:科技引领农村经济社会全面发展
  • ThreadPoolExecutor经典面试题
  • javaWeb项目-火车票订票信息系统功能介绍
  • 在Debian 11上安装GCC
  • 深度学习 - PyTorch基本流程 (代码)
  • 没学数模电可以玩单片机吗?
  • 【flutter】flutter基础总结1
  • 蓝桥杯备考随手记: practise01
  • iOS - Runtime-isa详解(位域、union(共用体)、位运算)
  • 【嵌入式开发 Linux 常用命令系列 1.4 -- grep -Ev 反向搜索】
  • golang 使用redis
  • Sentinel入门
  • ES10 特性的完整指南
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Transformer-XL: Unleashing the Potential of Attention Models
  • 成为一名优秀的Developer的书单
  • 从PHP迁移至Golang - 基础篇
  • 回顾 Swift 多平台移植进度 #2
  • 七牛云 DV OV EV SSL 证书上线,限时折扣低至 6.75 折!
  • 前端设计模式
  • 全栈开发——Linux
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 思否第一天
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #pragma once
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (2022 CVPR) Unbiased Teacher v2
  • (70min)字节暑假实习二面(已挂)
  • (arch)linux 转换文件编码格式
  • (ibm)Java 语言的 XPath API
  • (python)数据结构---字典
  • (二)Linux——Linux常用指令
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)编辑寄语:因为爱心,所以美丽
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .NET delegate 委托 、 Event 事件
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net MySql
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET 设计模式初探
  • .Net 应用中使用dot trace进行性能诊断
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件