520 likes | 652 Views
数据链路层. 本章教学要求. 4.1 差错产生与差错控制方法. 4.1.1 设计数据链路层的原因. 在 原始物理传输线路 上传输数据信号是有 差错 的; 设计数据链路层的主要目的:将有差错的 物理线路 改进成无差错的 数据链路 ; 方法: 差错检测 差错控制 流量控制 作用:为 相邻节点 提高数据传输质量, 向网络层 提供高质量的 服务, 传输 数据单元为 帧 。. 4.1. 2 差错产生的原因和差错类型. 传输差错 —— 通过通信信道后 接收 的数据与 发送 数据不一致的现象,简称为 差错 ;. 差错产生过程:. 噪声对数据传输的影响. 物理线路.
E N D
4.1 差错产生与差错控制方法 4.1.1 设计数据链路层的原因 • 在原始物理传输线路上传输数据信号是有差错的; • 设计数据链路层的主要目的:将有差错的物理线路改进成无差错的数据链路; 方法:差错检测 差错控制 流量控制 • 作用:为相邻节点提高数据传输质量,向网络层提供高质量的服务,传输数据单元为帧。
4.1.2 差错产生的原因和差错类型 传输差错 —— 通过通信信道后接收的数据与发送数据不一致的现象,简称为差错; 差错产生过程: 噪声对数据传输的影响 物理线路 信 宿 信 源 数 据 噪 声 数据+噪声
通信信道的噪声分为两类: 热噪声 冲击 噪声 是由传输介质导体的电子热运动产生的 是由外界电磁干扰引起的 特点:时刻存在、幅度较小、强度与频率无关。 特点:幅度比较大,是引起传输差错的主要原因 由热噪声引起的差错是随机差错 由冲击噪声引起的差错是突发差错
4.1.3 误码率的定义 误码率定义 —— 是指二进制比特在数据传输系统中被传错的概率。 它在数值上近似等于: Pe = Ne/N 其中,N为传输的二进制比特总数; Ne为被传错的比特数。
讨 论 • 误码率应该是衡量数据传输系统正常工作状态下传输可靠性的参数; • 对于一个实际的数据传输系统,不能笼统地说误码率越低越好,要根据实际传输要求提出误码率要求; • 对于实际数据传输系统,如果传输的不是二进制比特,要折合成二进制比特来计算; • 差错的出现具有随机性,在实际测量一个数据传输系统时,只有被测量的传输二进制比特数越大,才会越接近于真正的误码率值。
4.1.4 检错码与纠错码 差错控制 ——检查是否出现差错以及如何纠正差错; 差错控制目的——减少物理线路的传输错误; 差错控制的两种策略: • (1)纠错码:每个传输的分组带上足够的冗余信息; 接收端能发现并自动纠正传输差错。(实现困难) (2)检错码:分组仅包含足以使接收端发现差错的冗余信息;接收端能发现出错,但不能确定哪一比特是错的,并且自己不能纠正传输差错。 靠重传机制达到纠错目的。(工作原理简单,实现容易)
4.1.6 差错控制机制 反馈重发机制 —— 在数据链路层,大多数情况都是采用检错码。为了向发送方报告数据的接收情况,接收方使用应答来进行信息反馈。
反馈重发策略 ①重发:当发送方接收到否定的回答,表明数据发送错误,则需重发错误帧; ②超时重发:如果数据帧或应答帧在传输过程中丢失,则发送方收不到应答,即超过接收应答的规定时间,此时也需重发帧; ③帧重复:若数据帧被正确接收,而应答帧被丢失,这种情况接收方会收到两个相同的帧,这种现象称为帧重复。解决办法,对帧进行编号,接收到相同编号的帧放弃。
4.2 数据链路层的基本概念4.2.1 物理线路与数据链路 • 传输介质 + 通信设备 = 物理线路 • 物理线路 + 链路协议 = 数据链路
4.2.2 数据链路层的主要功能 ⑴数据链路层协议 — 为实现数据链路控制功能而制定的规程或协议。 ⑵数据链路层功能 • 链路管理:数据链路的建立、维护、释放。 • 帧同步:从收到的比特流中准确地区分帧的边界。 • 流量控制:收发双方速度保持协调。 • 差错控制:差错检查和差错纠正。 • 帧的透明传输:接收方能正确区分控制信息还是数据。 • 寻址 :能正确传输到目的节点。
4.2.3 数据链路层向网络层提供的服务 • 数据链路层是OSI参考模型的第2层; • 设立数据链路层的主要目的是将原始的、有差错的物理线路变为对网络层无差错的数据链路; • 为了实现这个目的,数据链路层必须实现链路管理、帧传输、流量控制、差错控制等功能; • 数据链路层为网络层提供的服务主要表现在:正确传输网络层的用户数据,为网络层屏蔽物理层采用的传输技术的差异性。
帧终止字符 帧起始字符 帧内容 4.2.4 数据链路层协议的分类 • 是数据链路层出现的最早的协议; • 缺点: • 不同类型计算机的控制字符可能不同; • 不能实现“透明传输”; • 协议效率低; 面向字符型的同步传输帧格式如下: 面向字符型 面向比特型 这种方法使用特殊的“ASCII字符对”作为帧的起始与终止定界符,由于帧同步信息、帧内容、帧终止信息都是以字符形式表示,所以称为“面向字符型的同步传输”。
任意长度的比特串 01111110 01111110 帧终止字符 帧起始字符 帧内容 4.2.4 数据链路层协议的分类 面向字符型 面向比特型 使用一个特殊的比特数据作为帧的起始与终止定界符,由于帧起始信息、帧内容、帧终止信息都是以比特形式表示,所以称为“面向比特位的同步传输”。 由于面向比特位的同步传输的基本单位是比特,因而可以用来传输任意长度的二进制比特串,通用性强。
传输起止定界符处理 为了防止在传输过程中,帧内容与帧起止标志具有相同的比特,发送方边发送边检查数据,每连续发送5个1后,自动在其后插入一个0;而接收端则逆操作。 如下图所示: 发送前数据:0110111111100011111010 发送时数据: 01111110 011011111011000111110010 01111110 接收后数据:0110111111100011111010 帧终止字符 帧起始字符
4.3 面向比特型数据链路层协议 典型的面向比特型协议有: HDLC(high-level data link control)协议与点-点协议PPP(point-to-point Protocol) 面向字符型数据链路层协议的缺点: • 报文格式不一样; • 传输透明性不好; • 等待发送方式,传输效率低。 产生 背景 面向比特型协议的设计目标: • 以比特作为传输控制信息的基本单元; • 数据帧与控制帧格式相同; • 传输透明性好; • 连续发送,传输效率高。
4.3.2 数据链路的配置和数据传送方式 非平衡配置的特点: 一组主机根据在通信过程中的地位分为主站与从站。 • 主站:控制数据链路的工作过程。主站发出命令 • 从站:接受命令,发出响应,配合主站工作
从站 从站 主站 主站 从站 从站 主站发出命令 从站发出响应 主站发出命令 从站发出响应
平衡配置方式 • 链路两端的两个站都是复合站; • 复合站同时具有主站与从站的功能; • 每个复合站都可以发出命令与响应; • 平衡配置结构中只有异步平衡模式; • 异步平衡模式的每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的许可。 复合站 复合站 复合站发出命令/或进行响应 复合站发出命令/或进行响应
4.3.3 HDLC的帧结构 帧开始 帧结束 • 标志字段F • 帧同步:如果从接收到的比特流中正确判断一个帧开始和结束的位置。 • 标志字段F为特定的“01111110”比特序列。 • HDLC帧数据存在“透明传输”问题。 • 为了避免出现这种错误,HDLC协议规定采用“0比特插入/删除方法”
地址字段A • 地址字段长度8位,最多可标识256个站地址; • 非平衡方式传输数据时,地址地段总填入从站地址; • 平衡方式传输数据时,地址字段填入应答站地址; • 若地址地段全是1,表示为广播地址,则要求网络中所有站都要接收该帧。
帧类型及控制字段的意义 • 控制字段C 根据控制字段最前面两个比特的取值,HDLC帧可以分为三类。
信息字段I • 信息字段允许任意的二进制比特序列组合; • 信息字段仅出现在信息帧(I帧)与无编号帧(U帧)中。 • 帧校验字段FCS • HDLC采用CRC校验方式。
4.3.4 HDLC协议工作原理 以正常响应模式(NRM)的数据链路工作过程为例, 进一步说明数据链路层协议HDLC的工作原理; 数据链路工作过程分为三个阶段: 建立数据链路、帧传输、释放数据链路
(1)信息帧的简化表示方法 例,一个信息帧表示:
无编号帧的表示方法 • SNRM帧与UA帧结构的表示方法
正常响应模式的数据链路工作过程分析: 置正常响应 模式—— 发出探询请求建立数据链路连接 无编号确认 —— 建立数据链路连接 发送序号1的信息帧 发送序号2的信息帧,同时询问从站是否有帧要发送 若从站有3个帧需要发送,它可以连续发送,并在设置第3帧应答位F=1,表示从站数据发送结束。 拆链命令—— 探询释放链路 无编号确认 —— 同意释放链路
4.5 点-点协议PPP • PPP协议简单、适用范围广; • PPP协议不仅在拨号电话线,并且在路由器─路由器之间的专用线上广泛应用。是在大多数家庭个人计算机和ISP之间使用的协议; • PPP协议只支持点-点线路连接,不支持点-多点连接; • 只支持全双工通信,不支持单工与半双工通信; • 支持异步通信或同步通信; • PPP协议通过链路控制协议LCP来建立、配置、管理和测试数据链路连接。 • 通过网络控制协议NCP来建立和配置不同的网络层协议。
PPP信息帧格式 • 标志(flag)字段: • 长度1个字节,取值“01111110”,用16进制数7E表示; • 地址(address)字段: • 由于是点-点链路,因此地址字段规定取值“11111111”(FF) • 控制(control)字段: • 长度1个字节,取值“00000011”(03)
协议(protocol)字段: • 长度2个字节,它标识出网络层协议数据域的类型; • 对应三种类型帧的协议字段值分别为: • 0x0021—表示PPP帧的信息字段是IP分组数据。 • 0xC021—表示信息字段是PPP协议的LCP数据帧。 • 0x8021—表示信息字段是PPP帧的NCP数据帧。 • 信息字段: • 长度可变,最长1500B • 帧校验(FCS)字段 • 一般2个字节,也可4个字节
PPP协议工作过程 1、链路静止与链路连接状态 2、LCP链路建立 (建立、配置、管理和测试数据链路连接) 3、NCP帧与网络层协议协商阶段 (建立和配置不同的网络层协议) 4、帧传输阶段 5、链路释放阶段
常用的网络命令 • Ping命令 • Arp命令 • netstat命令 • ipconfig命令 • Route命令 • Nbtstat命令 • ftp命令 掌握常用网络命令的使用方法,能对网络进行简单的分析、测试
ping命令 1 • 用于确定本地主机是否能与另一台主机交换(发送与接收)数据包。 • 根据返回的信息,判断参数是否设置正确以及运行是否正常。 • Ping是一个测试程序,如果Ping运行正确,大体上就可以排除网络访问层、网卡、MODEM的输入输出线路、电缆和路由器等存在的故障,从而减小了问题的范围。 • 若测试成功,将显示:Reply from …… • 若测试失败,将显示:Request timed out.
格 式 ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-w timeout] destination-list 指定ping的主机
arp命令 2 作 用 用于显示和修改“地址解析协议(ARP)”缓存中的内容。 参 数
ftp命令 3 作 用 将文件传送到正在运行FTP服务的远程计算机或从正在运行FTP服务的远程计算机下载文件。ftp可以交互使用。 格 式 ftp [-v] [-n] [-i] [-d] [-g] [-s:filename] [-a] [-w:windowsize] [computer]
Ipconfig命令 4 作 用 用于显示当前的TCP/IP配置的设置值。 格 式 ipconfig [ /all | /renew | /release ] 参 数
nbtstat命令 5 作 用 用于提供关于NetBIOS的统计数据。 参 数
netstat命令 6 作 用 参 数 监视到远程主机的连接以及该连接的协议统计。