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

【计网笔记】以太网

经典以太网

总线拓扑

物理层

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. 网络地址

相关文章:

【计网笔记】以太网

经典以太网 总线拓扑 物理层 Manchester编码 数据链路层 MAC子层 MAC帧 DIX格式与IEEE802.3格式 IEEE802.3格式兼容DIX格式 前导码(帧开始定界符SOF) 8字节 前7字节均为0xAA第8字节为0xAB前7字节的Manchester编码将产生稳定方波,用于…...

Java 入门基础篇14 - java面向对象思想以及特性

学习目标: 一、目标 面向对象思想类和对象对象的创建和使用属性和方法封装 开始学习: 二、编程思想 2.1 什么是编程思想 做人有做人的原则,编程也有编程的原则。这些编程的原则,就叫做编程思想。 2.2 面向过程和面向对象 二…...

第15篇:网络架构优化与综合案例分析

目录 引言 15.1 网络性能优化的方法与工具 15.1.1 带宽管理与流量控制 15.1.2 负载均衡 15.1.3 缓存优化 15.2 网络故障的排查与解决 15.2.1 常用的网络故障排查工具 15.2.2 网络故障排查案例 15.3 网络安全架构的综合设计案例 15.3.1 企业网络安全架构的要求 15.3.…...

UI自动化测试实战

补充:Selenium主要用于Web页面的自动化测试,它可以模拟用户的各种操作,如点击、输入、滚动等,来测试网页的功能。而Appium是一个开源的移动端自动化测试工具。 一、自动化测试实战章节 自动化测试流程测试用例编写项目自动化测试…...

东方智者颜廷利:以哲学思想促进世界和谐与无私奉献

【本社讯】在全球化的今天,东方智慧与哲学思想正逐渐成为促进世界和谐与理解的重要力量。近日,祖籍齐鲁大地山东济南的东方智者颜廷利以其深邃的哲学思想和对人类社会的深刻洞察,引起了国际社会的广泛关注。 颜廷利,一位致力于哲学研究与实践的智者,他的思想跨越古今,融合了东…...

基于 springboot vue停车场管理系统 设计与实现

博主介绍:专注于Java(springboot ssm 等开发框架) vue .net php phython node.js uniapp 微信小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作 ☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不…...

如何验证ssl私钥和证书是否匹配?

从证书(CRT)文件提取公钥 openssl x509 -in server.crt -pubkey -noout | openssl sha256从证书签名请求(CSR)文件提取公钥 openssl req -in server.csr -pubkey -noout | openssl sha256从私钥(KEY)文件…...

MongoDB的基本操作

🌷数据库准备 🎈Mongoshell 1.在指定目录下创建mongodb文件夹、其子文件log和data以及mongodb.log cd /home/ubuntu mkdir -p mongodb/data mkdir -p mongodb/log touch mongodb/log/mongodb.log 执行mongodb命令启动mongdb服务 mongod --dbpath /h…...

spring mvc后端实现过程

文章目录 一、Spring mvc1、controller1.1、LoginController011.2、LoginController 2、service2.1、LoginService2.1、LoginInimplements 3、dao3.1、LoginMapper3.1、LoginMapper.xml 4、实体类 一、Spring mvc 1、controller 控制器层、处理用户的请求和响应, …...

102005

import os os.environ["CUDA_VISIBLE_DEVICES"] "0" # 设定使用的 GPUimport tensorflow as tf from dataset import generate_data import numpy as np from model import enhancednet# 检查 TensorFlow 是否可以识别 GPU gpus tf.config.list_physica…...

Cisco ACI环境给Leaf配置OOB带外管理IP方法

可以通过GUI 或CLI进行配置 通过CLI更简单,和配置传统交换机差不多, ACI中共有3大组件 APIC 控制器 SPINE 核心 LEAF 接入 下面我们将3种角色的带外IP配置方法都列出来 1 APIC配置带外IP This example shows how to configure out-of-band managemen…...

免费送源码:Java+B/S+MySQL springboot电影推荐系统 计算机毕业设计原创定制

摘 要 随着互联网与移动互联网迅速普及,网络上的电影娱乐信息数量相当庞大,人们对获取感兴趣的电影娱乐信息的需求越来越大,个性化的电影推荐系统成为一个热门。然而电影信息的表示相当复杂,己有的相似度计算方法与推荐算法都各有优势&#…...

数据清洗(脚本)

使用脚本清洗数据时,可以根据具体的数据问题选择编程语言,如Shell、Python、SQL等。这里我以 Python(Pandas库) 和 SQL 为例,演示如何通过脚本进行数据清洗。 1. 使用 Python(Pandas库) 进行数…...

jmeter中发送post请求遇到的问题

用jmeter发送post请求,把请求参数放在Body Data处,参数都写得正确,但没想到结果每次都报错,直接响应结果乱七八糟,改成用Parameters,反而不乱报错了。 上图 请求里如下 另外一些请求也是这样 这个响应结果也是错误的…...

Java中使用protobuf

一、简介 Protocal Buffers(简称protobuf)是谷歌的一项技术,用于结构化的数据序列化、反序列化。 Protocol Buffers 是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。 Protocol B…...

2020款Macbook Pro A2251无法充电无法开机定位及修复

问题背景 up主有一台2020年的Macbook Pro,带Touch Bar,16G512G,四核I5,型号A2251 应该是一周没充电了,之前还用的好好的,后来有一天出差想带上 打开没电,手头上有个小米的66W快充头&#xff0c…...

Spring Cloud --- 引入Gateway网关

引入Gateway网关 介绍 Spring Cloud Gateway 组件的核心是一系列的过滤器,通过这些过滤器可以将客户端发送的请求转发(路由)到对应的微服务。 Spring Cloud Gateway 是加在整个微服务最前沿的防火墙和代理器,隐藏微服务结点 IP 端口信息,从…...

ESP32-C3实现定时器的启停(Arduino IDE)

1概述 ESP32-C3微控制器有多个定时器,这些定时器可用于各种用途,包括计时、生成PWM信号、测量输入信号的频率等。以下是ESP32-C3上可用的定时器资源: 两个硬件定时器: 定时器0:这是一个通用定时器,通常用于…...

centos升级g++使其支持c++17

centos升级g使其支持c17 升级g的原因现象原因 升级g方法更新镜像源yum升级g版本 总结 升级g的原因 现象 编译最新版本的jsoncpp报一下错误 jsontest.h:87:37: error: ‘hexfloat’ is not a member of ‘std’oss << std::setprecision(16) << std::hexfloat &l…...

Pytest日志收集器配置

前言 在pytest框架中&#xff0c;日志记录&#xff08;logging&#xff09;是一个强大的功能&#xff0c;它允许我们在测试期间记录信息、警告、错误等&#xff0c;从而帮助调试和监控测试进度。 pytest与Python标准库中的logging模块完美集成&#xff0c;因此你可以很容易地在…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误

HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误&#xff0c;它们的含义、原因和解决方法都有显著区别。以下是详细对比&#xff1a; 1. HTTP 406 (Not Acceptable) 含义&#xff1a; 客户端请求的内容类型与服务器支持的内容类型不匹…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

FastAPI 教程:从入门到实践

FastAPI 是一个现代、快速&#xff08;高性能&#xff09;的 Web 框架&#xff0c;用于构建 API&#xff0c;支持 Python 3.6。它基于标准 Python 类型提示&#xff0c;易于学习且功能强大。以下是一个完整的 FastAPI 入门教程&#xff0c;涵盖从环境搭建到创建并运行一个简单的…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中&#xff0c;科研绘图是必不可少的&#xff0c;一张好看的图形会是文章很大的加分项。 为了便于使用&#xff0c;本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中&#xff0c;获取方式&#xff1a; R 语言科研绘图模板 --- sciRplothttps://mp.…...

深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏

一、引言 在深度学习中&#xff0c;我们训练出的神经网络往往非常庞大&#xff08;比如像 ResNet、YOLOv8、Vision Transformer&#xff09;&#xff0c;虽然精度很高&#xff0c;但“太重”了&#xff0c;运行起来很慢&#xff0c;占用内存大&#xff0c;不适合部署到手机、摄…...