计算机网络:物理层 - 信道复用
计算机网络:物理层 - 信道复用
- 频分复用
- 时分复用
- 统计时分复用
- 波分复用
- 码分复用
计算机网络中,用户之间通过信道进行通信,但是信道是有限的,想要提高网络的效率,就需要提高信道的利用效率。因此计算机网络中普遍采用信道复用技术,让一条信道可以同时为多个用户服务。
复用是指多个用户使用一个共享信道进行通信
计算机网络中常见的信道复用技术有:频分复用
,时分复用
,统计时分复用
,波分复用
,码分复用
。
频分复用
频分复用就是将用于传输信道的总带宽划分成若干个子频带(或称子信道),每一个子信道传输一路信号。用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。
比如下图:
左侧是三段不同的信号,经过Modulator
即调制器,把三段信号用不同的方式调制,调制到不同的频率,再把调制后的三段信号混合传输出去。由于调制后的三段信号占用的频率是不同的,所以可以把三段不同频率的信号拆分出来,就得到了三条独立的信号:
拆分后的不同信号,再经过对于的Demodulator
解调器,就可以还原出最原始的信号。这就是频分复用的基本原理。
再看到一个量化的例子:
一开始三个用户都发送了频率范围在0 - 4
的信号,经过三个不同的调制器,蓝色信号被调制到了20 - 24
,红色信号被调制到了24 - 28
,绿色信号被调制到了28 - 32
。因为不同信号处于不同频段,将其混合后传输,再经过拆分,又可以拆分出三条数据出来,最后经过解调处理,我们又得到了频率在0 - 4
的三条信号。
当然,频分复用也可以叠加:
从左向右,第一次将12条信号进行了调制,第二次把第一次调制出来的混合信号再作为一个信号,拿去进行调制,与其他信号进行频分复用。以此类推,多次叠加下去。
频分复用要求总频率宽度大于各个子信道频率之和,同时为了保证各子信道中所传输的信号互不干扰,应在各子信道之间设立隔离带,这样就保证了各路信号互不干扰。频分复用技术的特点是所有子信道传输的信号以并行的方式工作,每一路信号传输时可不考虑传输时延,因而频分复用技术取得了非常广泛的应用。
时分复用
时分复用就是将提供给整个信道传输信息的时间划分成若干时间片(简称时隙),并将这些时隙分配给每一个信号源使用,每一路信号在自己的时隙内独占信道进行数据传输。时分复用技术的特点是时隙事先规划分配好且固定不变,所以有时也叫同步时分复用。
以上图片就是一个时分复用是示例图,现在我对其进行一个标注:
左侧与右侧的器械:
MUX:信号复用器
DEMUX:信号分用器
我们把一个周期称为一个时分复用帧
(TDM帧),在一个周期内部,每个主机发送的信号按照固定的顺序出现,比如这里的顺序就是4 3 2 1
,这里的数字代表主机发送的信号。
一个主机发送的信号在一个时分复用帧里面占用的时间叫做一个时隙
,通过图片可以看到,在一个时隙内,一个信号占用了整个信道的带宽,也就是独享一个信道。
我们再看到一个量化的例子:
左侧是四台主机,它们分别发送了一串比特流,经过MUX
后,右侧每四个比特组成了一个TDM周期。
左侧的绿色框框部分,就是第一个TDM周期包含的数据,从下往上是0101
,因此右侧绿色的第一个TDM周期的数据就是0101
。以此类推,后续的0001
,1101
是如何组成的,也就显而易见了。也就是每台主机提供一个比特位的数据,占用一个时隙,四个时隙构成了一个TDM周期发送出去。这个过程中,四台主机的数据在一个周期中的位置都是固定的。
时分复用的优点是时隙分配固定,便于调节控制,适于数字信息的传输;缺点是当某信号源没有数据传输时,它所对应的信道会出现空闲,而其他繁忙的信道无法占用这个空闲的信道,因此会降低线路的利用率。计算机发送的数据具有突发性,所以经常出现以下情况:
上图中,由于计算机主机并不会一直持续的发送消息,所以一个TDM
周期中,可能只有部分计算机发送了数据,TDM
还没有被填满就发送了出去,因此信道利用率比较低。
时分复用技术与频分复用技术一样,有着非常广泛的应用,电话就是其中最经典的例子,此外时分复用技术在广电也同样取得了广泛地应用,如SDH,ATM,IP和HFC网络中CM与CMTS的通信都是利用了时分复用的技术。
统计时分复用
统计时分复用是对时分复用的优化,先前我们的时分复用会出现一个TDM
还没有被填满就发送出去,导致信道利用率降低的问题。而统计时分复用优化了这个问题:
在统计时分复用中,一个周期叫做STDM
帧,每次发送数据前,都会等数据把STDM
帧填满再发送。但是STDM
对数据的顺序不在有要求了。时分复用中,要求每台主机在TDM
中占用的时隙位置是固定的。但是统计时分复用只要求填满一个STDM
周期,数据的顺序可以是任意的。不过因为缺少了固定的位置来确定目的主机,因此每一个时隙都要额外带上一个目标主机的地址信息。
波分复用
波分复用其实就是光的频分复用。
把光信号调制到不同的频段,然后整合发送出去,接受方再把不同频段的信号拆分出来。
码分复用
码分复用CDM,是靠不同的编码来区分各路原始信号的一种复用方式,通过码分复用共享信道也叫作码分多址CDMA。码分复用是一个比较复杂的复用方式,我们要慢慢讲解。
规则如下:
在码分多址(CDMA)中,比特被重新编码,每一个使用码分多址的站点都拥有一个唯一的码片序列
若发送比特1,则发送自己的码片序列
若发送比特0,则发送该码片序列的二进制反码。
例如,如果S站的8bit码片序列是00011011
- 如果该站点发送1,那就发送
00011011
- 如果该站点发送0,那就发送
11100100
为了方便运算,我们把码片中的0
写为-1
,1
写为+1
,因此S站的码片序列为:(-1 -1 -1 +1 +1 -1 +1 +1)
。码片序列又叫做码片向量。码片向量有一个非常重要的运算,叫做规格化内积,我们先来了解一下什么叫做规格化内积:
假设我们有一个长度为m
的码片向量S
,另外一个长度为m
的码片向量T
,两者规格化内积写作: S ∙ T \mathrm{S} \bullet \mathrm{T} S∙T
具体运算为:
S ∙ T ≡ 1 m ∑ i = 1 m S i T i \mathrm{S} \bullet \mathrm{T} \equiv \frac{1}{m} \sum_{i=1}^{m} S_{i} T_{i} S∙T≡m1i=1∑mSiTi
简单来说,就是把两个码片向量的每一位相乘后,求平均值。
假设向量S为(-1 -1 -1 +1 +1 -1 +1 +1)
,向量T为(-1 -1 +1 -1 +1 +1 +1 -1)
。
两者规格化内积为:
S ∙ T ≡ ( − 1 ) × ( − 1 ) + ( − 1 ) × ( − 1 ) + ( − 1 ) × 1 + 1 × ( − 1 ) + 1 × 1 + ( − 1 ) × 1 + 1 × 1 + 1 × ( − 1 ) 8 \mathrm{S} \bullet \mathrm{T} \equiv \frac{{\color{red} (-1) \times (-1)} + {\color{orange} ( -1) \times (-1)} + {\color{gold} (-1) \times 1} + {\color{Green} 1 \times (-1)} + {\color{cyan} 1 \times 1 } + {\color{blue} (-1) \times 1} +{\color{Purple} 1 \times 1} + 1 \times (-1)}{8} S∙T≡8(−1)×(−1)+(−1)×(−1)+(−1)×1+1×(−1)+1×1+(−1)×1+1×1+1×(−1)
其中每一种颜色代表一对对应位置的分量,对应位置的分量相乘后求和,最后再除以分量个数8,得到平均值。
CDMA的一个重要特点就是:各个站点的码片向量不仅各不相同,而且两两正交。
所谓码片向量正交,就是两个码片向量规格化内积结果为0。比如刚刚的 S ∙ T \mathrm{S} \bullet \mathrm{T} S∙T就等于0,因此S
和T
正交。因为每两个站点之间都正交,所以所以站点都满足以下规则:
- 任何一个码片向量都和其余各站的码片向量规格化内积为
0
- 任何一个码片向量都和其余各站的码片向量的相反向量规格化内积为
0
- 任何一个码片向量和自己规格化内积都是
1
- 任何一个码片向量和自己的相反向量规格化内积都是
-1
根据这四条规则,我们的码分复用就可以运作了。我们看到一个示例:
共有四个站进行 CDMA 通信,四个站的码片序列为:
A:(-1 -1 -1 +1 +1 -1 +1 +1)
B:(-1 -1 +1 -1 +1 +1 +1 -1)
C:(1 +1 -1 +1 +1 +1 -1 -1)
D:(-1 +1 -1 -1 -1 -1 +1 -1)
现在收到一个码片序列为:R:(-1 +1 -3 +1 -1 -3 +1 +1)
那么每个站发送的信号是什么?
对于这个问题,我要先说明,如果ABCD同时发送消息,此时会把ABCD的码片向量全部进行规格化内积,也就是 A ∙ B ∙ C ∙ D \mathrm{A} \bullet \mathrm{B} \bullet \mathrm{C} \bullet \mathrm{D} A∙B∙C∙D,就得到了一个混合码片向量R
。
- 根据规则1和规则2:一个站点的码片向量和其它站点规格化内积一定是0,因此如果和这个混合向量
R
规格化内积,结果为0,说明这个混合向量中没有该站点发送的信息。 - 根据规则3:如果某个站点和这个混合向量
R
规格化内积结果为1
,说明该站点发送了自己的码片向量,也就是发送了bit1。 - 根据规则4:如果某个站点和这个混合向量
R
规格化内积结果为-1
,说明该站点发送了和自己相反的码片向量,也就是发送了bit0。
经过计算,得到:
A ∙ R ≡ 1 \mathrm{A} \bullet \mathrm{R} \equiv 1 A∙R≡1:说明混合向量
R
中存在A自己的码片向量,A站点发送了1
B ∙ R ≡ − 1 \mathrm{B} \bullet \mathrm{R} \equiv -1 B∙R≡−1:说明混合向量R
中存在B自己的码片向量相反向量,B站点发送了0
C ∙ R ≡ 0 \mathrm{C} \bullet \mathrm{R} \equiv 0 C∙R≡0:说明混合向量R
中不存在C发送的向量,因此C站点没有发送信号
D ∙ R ≡ 1 \mathrm{D} \bullet \mathrm{R} \equiv 1 D∙R≡1:说明混合向量R
中存在D自己的码片向量,D站点发送了1
通过这样的码分复用,把所有信号都以码片向量的形式发送后混合,接收方只需要拿其他站点的码片向量一个一个地和混合向量规格化内积,就可以知道哪一个站点发送了信号,发送的信号是什么。
相关文章:

计算机网络:物理层 - 信道复用
计算机网络:物理层 - 信道复用 频分复用时分复用统计时分复用波分复用码分复用 计算机网络中,用户之间通过信道进行通信,但是信道是有限的,想要提高网络的效率,就需要提高信道的利用效率。因此计算机网络中普遍采用信道…...
【算法集训】基础算法:滑动窗口
定义一个快慢指针,用于截取数组中某一段信息。同时可以改变快慢指针的值来获取结果,这个过程比较像滑动。 1493. 删掉一个元素以后全为 1 的最长子数组 定义快慢指针快指针先走,如果到了第二个0上的时候。前面1的个数就是fast - slow - 1&a…...

QT 二维坐标系显示坐标点及点与点的连线-通过定时器自动添加随机数据点
QT 二维坐标系显示坐标点及点与点的连线-通过定时器自动添加随机数据点 功能介绍头文件C文件运行过程 功能介绍 上面的代码实现了一个简单的 Qt 应用程序,其功能包括: 创建一个 MainWindow 类,继承自 QMainWindow,作为应用程序的…...

C语言TCP服务器模型 : select + 多线程与双循环单线程阻塞服务器的比较
观察到的实验现象: 启动三个客户端: 使用双循环阻塞服务器:只能accept后等待收发,同时只能与一个客户端建立连接,必须等已连接的客户端多次收发 明确断开后才能与下个客户端连接 使用IO多路复用select:可以同时接收所有的连接请求,并且连接状态一直是存活的,直到客户端关闭连…...

【数字IC/FPGA】手撕代码:模3检测器(判断输入序列能否被3整除)
今天我们来手撕一个常见的笔试题,使用的方法是三段式Moore状态机。 题目描述: 输入端口是串行的1bit数据,每个时钟周期进来一位新数据后,实时检查当前序列是否能整除3,若能则输出1,否则输出0。 例如&#…...

最小可行产品需要最小可行架构——可持续架构(三)
前言 最小可行产品(MVP)的概念可以帮助团队专注于尽快交付他们认为对客户最有价值的东西,以便在投入大量时间和资源之前迅速、廉价地评估产品的市场规模。MVP不仅需要考虑产品的市场可行性,还需要考虑其技术可行性,以…...
笔记: 数据结构与算法--时间复杂度二分查找数组
算法复杂度 不依赖于环境因素事前分析法 计算最坏情况的时间复杂度每一条语句的执行时间都按照t来计算 时间复杂度 大O表示法 n 数据量 ; f(n) 实际的执行条数当存在一个n0 , 使得 n > n0,并且 c * g(n) 恒> f(n) : 渐进上界(算法最坏的情况)那么f(n)的时间复杂度 …...

AI绘画教程:Midjourney使用方法与技巧从入门到精通
文章目录 一、《AI绘画教程:Midjourney使用方法与技巧从入门到精通》二、内容介绍三、作者介绍🌤️粉丝福利 一、《AI绘画教程:Midjourney使用方法与技巧从入门到精通》 一本书读懂Midjourney绘画,让创意更简单,让设计…...
Spring-事务管理
1、事务管理 1.1、回滚方式 默认回滚方式:发生运行异常时异常和error时回滚,发生受查(编译)异常时提交。不过,对于受查异常,程序员也可以手工设置其回滚方式 1.2、事务定义接口 1.2.1、事务隔离级别常量 这些常量…...

MySql实战--为什么我的MySQL会“抖”一下
时的工作中,不知道你有没有遇到过这样的场景,一条SQL语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很难复现,它不只随机,而且持续时间还很短…...

【蓝桥杯第十三届省赛B】(部分详解)
九进制转十进制 #include <iostream> #include<math.h> using namespace std; int main() {cout << 2*pow(9,3)0*pow(9,2)2*pow(9,1)2*pow(9,0) << endl;return 0; }顺子日期 #include <iostream> using namespace std; int main() {// 请在此…...

[linux初阶][vim-gcc-gdb] OneCharter: vim编辑器
一.vim编辑器基础 目录 一.vim编辑器基础 ①.vim的语法 ②vim的三种模式 ③三种模式的基本切换 ④各个模式下的一些操作 二.配置vim环境 ①手动配置(不推荐) ②自动配置(推荐) vim是vi的升级版,包含了更加丰富的功能. ①.vim的语法 vim [文件名] ②vim的三种模式 命令…...

【Lazy ORM 框架学习】
Gitee 点赞关注不迷路 项目地址 快速入门 模块所属层级描述快照版本正式版本wu-database-lazy-lambdalambda针对不同数据源wu-database-lazy-orm-coreorm 核心orm核心处理wu-database-lazy-sqlsql核心处理成处理sql解析、sql执行、sql映射wu-elasticsearch-starterESESwu-hb…...

安科瑞路灯安全用电云平台解决方案【电不起火、电不伤人】
背景介绍 近年来 ,随着城市规模的不断扩大 ,路灯事业蓬勃发展。但有的地方因为观念、技术、管理等方面不完善 ,由此引发了一系列安全问题。路灯点多面广 ,一旦漏电就极容易造成严重的人身安全事故。不仅给受害者家庭带来痛苦 &am…...

MYSQL——索引概念索引结构
索引 索引是帮助数据库高效获取数据的排好序的数据结构。 有无索引时,查询的区别 主要区别在于查询速度和系统资源的消耗。 查询速度: 在没有索引的情况下,数据库需要对表中的所有记录进行扫描,以找到符合查询条件的记录&#…...

Linux(CentOS7)配置系统服务以及开机自启动
目录 前言 两种方式 /etc/systemd/system/ 进入 /etc/systemd/system/ 文件夹 创建 nginx.service 文件 重新加载 systemd 配置文件 编辑 配置开机自启 /etc/init.d/ 进入 /etc/init.d/ 文件夹 创建 mysql 文件 编写脚本内容 添加/删除系统服务 配置开机自启 …...

0 决策树基础
目录 1 绪论 2 模型 3 决策树面试总结 1 绪论 决策树算法包括ID3、C4.5以及C5.0等,这些算法容易理解,适用各种数据,在解决各种问题时都有良好表现,尤其是以树模型为核心的各种集成算法,在各个行业和领域都有广泛的…...

Linux速览(2)——环境基础开发工具篇(其一)
本章我们来介绍一些linux的常用工具 目录 一. Linux 软件包管理器 yum 1.什么是软件包? 2. 查看软件包 3. 如何安装软件 4. 如何卸载软件 5.yum补充 6. 关于 rzsz 二. Linux编辑器-vim使用 1. vim的基本概念 2. vim的基本操作 3. vim正常模式命令集 4. vim末行模式…...

AWS SES发送邮件时常见的错误及解决方法?
AWS SES发送邮件如何做配置?使用AWS SES发信的限制? 在使用AWS SES发送邮件时,可能会遇到一些常见的错误。AokSend将介绍一些常见的AWS SES发送邮件错误及其相应的解决方法,帮助用户更好地利用AWS SES进行邮件发送。 AWS SES发送…...
视频基础学习三——视频帧率、码率与分辨率
文章目录 前言一、介绍1.定义2.三者之间的关系 总结 前言 在之前的文章中详细介绍了一些关于图像的色彩与格式,而视频其实就是由一张张图片进行展示呈现出来的。 我们会经常说一段视频的质量好不好,而什么是视频的质量呢?博主的个人理解就是…...

大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...

STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...

HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...