【计网笔记】以太网

news2024/10/21 8:46:34

经典以太网

总线拓扑

物理层

Manchester编码

数据链路层

MAC子层

MAC帧

DIX格式与IEEE802.3格式

  • IEEE802.3格式兼容DIX格式

  • 前导码(+帧开始定界符SOF)
    • 8字节
      • 前7字节均为0xAA
      • 第8字节为0xAB
    • 前7字节的Manchester编码将产生稳定方波,用于校准时钟周期
  • 目的地址
    • 6字节
    • 目的站的MAC地址
  • 源地址
    • 6字节
    • 发送站的MAC地址
  • 类型(仅DIX)/长度(仅IEEE802.3)
    • 2字节
    • 指定网络层协议或帧长度
    • 如果字段值小于等于0x0600(1536)时解释为IEEE的长度字段
      • 此时IEEE帧将在长度字段和数据字段之间加入LLC/SNAP头部用于指定类型
    • 反之解释为DIX的类型字段
      • 0x0800是IPv4协议
      • 0x86DD是IPv6协议
      • 此时DIX帧确定长度基于
        • 尾部12字节的帧间间隔IPG时间,连续传输的两帧之间亦有距离
        • Manchester编码每bit的固定跳变,无跳变则传输完成
  • 数据
    • 0~1500字节
    • 1500字节的长度是历史原因
      • IEEE的长度字段基于这一上界
    • 帧长度最大为8+1518字节
      • 8字节前导码
      • 6字节目的地址
      • 6字节源地址
      • 2字节类型/长度
      • 1500字节数据字段
      • 0字节填充
      • 4字节校验码
  • 填充
    • 0~46字节
    • 如果数据段不足46字节,填充段补足至46字节
      • 换言之,数据段+填充段>=46字节
      • 避免传输时间过短,防止CSMA/CD的冲突信号还没到该站就已经传输完成
    • 帧长度最小为8+64字节
      • 8字节前导码
      • 6字节目的地址
      • 6字节源地址
      • 2字节类型/长度
      • 0字节数据字段
      • 46字节填充
      • 4字节校验码
  • 校验和
    • 4字节
MAC地址

均为6字节

指定目的地址和源地址

  • 目的地址可以是一个地址组
  • 源地址只能是一个站点地址

  • 单播帧:一对一
  • 广播帧:一对局域网上全体
  • 多播帧:一对多

交换式以太网

除了经典以太网以外的包括快速以太网、千兆以太网等等的其他以太网

  • 从万兆以太网开始只支持全双工,无需CSMA/CD

设备

集线器

逻辑上和普通电缆无区别

集线器内站在同一冲突域内

  • 集线器内站共用带宽
  • 集线器内使用CSMA/CD控制

交换机

  • 以前叫网桥

连接LAN,划分冲突域

  • 交换机端口独占带宽

  • 直通式交换:交换机一旦看到帧的目的地址就开始转发,不看校验和
  • 存储转发式交换 :交换机完整收下帧后检查校验和,正确时才发送

泛洪算法

交换机维护一个记录MAC地址、端口号和时间戳的交换表,下电即清空

  • 交换机收到帧后,查看源地址,把源MAC地址和接收端口号存进表
  • 交换机在表中寻找目的地址,进而得出端口号
    • 在表中找到了目的地址
      • 对应发送端口号不是接收端口号,转发帧
      • 对应发送端口号是接收端口号,丢弃帧
    • 在表中没有找到目的地址,除收到帧的端口以外的所有端口都转发帧
      • 一旦有站点收到了信号,就把对应的MAC地址和端口号写进表
        • 后向学习算法
  • 表维护表项更新的时间戳
    • 定期删除过期表项

生成树网桥

网络拓扑结构可能成环,导致泛洪算法不停空转

  • 所有交换机统一一个交换机作为生成树树根
  • 以根为起点,生成最小生成树
  • 所有网桥关闭不属于最小生成树的链路

【2013-408】对于100Mbps的以太网交换机,当输出端口无排队,以直通交换(cut-through switching)方式转发一个以太网帧(不包括前导码)时,引入的转发延迟至少是(B)
A. 0us

B. 0.48us
C. 5.12us
D. 121.44us

不含前导码,只需看6字节目的地址,即48bits

【2014-408】某以太网拓扑及交换机当前转发表如下图所示,主机00-e1-d5-00-23-a1向主机00-e1-d5-00-23-c1发送1个数据帧,主机00-e1-d5-00-23-c1收到该帧后,向主机00-e1-d5-00-23-a1发送1个确认帧,交换机对这两个帧的转发端口分别是(B)

A. {3}和{1}
B. {2,3}和{1}
C. {2,3}和{1,2}

D. {1,2,3}和{1}

VLAN

交换机可以将一个LAN划分为多个VLAN

  • VLAN内可通过交换机广播
    • 广播不能跨VLAN
  • VLAN间用路由器转发

基于端口划分VLAN

交换机维护配置表,记录端口及对应的VLAN

  • 换言之,VLAN通过端口划分
  • 一个端口可能划分到多个VLAN中

基于MAC地址划分VLAN

站点的所属子网不随端口甚至交换机的改变而改变

按MAC地址划分为一些子网

基于IP地址

交换机可以访问到网络层的数据

可跨路由器和局域网扩展VLAN

【2015-408】下列关于交换机的叙述中,正确的是(A)
A. 以太网交换机本质上是一种多端口网桥

B. 通过交换机互连的一组工作站构成一个冲突域

C. 交换机每个端口所连网络构成一个独立的广播域

D. 以太网交换机可实现采用不同网络层协议的网络互联

【2016-408】若主机H2向主机H4发送1个数据帧,主机H4向主机H2立即发送一个确认帧,则除H4外,从物理层上能够收到该确认帧的主机还有(D)。

A. 仅H2
B. 仅H3
C. 仅H1、H2
D. 仅H2、H3

【2020-408】下图所示的网络中,冲突域和广播域的个数分别是(C)

A. 2,2
B. 2,4
C. 4,2
D. 4,4

【2023-912】下列哪种不是VLAN划分方式(C)
A. 基于端口
B. 基于MAC
C. 基于端口号
D. 网络地址

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

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

相关文章

steam游戏模拟人生3缺少net framework 3.5安装不成功错误弹窗0x80070422怎么修复

模拟人生3在Steam上运行时提示缺少.NET Framework 3.5并出现错误代码0x80070422,通常意味着.NET Framework 3.5功能没有正确启用,或者安装过程中出现了问题。以下是解决这个问题的步骤: 1.启用Windows功能 按下Win R键,输入opti…

【论文学习与撰写】论文里的Mathtype公式复制粘贴,跨文档复制后错码/错位问题的解决

1、描述 问题:论文的草稿已经写好,里面的公式之类的都已经一个个打上去了 但是把草稿里的正文和公式粘贴在另一个文档里的时候,会出些公式格式错误的情况 那该怎么操作保证复制后的公式保持原格式呢 选中复制的内容,在另一个文…

MySQL【知识改变命运】10

联合查询 0.前言1.联合查询在MySQL里面的原理2.练习一个完整的联合查询2.1.构造练习案例数据2.2 案例:⼀个完整的联合查询的过程2.2.1. 确定参与查询的表,学⽣表和班级表2.2.2. 确定连接条件,student表中的class_id与class表中id列的值相等2.…

【c++篇】:解析c++类--优化编程的关键所在(一)

文章目录 前言一.面向过程和面向对象二.c中的类1.类的引入2.类的定义3.类的封装和访问限定符4.类的作用域5.类的实例化6.类对象模型 三.this指针1.this指针的引出2.this指针的特性3.C语言和c实现栈Stack的对比 前言 在程序设计的广袤宇宙中,C以其强大的功能和灵活性…

[k8s理论知识]6.k8s调度器

k8s默认调度器 k8s调度器的主要职责,就是为一个新创建出来的pod寻找一个适合的节点Node。这包括两个步骤,第一,从所有集群的节点中,根据调度算法挑选出所有可以运行该pod的节点,第二,从第一步的结果中&…

Java项目-基于springboot框架的企业客户信息反馈系统项目实战(附源码+文档)

作者:计算机学长阿伟 开发技术:SpringBoot、SSM、Vue、MySQL、ElementUI等,“文末源码”。 开发运行环境 开发语言:Java数据库:MySQL技术:SpringBoot、Vue、Mybaits Plus、ELementUI工具:IDEA/…

Windows环境下Qt Creator调试模式下qDebug输出中文乱码问题

尝试修改系统的区域设置的方法: 可以修复问题。但会出现其它问题: 比如某些软件打不开,或者一些软件界面的中文显示乱码! 暂时没有找到其它更好的办法。

10-Docker安装Redis

10-Docker安装Redis Docker安装Redis 以 Redis 6.0.8 为例: docker pull redis:6.0.8直接pull会出现以下错误 [rootdocker ~]# docker pull redis:6.0.8 Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request can…

[Python学习日记-50] Python 中的序列化模块 —— pickle 和 json

[Python学习日记-50] Python 中的序列化模块 —— pickle 和 json 简介 pickle 模块 json 模块 pickle VS json 简介 什么叫序列化? 序列化指的是将对象转换为可以在网络上传输或者存储到文件系统中的字节流的过程。序列化使得对象可以被保存、传输和恢复&#…

3D Slicer 教程二 ---- 数据集

上一章下载3d slicer的软件,这章从加载数据集来弄清楚3dslicer怎么使用. 一. 加载数据集 如果没有数据集,也可用用样本数据. (1) "File" --> "add Data" 可以添加图片文件夹,(试了MP4不行,内镜的视频估计不支持),添加单个图片的话,会出现一些选项, …

C++贪心

前言 C算法与数据结构 打开打包代码的方法兼述单元测试 简介 贪心算法(Greedy Algorithm)是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法策略。贪心算…

【设计模式系列】抽象工厂模式

一、什么是抽象工厂模式 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一个接口,用于创建一系列相关或相互依赖的对象,而无需指定它们具体的类。这种模式允许客户端使用抽象的接口来创建一组…

AUTOSAR_EXP_ARAComAPI的5章笔记(17)

☞返回总目录 相关总结:AutoSar AP CM通信组总结 5.7 通信组 5.7.1 目标 通信组(Communication Group,CG)是由 AUTOSAR 定义的复合服务模板。它提供了一个通信框架,允许在 AUTOSAR 应用程序之间以对等方式和广播模…

第6章 元素应用CSS作业

1.使用CSS对页面网页元素加以修饰&#xff0c;制作“旅游攻略”网站。 浏览效果如下&#xff1a; HTML代码如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title>旅游攻略</title><link type"t…

[JAVAEE] 线程安全问题

目录 一. 什么是线程安全 二. 线程安全问题产生的原因 三. 线程安全问题的解决 3.1 解决修改操作不是原子性的问题 > 加锁 a. 什么是锁 b. 没有加锁时 c. 加锁时 d. 死锁 e. 避免死锁 3.2 解决内存可见性的问题 > volatile关键字 (易变的, 善变的) a. 不加…

【Linux】多线程安全之道:互斥、加锁技术与底层原理

目录 1.线程的互斥 1.1.进程线程间的互斥相关背景概念 1.2.互斥量mutex的基本概念 所以多线程之间为什么要有互斥&#xff1f; 为什么抢票会抢到负数&#xff0c;无法获得正确结果&#xff1f; 为什么--操作不是原子性的呢&#xff1f; 解决方式&#xff1a; 2.三种加锁…

git add操作,文件数量太多卡咋办呢,

git add介绍 Git的add命令是用于将文件或目录添加到暂存区&#xff08;也就是索引库&#xff09;&#xff0c;以便在后续的提交&#xff08;commit&#xff09;操作中一并上传到版本库的。具体来说&#xff0c;git add命令有以下几种常见用法&#xff1a; 添加单个文件&#…

4、.Net 快速开发框架:DncZeus - 开源项目研究文章

DncZeus 是一个基于 ASP.NET Core 和 Vue.js 的前后端分离的通用后台管理系统框架&#xff0c;其愿景是成为一个易于使用且功能丰富的 .NET Core 通用后台权限管理模板系统基础框架。项目名称 "DncZeus" 由 "Dnc"(.NET Core 的缩写)和 "Zeus"(古…

CLion和Qt 联合开发环境配置教程(Windows和Linux版)

需要安装的工具CLion 和Qt CLion下载链接 :https://www.jetbrains.com.cn/clion/ 这个软件属于直接默认安装就行&#xff0c;很简单&#xff0c;不多做介绍了 Qt:https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers/ window 直接点exe Linux 先c…

el-table动态新增/删除表单行及校验规则

方式一&#xff1a; <template><el-form ref"ruleFormRef" :model"ruleForm" :rules"rules" label-width"120px" class"model-ruleForm":size"formSize" status-icon label-position"top">…