计网-U3 数据链路层
3.1 数据链路层的功能
向上层下层要做的事情
物理链路:传输介质(0层)+ 物理层(1层)实现了相邻节点之间的“物理链路”
逻辑链路:数据链路层基于“物理链路”,添加了实现通信协议的软硬件,实现相邻节点之间逻辑上无差错的“数据链路/逻辑链路”
**==数据链路层向下(使用服务)==**:使用物理层提供的 “比特传输” 服务。
==数据链路层向上(提供服务)==:为网络层提供服务,将网络层的 分组(IP数据报) 封装成帧,传输给下一个相邻节点。
- 帧 = 首部 + 数据 + 尾部
- 首部和尾部包含各种控制信息。

数据链路层实现的功能(5)
之后一小节就是跟一个功能相关。
①封装成帧(组帧):⭐
组帧即:定义数据格式。
- 帧定界:即如何让 接收方(对面的数据链路层) 能够 确定帧的界限。
- 透明传输:接收方 要能从收到的帧内恢复原始SDU,让网络层“感受不到”将分组封装成帧的过程。(即把帧定阶的附加信息去除,把帧“恢复原貌”)
- (透明性的拓展,其实数据链路层对上层是透明的。)
②差错控制:发现并解决一个帧 内部的 “位错误”。
- sol1:接收方 发现比特错后 丢弃帧,发送方 重传帧。(仅需采用 检错编码)
- sol2:接收方 发现并纠正比特错误。(需采用 纠错编码)
③可靠传输:发现并解决“帧错误”。
- eg 帧丢失,帧重复,帧失序。
④流量控制:控制 发送方 发送帧的速率别太快,让 接收方 有时间接收。(or会导致帧丢失)
⑤介质访问控制:
数据链路层使用的信道主要有两种
- “广播信道” 需要实现此功能。因为广播信道在逻辑上是总线型拓扑,多个节点需争抢传输介质的使用权。
- “点对点信道” 不需要实现此功能。点对点信道意味着两个节点之间有专属的传输介质,不用争抢。

3.2 组帧(的方法)(4)
把 网络层 交给的数据打包成帧的过程。
组帧的好处:数据出错,也只需重发出错的帧,无需重发全部数据。

① 字符计数法
在每一个帧的开头,用一个 定长计数字段 ,记录帧长。
- 帧长是包括首部分的计数字段的段长度的。即 帧长 = 定长计数字段长度 + 帧的数据部分的长度。
超级无敌大的缺点:任何一个计数字段出错,会导致后续 所有帧 无法定界。(健壮性差)

② 字节填充法
控制字符SOH表示帧的开始,控制字符EOT表示帧的结束。
插入转义字符ESC,防止SOH/EOT和某些数据段歧义。(接收方做的是逆处理)
再次插入一个转义字符,防止转义字符和某些数据段歧义。(接收方做的是逆处理)
原理:(接收方的逆处理)发现转义字符,会把转义字符去除,后面部分就是数据,以此类推。

③ 零比特填充法
HDLC协议和PPP协议使用的组帧方法就是零比特填充法。
以一串特殊比特串(01111110,连续有6个1)表示帧的开始和结束。
解决和上个方法一样的问题:
- 发送方需要对帧的数据部分进行处理:每当遇到了连续的5个1,就填充一个0
- 接收方需要对帧的数据部分进行处理:每当遇到了连续的5个1,就删去后面的0

④ 违规编码法
eg看曼切斯特编码(中间跳变作为正常信号,中间不跳变作为违规信号)
用违规信号,表示帧的开始/结束。(需要物理层的配合,因为涉及到了编码)
适用:仅适用于冗余编码?的编码环境。

回顾
(字节填充法太复杂,字符计数法缺陷大,采用的组帧方法是零比特填充法和违规编码法)

3.3 差错控制(2+1)
==发现并解决帧内部的位错误。==
sol1:接收方 发现比特错后 丢弃帧,发送方 重传帧。(仅需采用 检错编码)
- 奇偶校验码
- ORC校验码
sol2:接收方 发现并纠正 比特错误。(需采用 纠错编码)
- 海明校验码

0 补充知识
a.码距:两个码字在对应位置取值不同的比特数量。
编码集的码距是里面出现的最小码距。
码距 = 检错的位数 + 纠错的位数 + 1
检错的位数 ≥ 纠错的位数。
为检测d位错误:码距起码为d+1
为纠正c位错误:码距起码为2c+1
b.冗余编码技术:在有效数据(信息位)发送前,增加若干冗余位(检验位)。
①奇偶校验码(检错编码)
奇校验码:确保整个校验码【(首部/尾部)校验位+有效信息位】中1的个数为奇数。
偶校验码:确保整个校验码【(首部/尾部)校验位+有效信息位】中1的个数为偶数。
(校验位首部或者尾部都行)
- (发送方)偶校验的实现如下:
- 逐个信息位进行异或运算(相异为1),最终的结果即为偶校验位。
- (接收方)结果 = 校验位 ⊕ 所有信息位
- 结果1,奇数位错误。
- 结果0,无奇数位错误,也可能偶数位错误漏检
奇偶校验特点:
- 奇偶校验法通过一位冗余,使整体 1 的个数为奇 / 偶。
- 只能检测奇数个位错误(1,3,5…位),不能检测偶数个错误。
- 无纠错能力。


回顾

②循环冗余校验码(CRC校验码)(检错编码)

原理
数据发送、接收方 约定一个 除数。
(==K个信息位+R个校验位==)作为 被除数,添加的校验位是为了保证除法的 余数 为0。
收到数据后,进行除法检查看余数是否为0。
若余数非0说明出错,则进行重传或者纠错。

例题


除数位数 = 生成多项式的最高次幂+1(因为x的0次方也有常数c哈哈哈)
除数内容的确定:由生成多项式确定。
校验位的位数R = 生成多项式的最高次幂
校验位的内容的确定:
- 用移位(移R位)后的信息码做被除数,用生成多项式做除数,
- 进行模2除,模2减(等同于异或运算),得到的 R位余数 就是校验位。

==拓展:出错位置和余数之间的关系:==
检验算得的 余数(n+1位)和 n进制的数,一定没有对应关系!
检验算得的 余数(n位)和 n进制的数可能相对应(如果有循环的话就没有)。
- (eg余数三位)
- 000-正确。001-出错位位1(从后往前数)。110-出错位置8。001-出错位置9,形成一个循环…
如果CRC码很短(位数没有超过余数所能表示的范围,即没到一轮循环),就真的是一一对应了!
因此循环冗余校验码是可以有纠错能力的(if信息位不多)
检错纠错能力
- 可以检测出 所有奇数位错误(IF生成多项式包含因子 (x+1)
- 可以检测出 所有双比特的错误
- 可以检测出 所有≤ 校验位长度R 的连续错误
- 若选择合适的生成多项式,且2^R ≥ K+R-1,则可以纠正单比特错误。
③海明校验码(纠错编码)
基本思想
奇偶校验(单个校验位)只能发现奇数位错误,无法发现是哪一位错误。且无法重传。
==海明码思路==:将信息位分成k个分组,每个分组分别进行偶校验→多个校验位→通过多个校验位,可以标记出错位置(单比特)
需要多少校验位:2^k ≥ n+k+1

海明码求解步骤
1.确定海明码的位数。
- n+k,其中(2^k ≥ n+k+1)
2.确定校验位的分布。
- 校验位Pi放在海明位号为2^(i-1)的位置上。(P1,P2,P3…在1,2,4,8..位置)
- 信息位Di按顺序放到其余位置。
3.求校验位Pi的值。
将信息位的位置序号用 k位二进制 表示出来。(十进制→二进制)
将校验位的位置序号Pi 与 位置序号第i位为1的信息位归为一组,
之后进行偶校验

4.纠错
对P1,P2,P3…所属各分组进行异或==(相当于分组偶校验)==,==求得S1,S2,S3==
- 可见分组实际上是对各个P组合的分组,为了找到出错的比特的位置!
S3,S2,S1 = 000,说明无错误。
S3,S2,S1 ≠ 000,其值反映出出错位置。

5.补充
海明码有==1==位纠错能力,==2==位检错能力。
为了区分1位错还是2位错,可以在首部加上一个“全 校验位”,对整体进行偶校验。

回顾

3.4 流量控制和可靠传输(3)

滑动窗口机制
流量控制:方法有两种:停止等待协议和滑动窗口协议。
- 数据链路层和传输层都有流量控制的功能,但是有区别:
- 数据链路层:控制的是相邻节点的流量。当接收方无法接收时,不返回数据帧。
- 传输层:控制的是端到端的流量。接收方在确认报文段中携带窗口字段值,动态调整发送方的窗口大小。
- 数据链路层和传输层都有流量控制的功能,但是有区别:
可靠传输:方法有两种:确认ACK和超时重传两种机制。
- ARQ自动重传请求结合了这两种。注意的是:数据帧和确认帧必须编号。
- ARQ协议主要有三种类型:停止等待协议,后退N帧协议,选择重传协议。
- ARQ自动重传请求结合了这两种。注意的是:数据帧和确认帧必须编号。

【实际上,停止-等待协议不属于 滑动窗口协议】
发送窗口Wt:发送窗口里包含了当前允许发送的帧。(transmit)
接收窗口Wr:接收窗口里包含了当前允许接收的帧。(receive)
- 若收到了窗口之外的帧,直接丢弃。
==接收方通过“确认机制”,控制发送方的窗口往前移动,从而实现流量控制。==

⭐每种协议都要关注的四个内容
滑动窗口机制,确认机制,重传机制,帧编号。

停止-等待协议(S-W)
发送窗口=接收窗口=1。确认帧ACK_i。超时重传。仅需1bit给帧编号。

数据帧,确认帧,帧序号的概念
帧类型:实际应用中可能双向都有数据帧和确认帧,所以需要“帧类型”这个概念。防止混淆。
确认帧:数据部分可以为空,很短的。
帧序号:此处是0,1,0,1,0,1,…

传输的可能情况
①正常传输

②数据帧丢失:超时重传(到点了,发送方重传)
③确认帧丢失:接收方已经收到之前的帧,会往右滑动。在之后收到了重传信息,接收方会:①丢弃重复帧。②返回重复帧的ACK(让接收方放心)

为什么需要帧编号?
因为因此接收方无法判别重复帧。
且用1bit表示帧序号足矣,简单的。

④数据帧有差错:接收方丢弃且不返回ACK,发送方超时重传。
⑤发送窗口=接收窗口=1,不存在数据帧失序的问题。
回顾

后退N帧协议(GBN)
名字由来:后退N帧协议。原本已经发送了0号1号帧,现在却后退回0号帧重新传送。也顺便实现了“流量控制”。
GBN:
发送窗口>1,接收窗口=1。
关于确认帧:接收方可以==“累积确认”==。(即仅返回最后一个帧的ACK)(对于超时重传有很大影响!!!)
关于超时重传:重传i号帧,及其之后的所有帧。
- (因为之后的帧并没有在接收窗口(=1)内,会被接受方丢弃,此时接收方会返回目前已正确的最后一个帧的ACK。而发送方收到后,会往右滑动到i号帧处,重新发送。)
- (重传帧的同时,也需要重置计时器)
关于计时器:仅为最早未确认的帧维护一个超时计时器。(该帧被确认后,计时器可以移到下一个未确认帧)
至少用 2bit(0,1,2,3)给帧编号。
缺点:如果接收方收取帧的速率很慢,或者信道误码率很高,会导致经常后退,传输效率低。

正常情况(注意看新的帧序号)

①数据帧丢失:超时重传。

②确认帧丢失:超时重传。本质上像是退化成了①,因为第一个计数器最先到时间。

③如果不满足Wt+Wr ≤ 2^n 会有什么问题?
- 后果:后退不回去原来的起点(eg上一轮的0号帧),因为接收方到达了新一轮的0号帧。

回顾

选择重传协议(SR)
SR不同之处:
- 发送窗口和接收窗口都>1。且:发送窗口Wt>接收窗口Wr。【Wr ≤ 2^(n-1)】【窗口总大小 = Wr+Wt】
- 确认机制:
- 否认帧NAK_i:若接收方收到有差错的i号帧,丢弃,并给发送方返回否认帧NAK_i。
- 确认帧的不同:不支持“累积确认”,只能一帧一帧确认。(也有好处,即使中间有格子出错,也能移动前面成功的几格)
- 请求重传机制:若发送方收到NAK_i,则重传i号帧。(发送方就不用等到超时才重发了)
- 关于计时器:每一个未确认的帧都有一个超时计时器。

窗口大小的变化

(如果发送窗口<接收窗口)造成:D格子利用率不高,资源浪费。(所以 Wt=Wr=2^(n-1) 是比较合适的)

正常情况

①数据帧丢失:超时重传


②数据帧有差错:丢弃,请求重传


③确认帧丢失:超时重传+接收方判别为重复帧,返回重复帧的ACK。


④如果不满足Wt+Wr ≤ 2^n 会有什么问题?
- 会导致发送方和接收方都无法正确判别“重复帧”。

回顾

三种协议的信道利用率分析
会理解图画图比记公式主要多了,真的。⭐

S-W协议的信道利用率
==信道利用率U = 数据帧传播时延Td / 数据帧传播时延Td+2倍单向传播时延RTT + 确认帧传播时延Ta==
Td是单个帧-的传输时延


GBN,SR协议的信道利用率
共同点:Wt>1,理想情况下不考虑接收窗口情况。
==与S-W不同的是,数据帧传播时延N,因为*发送窗口大小是N==
==若分子大于分母,说明信道利用率=1==


发送方在发送数据期间,以==信道带宽的速率(最大数据传输速率)==发送比特;
但整个发送周期(包括等待确认的时间)平均下来的速率,称为==实际数据传输速率==。
(信道)实际数据传输速率 = 信道利用率 * 信道带宽
(信道)实际数据传输速率 = 发生周期内发送的数据量 / 发送周期
⭐
(第一题是求带宽)


补充的知识点:
滑动窗口协议:实际上不包括S-W协议。
ARQ协议(自动重传协议):包括S-W,GBN,SR三种协议。
连续ARQ协议:发送窗口大于1的ARQ协议。(GBN,SR)
回顾

3.5 介质访问控制(3)
介质访问控制 (MAC)
多个节点共享一“总线型”广播信道时,可能发生“信号冲突”。
- 为了控制各个节点对传输介质的访问,达到减少甚至是避免冲突,
- 这就是:==介质访问控制==(Medium Access Control)
- (无论是有线通信还是无线通信,都会造成==MAC==)

sol1 - 信道划分(4)

① 时分复用 TDM(time division multiplexing)
轮流发言,固定发言时间。
时分复用:
- 将时间分成,多个TDM帧,(此处的TDM帧是一段固定长度的时间间隔,不同于数据链路层的帧)
- 每一个TDM帧分成m个的间隙,
- 每一个间隙给一对用户节点使用。
缺点:
- 每个节点最多只能分配到信道总带宽的1/m,
- 如果某个节点暂不发送数据,会导致被分配的时隙闲置,导致使用率低。
传输介质的性质:
- ①介质的位速率>单个信号的位速率
- ②介质的带宽>结合信道的带宽
①-② 统计时分复用(STDM,statistic)
解决方法:统计每个节点对信道的使用需求,动态按需分配时隙。
- 这就是统计信道时分复用
优点:
- 如果需要,一个节点可以在一段时间内获得所有信道的带宽资源。
- 如果某节点暂不发送数据,可以不分配“时隙”,信道利用率高。

② 频分复用(FDM,frequency division multiplexing)
如果两个信号频率区别很大,就容易分辨出来。
且不同信号之间留出频率隔离带,减少混淆。
频分复用:
- 把信道的总频带划分为多个子频带,
- 每一个子频带作为一个子信道,
- 每对用户使用一个子信道进行通信。

优点:①各个节点可以同时发送信道。②(比较)充分利用了信道带宽Hz。
缺点:FDM技术只能用于 模拟信号的传输(不适用于数字信号的传输)
③ 波分复用(WDM,wave division multiplexing)
用于光信号的传输,适合光纤使用。原理同频分复用。

④ 码分复用(CDM,code division multiplexing)
CDM即共享信道频率,又共享时间

各节点用专属的“码片序列”发送数据
码片序列就是一个m维正交向量(α表示1,-α(对调1/-1)表示0)
每个站点之间事先是知道对方的””码片序列””长啥样的(α,β…)
所以各个站点收到不同的“码片序列”,就知道是谁发的,内容是0还是1。
不同信号在传输过程中产生叠加怎么办?
– 即如何分离不同的信号?
通过:规格化内积
(1/m) * α(或β) * (第一组叠加信号值对应的码片序列的加减情况)= 1还是0


回顾

sol2 - 随机访问(4)
通过争用信道使用权,胜者可发送数据。
随机访问:通过允许冲突,引入竞争解决机制,将广播信道变成点对点信道。
信道访问:通过共享时间或空间,把广播信道变成点对点信道。

① ALOHA协议
纯ALOHA协议:
- 如果准备好数据帧,就立刻发送。
- 类似 停止-等待协议
- 发送方需要收到接收方的确认帧。
- if超时:随机等待一段时间重传(不是固定是防止再次冲突)
时隙ALOHA协议:
- 准备好数据后,等到最近的一个时隙再发送。
- (时隙大小固定 = 传输一个最长帧所需时间)
- 优点:稍微降低冲突概率,提高信道利用率。

② CSMA协议(载波监听机制)
ALOHA协议的改进,增加了监听功能。
监听:在发送数据之前,先监听信道是否空闲。只有信道空闲时,才会尝试发送数据。
- (网络适配器(网卡)需要安装一个“载波监听装置”)
1-坚持CSMA协议
坚持监听,直到信道空闲。
优点:信道利用率高。
缺点:监听的节点可能有多个,同时发送数据会造成冲突。

1-非坚持CSMA协议
如果信道不空闲,先放弃监听,过一会再监听。
优点:比1-坚持CSMA更不容易冲突。
缺点:信道利用率比1-坚持CSMA低一点。

p-坚持CSMA协议
1-坚持CSMA协议和非坚持CSMA协议的综合版本
p就像是概率为p,1就是概率为1哈哈哈。
坚持监听,直到信道空闲。
有p的概率会立即把数据帧发送到信道上,有1-p的概率过一段时间再把数据帧发送到信道上。
优点: 折中的方案。

回顾

==③ CSMA/CD协议==
用于早期的有线以太网(总线型的)
- 【用同轴电缆或者集线器连接多个节点组成的有线局域网】
- 现在的有线以太网(星形的)【用交换机连接组成】

CSMA – 监听 的特性。
CD(collision detection,冲突检测)
==先听后发,边听边发,冲突停发,随机重发。==
- 先听后发:监听到信道空闲再发送数据。
- 边听边发:a节点发送数据时,监听其他节点有没有发送数据到信道上。
- 冲突重发:a节点发送的时候监听到发生冲突,停止发送数据。
- 同时检测是第几次发生冲突,如果次数k>15,放弃传输,并报告网络层。
- 随机重发:如果k≤15,随机等待一段时间 ,重新发送数据。

- (k=10,k=16,是两个分水岭)

拓展:强化碰撞机制。
- 一旦检测到冲突,站点除了立即停止发送数据外,还需发送32或48bit的人为干扰信号,以确保所有站点都能感知到冲突。
争用期
CSMA/CD协议 没有ACK机制,用的是争用期机制。
==争用期==:一个节点最多需要多少时间可以确定自己的占领地盘。(信号在最远两个端点之间往返传输的时间)
- === 2 * 最大单向传播时延==
争用期机制原理:如果在争用期内没有发生冲突,说明就不会再有冲突了。
以太网规定的争用期:争用期内可发送512bit/64B数据。
- eg:10Mbps时,51.2μs。100Mbps时,5.12μs。


==最短帧长==
==①==最短帧长 = 2 * 最大单向传播时延 * 信道带宽
(或者说 === 争用期时间 * 信道带宽==,为争用期内可发送的数据量)
- 若接收方收到的帧小于最短帧长,视为无效帧。
- 为什么?因为如果实际上发生了冲突,但是节点“误以为”发送过程没有冲突。
- 根本原因是帧长太短了,发送全部数据的10Mbps,每段最大长度500m时间也短,节点是发送完就不监听有无冲突了,(争用期是 监听过程 中来检测冲突的),所以发送总时间短,也听不到后面的冲突信号了。
==②==:==发送帧时间 ≥ 争用期时间==(①②式子的桥梁是争用期时间)

最长帧长
规定最长帧长的原因:防止某些节点一直占用信道。
以太网规定:最短帧长64B,最长帧长1518B
帧间最小间隔
9.6μs(10Mbps),一遍接收站有足够时间清空缓存,为接收下一帧做准备。
回顾

==④ CSMA/CA协议==

CSMA 载波监听多路访问
CSMA/CD 冲突检测 (边发送边监听,检测到冲突立即重发)(适用于有线网络,如以太网技术)
CAMA/CA 冲突避免 (发送过程中不用检测冲突,发送前想办法尽量避免冲突(但不是完全避免)(适用于无线网络,如WiFi)
AP(接入点)
就是无线WiFi热点。


无线局域网(WiFi)面临的问题
为什么不能使用CSMA/CD协议?无线网络无法实现冲突检测
- ① 硬件很难实现“边听边发,冲突检测”。(无线网络上接收信号强度<发送信号强度,且无线介质上信号强度变化大)
- ② 存在“隐藏站”问题。(A无法监听到BC信号,BC对A而言就是隐藏站,导致没检测到冲突(而实际是有的))
所以只能使用冲突避免(or完整发送帧的代价太大了)

①CSMA/CA协议(先不考虑隐藏站)
==发送方:先监听后发送,忙则退避。==
- 监听到信道空闲,间隔DIPS后,一口气发完全部帧。
- 若发送方超时未收到ACK,则进行随机退避。
==接收方:停止等待协议(每收到一个正确数据帧都返回ACK)==
随机退避:
用算法确定一段随机退避时间(倒计时)
- [0,(2^4+k - 1)],第六次重传后就不再增加(1023)
发送方会一直监听信道,只有信道空闲时才扣除倒计时。倒计时结束后立即发送帧。
帧间间隔:
- DIFS(分布式协调)>PIFS>SIFS(短IFS)


②信道预约机制(解决屏蔽站问题)
key:先预约再发送。
① 发送方广播RTS控制帧(先听后发,忙则退避)【预约】
② AP广播CTS控制帧给所有节点(告知无关节点,勿扰)
③ 无关节点收到CTS后自觉“禁言”一段时间(即 虚拟载波监听机制)。发送方收到CTS后,就可以发送数据帧了。
④ AP收到数据帧后,进行CRC校验,无差错则返回ACK帧。
NAV:X在xxx帧中填写的时间


回顾

sol3 - 轮询访问(1)
令牌传递协议
令牌环网技术:环形结构,各节点(通过令牌token)“轮询访问”信道,不会发生信道冲突。
- 适用于:高负载的广播信道
- 该协议不会发生冲突。
- 比(总线型)以太网技术好,比(星型)以太网技术差,所以被历史淘汰了。
令牌环网工作原理

节点每次只能传一个帧,传完就要释放令牌给下一个节点。
如果获得令牌的节点没有数据要发送,立刻传递下去,把令牌传给下一个节点。
如果令牌回到原来的节点了,节点不再转发该帧,并重新产生一个令牌。

令牌帧,数据帧
(令牌是一个特殊的控制帧)

MAU – 实现令牌环网的集中控制

回顾

3.6 局域网(3)
以太网与IEEE 802.3
无线局域网与IEEE 802.11
VLAN与IEEE 802.1Q
前言
电气电子工程师学会 – IEEE802委员会 – 802.3/802.11工作组
不同的局域网技术多是科技公司推出的,收到市场行业好评,保留下来。(如:以太网技术,WiFi技术)

802委员会把数据链路层分成:
- MAC子层(介质访问控制子层,与访问传输介质有关的功能,eg组帧,比特传输的差错控制,透明传输等)
- LLC子层(逻辑链路控制子层,eg提供有无确认有无连接的服务等,已经名存实亡了)(802.2工作组已解散)
- 有线局域网已被802.3垄断
- 无线局域网已被802.1垄断
局域网的基本概念和体系结构

除了以太网,别的局域网有:
- 令牌环网:物理是星型结构,逻辑是环形结构
- 光纤分布数字接口:物理是双环结构,逻辑是环形结构
以太网 与 IEEE 802.3
EEE 802.3 推出的 以太网物理层标准
以太网常用的传输介质有四种:粗缆(5),细缆(2),双绞线(T)和光纤(F)。
同轴电缆分为:
- 50Ω基带电缆:
- 细缆(10Mbps,每段最大长度185m
- 粗缆(10Mbps,每段最大长度500m
- 75Ω宽带电缆
同轴电缆只能半双工,双绞线可半双工(集线器),可全双工(交换机)。光纤必须全双工。

(高速以太网:V≥100Mbps)
同轴电缆以太网(中继器连接)

双绞线以太网(集线器 / 交换机连接)

网卡(网络适配器)
网卡实现的主要功能在物理层和数据链路层。
计算机与外界局域网的连接,借助于主板上嵌入的网络适配器实现。
适配器与局域网之间通过电缆或者双绞线以串行方式通信。
适配器与计算机之间通过IO总线以并行方式通信。
两种 以太网MAC层标准
MAC层≈数据链路层(因为LLC层名存实亡了)

(在802.3 标准中,LLC子层才关心为哪个网络层服务,所以IEEE 802.3 标准,不用指明网络层协议,MAC帧中填写的是数据部分的长度。V2标准中是填写网络层协议)
V2标准的 以太网MAC帧
口诀:662N4,收发协数验。N=【46,1500】
(6+6+2+4+46=64),最小MAC帧长是64B
MAC地址固定48位(6B)(高24位位厂商代码,低24位厂商自己分配。)
MAC地址固定在网卡的ROM中,也称为**==物理地址==**。
- 直通方式输入接口收到数据帧,只检查其MAC地址,6B。转发时延为读取MAC地址的时间。(6*8bit/100Mbps=0.48μs)
数据报太长就分片,太短就补充。【即使用了分组交换技术】

(以太网帧不需要结束定界符,因为每一帧之间会有96μs的间隙,且用的是曼切斯特编码。)
单播帧和广播帧如何传播?
前提:
路由器,交换机,各个终端有MAC地址。
集线器没有MAC地址。(只能广播而不是单播)。(和冲突域有关)
集线器:不能分割冲突域,不能分割广播域。
交换机:能分割冲突域,不能分割广播域。
路由器:能分割冲突域,能分割广播域。(路由器不会把帧转发到其他网络)


回顾

虚拟局域网 与 IEEE 802.1Q
虚拟局域网VLAN,由IEEE 802.1Q负责
一个大型局域网(eg校园网)面临的问题
- 广播节点多了,造成“广播风暴”
- 局域网可能有一些敏感节点,存在安全问题

VLAN
将一个大型局域网分割成多个小的VLAN,每一个VLAN是一个广播域
每一个VLAN对应一个VID
(需要支持VLAN功能的交换机来实现)
属于同一个VLAN的主机,无论是否连接到同一台交换机上,都能互相通信。
属于不同的VLAN的主机即使连接到同一个交换机上,也不能直接在数据链路层通信。
- ⭐不同广播域的站点,需要路由器 / 支持三层功能的交换机完成第三层转发,普通以太网交换机不行)

VLAN的划分方式
① 基于接口

② 基于MAC地址

③ 基于IP地址
- 需要网络层功能的支持
- 这种方式可以让多个局域网的主机组成一个VLAN(虚拟局域网跨越了路由器了)

802.1Q帧
- 802.1Q帧(比标准的以太网帧)多了4个字节,记录VID的信息。
- 为保持最小帧长64B不变,数据字段的最小长度46B→42B,最大长度仍为1500B。也因此最大帧长1518B→1522B
- 如果帧的传输需要跨越交换机,需指明VID。且通过干线链路传输。
- 交换机与交换机之间,传输802.1Q帧
- 主机与交换机之间,传输标准以太网帧


回顾

无线局域网 与 IEEE 802.11

(第二种无线局域网不包含AP,是由若干平等地位的移动站临时组成的对等网络,能独立于互联网运行)
一台家用路由器的硬件架构
家用路由器 = 路由器 + 以太网交换机 + AP (AP可以看成是无线交换机)
通过门户Portal设备将两类局域网连接,变成一个更大的局域网。(EG:将802.11无线局域网接入802.3有线以太网)

802.11无线局域网的基本概念
(通过CSMA/CA协议实现介质访问控制。)
基站:接入点AP(或者叫无线接入点WAP),可以看成是WiFi热点
移动站:连接了同一个WiFi的多个设备
基本服务集BSS = 1个基站+多个移动站
- 服务集标识符SSID(就是WIFI名字,不超过32字节)
- 基本服务区BSA(就是站在哪可以搜到WiFi)
拓展服务集ESS:(就像是全屋WiFi)将多个AP连接到同一个分配系统,组成一个更大的服务集。
- (无线)子母路由器

漫游:一个移动站从一个基本服务集切换到另一个基本服务集,仍然可以保持通信。(就是丝滑切换不同的WiFi热点)

802.11帧的分类
数据帧
控制帧:如ACK,RTS,CTS帧
管理帧:eg探测请求和探测响应帧(就是用于发现WiFi的帧)
数据帧


回顾

拓展:控制帧(格式)

以太网交换机
集线器无法隔离冲突域。且带宽平分1/N。
网桥可以隔离冲突域(替代集线器)
以太网交换机是多端口网桥,也能隔离冲突域。各个接口带宽都为N。
中继器和集线器属于物理层设备,网桥和交换机属于数据链路层设备 (因为前者只起到放大信号,广播信号的作用)
以太网交换机特点:
- 交换机端口连接集线器时,必须使用CSMA CD协议,且只能是半双工的方式
- 交换机端口连接主机或其他交换机时,工作在全双工方式(默认)(因此也无需使用CSMA CD协议)
- 交换机有自学习功能(支持即插即用)
- (交换机可以互连不同物理层,不同MAC子层及不同速率的以太网)

以太网交换机的自学习功能
记录下当前地址的始址。

直接交换 VS 存储转发交换


共享式以太网
指的是以集线器为中心连接设备构建的局域网。
所有主机(通过双绞线接入集线器)共享同一物理传输介质和总带宽。(好惨哈哈哈)
特点:
- 工作在物理层!
- 采用半双工通信和CSMA CD协议
- 单一冲突域和广播域
- 盲目广播所有帧
3.7 广域网
广域网的任务是 长距离传输主机发送的数据,
使得一个局域网可以通过广域网与另一个远程局域网通信。
广域网 - WAN
各个节点之间是 点对点 高速链路
- 广域网 点对点链路 使用的协议是 PPP协议。强调资源共享。
- 以太网 总线型链路 使用的协议是 CSMA CD协议。强调数据传输。
- 广域网不同于局域网,OSI层次是三层。


PPP协议
(point to point protocol,点对点协议)


(PPP协议提供差错 检测,但是不提供 纠错 哦)
(PPP协议提供的是 有连接 不可靠 的服务)
PPP工作过程示例
LCP - 链路控制协议,建立的配置LCP链路
NCP - 网络控制协议,为网络层协议建立配置逻辑链接

other
无确认的无连接服务:指的是主机发送帧时不需要先建立逻辑连接,目的主机收到帧时也不需要发回确认。
- 如果是帧丢失,也不检测也不回复。
- 适合:①错误率很低的时候。②实时通信(毕竟数据迟到才是最糟的)
- 无连接是之后才学习的内容,不用深究。
服务接入点:层与层之间的接口地址



