局域网技术
共享信道的分配技术是局域网的核心技术,而这一技术又与网络的拓扑结构和传输介质有关。
拓扑结构:
1.总线型拓扑:
总线一种多点广播介质,所有的站点通过接口硬件连接到总线上。
传输介质主要是同轴电缆(基带和宽带同轴电缆)。
基带同轴电缆传播数字信号,宽带同轴电缆传播模拟信号。
宽带电缆比基带电缆传输的距离更远,还可以使用频分多路技术提供多个信道和多种数据传输业务,主要用在城域网中。
基带系统主要用于室内或者建筑物内部连网nag。
2.环型拓扑:
整个环路是单向传输。
由于环网是由一系列点对点链路串接起来的,所以可以使用任何传输介质,最常用的是双绞线,因为价格较低。使用同轴电缆可以得到较高的带宽,光纤可以提供更大的数据速率。
3.星型拓扑:
有一个中间节点,所以站点都连接到中心节点上。
中心节点在星型网络中起到了控制和交换的作用,是网络中的关键设备。
使用星型结构可以构成分组广播式的局域网。中心节点是hub(有源和无源).
有源hub:配置了信号再生逻辑,这种电路可以接收输入链路上的信号,经再生后向所有链路发送,如果多个输出链路同时有信号输入,则向所有的输出链路发送冲突信号。
无源hub:没有信号再生电路,只是把输入链路上的信号分配到所有输出链路上。
任何传输介质都可以使用有源hub,也可以使用无源hub。
为了达到较高的数据速率,必须要限制工作站到中心节点的距离和连接的站点数。
一般来说,无源hub用于光纤或同轴电缆网络,有源hub用于无屏蔽双绞线网络。
4.树型拓扑:
为了延长星型网络的传输距离和扩大网络的规模,把多个hub级联起来,组成树型结构。
LAN/MAN的IEEE802标准:
常考:
802.2:研究链路逻辑控制子层LLC的定义。
802.3:研究以太网介质访问控制协议CSMA/CD及物理层技术规范。
802.11:研究无线局域网WLAN的介质访问控制协议以及物理层技术规范。
其他:
IEEE802把数据链路层划分为两个子层:
1.与物理介质相关的部分叫做介质访问控制MAC子层。
2.与物理介质无关的部分叫做逻辑链路控制LLC子层。(在上层。)
LLC提供标准的OSI数据链路层服务,这使得任何高层协议都可以运行在局域网标准之上。
LLC提供三种服务:
1.无确认无连接服务:是数据报类型的服务。不涉及任何流控和差错控制功能。
2.连接方式服务:类似于HDLC提供的服务,在有数据交换的用户之间要建立连接,同时提供流控和差错控制的功能。
3.有确认无连接服务:提供有确认的数据报,但是不建立连接。高效可靠,适合传输少量的重要数据。
CSMA/CD协议:
对于总线型、星型、树型拓扑结构最适合的介质访问控制协议是CSMA/CD。
MAC帧结构:
802.3帧结构:
源地址和目的地址:目标地址最高位0表示普通地址,1表示组地址。
向一组站发送称为组播。
全1的是广播地址,所有站都接收这种帧。
次最高位(46位)用来区分局部地址和全局地址。
局部地址只在本地网络有效,全局地址由IEEE指定,(IEEE为每个硬件制造商指定网卡地址的前三位,后三位由制造商自己编码)。
802.3规定最小帧为64字节。
由于前导字段和帧起始符是在物理层加上的,所以不包含在帧长中,也不参加帧校验。
如果帧的长度不够64字节,要加入最多46字节的填充位。
交换式以太网:
核心部件是交换机。
高速以太网:
1.快速以太网:100Mbps,使用的集线器可以是共享型或者交换型,也可以通过堆叠多个集线器来扩大端口数量。
2.千兆以太网:1000Mbps,用在汇聚-接入/核心之间。基带带宽越高,传输距离越短。适用于已经安装的综合布线之上。
3.万兆以太网:10Gbps,基本应用于点到点线路,不用共享宽带,没有冲突检测,载波侦听和多路访问技术也不再重要。几乎没有冲突,用于核心之间。
虚拟局域网:VLAN
根据管理功能、组织机构或者应用类型对交换局域网进行分段而形成的逻辑网络。
任何端口都可以分配给某个VLAN,属于同一个vlan的端口构成一个广播域。
每个vlan都是一个逻辑网络,发往vlan之外的分组都必须经过路由器进行转发。
划分vlan 的好处:
1.控制网络流量。一个vlan内部的通信(包括广播通信)不会转发到其他vlan里面,从而有助于控制广播风暴,减小冲突域,提高网络带宽的利用率。
2.提高网络安全性。可以通过配置vlan之间的路由来提供广播过滤,安全和流量控制等功能。
3.灵活的网络管理。使得工作组可以突破地理位置的限制而根据管理功能划分。
在划分成vlan的交换网络中,交换机端口可以分为接入链路连接access和中继链路连接trunk。
接入链路只能连接具有以太网卡的设备,也只能传送属于单个vlan的数据包,任何连接到接入链路的设备都属于同一个广播域。
中继链路是在一条物理连接上生成多个逻辑连接,每个逻辑连接属于一个广播域。
在进入中继端口时,交换机在数据包中加入vlan标记,在中继链路另一端的交换机根据vlan进行转发决策,这些帧共享同一条中继链路。
802.1q帧格式:
802.1去q帧标记含义:
局域网互连:
局域网通过网桥互连。
网桥在mac子层中起中继作用,由一个网桥连接两个lan,这两个lan运行相同的mac和llc协议。
网桥不剥MAC帧头、帧尾,由路由器完成。
网桥中使用的路由选择技术可以是固定路由技术。
固定路由策略适合小型和配置稳定的互连网络。
生成树网桥:
完全透明的网桥。插入电缆之后可以自动完成路由选择功能。
网桥为了决定是否转发一个帧,必须为每个转发端口保存一个转发数据库,数据库中保存着必须通过该端口转发的所有站的地址。
每个网桥都有唯一的MAC地址和唯一的优先级,构成网桥的标识符。
网桥的每个端口都有一个标识符,只在网桥内部有效。
根桥:作为生成树树根的网桥。
根通路:每一个网桥通向根桥的、费用最小的通路。
根端口:每一个网桥与根通路相连接的端口。
指定桥:每一个LAN都有一个指定桥,这是在该LAN上提供最小费用根通路的网桥。
指定端口:每一个LAN的指定桥连接LAN的端口作为指定端口,对于直接连接根桥的LAN,根桥就是指定桥,该LAN连接根桥的端口就是指定端口。
对每一个LAN确定唯一的指定桥和指定端口:
如果有两个以上网桥的根通路费用相同,那么选择优先级最高的网桥作为指定桥。
如果指定桥有多个端口连接LAN,则选取标识符值最小的端口为指定端口。
IEEE802.1d规定的网桥协议数据单元BPDU格式:
优点:易于安装、无须人工输入路由信息。
但是这种网桥只是利用了网络拓扑结构的一个子集,并没有很好的利用带宽。
源路由网桥:
由帧的发送者指明路由信息。
路由信息由网桥地址和LAN标识符的序列组成,包含在帧头中。
每个收到帧的网桥根据帧头中的地址信息可以决定自己是否在发路径中,并可以决定转发的方向。
网桥无需保存路由表,只需要记住自己的地址标识符和它所连接的LAN标识符,就可以根据帧头中的信息做出路由决策。
路由指示:表面路由选择的方式。
1.空路由指示:不指示路由选择方式,网桥不转发这种帧,只在同一个LAN中传送。
2.非广播指示:包含LAN标识符和网桥地址序列,帧只能沿着预定的路径到达目的站,目的站只能接收到该帧的副本,这种帧只能在已知路由的情况下发送。
3.全路广播指示:这种帧通过所有可能的路径到达所有的LAN,在有些LAN可能多次出现,所有的网桥都向远离源端的方向发送这种帧,目标站会收到来自不同路径的多个副本。
4.单路径广播指示:沿着以源节点为根的生成树向叶子节点传播,在所有的LAN上仅出现一次,目标站只能收到一个副本。
全路广播帧不包含路由信息,每一个转发这种帧的网桥都把自己的地址和输出LAN的标识符加入到路由信息字段中。
单路广播帧需要生成树的支持,只有在生成树上的网桥才能参与这种帧的转发,因而只有一个副本到达目标站。路由信息也是沿路的各网桥自己添加。
原站可以利用后边两种帧发现目标站的地址。
寻址模式:
1.单播地址:指明唯一的目标地址。
2.组播地址:指明一组工作站的地址。
3.广播地址:表示所有站。
城域网比局域网传输距离远。有更大的传输容量,更高的传输速率,有多种接入手段来满足不同用户的需求。
城域以太网:Q-in-Q
弹性分组环RPR:一种采用环型拓扑的城域网技术。
MAC控制子层控制MAC数据通路,维护MAC状态,并协调各种MAC功能的相互作用,MAC数据通路子层提供数据传输功能,MAC子层通过PHY服务接口接收/发送分组。
RPR采用双环结构,每个环都是单方向传送。
工作站之间是数据传送有:单播,单向泛洪、双向泛洪、组播。
泛洪传播是由一个站向多个目标站发送分组。
单向泛洪有两种方式。
双向泛洪利用两个环同时传播。
组播可以利用单向或双向泛洪的方式发送,组播成员由分组头中的目标地址字段指定。
RPR中传送的分组有:数据帧、控制帧、公平帧、闲置帧等多种格式。
相关文章:

局域网技术
共享信道的分配技术是局域网的核心技术,而这一技术又与网络的拓扑结构和传输介质有关。 拓扑结构: 1.总线型拓扑: 总线一种多点广播介质,所有的站点通过接口硬件连接到总线上。 传输介质主要是同轴电缆(基带和宽带…...

Pixhawk无人机-ArduPilot 软件SITL仿真模拟飞行(SITL+MAVProxy)
1 引言 本人是先看了多个博客实现了:在ubuntu下建立完整的ardupilot开发环境。 该文是基于搭建完编译环境后,也就是搭建好ardupilot的仿真环境实现的。 在文章: 《Pixhawk无人机扩展教程(5)—SITL仿真模拟飞行:开发环境搭建》.中指出&#…...

vue实现深拷贝的方法
在 vue中,深拷贝是一个很有用的功能,在不改变原来对象状态的情况下,进行对象的复制。 但要实现深拷贝,需要两个对象具有相同的属性。如果两个对象不同,深拷贝也不能实现。 1.我们将变量A的属性赋给变量B,但…...

LAMP架构
文章目录 LAMP架构一.简述各组件的主要作用如下: 二.过程展示1.编译安装Apache httpd服务(1)关闭防火墙,将安装Apache所需软件包传到/opt目录下(2)安装环境依赖包(3)配置软件模块(4)编译及安装(5)优化配置文件路径,并把httpd服务的可执行程序…...

javascript基础七:说说你对Javascript中作用域的理解?
一、作用域 作用域,即变量(变量作用域又称上下文)和函数生效(能被访问)的区域或集合 换句话说,作用域决定了代码区块中变量和其他资源的可见性 举个粟子 function myFunction(){let name小爱同学 } undef…...

chatgpt赋能python:Python变量赋值
Python 变量赋值 在 Python 中,我们可以使用多种符号来给变量赋值。本文将介绍这些符号以及它们在编程中的应用。 等号() 在 Python 中,我们最常用的符号是等号(),它可以将一个值赋给一个变量…...

SAP-QM-物料主数据-质量管理视图字段解析
过账到质检库存:要勾选,否则收货后库存不进入质检库存HU检验:收货到启用HU管理的库位时产生检验批,例如某个成品物料是收货到C002库位,该库位启用了HU管理,那么此处要勾选。但是如果勾选了,却收…...

【Netty】一行简单的writeAndFlush都做了哪些事(十八)
文章目录 前言一、源码分析1.1 ctx.writeAndFlush 的逻辑1.2 writeAndFlush 源码1.3 ChannelOutBoundBuff 类1.4 addMessage 方法1.5 addFlush 方法1.6 AbstractNioByteChannel 类 总结 前言 回顾Netty系列文章: Netty 概述(一)Netty 架构设…...

STM32U575 DMA配置
起个摘要,后期维护 1、DMA原理:参考:【STM32】DMA原理,配置步骤超详细,一文搞懂DMA_dma配置_~Old的博客-CSDN博客 2、STM32U575的DMA资源: (datasheet摘要) 3、UART的使用 4、I2…...

14-Vue3快速上手
目录 1.Vue3简介2. Vue3带来了什么2.1 性能的提升2.2 源码的升级2.3 拥抱TypeScript2.4 新的特性 1、海贼王,我当定了!——路飞 2、人,最重要的是“心”啊!——山治 3、如果放弃,我将终身遗憾。——路飞 4、人的梦想是…...

Docker registry 搭建
1、安装 docker 环境 参考:https://mp.csdn.net/mp_blog/creation/editor/104673841 2、准备 registry 镜像 机器有外网访问权限,直接 docker pull registry 通过 docker images 查看本地镜像 3、启动 registry docker run -d -p 5000:5000 --rest…...

关于三维布尔运算的几点思考
目录 三维布尔运算概述三角网格布尔运算效率提升思考BSPTree方式优化 参考 三维布尔运算概述 三维布尔运算根据三维实体数据结构表达分为CSG布尔运算、Brep布尔运算、三角网格布尔运算等类型。这几种类型算法在不同情境下有不同的优势,根据情况进行选择。但这也不能…...

【03.04】大数据教程--html+css基础
当谈到大数据时,HTML和CSS可能并不是最相关的技术。HTML和CSS主要用于构建网页和应用程序的用户界面,而大数据则涉及处理和分析大规模数据集。但是,如果您想展示有关大数据的信息或结果,并在网页上呈现,那么HTML和CSS可…...

深入理解与实践Seata:分布式事务解决方案
✅作者简介:热爱Java后端开发的一名学习者,大家可以跟我一起讨论各种问题喔。 🍎个人主页:Hhzzy99 🍊个人信条:坚持就是胜利! 💞当前专栏:微服务 🥭本文内容&…...

Python学习笔记 - 探索元组Tuple的使用
欢迎各位,我是Mr数据杨,你们的Python导游。今天,我要为大家讲解一段特殊的旅程,它与《三国演义》有关,而我们的主角是元组(tuple)。 让我们想象这样一个场景,三国演义中的诸葛亮&am…...

JAVA网络编程(一)
一、什么是网络编程 定义:在网络通信协议下,不同计算机上运行的程序,进行的数据传输。 应用场景:即时通信,网游,邮件等 不管什么场景,都是计算机与计算机之间通过网络在进行数据传输 java提供一…...

Python 线程队列
文章目录 Python 中的线程在 Python 中使用队列限制线程 本篇文章将介绍限制 Python 中的活动线程数。 Python 中的线程 Python 中的线程允许多个执行线程在单个进程中同时运行。 每个线程独立于其他线程运行,允许并发执行并提高性能。 线程对于执行受 I/O 限制或…...

创建web后端程序(servlet程序搭建)
目录 一、Servlet概述 二、创建servlet程序 1.创建类继承HttpServlet 2.重写HttpServlet类中 service、destroy、init方法 3.重新启动服务器 一、Servlet概述 Server Applet的简称,用Java编写的服务器端的程序。它运行在web服务器中,web服务器负责…...

【章节1】git commit规范 + husky + lint-staged实现commit的时候格式化代码
创建项目我们不多说,可以选择默认的,也可以用你们现有的项目。注意章节1和章节2请一起看! 章节1: commit规范 husky lint-staged格式化代码 章节2: husky 检测是否有未解决的冲突 预检查debugger 自动检查是否符合commit规范 前言&#x…...

【入门】拐角III
【入门】拐角III Description 输入整数N,输出相应方阵。 Input 一个整数N。( 0 < n < 10 ) Output 一个方阵,每个数字的场宽为3。 Sample Input 1 5 Sample Output 1 5 5 5 5 55 4 4 4 45 4 3 3 35 4 3 2 25 4…...

如何使用 Fail2ban 防止对 Linux 的暴力攻击?
在当今数字化世界中,网络安全成为了一个极其重要的话题。Linux 作为一种广泛使用的操作系统,也面临着各种网络攻击的风险,包括暴力攻击、密码破解和恶意登录等。为了保护 Linux 系统的安全,我们可以使用 Fail2ban 这样的工具来防止…...

2023年,真的别裸辞....
作为IT行业的大热岗位——软件测试,只要你付出了,就会有回报。说它作为IT热门岗位之一是完全不虚的。可能很多人回说软件测试是吃青春饭的,但放眼望去,哪个工作不是这样的呢?会有哪家公司愿意养一些闲人呢?…...

规则引擎架构-基于easy-rules
目录 概念理解实例和编码抽象出2条规则简单的规则引擎事实1的处理事实2的处理 easy-rules 规则的抽象和执行事实描述规则的抽象默认的规则 动态代理执行规则和动作规则的执行:org.jeasy.rules.core.DefaultRulesEngine#doFirepublic class RuleProxy implements Inv…...

【数据结构】第七周
目录 稀疏矩阵快速转置 三元组的矩阵加法 九宫格数独游戏 数组主元素 螺旋数字矩阵 蛇形矩阵 数组循环右移K位 稀疏矩阵快速转置 【问题描述】 稀疏矩阵的存储不宜用二维数组存储每个元素,那样的话会浪费很多的存储空间。所以可以使用一个一维数组存…...

人体三维重构论文集合:awesome 3d human reconstruction
A curated list of related resources for 3d human reconstruction. Your contributions are welcome! Contents papers AIGCnerf or pifugeo fusionphoto3D human whole body3D human...

揭秘Redis持久化原理,探索fork与Copy-on-Write的魔法!
大家好,我是小米,今天我将和大家一起探索Redis持久化原理中的两个关键概念:fork和Copy-on-Write。这两个概念对于理解Redis的数据持久化机制至关重要。让我们一起来揭开这些技术的神秘面纱吧! Redis持久化简介 在开始之前&#…...

应届生如何提高职场竞争能力
摘要: 应届生面对竞争激烈的职场,需要不断提高自身的职业素养和竞争能力,才能在激烈的竞争中脱颖而出。本文从积极心态的培养、专业知识的优化、职业规划的制定、团队协作的加强和自我拓展的开展五个方面,提出了提高应届生职场竞争…...

ISIS 实验
(1)拓扑图 2)需求: -实现PC1和PC2的通信 3)配置步骤: -配置接口IP地址 -开启ISIS---类似于在OSPF中创建进程 -配置NET地址---类似于在OSPF中创建区域,指定Router-id -在接口上启用ISIS--类似于在OSPFv2中用ne…...

国产系统:麒麟之人大金仓数据库部署
一、基本信息和资源 1.1 查看服务器信息 [root7PGxjKPL4 ~]# cat /etc/*release Kylin Linux Advanced Server release V10 (Sword) DISTRIB_IDKylin DISTRIB_RELEASEV10 DISTRIB_CODENAMEjuniper DISTRIB_DESCRIPTION"Kylin V10" DISTRIB_KYLIN_RELEASEV10 DISTRI…...

flink1.17.0 集成kafka,并且计算
前言 flink是实时计算的重要集成组件,这里演示如何集成,并且使用一个小例子。例子是kafka输入消息,用逗号隔开,统计每个相同单词出现的次数,这么一个功能。 一、kafka环境准备 1.1 启动kafka 这里我使用的kafka版本…...