解决透明传输问题
- 解决方法:字节填充 (byte stuffing) 或字符填充 (character stuffing)。
- 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是1B)。
- 接收端的数据链路层在将数据送往 络层之前删除插入的转义字符。
- 如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符 ESC。当接收端收到连续的两个转义字符时,就删除其中前面的一个。
透明:指某一个实际存在的事物看起来却好像不存在一样。
在传输过程中可能会产生比特差错:1 可能会变成 0, 而 0 也可能变成 1。
- 用二进制的模 2 运算进行 2n 乘 M 的运算,这相当于在 M 后面添加 n 个 0。
- 得到的 (k + n) 位的数除以事先选定好的长度为 (n + 1) 位的除数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 少 1 位,即 R 是 n 位。
- 仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受 (accept)。
- “无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的概率认为这些帧在传输过程中没有产生差错”。
- 也就是说:“凡是接收端数据链路层接受的帧都没有传输差错”(有差错的帧就丢弃而不接受)。
- 单纯使用 CRC 差错检测技术不能实现“无差错传输”或“可靠传输”。
- 应当明确,“无比特差错”与“无传输差错”是不同的概念。
- 在数据链路层使用 CRC 检验,能够实现无比特差错的传输,但这还不是可靠传输。
- 要做到“无差错传输”(即发送什么就收到什么)就必须再加上确认和重传机制。
- 本章介绍的数据链路层协议都不是可靠传输的协议。
⑥.帧检验序列 FCS
在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。
循环冗余检验 CRC 和帧检验序列 FCS 并不等同。
CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。
FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法。
应当注意:
2.点对点协议 PPP
2.1 PPP 协议的特点
对于点对点的链路,目前使用得最广泛的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)。PPP 协议在 1994 年就已成为互联 的正式标准。
⑴.用户到 ISP 的链路使用 PPP 协议
- 当 PPP 用在异步传输时,就使用一种特殊的字符填充法。
- 当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。
①.字符填充
- 将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列 (0x7D, 0x5E)。
- 若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列 (0x7D, 0x5D)。
- 若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。
2.3 PPP 协议的工作状态
- 当用户拨 接入 ISP 时,路由器的调制解调器对拨 做出确认,并建立一条物理连接。
- PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。
- 这些分组及其响应选择一些 PPP 参数,并进行 络层配置,NCP 给新接入的 PC 机分配一个临时的 IP 地址,使 PC 机成为因特 上的一个主机。
- 通信完毕时,NCP 释放 络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。
- 频分复用
- 时分复用
- 波分复用
- 码分复用
动态媒体接入控制(多点接入)
①.随机接入
②.受控接入 ,如多点线路探询 (polling),或轮询。 - DIX Ethernet V2 是世界上第一个局域 产品(以太 )的规约。
- IEEE 802.3 是第一个 IEEE 的以太 标准。
- DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域 简称为“以太 ”。
- 严格说来,“以太 ”应当是指符合 DIX Ethernet V2 标准的局域 。
- IEEE 802.3 是第一个 IEEE 的以太 标准。
- 逻辑链路控制 LLC (Logical Link Control)子层;
- 媒体接入控制 MAC (Medium Access Control)子层。
- MAC 帧的格式
- 用户独享带宽,增加了总容量。
- 从共享总线以太 转到交换式以太 时,所有接入设备的软件和硬件、适配器等都不需要做任何改动。
- 以太 交换机一般都具有多种速率的接口,方便了各种不同情况的用户。
- 扩展性
- 安全性
- 可管理性 等
⑷.媒体共享技术
⑸.以太 的两个标准
⑹.数据链路层的两个子层
为了使数据链路层能更好地适应多种局域 标准,IEEE 802 委员会就将局域 的数据链路层拆成两个子层:
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关。不管采用何种协议的局域 ,对 LLC 子层来说都是透明的。
局域 对 LLC 子层是透明的:
3.2 CSMA/CD 协议
最初的以太 是将许多计算机都连接到一根总线上。易于实现广播通信。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。
CSMA/CD 协议的重要特性
使用 CSMA/CD 协议的以太 不能进行全双工通信而只能进行双向交替通信(半双工通信)。每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。 这种发送的不确定性使整个以太 的平均通信量远小于以太 的最高数据率。
3.3 使用集线器的星形拓扑
传统以太 最初是使用粗同轴电缆,后来演进到使用比较便宜的细同轴电缆,最后发展为使用更便宜和更灵活的双绞线。采用双绞线的以太 采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器 (hub)。
⑴.传统以太 使用同轴电缆,采用总线形拓扑结构
⑶.星形以太 10BASE-T
3.4 以太 的信道利用率
多个站在以太 上同时工作就可能会发生碰撞。
当发生碰撞时,信道资源实际上是被浪费了。因此,当扣除碰撞所造成的信道损失后,以太 总的信道利用率并不能达到 100%。
假设? 是以太 单程端到端传播时延。则争用期长度为 2? ,即端到端传播时延的两倍。检测到碰撞后不发送干扰信 。
设帧长为 L (bit),数据发送速率为 C (bit/s),则帧的发送时间为 T0 = L/C (s)。
⑴.以太 信道被占用的情况
一个站在发送帧时出现了碰撞。经过一个争用期 2? 后,可能又出现了碰撞。这样经过若干个争用期后,一个站发送成功了。假定发送帧需要的时间是 T0。
在理想化的情况下,以太 上的各站发送数据都不会产生碰撞(这显然已经不是 CSMA/CD,而是需要使用一种特殊的调度方法),即总线一旦空闲就有某一个站立即发送数据。发送一帧占用线路的时间是 T0 + τ,而帧本身的发送时间是 T0。于是,我们可计算出理想情况下的极限信道利用率 Smax 为:
⑵.单站地址,组地址,广播地址
IEEE 规定地址字段的第一字节的最低位为 I/G 位。I/G 表示 Individual / Group。
当 I/G 位 = 0 时,地址字段表示一个单站地址。
当 I/G 位 = 1 时,表示组地址,用来进行多播(以前曾译为组播)。此时,IEEE 只分配地址字段前三个字节中的 23 位。
当 I/G 位分别为 0 和 1 时,一个地址块可分别生成 223 个单个站地址和 223 个组地址。
所有 48 位都为 1 时,为广播地址。只能作为目的地址使用。
⑶.全球管理与本地管理
IEEE 把地址字段第一字节的最低第 2 位规定为 G/L 位,表示 Global / Local。
当 G/L 位 = 0 时,是全球管理(保证在全球没有相同的地址),厂商向 IEEE 购买的 OUI 都属于全球管理。
当 G/L 位 = 1 时, 是本地管理,这时用户可任意分配 络上的地址。
⑷.适配器检查 MAC 地址
适配器从 络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址。
如果是发往本站的帧则收下,然后再进行其他的处理。否则就将此帧丢弃,不再进行其他的处理。
“发往本站的帧”包括以下三种帧:
①单播 (unicast) 帧(一对一)
②广播 (broadcast) 帧(一对全体)
③多播 (multicast) 帧(一对多)
所有的适配器都至少能够识别前两种帧,即能够识别单播地址和广播地址。
有的适配器可用编程方法识别多播地址。
只有目的地址才能使用广播地址和多播地址。
以混杂方式 (promiscuous mode) 工作的以太 适配器只要“听到”有帧在以太 上传输就都接收下来。
常用的以太 MAC 帧格式有两种标准:
⒈DIX Ethernet V2 标准
⒉IEEE 的 802.3 标准
最常用的 MAC 帧是以太 V2 的格式。
⑴.以太 V2 的 MAC 帧格式
4.2 在数据链路层扩展以太
扩展以太 更常用的方法是在数据链路层进行。早期使用 桥,现在使用以太 交换机。
⑶.以太 交换机的自学习功能
以太 交换机运行自学习算法自动维护交换表:
IEEE 802.1D 标准制定了一个生成树协议 STP (Spanning Tree Protocol)。
其要点是:不改变 络的实际拓扑,但在逻辑上则切断某些链路,使得从一台主机到所有其他主机的路径是无环路的树状结构,从而消除了兜圈子现象。
局域 存在的以下几个方面的问题:
⑼.总线以太 和 10Base_T 星形以太
所有计算机都处于同一个碰撞域(或冲突域)中和同一个广播域中。
⑽.广播域
广播域(broadcast domain):指这样一部分 络,其中任何一台设备发出的广播通信都能被该部分 络中的所有其他设备所接收。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!