计算机网络第2章(物理层)
计算机网络第2章(物理层)
- 2.1 物理层的基本概念
- 2.2 物理层下面的传输媒体
- 2.2.1 导引型传输媒体
- 2.2.2 非导引型传输媒体
- 2.3 传输方式
- 2.3.1 串行传输和并行传输
- 2.3.2 同步传输和异步传输
- 2.3.3 单向通信(单工)、双向交替通信(半双工)和双向同时通信(全双工)
- 2.4 编码与调制
- 2.4.1 传输媒体与信道的关系
- 2.4.2 常用编码
- 2.4.3 调制
- 2.4.4 码元
- 2.5 信道的极限容量
- 补充:信道复用技术
- 频分复用、时分复用和统计时分复用
- 时分复用TDM (Time Division Multiplexing)
- 波分复用
- 码分复用
2.1 物理层的基本概念

2.2 物理层下面的传输媒体
传输媒体也称为传输介质或传输媒介,它就是数据传输系统中在发送器和接收器之间的物理通路。传输媒体课分为两大类,即导引型传输媒体和非导引型传输媒体。
传输媒体不属于计算机网络体系结构的任何一层。如果非要将它添加到体系结构中,那只能将其放置到物理层之下。
2.2.1 导引型传输媒体
在导引型传输媒体中,电磁波被导引沿着固体媒体传播。
(1)同轴电缆

(2)双绞线

(3)光纤


多模光纤
可以存在多条不同角度入射的光线在一条光纤中传输。这种光纤就称为多模光纤。
单模光纤
若光纤的直径减小到只有一个光的波长,则光纤就像一根波导那样,它可使光线一直向前传播,而不会产生多次反射。这样的光纤称为单模光纤。
(4)电力线

2.2.2 非导引型传输媒体
非导引型传输媒体是指自由空间。

(1)无线电波

(2)微波

(3)红外线

(4)可见光

2.3 传输方式
2.3.1 串行传输和并行传输

串行传输:
- 数据是一个比特一个比特依次发送的,因此在发送端与接收端之间,只需要一条数据传输线
路即可
并行传输:
- 一次发送n个比特,因此,在发送端和接收端之间需要有n条传输线路
- 并行传输的优点是比串行传输的速度n倍,但成本高
数据在传输线路上的传输采用是串行传输,计算机内部的数据传输常用并行传输
2.3.2 同步传输和异步传输

同步传输:
- 数据块以稳定的比特流的形式传输。字节之间没有间隔
- 接收端在每个比特信号的中间时刻进行检测,以判别接收到的是比特0还是比特1
- 由于不同设备的时钟频率存在一定差异,不可能做到完全相同,在传输大量数据的过程中,所产生的判别时刻的累计误差,会导致接收端对比特信号的判别错位
所以要使收发双发时钟保持同步

异步传输
- 以字节为独立的传输单位,字节之间的时间间隔不是固定
- 接收端仅在每个字节的起始处对字节内的比特实现同步
- 通常在每个字节前后分别加上起始位和结束位
2.3.3 单向通信(单工)、双向交替通信(半双工)和双向同时通信(全双工)
在许多情况下,我们要使用“信道(channel)”这一名词。信道和电路并不等同。信道一般都是用来表示向某一个方向传送信息的媒体。因此,一条通信电路往往包含一条发送信道和一条接收信道。
从通信的双方信息交互的方式来看,可以有以下三种基本方式:
(1)单向通信
又称为单工通信,即只能有一个方向的通信而没有反方向的交互。无线电广播或有线电以及电视广播就属于这种类型

(2)双向交替通信
又称为半双工通信,即通信的双方可以发送信息,但不能双方同时发送(当然也就不能同时接收)。这种通信方式使一方发送另一方接收,过一段时间后可以再反过来

(3)双向同时通信
又称为全双工通信,即通信的双发可以同时发送和接收信息。
**区别:**单向通信只需要一条信道,而双向交替通信或双向同时通信则需要两条信道(每个方向各一条)双向同时通信的传输效率最高
2.4 编码与调制

常用术语
- 数据 (data) —— 运送消息的实体。
- 信号 (signal) —— 数据的电气的或电磁的表现。
- 模拟信号 (analogous signal) —— 代表消息的参数的取值是连续的。
- 数字信号 (digital signal) —— 代表消息的参数的取值是离散的。
- 码元 (code) —— 在使用时间域(或简称为时域)的波形表示数字信号时,代表不同离散数值的基本波形。
- 基带信号(即基本频带信号)—— 来自信源的信号。像计算机输出的代表各种文字或图像文件的数据信号都属于基带信号。
- 基带信号往往包含有较多的低频成分,甚至有直流成分,而许多信道并不能传输这种低频分量或直流分量。因此必须对基带信号进行调制 (modulation)。
在计算机网络中,常见的是将数字基带信号通过编码或调制的方法在相应信道进行传输

2.4.1 传输媒体与信道的关系
信道的几个基本概念
- 信道 —— 一般用来表示向某一个方向传送信息的媒体。
- 单向通信(单工通信)——只能有一个方向的通信而没有反方向的交互。
- 双向交替通信(半双工通信)——通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)。
- 双向同时通信(全双工通信)——通信的双方可以同时发送和接收信息。
严格来说,传输媒体不能和信道划等号
对于单工传输,传输媒体只包含一个信道,要么是发送信道,要么是接收信道

对于半双工和全双工,传输媒体中要包含两个信道,一个发送信道,另一个是接收信道

如果使用信道复用技术,一条传输媒体还可以包含多个信道
2.4.2 常用编码

- 正电平表示比特1/0
- 负电平表示比特0/1
中间的虚线是零电平,所谓不归零编码,就是指在整个码元时间内,电平不会出现零电平
实际比特1和比特0的表示要看现实怎么规定

这需要发送方的发送与接收方的接收做到严格的同步 - 需要额外一根传输线来传输时钟信号,使发送方和接收方同步,接收方按时钟信号的节拍来逐个接收码元
- 但是对于计算机网络,宁愿利用这根传输线传输数据信号,而不是传输时钟信号
由于不归零编码存在同步问题,因此计算机网络中的数据传输不采用这类编码!

- 每个码元传输结束后信号都要“归零”,所以接收方只要在信号归零后进行采样即可,不需要单独的时钟信号。
- 实际上,归零编码相当于把时钟信号用“归零”方式编码在了数据之内,这称为“自同步”信号。
- 但是,归零编码中大部分的数据带宽,都用来传输“归零”而浪费掉了。
归零编码虽然自同步,但编码效率低

在每个码元时间的中间时刻,信号都会发生跳变
- 负跳变表示比特1/0
- 正跳变表示比特0/1
- 码元中间时刻的跳变即表示时钟,又表示数据
实际比特1和比特0的表示要看现实怎么规定
传统以太网使用的就是曼切斯特编码

在每个码元时间的中间时刻,信号都会发送跳变,但与曼彻斯特不同
- 跳变仅表示时钟
- 码元开始处电平是否变换表示数据
(1)变化表示比特1/0
(2)不变化表示比特0/1
实际比特1和比特0的表示要看现实怎么规定
比曼彻斯特编码变化少,更适合较高的传输速率
总结

2.4.3 调制
数字信号转换为模拟信号,在模拟信道中传输,例如WiFi,采用补码键控CCK/直接序列扩频DSSS/正交频分复用OFDM等调制方式。
模拟信号转换为另一种模拟信号,在模拟信道中传输,例如,语音数据加载到模拟的载波信号中传输。
频分复用FDM技术,充分利用带宽资源。
基本调制方法

- 调幅AM:所调制的信号由两种不同振幅的基本波形构成。每个基本波形只能表示1比特信息量。
- 调频FM:所调制的信号由两种不同频率的基本波形构成。每个基本波形只能表示1比特信息量。
- 调相PM:所调制的信号由两种不同初相位的基本波形构成。每个基本波形只能表示1比特信息量。
但是使用基本调制方法,1个码元只能包含1个比特信息
混合调制




上图码元所对应的4个比特是错误的,码元不能随便对应4个比特

2.4.4 码元
在使用时间域的波形表示数字信号时,代表不同离散数值的基本波形。
2.5 信道的极限容量
- 任何实际的信道都不是理想的,在传输信号时会产生各种失真以及带来多种干扰。
- 码元传输的速率越高,或信号传输的距离越远,或传输媒体质量越差,在信道的输出端的波形的失真就越严重

失真的原因:
- 码元传输的速率越高
- 信号传输的距离越远
- 噪声干扰越大
- 传输媒体质量越差


奈氏准则和香农公式对比:

补充:信道复用技术
频分复用、时分复用和统计时分复用
复用 (multiplexing) 是通信技术中的基本概念。
它允许用户使用一个共享信道进行通信,降低成本,提高利用率。

频分复用 FDM (Frequency Division Multiplexing)
- 将整个带宽分为多份,用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。
- 频分复用的所有用户在同样的时间占用不同的带宽资源(请注意,这里的“带宽”是频率带宽而不是数据的发送速率)。

时分复用TDM (Time Division Multiplexing)
- 时分复用则是将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM 帧中占用固定序号的时隙。
- 每一个用户所占用的时隙是周期性地出现(其周期就是TDM帧的长度)的。
- TDM 信号也称为等时 (isochronous) 信号。
- 时分复用的所有用户在不同的时间占用同样的频带宽度。
-
- 时分复用可能会造成线路资源的浪费
(1)使用时分复用系统传送计算机数据时,由于计算机数据的突发性质,用户对分配到的子信道的
利用率一般是不高的。

统计时分复用 STDM (Statistic TDM)

波分复用
波分复用 WDM(Wavelength Division Multiplexing

码分复用
码分复用 CDM (Code Division Multiplexing)
- 常用的名词是码分多址 CDMA (Code Division Multiple Access)。
- 各用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰。
- 这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。
相关文章:
计算机网络第2章(物理层)
计算机网络第2章(物理层) 2.1 物理层的基本概念2.2 物理层下面的传输媒体2.2.1 导引型传输媒体2.2.2 非导引型传输媒体 2.3 传输方式2.3.1 串行传输和并行传输2.3.2 同步传输和异步传输2.3.3 单向通信(单工)、双向交替通信&#x…...
windows钩子保护自身进程不被破坏
代码来自于《windows核心编程》作者: APIHOOK.h头文件: #pragma once #include <Windows.h> class CAPIHOOK { public: CAPIHOOK(LPTSTR lpszModName, LPSTR pszFuncName, PROC pfnHook, BOOL bExcludeAPIHookMod TRUE); ~CAPIHOOK(void); p…...
Linux系统查看文件系统类型C代码
系统:VM Ubuntu 实现Linux系统下通过输入指定路径查看文件系统类型,MSDOS_SUPER_MAGIC,NTFS_SUPER_MAGIC和EXT4_SUPER_MAGIC这些宏定义并不是在sys/mount.h中定义的,它们实际上是在linux/magic.h头文件中定义的。不同系统下宏定义可能不一样&…...
Python中的正则表达式
大家好,今天我们将通过详细的解释和代码示例,探讨如何在Python中使用正则表达式。 介绍 正则表达式(regex)是一种用于操作文本和数据的强大工具,它们提供了一种简洁灵活的方式来“匹配”(指定和识别&…...
第六章,创作文章
6.1添加创作页面 <template><div class="blog-container"><div class="blog-pages"><div class="col-md-12 panel"><div class="panel-body"><h2 class="text-center">创作文章&l…...
Win10c盘满了怎么清理?快速清理,5个方法!
“快救救孩子吧!我的电脑是win10系统的,现在c盘满了,根本没法继续使用电脑了。怎么才能快速的释放内存呢?非常着急!感谢大家!” C盘是Windows系统中重要的分区,当其存储空间满了,可能…...
回归预测 | MATLAB实现GWO-BP灰狼算法优化BP神经网络多输入单输出回归预测(多指标,多图)
回归预测 | MATLAB实现GWO-BP灰狼算法优化BP神经网络多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现GWO-BP灰狼算法优化BP神经网络多输入单输出回归预测(多指标,多图)效果一览基本介绍程序…...
docker 06(docker compose)
一、服务编排 二、docker compose...
非阻塞重试与 Spring Kafka 的集成测试
如何为启用重试和死信发布的消费者的 Spring Kafka 实现编写集成测试。 Kafka 非阻塞重试 Kafka 中的非阻塞重试是通过为主主题配置重试主题来完成的。如果需要,还可以配置其他死信主题。如果所有重试均已用尽,事件将转发至 DLT。公共领域提供了大量资…...
基于 Debian 12 的MX Linux 23 正式发布!
导读MX Linux 是基于 Debian 稳定分支的面向桌面的 Linux 发行,它是 antiX 及早先的 MEPIS Linux 社区合作的产物。它采用 Xfce 作为默认桌面环境,是一份中量级操作系统,并被设计为优雅而高效的桌面与如下特性的结合:配置简单、高…...
Nginx代理功能与负载均衡详解
序言 Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细。 Nginx代理服务的配置说明 1、上一篇中我们在http…...
部署问题集合(特辑)虚拟机常用命令
基础 查看ip:ip addr或ipconfig压缩:tar -zcvf redis-3.2.8.tar.gz redis-3.2.8/ 注意:-zcvf对应gz,-vcf对应tar 解压:tar -zxvf redis-3.2.8.tar.gz压缩zip:zip nginx.zip nginx.txt nginx2.txt解压zip&a…...
【Git】如何将本地文件进行Git仓库归档
Git 全局设置 git config --global user.name "mcihael" git config --global user.email "michael520.com"创建新版本库 git clone gitcode.xxxxxx.git cd branch-name touch README.md git add README.md git commit -m "add README" git pu…...
uniapp 使用腾讯视频 的 坑
1. 版本号的问题 注意 1.X.X不维护了 , 需要升级要 2.X.X 2. 官网的 组件事件 调用需要去掉bind 才能调用 官网地址:腾讯视频 | 小程序插件 | 微信公众平台...
LinkedList
LinkedList的模拟实现(底层是一个双向链表)LinkedList使用 LinkedList的模拟实现(底层是一个双向链表) 无头双向链表:有两个指针;一个指向前一个节点的地址;一个指向后一个节点的地址。 节点定…...
创作新纪元:知乎、阅文加码AI大模型,撬动创作者经济
输入几个关键词就能生成一篇文章、一篇新闻、一篇小说,ChatGPT自诞生以来文本生成能力一直备受赞誉,ChatGPT要替代记者、编辑、作家的言论愈演愈烈,甚至有一些互联网企业宣布砍掉记者、编辑、文案等岗位全面拥抱AIGC。 目前ChatGPT是否会全面…...
PAT(Advanced Level) Practice(with python)——1067 Sort with Swap(0, i)
Code # 输入有毒,需避坑 # N int(input()) L list(map(int,input().split())) N L[0] L L[1:] res 0 for i in range(1,N):while L[0]!0:# 把所有不在正常位置下的数换到正常t L[0]L[0],L[t] L[t],L[0]res1if L[i]!i:# 换完全后如果对应位置下的数不是目标…...
Python爬取斗罗大陆全集
打开网址http://www.luoxu.cc/dmplay/C888H-1-265.html F12打开Fetch/XHR,看到m3u8,ts,一眼顶真,打开index.m3u8 由第一个包含第二个index.m3u8的地址,ctrlf在源代码中一查index,果然有,不过/…...
前馈神经网络解密:深入理解人工智能的基石
目录 一、前馈神经网络概述什么是前馈神经网络前馈神经网络的工作原理应用场景及优缺点 二、前馈神经网络的基本结构输入层、隐藏层和输出层激活函数的选择与作用网络权重和偏置 三、前馈神经网络的训练方法损失函数与优化算法反向传播算法详解避免过拟合的策略 四、使用Python…...
顺序栈Sequential-stack
0、节点结构体定义 typedef struct SqStack{int *base;int *top; } SqStack; 1、初始化 bool InitStack(SqStack &S) {S.base new int[Maxsize]; //eg. #define Maxsize 100if(!S.base){return false;}S.top S.base;return true; } 2、入栈 bool Push(SqStack &…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
前言:本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中,跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南,你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案,并结合内网…...
热门Chrome扩展程序存在明文传输风险,用户隐私安全受威胁
赛门铁克威胁猎手团队最新报告披露,数款拥有数百万活跃用户的Chrome扩展程序正在通过未加密的HTTP连接静默泄露用户敏感数据,严重威胁用户隐私安全。 知名扩展程序存在明文传输风险 尽管宣称提供安全浏览、数据分析或便捷界面等功能,但SEMR…...
结构化文件管理实战:实现目录自动创建与归类
手动操作容易因疲劳或疏忽导致命名错误、路径混乱等问题,进而引发后续程序异常。使用工具进行标准化操作,能有效降低出错概率。 需要快速整理大量文件的技术用户而言,这款工具提供了一种轻便高效的解决方案。程序体积仅有 156KB,…...
