【计算机网络】物理层
文章目录
- 物理层的基本概念
- 传输媒体
- 同轴电缆
- 双绞线
- 光纤
- 电力线
- 电磁波
- 红外线
- 可见光
- 传输方式
- 串行传输和并行传输
- 同步传输和异步传输
- 单工,半双工以及全双工通信
- 编码与调制
- 常用编码
- 不归零编码
- 归零编码
- 曼彻斯特编码
- 差分曼彻斯特编码
- 基本调制
- 混合调制
- 信道的极限容量
- 奈氏准则
- 香农公式
物理层的基本概念
在计算机网络中用来连接各种网络设备的传输媒体,种类众多,大致可以分为两类:

- 导引型传输媒体
- 常见的有双绞线,同轴电缆,光纤
- 非导引型传输媒体
- 常见的是微波通信,例如使用2.4G赫兹和5.8g赫兹频段的WiFi
计算机网络体系结构中的物理层,就是要解决在各种传输媒体上传输比特0和1的问题,进而给数据链路层提供透明传输比特流的服务。所谓透明是指数据链路层看不见,也无需看见物理层究竟使用的是什么方法来传输比特0和1的,他只管享受物理层提供的比特流传输服务即可。

物理层为了解决在各种传输媒体上传输比特0和1的问题,主要有以下4个任务,分别是:

机械特性:指明接口所用接线器的形状和尺寸,引脚数目和排列顺序,固定和锁定装置。电气特性:指明在接口电缆的各条线上,出现的电压的范围。功能特性:指明某条线上出现的某一电瓶的电压表示何种意义。过程特性:指明对于不同功能的各种可能事件的出现顺序。
由于传输媒体的种类众多,例如双脚线、光纤等,物理连接方式也很多,例如点对点连接,广播连接等。因此物理层协议种类就比较多,每种物理层协议都包含了上述4个任务的具体内容。
传输媒体
请大家注意,传输媒体不属于计算机网络体系结构的任何一层,如果非要将它添加到体系结构中,那只能将其放在物理层之下
传输媒体可分为两类:
- 导引型传输媒体:电磁波被导引沿着固体媒体传播
- 同轴电缆,双脚线、光纤、电力线
- 非导引型传输媒体:自由空间可使用的电磁波
- 无线电波、微博、红外线、可见光
同轴电缆
我们首先来看导引型传输媒体,同轴电缆,这是一根同轴电缆的示意图,这是内导体铜制芯线,可以是单股实心线或者是多股绞和线,这是绝缘层,这是网状编织的外导体屏蔽层,这是绝缘保护套层,这是同轴电缆的横切面,可以看出各层都是共圆心的,也就是同轴心的,这就是同轴电缆名称的由来。

同轴电缆有两类,一类是50欧阻抗的基带同轴电缆,用于数字传输,在早期局域网中广泛使用。
另一类是75欧阻抗的宽带同轴电缆,用于模拟传输,目前主要用于有线电视的入户线
铜轴电缆价格较贵,且布线不够灵活和方便。随着集线器的出现,在局域网领域双绞线取代了同轴电缆。
双绞线
我们来看双绞线,下面是无屏蔽双脚线电缆和屏蔽双脚线电缆的示意图:

双绞线是最古老也是最常用的传输媒体,把两根互相绝缘的铜导线并排放在一起,然后按照一定规则搅合起来,就构成了双绞线。例如图中所示的这根无屏蔽双绞线电缆,包含8根通道线,每两根搅合成一条双脚线,蓝色线和蓝白双色线进行搅和,橙色线和橙白双色线进行搅和,绿色线和绿白双色线进行搅合,棕色线和棕白双色线进行搅和。搅和有两个作用,一个是抵御部分来自外界的电磁干扰,另一个是减少相邻导线的电磁干扰,
屏蔽双绞线电缆比无屏蔽双绞线电缆,增加了金属丝编织的屏蔽层,提高了抗电磁干扰的能力。当然了价格也要更贵一些
这是常用的绞和线的类别,带宽和典型应用。目前家庭局域网主流带宽为1G比特每秒,选用大品牌质量好的超5类双绞线电缆可以满足。考虑到未来发展,在经济条件允许的情况下,建议选用6a类双脚线电缆,以满足万兆局网的需求。
光纤
再来看光纤,这是一根室外四芯光缆的示意图,这是它的内部结构图。由于光纤非常细,因此必须将它做成很结实的光缆,一根光缆少则只有一根光纤,多则可包括数十甚至是数百根光纤,再加上加强圈和填充物,就可以大大提高机械强度,必要时还可放入远供电源线,最后加上包带层和外护套,就可以使抗压强度达到几千克,完全可以满足工程施工的强度要求。
光纤的纤芯非常细,多模光纤的纤芯直径有50微米和62.5微米,单模光纤的纤芯直径为9微米,而纤芯外面的包层也非常细,直径不超过125微米。在光纤通信中常用三个波段的中心,分别位于0.85微米、1.3微米和1.55微米。
光纤有很多优点,例如:
- 通信容量非常大,传输损耗小,在远距离传输时更加经济
- 抗雷电和电磁干扰性能好,这在有大电流脉冲干扰的环境下尤为重要。
- 无串音干扰,保密信号不易被窃听,
- 体积小,重量轻,例如一公里长的1000段双脚线电缆,约重8000公斤,而同样长度但容量大得多的一段两星光缆仅撞100公斤
当然了光纤也有自身的缺点,例如割接光纤需要专用设备,目前光电接口的价格还比较贵。

接下来我们来看看光在光纤中传输的基本原理,这是纤芯,它是由非常透明的石英玻璃拉成的细丝,这是包裹在纤芯外层的包层,它是折射率比光纤低的玻璃封套

在发送端可以采用发光二极管或半导体激光器作为光源,在接收端可以采用光电二极管或激光检波器检测光脉冲。当光从高折射率的媒体射向低折射率的媒体时,其折射角将大于入射角,如图所示。因此如果入射角足够大,就会出现全反射,也就是光碰到包层时就会反射回纤芯。该过程反复进行,光也就沿着光纤传输下去。


实际上只要从纤芯中射到纤芯表面的光线的入射角,大于某一个临界角度,就可产生全反射,因此可以存在许多条不同角度入射的光线,在一条光纤中进行传输。这种光纤称为多模光纤。由于光的色散问题,光在多模光纤中传输一定距离后,必然产生信号失真,也就是脉冲展宽,如图所示,因此多模光纤只适合近距离传输。例如在建筑物内,多模光纤对光源的要求不高,可以使用比较便宜的发光二极管,相应的可采用光电二极管检测光脉冲

若光纤的直径减小到只有一个光的波长,则光纤就像一根波导那样,它可使光线一直向前传播,而不会产生多次反射。这样的光纤称为单模光纤,单模光纤没有模式色散,在1.3微米波长附近,材料色散和波导色散大小相等,符号相反,两者正好抵消,没有脉冲展宽问题。如图所示。单模光纤适合长距离传输,且衰减小,但它的制造成本高,对光源要求也高,需要使用昂贵的半导体激光器作为光源,相应的需要采用激光剪播器检测光脉冲。

电力线
我们再来看看采用电力线作为传输媒体的情况,这并不是什么新技术,早在20世纪20年代初期就出现了。应用电力线传输信号的实例最早是电力线电话。
目前如果要构建家庭高性能局域网,采用电力线作为传输媒体,是不能满足要求的。
对于装修时没有进行网络布线的家庭,可以采用这种方式。
对于一些采用独立房间进行办公的企业来说,每间办公室的电脑数量不多,而又不希望跨办公室进行布线,也可以采取这种方式。
每个办公室只需根据需求,在电源插座上插入一个或多个电力猫即可。

电磁波
下面我们来看非导引型传输媒体,也就是自由空间,我们可以利用电磁波在自由空间的传播来传送数据信息,这是电磁波的频谱

这段频率范围不用于电信领域,而这一段频率范围的电磁波很难产生和调制,由于频率非常高,波长就非常短,因此穿透障碍物的能力就非常弱,更为严重的是该频段的电磁波对生物是有害的,因此人们很难利用该频率范围的电磁波进行数据传输,这段频率范围的电磁波可以通过调制波的振幅、频率或相位来传输信息

这是国际电信联盟ITU对电磁波频段的划分:

从极低频到甚低频,也就是从极长波到甚长波,这些频段并不用于电信领域
从低频到甚高频,也就是从长波到米波,这些频段的电磁波又称为无线电波,用于国际广播,海事和航空通讯,电台广播、电视广播等

从特高频到极高频,也就是从分米波到毫米波,这些频段的电磁波又称为微波,用于无线电话,无线网络,雷达,人造卫星接收,射电天文、人体扫描等。
无线电波中的低频和中频频段,主要利用地面波进行传输,而高频和甚高频频段主要是靠电离层的反射

微波通信在数据通信中占有重要地位,频率范围为300兆赫兹到300g赫兹,也就是波长一米到一毫米,但主要使用2~40级赫兹的频率范围。微波在空间主要是直线传播,由于微波会穿透电离层而进入宇宙空间,因此它不能经过电离层的反射传播到地面上很远的地方。传统的微波通信主要有两种方式,一种是地面微波接力通信,另一种是卫星通信。
由于微波在空间是直线传播的,而地球表面是个曲面,因此其传播距离受到限制,一般只有50公里左右,但若采用100米高的天线塔,则传播距离可增大到100公里。为实现远距离通信,必须在一条微波通信信道的两个终端之间建立若干个中继站,中继站把前一站送来的信号经过放大后,再发送到下一站。故称为接力,
常用的卫星通信方法是在地球站之间,利用位于约36,000公里高空的人造同步地球卫星,作为中继器的一种微波接力通信。其最大特点是通信距离远,相应的传播时延也比较大,一般在250~300毫秒之间。除同步卫星外,低轨道卫星通信系统已开始在空间部署,并构成了空间高速链路

红外线
利用红外线来传输数据,相信大家并不陌生,很多家用电器,例如电视空调等都配套有红外遥控器,以前的笔记本电脑基本都带有红外接口,可以进行红外通信
红外通信属于点对点无线传输,中间不能有障碍物,传输距离短,传输速率也很低。现在笔记本电脑已经取消了红外接口,但很多智能手机还带有红外接口,以方便用户对电视空调等家用电器进行红外遥控。

可见光
互联网时代,宅男宅女们最大的梦想就是世界上任何一个角落都遍布着WiFi,要是再有电源,那这一辈子都值了,人们已经习惯了有WiFi的日子,可是现在告诉你有一种比WiFi更高大上的LIFI出现了,你知道吗?LIFI就是传说中的可见光通信,通俗的来说就是LED灯上LIFI。最新的OLEDCOMMON LIFI技术,以每秒开关千万次LE灯来调制光信号,上网和数据传输完全不在话下,完全不用担心眼睛被晃瞎,人的肉眼绝对是分辨不出来的。
好了,大家觉得LIFI能够取代WiFi吗?短时期内应该是无法取代的,想想看如果两个房间内的网络设备要基于LIFI通信,如何做到可见光的同步,目前LIFI还处于实验研究阶段,但其应用前景被很多人看好。
最后还要提醒大家注意,要使用某一段无线电频谱进行通信,通常必须得到本国政府有关无线电频谱管理机构的许可证。
我国的无线电频谱管理机构是工信部无线电管理局,美国的无线电频谱管理机构,是联邦通讯委员会FCC,
也有一些无线电频段是可以自由使用的,成为ISM频段,也就是工业科学医疗频段,这是美国的ISM频段,现在的无线局域网就使用其中的2.4G赫兹和5.8g赫兹频段,各国的ISM标准可能略有不同。

传输方式
我们介绍几种传输方式,他们是:
- 串行传输和并行传输
- 同步传输和异步传输
- 单工,半双工以及全双工通信
串行传输和并行传输
-
串行传输是指数据是一个个比特依次发送的,因此在发送端和接收端之间只需要一条数据传输线路即可。
-
并行传输是指一次发送n个比特,而不是一个比特。为此在发送端和接收端之间需要有n条传输线路
并行传输的优点是速度为串行传输的n倍,但也存在一个严重的缺点,即成本高。

在计算机网络中,数据在传输线路上的传输采用的是串行传输
计算机内部的数据传输常采用并行传输方式,例如CPU与内存之间通过总线进行数据传输,常见的数据总线宽度有8位、16位、32位和64位。
同步传输和异步传输
采用同步传输方式,数据块以稳定的比特流的形式传输,字节之间没有间隔,接收端在每个比特信号的中间时刻进行检测,以判别接收到的是比特0还是比特1。
由于不同设备的时钟频率存在一定差异,不可能做到完全相同,在传输大量数据的过程中,所产生的判别时刻的累积误差,会导致接收端对比特信号的判别错位。

因此需要采取方法使收发双方的时钟保持同步,实现收发双方时钟同步的方法主要有两种:
- 一种是外同步,也就是在收发双方之间添加一条单独的时钟信号线,发送端在发送数据信号的同时,另外发送一路时钟同步信号,接收端按照时钟同步信号的节奏来接收数据。
- 另一种是内同步,也就是发送端将时钟同步信号编码到发送数据中一起传输。例如传统以太网所采用的就是曼彻斯特编码.
采用异步传输方式时,以字节为独立的传输单位,字节之间的时间间隔不是固定的,接收端仅在每个字节的起始处对字节内的比特实现同步。
为此通常要在每个字节前后分别加上起始位和结束位,这里异步是指字节之间异步,也就是字节之间的时间间隔不固定,但字节中的每个比特仍然要同步,也就是个比特的持续时间是相同的。
单工,半双工以及全双工通信
- 单工通信又称为单向通信,通信双方只有一个数据传输方向,比如无线电广播采用的就是这种通信方式
- 半双工又称为双向交替通信,通信双方可以相互传输数据,但不能同时进行。例如对讲机采用的就是这种通信方式
- 全双工通信又称为双向同时通信,双方可以同时发送和接收信息,例如电话采用的就是这种通信方式,
- 单向通信只需要一条信道,而双向交替通信或双向同时通信则都需要两条信道,每个方向各一条,

编码与调制
在计算机网络中计算机需要处理和传输用户的文字、图片、音频和视频,他们可以统称为消息。
数据是运送消息的实体,我们人类比较熟悉的是十进制数据,而计算机只能处理二进制数据,也就是比特0和比特1,计算机中的网卡将比特0和比特1变换成相应的电信号,发送到网线,也就是说信号是数据的电磁表现,由信息源发出的原始电信号称为基带信号。此时的信号还没经过编码与调制。

基带信号又可分为两类:
- 一类是数字基带信号,例如计算机内部CPU与内存之间传输的信号
- 另一类是模拟基带信号,例如麦克风收到声音后产生的音频信号
信号需要在信道中进行传输,信道可分为数字信道和模拟信道两种。对于数字基带信号在两种信道上传输:
- 在不改变信号性质的前提下,仅对数字基带信号的波形进行变换,称为编码。编码后产生的信号仍为数字信号,可以在数字信道中传输,例如以太网使用曼彻斯特编码,4B/5B、8B/10B等编码
- 把数字基带信号的频率范围搬移到较高的频段,并转换为模拟信号,称为调制。调制后产生的信号是模拟信号,可以在模拟信道中传输。例如WiFi使用补码键控,直接序列扩频,正交评分复用等调制方法。
对于模拟基带信号在两种信道上传输:对于模拟基带信号的处理,也有编码和调制两种方法
- 对模拟基带信号进行编码的典型应用是:对音频信号进行编码的脉码调制PCM。也就是将模拟音频信号通过采样,量化,编码这三个步骤进行数字化
- 对模拟信号进行调制的典型应用是将语音数据加载到模拟的载波信号中传输,例如传统的电话,另一个是频分复用FDM技术,可以充分利用带宽资源。
- 调制方法有:例如WIFI,采用补码键控CCK/直接序列扩频DSSS/正交频分服用OFDM等

接下来我们介绍码元的概念:在使用时间域的波形表示数字信号时,代表不同离散数值的基本波形成为码元。简单来说码元就是构成信号的一段波形,例如上图左下角有一个调频信号,有绿色段波形是构成该信号的一个基本波形,我们可称其为码元,它可以表示比特0,当然也可以表示比特1,蓝色段波形是构成该信号的另一个基本模型,也称为码元。它可以表示比特1,可见该信号由两种码元构成。
顺便提一下传输媒体与信道的关系:严格来说,传输媒体和信道不能直接划等号
-
对于单工传输,传输媒体中只包含一个信道,要么是发送信道,要么是接收信道。
-
而对于半双工和全双工传输,传输媒体中要包含两个信道,一个是发送信道,另一个是接收信道。

-
如果使用信道复用技术,一条传输媒体还可以包含多个信道,在计算机网络中常见的是将数字基带信号通过编码或调制的方法在相应信道进行传输。
常用编码

接下来我们对这些常用编码一一进行说明。
不归零编码
以下待传输的比特流,和采用不归零编码产生的该比特流的相应信号。正电平表示比特1,负电平表示比特0,这是0电平,所谓不归零就是指在整个码元时间内电瓶不会出现零电平,例如该码元在其时间内全部是正电平,而该码元在其时间内全部是负点平。
请大家思考一下接收端如何判断出这是两个码元,而这是三个码元?
相同码元之间因为没有电位变化,所以无法将相邻码元区分开来,故生此疑问

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

很明显,每个码元传输结束后信号都要归零,所以接收方只要在信号归0后进行采样即可,不需要单独的时钟信号。实际上归零编码相当于把时钟信号用归零方式编码在了数据之内,这称为自同步信号,但是归零编码中大部分的数据带宽都用来传输归零而浪费掉了。
也就是说归零编码的优点是自同步,但缺点是编码效率低
曼彻斯特编码
曼彻斯特编码如下图所示,在每个码元时间的中间时刻,信号都会发生跳变,比如负跳变表示比特1,正跳变表示比特0(也可以负跳变表示比特0,正跳变表示比特1),码元中间时刻的跳变,既表示时钟,要表示数据,传统以太网使用的就是曼彻斯特编码

差分曼彻斯特编码
下图为差分曼彻斯特编码,如图所示在每个码元时间的中间时刻,信号都会发生跳变,与曼彻斯特编码不同,跳变仅表示时钟,而用码元开始处电平是否发生变化来表示数据。

如图所示,这是每个码元的开始处和结束处。

依据码元开始处电平是否发生变化来表示比特0或比特1。
差分曼彻斯特编码比曼彻斯特编码变化少,更适合较高的传输速率
练习题目;
10BaseT中的10表示带宽为10兆比特每秒,base表示基带传输,T表示双脚线,这种以太网使用曼彻斯特编码,根据曼彻斯特编码的特点,也就是每个码元在其中间时刻发生跳变,可以划分出所给信号中的各码元。至于正跳变表示1还是0,负跳变表示0还是1,没有具体规定,可以自行假设。
我们假设正跳变表示1,负跳变表示0,那么该码元表示1,该码元表示一,该码元表示0,该码元表示0,该码元表示1,至此可以发现没有一个答案是符合的,那说明我们的假设有错误
那么应该是正跳变表示0,负跳变表示1,写出各码元所表示的比特,现在可以看出正确答案是a
基本调制
下面我们介绍基本调制方法,下图是待传输的数字基带信号,也就是来自信源的原始数字信号,我们要使用模拟信道来传输,因此需要将数字基带信号通过调制方法,调制成可以在模拟信道中传输的模拟信号:
- 调幅所产生的模拟信号,无载波输出表示比特0,有载波输出表示比特1
- 调频所产生的模拟信号。频率f1的波形表示比特0,频率f2的波形表示比特1,
- 调相所产生的模拟信号。初向位0度的波形表示比特0,初向位180度(Π)的波形表示比特1。

混合调制
很明显使用基本调制方法,一个码元只能表示或者说包含一个比特信息,那么如何能使一个码元包含更多的比特?
可以采用混合调制的方法,因为频率和相位是相关的,也就是说频率是相位随时间的变化率,所以一次只能调制频率和相位两个中的一个
通常情况下,相位和振幅可以结合起来一起调制,称为正交振幅调制QAM。
我们来看属于正交振幅调制的qm16,这种调制方法所调制出的波形可以有12种相位,每种相位有一或两种振幅可选。我们可在星座图中画出该调制方法所产生的码元,该点就要表示其中的一个码元,它与圆心连线的距离可看作是振幅,连线与横坐标的夹角,可看作是相位

这是QAM16可调制出的16种码元。请大家思考一下,每个码元可以包含几个比特?由于qm16可以调制出16种码元,也就是16种波形,则每种码元可以对应表示4个比特

那么每个码元与4个比特的对应关系可以随便定义吗?如图所示,这是我们随便定义的,每个码元所对应的4个比特

假设ABCDE是接收端接收到的5个码元,这5个码元原本都是表示4个比特0的,由于传输过程中产生失真,导致他们在星座图中并未落在理想的位置,接收端会将码元ABC解调为0000,这是正确的。

将码元D调为0001有一个错位,将码元E写条为1111,4位全错,这就说明每个码元与4个比特的对应关系不能随便定义。
每个码元与4个比特的对应关系应该采用格雷玛,也就是任意两个相邻码源,只有一个比特不同,如图所示:

信道的极限容量
我们都知道信号在传输过程中会受到各种因素的影响,如图所示这是一个数字信号,当它通过实际的信道后,波形会产生失真,当失真不严重时,在输出端还可根据以失真的波形还原出发送的码元,但当失真严重时,在输出端就很难判断这个信号在什么时候是1和在什么时候是0。信号波形失去了码元之间的清晰界限,这种现象叫做码间串扰。

产生失真的原因主要有码元传输速率、信号传输距离、噪声干扰,传输媒体质量等。
奈氏准则
早在1924年,奈奎斯特就推导出了著名的奈氏准则,他给出了在假定的理想条件下,为了避免码间串扰,码元传输速率的上限。

如果带宽远小于可通过的最低频率,就是带通信道,否则就是低通信道
需要说明的是实际的信道所能传输的最高码元速率要明显低于奈式准则给出的上限值,这是因为奈式准则是在假定的理想条件下推导出来的,他不考虑其他因素,例如传输距离、噪声干扰,传输媒体质量等。
仅从公式来看,只要采用更好的调制方法,让码元可以携带更多的比特,岂不是可以无限制的提高信息的传输速率吗?答案是否定的,信道的极限信息传输速率还要受限于实际的信号,在信道中传输时的信噪比,因为信道中的噪声也会影响接收端对码元的识别,并且噪声功率相对信号功率越大,影响就越大。
但是奈氏准则给了我们一种提高信息的传输速率的思路,那就是码元可以携带更多的比特,也就是采用更好的调制方法
香农公式
1948年香农用信息论的理论推导出了带宽受限,且有高斯白噪声干扰的信道的极限信息传输速率,具体公式如下所示。

从香农公式可以看出,信道带宽或信道中信噪比越大,信息的极限传输速率就越大。
需要说明的是在实际信道上能够达到的信息传输速率,要比该公式的极限传输速率低不少,这是因为在实际信道中信号还要受到其他一些损伤,例如各种脉冲干扰,信号在传输中的衰减和失真等,这些因素在香农公式中并未考虑。
综合来看奈式准则和香农公式。在信道带宽一定的情况下,要想提高信息的传输速率,就必须采用多元制,并努力提高信道中的信噪比。
自从香农公式发表以后,各种新的信号处理和调制方法就要不断出现,其目的都是为了尽可能的接近香农公式所给出的传输速率极限。
相关文章:
【计算机网络】物理层
文章目录物理层的基本概念传输媒体同轴电缆双绞线光纤电力线电磁波红外线可见光传输方式串行传输和并行传输同步传输和异步传输单工,半双工以及全双工通信编码与调制常用编码不归零编码归零编码曼彻斯特编码差分曼彻斯特编码基本调制混合调制信道的极限容量奈氏准…...
华为OD机试 - 最少停车数(Python)
最少停车数 题目 特定大小的停车场 数组cars表示 其中1表示有车0表示没车 车辆大小不一,小车占一个车位(长度1) 货车占两个车位(长度2) 卡车占三个车位(长度3) 统计停车场最少可以停多少辆车 返回具体的数目 输入 整型字符串数组cars 其中1表示有车0表示没车 数组长度 <…...
面试题-前端开发JavaScript篇上(答案超详细)
文章目录 闭包说一下类的创建和继承如何解决异步回调地狱说说前端中的事件流如何让事件先冒泡后捕获说一下事件委托说一下图片的懒加载和预加载mouseover 和 mouseenter 的区别JS 的 new 操作符做了哪些事改变函数内部 this 指针的指向函数(bind,apply,call 的区别)JS 的各种…...
【计算机网络】运输层
文章目录运输层概述运输层端口号、复用与分用的概念UDP和TCP的对比TCP的流量控制TCP的拥塞控制TCP超时重传时间的选择TCP可靠传输的实现TCP的运输连接管理TCP的连接建立(3次握手)TCP的连接释放(4次挥手)TCP报文段的首部格式运输层概述 这里我们对运输层进行概述,之…...
20222023华为OD机试 - 基站维修工程师(Python)
基站维修工程师 题目 小王是一名基站维护工程师,负责某区域的基站维护。 某地方有 n 个基站( 1<n<10 ),已知各基站之间的距离 s( 0<s<500 ), 并且基站 x 到基站 y 的距离,与基站 y 到 基站 x 的距离并不一定会相同。 小王从基站 1 出发,途经每个基站 1 …...
21. 合并两个有序链表
题目链接:解题思路:遍历,双指针:因为两个链表有序,所以只需要依次比较两个元素的大小,然后添加到新的链表中即可first指针指向第一个链表l1,second指针指向第二个链表l2,answer保存合…...
产品经理知识体系:5.如何做好产品数据分析?
数据分析 思考 笔记 数据分析 思路 基于用户路径:用户的活动路径,操作流程等行为数据。 基于产品节点:转化率、占比 分析类型 先定性:先抛出问题、提出假设 再定量:数据验证问题、验证假设 先定性、再定量、最后得…...
详解垃圾回收算法,优缺点是什么?|金三银四系列
本文详细介绍了在 JVM 中如何判断哪些对象是需要回收的,以及不同的垃圾回收算法以及优缺点。点击上方“后端开发技术”,选择“设为星标” ,优质资源及时送达上篇文章详细介绍了 JVM 的结构以及其内存结构,需要阅读请移步。本文主要…...
Android 虚拟 A/B 详解(七) SnapshotManager 之标识文件
本文为洛奇看世界(guyongqiangx)原创,转载请注明出处。 原文链接:https://blog.csdn.net/guyongqiangx/article/details/129098176 Android 虚拟 A/B 分区《Android 虚拟 A/B 分区》系列,更新中,文章列表: Android 虚拟 A/B 详解(一) 参考资料推荐Android 虚拟 A/B 详解(二…...
LA@生成子空间@范数@衡量矩阵大小@正交化
文章目录线性组合与线性方程组生成子空间范数LpL^pLp范数向量点积用范数表示ref衡量矩阵大小特殊类型矩阵和向量对角阵向量长度性质单位向量向量单位化(正规化)正交向量正交正交向量组标准正交基正交化(schmidt)正交矩阵矩阵是正交矩阵的充要条件对称矩阵正交相似概念区分&…...
MT2012_竹鼠的白色季节
竹鼠的白色季节 #include<bits/stdc.h> #include<algorithm> using namespace std;/*思路:从小到大排序,然后依次往后遍历即可*/ int main( ) {int n,d;cin>>n>>d; int tmp;vector<int>nums;for(int i0;i<n;i){cin&…...
MySQL是什么?它有什么优势?
随着时间的推移,开源数据库在中低端应用中逐渐流行起来,占据了很大的市场份额。开源数据库具有免费使用、配置简单、稳定性好、性能优良等特点,而 MySQL 数据库正是开源数据库中的杰出代表。 开源全称为“开放源代码”。很多人认为开源软件最…...
基础篇—CSS padding(填充\内边距)解析
CSS padding(填充) CSS padding(填充)是一个简写属性,定义元素边框与元素内容之间的空间,即上下左右的内边距。 属性说明padding使用简写属性设置在一个声明中的所有填充属性padding-bottom设置元素的底部填充padding-left设置元素的左部填充padding-right设置元素的右部…...
二进制枚举
一、左移:用来将一个数的各二进制位全部左移n位,低位以0补充,高位越界后舍弃。n左移1位,n<<1,相当于2*n1左移n位,1<<n,相当于2^n二、右移:将一个数的各二进制位右移N位&…...
2|数据挖掘|聚类分析|k-means/k-均值算法
k-means算法k-means算法,也被称为k-平均或k-均值,是一种得到最广泛应用的聚类算法。算法首先随机选择k个对象,每个对象初始地代表了一个簇的平均值或中心。对剩余的每个对象根据其与各个簇中心的距离,将它赋给最近的簇。然后重新计…...
使用和制作动、静态库
文章目录什么是库?静态库打包方式使用方式生成并执行可执行程序粗暴方式优化方式动态库不一样的.o文件打包方式使用方式生成可执行程序运行可执行程序无法运行时的解决方案动静态库与动静态链接什么是库? 从一开始的helloworld,到现在熟练使…...
【Java基础】023 -- 集合进阶(List、Set、泛型、树)
目录 一、集合的体系结构 1、单列集合(Collection) 二、Collection集合 1、Collection常见方法 ①、代码实现: ②、contains方法重写equals方法示例:(idea可自动重写) 2、Collection的遍历方式(…...
面试题整理01-集合详解
文章目录前言一、集合的整体结构单列集合接口:双列集合接口:二、单列集合详解1.List接口1.1 ArrayList集合特点:扩容:添加元素遍历1.2 LinkedList集合特点:添加元素:2.Set接口2.1 HashSet集合特点ÿ…...
数据驱动的两阶段分布鲁棒(1-范数和∞-范数约束)的电热综合能源系统研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
ArcGIS网络分析之发布网络分析服务(二)
在上一篇中讲述了如何构建网络分析数据集,本篇将讲解如何发布网络分析服务。本文将使用上一篇中建立的网络数据集,下载地址在上一篇博文的最后已给出。 之前我们已经实现了基于ArcMap中的网络分析,但是仅仅支持本地是万万不够的,这里我们的目的就是将我们建好的网络分析图…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
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.登…...
【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统
Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...


