数据链路层(帧)(一) |
您所在的位置:网站首页 › udp16进制数据帧字段 › 数据链路层(帧)(一) |
数据链路层
一、使用点对点信道的数据链路层1.数据链路和帧2.三个基本问题
二、点对点协议 PPP1.PPP 协议的特点2.PPP 协议的帧格式3.PPP 协议的工作状态
三、使用广播信道的数据链路层1.局域网的数据链路层2.CSMA/CD 协议
一、使用点对点信道的数据链路层
数据链路层使用的信道主要有以下两种类型: 点对点信道: 这种信道使用一对一的点对点通信方式。 广播信道: 这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据 发送。 链路(link) 是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。 一条链路只是一条通路的一个组成部分。 数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现在最常用的方法是使用适配器(即网卡) 来实现这些协议的硬件和软件。 一般的适配器都包括了数据链路层和物理层这两层的功能。 (1) 封装成帧 封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。 首部和尾部的一个重要作用就是进行帧定界。 如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。 类似于C语言里面输出语句中的转义符”\” 差错控制仅仅是可靠传输的保障技术之一,可靠传输还需要解决丢包、乱序等问题,这些问题差错控制解决不了。 循环冗余检验的原理 在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。 在发送端,先把数据划分为组。假定每组 k 个比特。 假设待传送的一组数据 M = 101001(现在 k = 6)。我们在 M 的后面再添加供差错检测用的 n 位冗余码一起发送。 实际标准需要给出用户数据长度和冗余码的长度的关系。 冗余码的计算 用二进制的模 2 运算进行 2n 乘 M 的运算,这相当于在 M 后面添加 n 个 0。 得到的 (k + n) 位的数除以事先选定好的长度为 (n + 1) 位的除数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 少1 位,即 R 是 n 位。 先选定长度为(n+1)除数P,在M后面添加n个0(添加的0个数=P的长度-1),再使用模2除法计算余数R 接收端对收到的每一帧进行 CRC 检验 (1) 若得出的余数 R = 0,则判定这个帧没有差错,就接受(accept)。 (2) 若余数 R 0,则判定这个帧有差错,就丢弃。 但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。 只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。 现在全世界使用最广泛的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)。 用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。 ADSL使用的PPPOE协议 PPP协议参考了HDLC的帧结构,但没有使用HDLC帧类型(信息帧I、监控帧S) FTTH光纤到户目前采用EPON(Ethernet Passive Optical Network)以太无源光网络。 II、PPP 协议不需要的功能 (1)纠错 PPP只进行检错,不纠错。PPP是不可靠的传输协议。 (2)流量控制 端到端的的流量控制由TCP负责,链路层的PPP协议不需要再重复进行流量控制 (3)序号 PPP为不可靠传输,不需要序号。 (4)多点线路 不支持点到多点的传输服务 (5)半双工或单工链路 III、PPP 协议的组成 1992 年制订了 PPP 协议。经过 1993 年和 1994 年的修订,现在的 PPP 协议已成为因特网的正式标准[RFC 1661]。 PPP 协议有三个组成部分 一个将 IP 数据报封装到串行链路的方法。 链路控制协议 LCP (Link Control Protocol): 建立、配置和测试数据链路测连接。 一套网络控制协议 NCP (Network Control Protocol): 每个协议支持不同的网络层协议,如IP、DECnet、AppleTalk。 2.PPP 协议的帧格式
解决数据链路层三个问题之中的“1. 封装成帧” 透明传输问题: 两种方式: 当 PPP 用在异步传输时,就使用一种特殊的字符填充法。 当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。 解决数据链路层三个问题之中的“2. 透明传输” 字符填充: 将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。 若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。 若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。(原因是避免双方的调制解调器指令当成自身的控制字符进行处理) ①当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。 ②PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。LCP—链路控制协议 这些分组及其响应选择一些 PPP 参数,和进行网络层配置,NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。 通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。 (可直接看下图) 局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。 局域网具有如下的一些主要优点: 具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。 便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。 提高了系统的可靠性、可用性和残存性。 纯ALOHA协议的思想很简单 (1)只要用户有数据要发送,就尽管让他们发送。当然,这样会产生冲突从而造成帧的破坏。 (2)由于广播信道具有反馈性,因此发送方可以在发送数据的过程中进行冲突检测,将接收到的数据与缓冲区的数据进行比较,就可以知道数据帧是否遭到破坏。 (3)研究证明,纯ALOHA协议的信道利用率最大不超过18.4% 载波监听多点接入/碰撞检测 CSMA/CD(Carrier Sense Multiple Access with Collision Detection) CSMA/CD的两个关键技术: (1)载波监听多点接入 “多点接入” 表示许多计算机以多点接入的方式连接在一根总线上。 “载波监听” 是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。 (总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。) 以太网的两个标准: DIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约。 IEEE 的 802.3 标准。 DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。 严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网 数据链路层的两个子层: 为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制 LLC (Logical Link Control)子层 媒体接入控制 MAC (Medium Access Control)子层。 与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的 (LLC屏蔽各种局域网的差异,向网络层提供一个统一的服务访问点SAP。) 适配器的作用: 网络接口板又称为通信适配器(adapter)或网络接口卡 NIC (Network Interface Card),或**“网卡”**。 适配器的重要功能: 进行串行/并行转换: 电缆串行/计算机IO并行。 对数据进行缓存: 网络速率和计算机总线速率不一致。 把数据封装成帧: 按照协议格式对数据进行封装。 实现以太网协议: 以驱动形式安装在操作系统。 最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。 电磁波在总线上的有限传播速率的影响: 当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。 A 向 B 发出的信息,要经过一定的时间后才能传送到 B (传播时延)。 B 若在 A 发送的信息到达 B 之前发送自己的帧(因为这时 B 的载波监听检测不到 A 所发送的信息),则必然要在某个时间和 A 发送的帧发生碰撞。 碰撞的结果是两个帧都变得无用。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |