王道考研计算机网络——数据链路层
?
码元和信号变化是一一对应的
低通:低于最高频率的可以通过
奈氏准则无噪声,香农定理有噪声
给出db,利用公式求出S/N
?
放到数字信道上传输就是基带信号,放到模拟信道上传输就是宽带信号
把基带信号调制成宽带信号之后,才能放到复杂,危险的信道上面进行传输
高频信号就可以应对衰减很大的环境
归零编码处于低电平的时间比较多,信道利用率低
反向不归零编码:0->1 1->0 高低电平发生跳变,否则就维持,缺点:全1无法区分,就需要发送端和接收端确立时钟周期,每一小段有多长
曼彻斯特编码就可以把时钟信号和数据都放到一块,不需要额外的信道来传送时钟信号》自同步
只要发生跳变就是一个单独的比特,然后根据电平跳变是0-1还是1-0来区分0/1
1s信号变化2次,但是数据只传送1位,所以调制速率是数据传输速率的2倍
1个时钟周期内2个码元1个bit
调幅:0没有幅度,1有幅度
调频:低频0,高频1
调相:0一种波形(正弦波?),1对应一种波形(余弦波?)
16种波形》16种码元
?
??
节点:主机、路由器
数据链路层负责相邻节点之间的数据传输?
可靠数据传输;逻辑上实现无差错的链路?
最大传送单元MTU: IP数据报/帧的数据部分的最大值
帧同步/透明传输:不管你的数据怎么排列组合,链路层都可以区分出帧界限?
以下是为了实现透明传输采取的组帧方法:?
一个出错,全部出错:
字符填充法:在帧头帧尾加一个特殊的控制字段
由于文本文件是ASCII,所以不会冲突,但是其他数据在编码上可能和帧头帧尾重复,这时候应当采用字符填充法?
当传送的数据是非ASCII时,为避免数据部分和帧头帧尾重复,在数据部分添加转义字符
只有开始和结尾有连续的6个1,中间的数据遇到连续的5个1就无脑地填充一个0
实现简单被广泛应用,局域网的IEEE802标准就采用的这个标准:
小结:目前普遍使用的是比特填充和违规编码法?
链路质量好的话,就只需要在传输层确保数据的正确即可
随机噪声:信道固有的,随机存在的》提高信噪比
冲击噪声:产生差错的主要原因》使用编码技术来解决(一组比特,物理层是一个比特编码)
位错:0-1倒置
帧错:丢失、重复、失序
冗余编码:在数据发送之前给它加上一定的冗余位(校验元)来检错/纠错
检错编码:奇偶校验、CRC循环冗余码
纠错编码:海明码?
奇偶校验码的检错率为50%
奇校验:接收方收到的数据应该有奇数个1,否则就出错了?
最终发送方发送的数据为:11010110111110?
余数就是校验码;校验多项式:把余数放到原始数据的后面就是校验多项式
接收方检错过程:把接收到的数据除以10011(每一帧都是除以10011),如果余数为0就判定这个帧没有出错,否则就丢弃
1111;101101111
101101111
1100111001
不正确?
?10101011010101
没出错
小结:校验码(余数),循环冗余检验码(原始数据+余数)
接收端校验只有除以生成多项式就可以了
通常采用偶校验:
和传输层有交叉
传输层的流量控制是两台主机之间的(端到端),而数据链路层的流量控制是2个相邻节点之间的(点到点);链路层接收方收不下就不回复确认帧了(不包含数据的控制帧)(通常情况下是要回复确认帧的,没有回复表示缓冲区满了)
接收方检测到链路层的帧出错了也会直接丢弃
窗口公告:我的窗口还有多少,我的缓冲区有多大
收到一个确认发送窗口向前移动一格
链路层的发送和接收窗口在整个过程中是固定不变的,传输层可能会变
可靠传输:接收端可以放心接收发送端发来的数据(会有机制对出错的数据进行纠正)
在计算机的前期链路层来实现可靠传输,后期基本是在传输层来实现了
1号帧超时,就重传这段时间从1号之后的所有帧
接收方只收它期待的那一个编号的数据包2,到来的3 4 5它都会丢包并返回一个ACK1
后退N帧指的是发送指针返回2,不是指的窗口
发送方一旦超时就会一次性重发所有已发送但未确认的帧
第一个帧、最后一个帧、第一个帧的确认帧?
如果收到了窗口外的帧就返回一个
接收方收到下界帧之后就会一次性移动窗口?
广播:一个人发,所有人侦听
介质访问控制:几个成对节点之间的通信不会相互干扰
多路复用技术:把很多台主机的信号拧成一捆放在共享信道上进行传输
广播信道把多个单个信道拧成一捆了
设一个TDM帧最多发送8000bit/s,则A最多2000bit,但在 STDM中A最多就是独占信道的8000bit/s
??
吞吐量:在一段时间内成功发送的平均帧数
各个节点随机等待的时间不一样,就可以减少发生冲突的可能性
k=min{重传次数,10} ,退避时间:{0,1,2...2^k-1}里面随机选一个
重传次数超过10窗口大小k就不变了
CD:碰撞检测;适用于总线是以太网(有线网)
CA:碰撞避免;适用于无线局域网
解决隐蔽站点问题:先预约信道,如果预约方收不到响应cts就无法发送(说明有隐藏站)?
mac协议总结:?
轮询:老大挨个问每个节点需不需要发送数据
如果主机D在t时刻想要发送数据了,就让令牌带着数据一起传递?
以太网就是逻辑上的总线型拓扑结构
无限局域网WLAN:IEEE802.11 802.5:令牌环网
以太网只实现无差错接收,但是并不实现可靠传输
现在的计算机通常都有自己的通信适配器,所以就不需要单独的网卡了
101发送方和接收方进行时钟同步最后2个1是发送方告诉接收方现在可以开始准备接收我的mac帧了
目的地址:单播地址、广播地址(48位全1)、多播地址
类型:交给网络层的什么协议;FCS:CRC
链路层MTU=1500B,最小为以太网最小帧长64-6-6-2-4=46
为何尾部没有帧定界符?》结束的时候检测不到电压变化,就表明数据帧结束了,下一个帧之间一般都会隔上一小段距离
A和B通过基站/接入点进行通信:
移动访问点:你坐火车到北京,离北京比较近了,北京附近的接入点就会更新它的数据库,把你动态的加入进去,所以会给你发一个北京欢迎你
你到北京,离它那里的基站比较近了,你的手机号就会被注册到它的基站里面,它的基站就会把此时此刻注册到这个基站的手机号记录下来,并给这些手机号发送一个北京欢迎你的信息
基站的作用:实现一个区域内的各个主机进行通信,同样可以实现漫游(相邻基站范围内的主机之间进行通信A与A‘进行通信)
A与C都在AP1这个无线接入点(基站)所覆盖的范围内?
A与A’:A先把数据发给自己的基站AP1,然后通过有线的分配系统DS把数据交给AP2,然后AP2再下发给A‘(有线与无线的结合)
每个WiFi就对应一个基站,名字:服务集标识符?
?
在一个广播域当中一台主机发送了一个广播帧,那么这个广播域里的所有主机都能够收到这个广播帧
如果有很多广播帧在链路上进行传输,我们就希望给他隔离,诞生一些广播域,而广播域的隔离就需要路由器来支持,如果一个局域网中有非常多的组我们希望给他隔离开来,就需要用多个路由器,使得成本急剧飙升
只有大家在一个广播域内才能收到彼此的广播消息
通过VLAN技术,在一个局域网中就可以划分出两个广播域
而且不仅可以在一台交换机连接的主机上进行划分,还可以在一个大的局域网中进行划分
A发送一个广播帧:查交换机的VLAN表
A发送一个单播帧给B:先查交换机的转发表确定端口,再查交换机的VLAN表根据他们是否在一个VLAN下决定能否转发,不在一个VLAN下就需要借助路由器等三层的设备来进行转发了
交换机与交换机之间的trunk(主干线)端口不用去掉标签,贴标签之后就知道需要发送给哪个虚拟局域网了
每个VALN就是一个广播域?
点对点协议PPP是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时候】一般都使用PPP协议,它只支持全双工链路
网桥是交换机的前身,网桥的两端就是两个网段,网桥的端口通常是两个或者4个
一个冲突域就是一个网段(共享传输设备/集线器)
如果仅使用物理层设备连接6台主机,这6台主机是不可以同时通信的,而经过网桥这种链路层设备连接之后每个冲突域内就都可以进行单独的通信
如果把网桥换成物理层设备,那么整个网络就都处在一个碰撞域之下,即使A和B通信其他人都是不能进行通信的
转发表会不断更新,以反映当前的最新的网络拓扑状态?
以太网交换机通常有十几个端口,每个端口可以连接主机/集线器,交换机的每一个端口连接的就是一个冲突域
以太网交换机可以独占传输媒体带宽,如果连了集线器就再平分带宽呗😂
C和D拿到消息之后,发现TMD不是发给我的,就直接丢弃,只有B会收下
每个表项都有一个生存周期,过了这个周期,该表项就会被交换机删除
冲突域:与物理层的设备连接的一堆主机构成一个冲突域
广播域:有几个路由器就有几个广播域
交换机的一个端口就是一个冲突域
4个1个
以上就是本节的全部内容了!!!?
?
?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!