【CN101】计算机网络笔记3 —— Layer 2 技术

笔者:YY同学

生命不息,代码不止。好玩的项目尽在GitHub



Layer 2(L2)功能

  • L1 无法决定数据传输的目标主机,L2 则可以通过媒介进入控制单元(Media Access Control,MAC)选择数据传输的目标主机。
  • L1 无法命名和识别主机,L2 可以使用 Flat Addressing 进程。
  • L1 只能描述 bit 流, L2 使用 frame 来重组 bit 流。
  • L1 无法与上层(L3)沟通,L2 可以通过 Logic Link Control(LLC)与上层通话。
  • L2 通过网卡(Network Interface Card,NIC)实现网络适配器。

MAC 层和 LLC 层

MAC 层和 LLC 层属于 L2 的两个子层,MAC 在下,LLC 在上。

  • MAC:向下连接 L1,决定共享环境下哪个主机可以收到数据,分为可决定性(Deterministic)和不可决定性(Non-deterministic)。前者采用轮转式,当前拿到电子 token 的 host 可以进入网络完成数据收发,如果该 host 不发送数据则 token 递给下一个 host,以此类推。Token Ring 和 FDDI(Fiber Distributed Data Interface)采用这种模式。后者采用广播式,会对所有主机发送数据,没有先后顺序。以太网就采用这种模式。MAC 层拥有唯一地址,即 MAC 地址,又称物理地址(Physical Address)。
  • LLC:通过软件实现,独立于硬件。LLC 可以参与包封装,并且加入 Destination Service Access Point(DSAP)和 Source Service Access Point(SSAP)便于 MAC 完成数据包运输。
  • 注意:以太网(Ethernet)包含物理层(L1)和 MAC 层(L2 下半层)。以太网命名规则:速度(Mbps)+ 信号方法(BASE/BROAD)+ 媒介(F 表示光纤管,T 表示 UTP)。

碰撞域(Collision Domain)

在逻辑拓扑(Logical Topology)中,多个设备共享一块区域,处于该区域中的设备可以自行并且同时转发数据包,因此数据包之间可能产生冲突导致数据损毁。一般碰撞域会被 L2 的设备(Bridge 和 Switch)隔开,而 L1 的设备(Hub 和 Repeater)则会拓展碰撞域。其原因是 L1 设备是半双工(Half-Duplex,不能同时收发)的,如同运输汽车,只负责运输而不知道是不是该停下来;而 L2 设备则是双工(Full-Duplex,可以同时收发)的,如同路口的交通警察,具有指挥数据交通的功能。
在这里插入图片描述


CSMA/CD(Carrier Sense Multiple Access with Collision Detection)

这是一个简易的检测碰撞的系统。在每个时间片只允许一个 host 发送信息。在发送信息前,host 会监听网络确保是否有其他 host 发送的数据正在网络中,如有则等待,如没有则发送。如果发生了碰撞,检测到碰撞的 host 会停止当前的一切发送,并且 NIC 会将检测到的碰撞在碰撞域内广播。最后,发送数据的 host 收到碰撞信息后,会销毁之前传输的数据并重新发送一遍,之后会传送一个 32-bit 的 jam 信号告知该碰撞域内的所有 host 现在正在进行数据传送,请勿再发送数据包。

碰撞的三种类型

  • 本地碰撞(Local Collision):在 UTP 中同时检测到 RX 和 TX
  • 远程碰撞(Remote Collision):一般发生在 repeater 的远端,并且没有本地碰撞。
  • 延后碰撞(Late Collision):发生在前 64 个八位字节发送之后,NIC 不会自动传送这种冲突,一般发生在插槽时间(Slot Time)结束之后。

在这里插入图片描述

插槽时间与退避算法(Backoff Algorithm)

插槽时间是比理论上一个碰撞域中距离最远的两个设备之间来回通信的时间还要略微长一点。插槽时间不仅能保证碰撞域内任意两个设备在经过一个插槽时间后一定能完成数据传送,并且最大程度上减少不必要的等待时间。目前,插槽时间只应用于半双工系统。

在这里插入图片描述

退避算法是在发生碰撞后快速恢复通信的一种算法。如果当前碰撞域内没有检测到任何碰撞,则正常发送数据包。如果检测到了碰撞,则发生碰撞的所有 host 需要随机等待一段时间后再次尝试发送数据包以减少再次碰撞的概率,但如果又失败了则需要继续尝试。尝试的次数越多(一般最多 16 次),则需要等待时间的范围也会随之增大(如同在十字路口中心的车辆需要等待各方向车辆通过后才能通过)。例如下图中 A 与 B 先检测到碰撞,然后 A 和 B 随机等待一段时间后继续发送。之后 B 与 C 检测到碰撞,因此 B 需要等待更长的时间因为这是 B 的第二次尝试,而 A 则可以正常发送。随机等待时间范围的公式如下:
R a n d o m w a i t i n g p e r i o d = ( 2 n – 1 ) ∗ ( s l o t t i m e ) Random waiting period = (2^n – 1) * (slot time) Randomwaitingperiod=(2n1)(slottime)

在这里插入图片描述


泛型 Frame 格式

  • 起始段(Start Frame Field):表示信号序列的开始,后面跟的所有部分称为 Frame。
  • 地址段(Address Field):包含源(Source)和目的地(Destination)的 MAC 地址。
  • 长度段(Length/Type Field):包含 Frame 的长度以及 layer 3 的发送请求和协议,与地址段合并为 Header。
  • 数据段(Data Field):包含主体传送的数据,一般是上层的 PDU。
  • 校验和段(Frame Check Sequence Field, FCS):又称为 Trailer,负责确认数据是否正常发送,是否有损坏。常用的检测方法有:Cyclic Redundancy Check(CRC),Two-dimensional Parity 和 Internet Checksum。

在这里插入图片描述


MAC 地址类型

  • 单播地址(Unicast) :只包含一个目的地的 MAC 地址,发送给唯一目标 host。
  • 广播地址(Broadcast):在冲突域内广播给所有的 host,MAC 地址为 FF-FF-FF-FF-FF-FF。
  • 多播地址(Multicast):在冲突域内发送给部分或一组 host,MAC 地址以 01-00-5E 开头。

Bridging 和 Switching

都是 L2 设备的寻址方式,都利用 MAC 地址寻找 host。按照设备分,桥用 Bridging,交换机用 Switching,后面还会衍生出 Bridge Table 和 Switch Table 用于记录源和目的地的 MAC 地址和端口号,但二者本质上是差不多的。
在这里插入图片描述
来看一个例子,一个数据包从 PC1 发送给 PC3,当前两个 Switch Table 里分别记录了 PC1,PC2,PC3 的 MAC 地址和端口号。现在,数据包从 PC1 通过 P1 端口发送给 Switch1,Switch1 中已经存在了 PC1 的记录因此无需重复记录,之后 Switch1 开始寻找 PC3 的记录结果没找到。于是 Switch1 在冲突域内进行广播,将数据包发送给 PC2 和 Switch2。PC2 因为目的地 MAC 地址不一样因此会把收到的数据包扔掉(Drop),而 Switch2 收到数据包后会在 Switch Table 中标记 PC1 的 MAC 地址为 MAC_1,端口号为 P4,这表示数据包是由 PC1 经过 P4 端口发送过来的。之后,Switch2 会寻找 PC3 的地址,正好 Switch Table 中有所记录,于是只会向 PC3 发送数据包而不会发送给 PC4。


三种 Switching Mode

模式Store-and-forwardFast-forwardFragment-free
读取目的地 MAC 的时间在接收整个 Frame 后在接收整个 Frame 前在接收整个 Frame 前
转发时间在接收整个 Frame 后在接收整个 Frame 前在接收整个 Frame 前
延迟高低高延迟,取决于 Frame 的到达时间延迟最低低延迟
错误检测会检测所有错误类型没有错误检测冲突时检测,会检测大多数错误
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机网络笔记pdf是指通过电子方式制作的计算机网络学习材料。这种格式的笔记具有许多优势和便利性。 首先,通过将计算机网络笔记制作成pdf格式,可以实现电子化存储和传输,方便学生在不同设备上进行查阅。无论是在电脑、平板还是手机上,只要有pdf阅读软件,就可以随时打开和阅读这些学习材料。同时,学生们也可以通过邮件、社交媒体等方式分享和传输pdf笔记,方便与他人进行学习分享和讨论。 其次,pdf格式的笔记具有较好的兼容性。无论是使用Windows、Mac还是Linux系统,都可以很好地支持pdf文件的打开和编辑。这一点在计算机领域尤为重要,因为计算机网络学习通常需要使用多种操作系统和软件工具。 此外,pdf格式的笔记还具有便于编辑和标注的特点。学生们可以使用pdf阅读软件提供的功能,如划线、批注、插入书签等,方便地对重点知识进行标记和整理。这对于复习和回顾来说非常有帮助,可以快速找到自己需要的内容。 最后,pdf格式的计算机网络笔记还可以保护知识产权和内容的完整性。通过设置权限和密码保护,可以防止未经授权的复制和修改,确保学习材料的安全和可信度。 综上所述,计算机网络笔记pdf是一种便捷、兼容、可编辑和安全的学习材料格式,对于学生们在计算机网络学习中起到了重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值