三、数据链路层(上)

目录

3.1数据链路层概述

3.1.1术语

3.1.2功能

3.2封装成帧和透明传输

3.2.1封装成帧

①字符计数法

②字符(节)填充法

③零比特填充法

④违规编码法

3.2.2透明传输

3.2.3差错控制

差错原因

检错编码

奇偶校验

☆循环冗余码CRC

例题

纠错编码

海明码

3.3流量控制与可靠传输机制

3.3.1流量控制的手段

停止-等待协议

滑动窗口协议

GBN(后退N帧协议)

SR(选择重传协议)

3.3.2二者关系

3.3.3停止等待协议

1.无差错

2.数据帧丢失(超时重传)

3.确认帧丢失(超时重传,丢弃重复)

4.确认帧迟到(同上)

3.3.4后退N帧协议(GBN)

1.GBN中的滑动窗口机制

2.发送方必须响应的三件事

3.接收方要做的事

4.运行中的GBN

5.发送窗口大小上限

6.GBN重点总结

7.GBN性能分析

8.例题

3.3.5选择重传协议(SR)

1.SR中的滑动窗口机制

2.发送方必须响应的三件事

3.接收方要做的事情

4.运行中的SR

5.滑动窗口的大小

6.SR协议总结

7.例题

3.3.6信道利用率和信道吞吐率

3.4介质访问控制

3.4.1传输数据使用的两种链路

3.4.2介质访问控制的概念

3.4.3静态划分信道

信道划分介质访问控制(MAC multiple Access Control)

1.频分多路复用(FDM)

2.时分多路复用(TDM)

3.统计时分复用(STDM)

4.波分多路复用(WDM)

5.码分多路复用(CDM)

3.4.5动态分配信道

轮询访问介质访问控制

1.轮询协议

2.轮牌转递协议

随机访问介质访问控制

1.ALOHA协议(不听就说)

2.CSMA协议(先听再说)

3.CSMA/CD协议(先听再说,边听边说)

4.CSMA/CA协议

3.5局域网基本概念和体系结构

局域网的拓扑结构


 

3.1数据链路层概述

3.1.1术语

结点:主机,路由器

链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线,光纤和微波,分为有线线路和无线线路。

数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。

帧:链路层的协议控制单元,封装网络层数据报。

数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。

3.1.2功能

数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务就是将源自网络层来的数据可靠地传输到相邻结点的目标机网络层。

其主要作用就是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。

功能一:为网络层提供服务。无确认无连接服务有确认无连接服务有确认面向连接服务。【有连接一定有确认】

功能二:链路管理,即连接的建立,维持,释放(用于面向连接的服务)

功能三:组帧

功能四:流量控制。【限制发送方哦~】

功能五:差错控制(帧错/位错)

3.2封装成帧和透明传输

3.2.1封装成帧

封装成帧就是在数据的前后加上首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。

首部和尾部包含了许多控制信息,他们的一个重要作用就是:帧定界(确定帧的界限)。

帧同步:接收方应当能从收到的二进制比特流中区分出帧的起始和终止。

组帧的四种方法:由于字节计数法中Count字段的脆弱性(其值若有差错将导致灾难性后果)及字符填充实现上的复杂性和不兼容性,目前较普遍使用帧同步的方式是零比特填充和违规编码法。

①字符计数法

易出错,一错全错~

②字符(节)填充法

类似于编程语言中的转义符,

 

 

③零比特填充法

5 1 1 0

④违规编码法

用编码方式中非法的形式表示帧的开始和结束

3.2.2透明传输

透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就“看不见”有什么妨碍数据传输的东西。

当多传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。

3.2.3差错控制

差错原因

概括的来说,传输中的差错都是由于噪声引起的。

全局性:由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在的。

       解决方法:提高信噪比来减少或避免干扰。(对传感器下手)

局部性:外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。

       解决办法:通常利用编码技术来解决。

差错:1.位错【比特位出错,1变0,0变1】
       2.帧错(1,2,3)【丢失(1,2),重复(1,2,2,3),失序(1,3,2)】

检错编码

奇偶校验

 

☆循环冗余码CRC

在数据链路层仅仅使用循环冗余码校验CRC差错检测技术,只能做到对帧的无差错接收,即“凡是接收端数据链路层接收的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错”。接收端丢弃的帧虽然曾收到了,但是最终还是因为有差错被丢弃。“凡是接收端数据链路层接收的帧均无差错”。

但这并不是可靠传输,因为可靠传输是指“数据链路层发送端发什么,接收端就收到什么。”

链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输。

①准备待传数据

②每个组都加上冗余码构成帧再发送

③接收方检验

例题

 

 

纠错编码
海明码

能发现错误,找到位置,并纠正错误。

海明距离/海明距/码距

信息编码中,两个合法代码对应位上编码不同的位数称为码距,又称海明距离。举例如下:1010100110从第一位开始依次有第一位、第四、第五位不同,则海明距离为3

工作流程:

确定校验码位数r

2r >= m+r+1

确定校验码和数据的位置

求出校验码的值

检错并纠错

 

3.3流量控制与可靠传输机制

较高的发送速度较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。

数据链路层的流量控制是点到点的,而传输层的流量控制是端到端的。

数据链路层的流量控制手段是:接收方收不下就不回复确认帧。

传输层的流量控制手段是:接收端给发送端一个窗口公告。

3.3.1流量控制的手段

停止-等待协议

每发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧。

也可以说是一种特殊的滑动窗口协议,发送窗口和接收窗口的大小都是一。

滑动窗口协议

连续发送一个窗口的帧,只有收到确认帧后,窗口向前移一格。

GBN(后退N帧协议)

Go-Back-N Automatic Repeat reQuest

发送窗口>1,接收窗口=1.

SR(选择重传协议)

Selective Repeat Automatic Repeat reQuest

发送窗口>1,接收窗口>1.

3.3.2二者关系

可靠传输:发送端发啥,接收端接收啥。

流量控制:控制发送速率,使接收方有足够的缓冲空间来接收每一个帧。

滑动窗口就是为了解决:①可靠传输(发送方自动重传),②流量控制(收不了不给确认,想发也发不了)

3.3.3停止等待协议

1.为什么要有停止-等待协议?

除了比特出差错,底层信道还会出现丢包问题。

为了实现流量控制。

丢包:物理线路故障,设备故障,病毒攻击,路由信息错误等原因,会导致数据包的丢失。

数据包在各层也叫的不同,例如比特,帧,IP数据包,分组等等

2.研究停止等待协议的前提是啥?

虽然现在常用全双工通信方式,但为了讨论问题方便,仅考虑一方发送数据(发送方),一方接收数据(接收方)

因为是讨论可靠传输的原理,所以并不考虑数据是在哪一个层次上传输的。(计算机网络早期由于数据链路的质量不好,所以数据链路层一边担任检错纠错一边还要进行流量控制,而现在基本上就是数据链路进行纠错检错就好了,已经将流量控制交给运输层了【谢希仁版的计网就是,在运输层数据单位是分组】)

“停止-等待”协议就是每发送完一个分组就停止发送,等待对方确认,在收到确认后再发送下一个分组。

3.停止等待协议有哪几种情况?

无差错情况&有差错情况。

1.无差错

2.数据帧丢失(超时重传)

3.确认帧丢失(超时重传,丢弃重复)

4.确认帧迟到(同上)

3.3.4后退N帧协议(GBN)

1.GBN中的滑动窗口机制

 

上链路

存副本

 

 

 

 

 

2.发送方必须响应的三件事

上层的调用

上层要发送数据时,发送方先检查发送窗口是否已经满,如果未满,则产生一个帧并将其发送;

如果窗口已满,发送方只需要将数据返回上层,暗示上层窗口满了。上层等一会再发。(实际上发送方可以缓存这些数据,窗口不满时发送)

收到一个ACK

GBN协议中,对n号帧的确认采用累计确认的方式,标明接收方已经收到n号帧和它之前的全部帧。

超时事件

协议的名字为后退N帧,起源于出现丢失和时延过长帧时发送方的行为。就像停等协议中一样,定时器将再次用于恢复数据帧或确认帧的丢失。如果出现超时,发送方重传所有已发送但未被发送但未被确认的帧。

3.接收方要做的事

①如果正确有序收到n号帧,那么接收方未n号帧发送一个ack,并将该帧中的数据部分交付给上层。

②其余情况都丢弃帧,并为最近按序接收的帧重新发送ack。(累计确认)接收方无需缓存任何时序帧,只需要维护一个信息:expectedseqnum(下一个按序接收的帧序号)

4.运行中的GBN

从上往下一层一层吃汉堡,吃不到汉堡的肉饼,将没吃的全扔了,等到肉饼到了再重新吃下去。(深情~)

5.发送窗口大小上限

若采用n个比特位对帧进行编号,那么发送窗口的大小WT应该满足:1 <= WT <= 2n-1

6.GBN重点总结

1.累计确认(偶尔捎带确认)

2.接收方只按序接收帧,不按序无情丢弃

3.确认序列号最大的,按序到达的帧

4.发送窗口最大为2n-1,接收窗口大小为1

7.GBN性能分析

停等<GBN<SR

8.例题

发送速率,就是要知道再某个时间内,一共发送了多少数据,两者相除就好!

3.3.5选择重传协议(SR)

1.SR中的滑动窗口机制

 

 

2.发送方必须响应的三件事

1.上层的调用

从上层收到数据后,SR发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;否则就像GBN一样,要么将数据缓存,要么返还给上层之后再传输。

2.收到一个ACK

如果收到ACK,假如该帧序号在窗口内,则SR发送方将那个被确认的帧标记位已接受。如果该帧序号是窗口的下界(最左边第一个窗口对应序号),则窗口向前移动到具有最小序号的未被确认帧处。如果窗口移动了,并且有序号在窗口在内的未发送帧,则发送这些帧。

 

 

 

3.超时事件

每个帧都有自己的定时器,一个超时事件发生后只重传一个帧。

3.接收方要做的事情

1.对接收窗口内的帧“来者不拒

SR接收方将确认一个正确接收的帧而不管其是否乱序。失序的将被缓存,并返还给发送方一个该帧的确认帧【收谁确认谁】,直到所有帧(即序号更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后向前滑动窗口。

 

 

 

 

 

 

2.如果收到窗口序号外(小于窗口下界)的帧,就返回一个ACK。其他情况就忽略掉。

4.运行中的SR

5.滑动窗口的大小

发送窗口最好等于接收窗口。(大了就出现二义性,小了没意义)n为编码比特数。

WTMAX = WRMAX = 2(n-1)

N=2,w=3出现二义性

N=2,w=2不会出现二义性

6.SR协议总结

1.对数据帧逐个确认,收一个确认一个

2.只重传出错帧

3.接收方有缓存

4. WTMAX = WRMAX = 2(n-1)

7.例题

3.3.6信道利用率和信道吞吐率

看一下停止等待协议的图示:

发的时间/总时间=信道利用率

 

 

3.4介质访问控制

3.4.1传输数据使用的两种链路

点对点

两个相邻节点之间通过一个链路相连,没有第三者,应用:PPP协议,常用于广域网。

广播式。(范围广)

所有主机共享通信介质,应用:早期的总线型以太网,无线局域网,常用于局域网。(范围小)典型拓扑结构:总线型,星型。

3.4.2介质访问控制的概念

介质访问控制所要完成的主要任务是,为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输。用来决定广播信道中信道分配的协议属于数据链路层的一个子层,称为介质访问控制(Medium Access ControlMAC)子层。

多路复用技术,其实就是把多个信号拧成一股绳,用的时候各找各的。

3.4.3静态划分信道

信道划分介质访问控制(MAC multiple Access Control)
1.频分多路复用(FDM)

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。(类似于并行)

2.时分多路复用(TDM)

将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。(类似于并发)

3.统计时分复用(STDM)

时分复用的改进版,为了增加信道利用率。(statistics)

4.波分多路复用(WDM)

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。

5.码分多路复用(CDM)

把多种数据拧在一起,到地儿自己分离。

常用于无线局域网、蜂窝网

码分多址(CDMA)是码分复用的一种方式。1个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位的芯片序列,发送1时发送芯片序列(通常把o写成-1)。
发送1时站点发送芯片序列,发送o时发送芯片序列反码。

 

3.4.5动态分配信道

轮询访问介质访问控制

既不会产生冲突,且主机发送数据时还可以占用全部带宽。可谓是集大成者,即不会像基于多路复用技术的信道划分介质访问控制那样不能占用全部带宽,更不会像随机访问介质访问控制一样产生冲突。

1.轮询协议

主节点“邀请”从属结点发送数据。

大哥询问二弟是否要说话,三弟四弟不可以插嘴,二哥回答完/说完,大哥再问三弟四弟…

问题:1.产生轮询开销,2.等待延迟,3.单点故障

2.轮牌转递协议

令牌:

一个特殊格式的mac控制帧,不含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道。

令牌环网无碰撞,每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌。

问题:

1.令牌开销,2.等待延迟,3.单点故障

应用于令牌环网(物理层星型拓扑逻辑环形拓扑)。

采用令牌传送方式的网络常用于负载较重,通信量较大的网络中。

环路闲着

环路中有人发售那个数据,将“令牌”状态修改为忙,与数据组成数据帧出发。

是谁的数据谁要。

 

回头数据源接收到自己发送的数据帧,检查是否出错,来决定是否重传。

紧接着,令牌就在环路中以时间片的速度转啊转。

随机访问介质访问控制
1.ALOHA协议(不听就说)

纯aloha协议:

不监听信道,不按时间槽发动,随机重发。想发就发

冲突如何检测?

如果发生冲突,接收方就会检测出差错,然后不予确认,发送方在一定时间内收不到就判断发生冲突。

冲突如何解决?

超时后等一随机时间再重传。

时隙aloha协议的思想:

把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。控制了想发就发的随意性。

    1. 纯aloha协议比时隙aloha协议吞吐量更低,效率更低。
    2. 纯aloha协议想发就发,时隙aloha协议只有在时间片段开始时才能发。
2.CSMA协议(先听再说)

载波监听多路访问协议Carrier sense multiple access

Cs:载波监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。

监听:当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站在同时发送数据,表明了发生了碰撞,即发生了冲突。

Ma多点接入,表示许多计算机以多点接入的方式连接在一根总线上。

协议思想:发送帧之前,监听信道。

监听结果:

1.信道空闲:发送完整帧

2.信道忙:推迟发送

1-坚持CSMA

 

非坚持CSMA

 

p-坚持CSMA

 

 

三种对比:

 

3.CSMA/CD协议(先听再说,边听边说)

像csma中发生冲突后还要坚持将数据发送完,就造成了资源浪费,有什么办法可以减少资源浪费,一冲突就能发现呢?

载波监听多点接入/碰撞检测(适用于总线以太网)

CSMA/CD(carrier sense multiple access with collision detection)

CS: 载波侦听/监听,每一个站在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据

MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。(总线型网络

CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。(半双工网络

因为电磁波在总线上总是以有限的速率传播的,所以先听后发是会发生冲突的。

如何确定碰撞后的重传时机?

立即重发当然是不好的,这样会使其陷入恶性循环。

CSMA/CD协议使用截断二进制指数规避算法“避其锋芒,躬耕南阳”

    1. 确定基本规避时间为2τ
    2. 定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数,10]。当重传次数不超过10时,k等于重传次数:当重传次数大于10时,k就不再增大而一直等于10。
    3. 从离散的整数集合[0,1,,2k-1]中随机取出一个数r,重传所需要退避的时间就是r倍的基本退避时间,即2rτ
    4. 当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错

实例:

 

最小帧长问题:

一个大前提,该csma/cd协议就是为了在发生冲突时立即叫停双方,使双方不再做无用功而是找合适的时机将数据成功的正确的发送出去。

而现在,有一个帧,超级短,短到发生冲突叫停时,它已经发完了(“吴帧”),哪这个算法对于这个帧就没有多大意义了。

所以我们为了提高传输效率,要规定一个最小帧长度:

4.CSMA/CA协议

载波监听多点接入/碰撞避免(适用于无线局域网)

CSMA/CA(carrier sense multiple access with collision avoidance)

为什么要有csma/ca?

1.因为无线局域网不像总线的以太网有实际的电路连接,可以实时查看线路上的电压变化,而在无线局域网中以空气为介质进行电磁波的传播是很难做到全方位实时(发的时候也检测)检测碰撞的。

2.再者就是,无线局域网下的设备不是互相知道对方存在的,当大家都以为信道空闲时,同时发送数据,那不就g了嘛。这就是隐蔽站的问题,手机1和手机2在发送数据时就互为隐蔽站。

而且csma/ca协议还是十分礼貌的,发送数据之前会“大家好,我要说话了”~过了一会(没人碰撞)~“巴拉巴拉”

其算法详情:

1.发送数据前,先检测信道是否空闲。

2.空闲则发出RTS(requesttosend),RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待。

3.接收端收到RTS后,将响应CTS(clear to send)发送端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)

4.接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧

5.发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)。

1.预约信道 2.ACK 3.RTS/CTS(可选)

CAMA/CD与CSMA/CA对比

相同点:

CSMA/CD与CSMA/CA机制都从属于CSMA的思路,其核心是先听再说。换言之,两个在接入信道之前都须要进行监听。当发现信道空闲后,才能进行接入。

不同点:

1.传输介质不同:CSMA/CD用于总线式以太网【有线】,而CSMA/CA用于无线局域网【无线】

2.载波检测方式不同:因传输介质不同,CSMA/CD与CSMA/CA的检测方式也不同。CSMA/CD通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随着发生变化;而CSMA/CA采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式。

3.CSMA/CD检测冲突,CSMA/CA避免冲突,二者出现冲突后都会进行有上限的重传。

3.5局域网基本概念和体系结构

局域网的英文全称是“Local Area Network”,缩写为“LAN”,是指在某一个区域内由多台计算机互联成的计算机组。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。

局域网是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。

局域网一般为一个部门或单位所有,建网、维护以及扩展等较容易,系统灵活性高。其主要特点是:

  1. 覆盖的地理范围较小,只在一个相对独立的局部范围内联,如一座或集中的建筑群内。
  2. 使用专门铺设的传输介质进行联网,数据传输速率高(10Mb/s~10Gb/s)。
  3. 通信延迟时间短,可靠性较高。

局域网的类型很多,若按网络使用的传输介质分类,可分为有线网和无线网;若按网络拓扑结构分类,可分为总线型、星型、环型、树型、混合型等;若按传输介质所使用的访问控制方法分类,又可分为以太网、令牌环网、FDDI网和无线局域网等。

局域网的拓扑结构

局域网络拓扑结构是指用传输介质互联各种设备的物理布局,网络中的计算机等设备要实现互联,就需要以一定的结构方式进行连接。 这种连接方式就叫做拓扑结构。 目前常见的网络拓扑结构主要有总线型结构、环形结构、树形结构和网状结构等形状。

目前常见的网络拓扑结构主要有以下三大类:

(1)星型结构

(2)环型结构

(3)总线型结构

星型结构:

优点:

  1. 网络结构简单,易于维护和管理;
  2. 控制简单,便于建网;
  3. 网络可靠性高,稳定性好。单个节点的故障只影响一个设备;
  4. 传输速度快,延迟小,误差低;
  5. 系统容易扩容。

缺点:

  1. 对中心节点的要求极高(包括中心节点的可靠性和冗余度);2. 如果中心节点出故障,可能造成大面积网络瘫痪;3. 中心节点负担过重,结构较复杂,容易出现瓶颈。4. 系统安全性较差,资源共享性能较差。

环型结构

优点:

  • 各工作站地位相等;2. 系统中无信道选择问题;3. 网络数据传输不会出现冲突和堵塞现象。

缺点:

  • 可靠性低,节点的故障将会引起全网的故障;2. 故障诊断困难;3. 不易重新配置网络;4. 当环中节点过多的时候,将会影响信息传输速率。

 

 

总线型结构:

 

优点:

  • 网络结构简单,可靠性高;2. 电缆长度短,易于布线和维护;3. 节点间响应速度快,共享资源能力强;4. 设备投入量少,成本低;5. 易于扩充,数据端用户入网灵活。

缺点:

  • 故障诊断困难;2. 故障隔离困难,任何节点的故障都有可能导致全网问题;3. 实时性较差;4. 网络规模较大时,传输效率下降幅度大。

 

 

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/438178.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

骨架屏 (懒加载优化)

骨架屏 &#xff08;懒加载优化&#xff09; 即便通过 Webpack 的按需加载、CDN 静态资源缓存 和 代码分割 等技术来减少首屏的代码体积&#xff0c;首屏加载时的白屏时间&#xff08;也称为首屏等待时间&#xff09;仍然可能存在&#xff0c;尤其在网络条件较差或页面内容复杂…

MongoDB 快速入门+单机部署(附带脚本)

目录 介绍 体系结构 数据模型 BSON BSON 数据类型 特点 高性能 高可用 高扩展 丰富的查询支持 其他特点 部署 单机部署 普通安装 脚本安装 Docker Compose 安装 卸载 停止 MongoDB 删除包 删除数据目录 参考&#xff1a; https://docs.mongoing.com/ 介绍…

python全栈学习记录(二十一)类的继承、派生、组合

类的继承、派生、组合 文章目录 类的继承、派生、组合一、类的继承二、派生三、组合 一、类的继承 继承是一种新建类的方式&#xff0c;新建的类称为子类&#xff0c;被继承的类称为父类。 继承的特性是&#xff1a;子类会遗传父类的属性&#xff08;继承是类与类之间的关系&a…

2024年研究生数学建模“华为杯”E题——肘部法则、k-means聚类、目标检测(python)、ARIMA、逻辑回归、混淆矩阵(附:目标检测代码)

文章目录 一、情况介绍二、思路情况二、代码展示三、感受 一、情况介绍 前几天也是参加了研究生数学建模竞赛&#xff08;也就是华为杯&#xff09;&#xff0c;也是和本校的两个数学学院的朋友在网上组的队伍。昨天&#xff08;9.25&#xff09;通宵干完论文&#xff08;一条…

Prompt 初级版:构建高效对话的基础指南

Prompt 初级版&#xff1a;构建高效对话的基础指南 文章目录 Prompt 初级版&#xff1a;构建高效对话的基础指南一 “标准”提示二 角色提示三 多范例提示四 组合提示五 规范化提示 本文介绍了提示词的基础概念与不同类型&#xff0c;帮助用户更好地理解如何在对话中构建有效的…

Pytorch实现玉米基因表达量预测模型

一、实验要求 通过搭建残差卷积网络&#xff0c;实现对玉米基因表达量的预测 二、实验目的 理解基因表达量预测问题&#xff1a;基因表达预测是生物信息学和基因组学领域中的重要任务之一&#xff0c;促进学科交叉融合。熟悉深度学习框架PyTorch&#xff1a;通过实现基因表达量…

css 数字比汉字要靠上

这个问题通常是由于数字字体的下排的问题造成的&#xff0c;也就是数字的底部边缘位置比汉字的顶部边缘位置更靠下。为了解决这个问题&#xff0c;可以尝试以下几种方法&#xff1a; 使用CSS的vertical-align属性来调整对齐方式。例如&#xff0c;可以将数字的对齐方式设置为to…

Linux高级编程_27_系统调用

文章目录 系统调用函数分类系统编程概述系统调用概述**类UNIX系统的软件层次** 用户态和内核态系统调用与库函数的关系文件操作符概述文件磁盘权限 系统调用之文件操作open:打开文件close:关闭文件write:写入read:读取 文件状态fcntl 函数stat 函数 st_mode的值示例 1&#xff…

【优选算法之队列+宽搜/优先级队列】No.14--- 经典队列+宽搜/优先级队列算法

文章目录 前言一、队列宽搜示例&#xff1a;1.1 N 叉树的层序遍历1.2 ⼆叉树的锯⻮形层序遍历1.3 ⼆叉树最⼤宽度1.4 在每个树⾏中找最⼤值 二、优先级队列&#xff08;堆&#xff09;示例&#xff1a;2.1 最后⼀块⽯头的重量2.2 数据流中的第 K ⼤元素2.3 前 K 个⾼频单词2.4 …

数造科技入选中国信通院《高质量数字化转型产品及服务全景图》三大板块

9月24日&#xff0c;2024大模型数字生态发展大会暨“铸基计划”年中会议在北京召开。会上&#xff0c;中国信通院发布了2024年《高质量数字化转型产品及服务全景图&#xff08;上半年度&#xff09;》和《高质量数字化转型技术解决方案&#xff08;上半年度&#xff09;》等多项…

网络编程篇:UDP协议

一 UDP协议格式 16位源端口号&#xff1a;表示数据从哪里来。16位目的端口号&#xff1a;表示数据要到哪里去。16位UDP长度&#xff1a;表示整个数据报&#xff08;UDP首部UDP数据&#xff09;的长度。16位UDP检验和&#xff1a;如果UDP报文的检验和出错&#xff0c;就会直接将…

【Kubernetes】常见面试题汇总(五十三)

目录 118. pod 状态为 ErrlmagePull &#xff1f; 119.探测存活 pod 状态为 CrashLoopBackOff &#xff1f; 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#xff09;” 。…

MongoDB聚合操作及索引底层原理

目录 链接:https://note.youdao.com/ynoteshare/index.html?id=50fdb657a9b06950fa255a82555b44a6&type=note&_time=1727951783296 本节课的内容: 聚合操作: 聚合管道操作: ​编辑 $match 进行文档筛选 ​编辑 将筛选和投影结合使用: ​编辑 多条件匹配: …

Springboot + netty + rabbitmq + myBatis

目录 0.为什么用消息队列1.代码文件创建结构2.pom.xml文件3.三个配置文件开发和生产环境4.Rabbitmq 基础配置类 TtlQueueConfig5.建立netty服务器 rabbitmq消息生产者6.建立常规队列的消费者 Consumer7.建立死信队列的消费者 DeadLetterConsumer8.建立mapper.xml文件9.建立map…

King3399 SDK(ubuntu文件系统)编译简明教程

该文章仅供参考&#xff0c;编写人不对任务实验设备、人员及测量结果负责&#xff01;&#xff01;&#xff01; 0 引言 文章主要介绍King3399&#xff08;瑞芯微rk3399开发板&#xff0c;荣品&#xff09;官方SDK&#xff08;Ubuntu文件系统&#xff09;编译过程&#xff0c…

【本地免费】SimpleTex 图像识别latex公式

文章目录 相关教程相关文献安装教程 由于mathpix开始收费了&#xff0c;于是本文将介绍一款目前本地免费的SimpleTex工具 相关教程 【超详细安装教程】LaTeX-OCR 图像识别latex公式&#xff08;开源免费&#xff09;_latex图片识别-CSDN博客 相关文献 SimpleTex主页——致力…

Elasticsearch使用Easy-Es + RestHighLevelClient实现深度分页跳页

注意&#xff01;&#xff01;&#xff01;博主只在测试环境试了一下&#xff0c;没有发到生产环境跑。因为代码还没写完客户说不用弄了( •̩̩̩̩&#xff3f;•̩̩̩̩ ) 也好&#xff0c;少个功能少点BUG 使用from size的时候发现存在max_result_window10000的限制&…

薄膜凸起和开裂是同一种应力导致的吗?

知识星球里的学员问&#xff1a;我们产线上薄膜出了质量问题&#xff0c;都一概归结为应力过大。麻烦讲讲应力的种类&#xff0c;以及不同种类的应力会造成哪些薄膜问题&#xff1f; 内应力的种类&#xff1f; 内应力的分类很多&#xff0c;如果我们按作用的效果来分&#xff…

树莓派 AI 摄像头(Raspberry Pi AI Camera)教程

系列文章目录 前言 人们使用 Raspberry Pi 产品构建人工智能项目的时间几乎与我们生产 Raspberry Pi 的时间一样长。随着我们发布功能越来越强大的设备&#xff0c;我们能够支持的原生应用范围也在不断扩大&#xff1b;但无论哪一代产品&#xff0c;总会有一些工作负载需要外部…

嵌入式外设应用(代码)

文章目录 1. 工业自动化2. 智能家居设备3. 汽车电子4. 生命体征监测仪5. 物联网应用 嵌入式外设应用广泛&#xff0c;有很多应用领域&#xff1a; 1. 工业自动化 应用场景&#xff1a;使用传感器监测设备状态&#xff0c;控制电机的启动和停止。 示例代码&#xff1a; #inc…