Internet中的数据链路层_第1页
Internet中的数据链路层_第2页
Internet中的数据链路层_第3页
Internet中的数据链路层_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Internet中的数据链路层 丁玲 海南省海口市海南大学信息学院2000电子 570228 E mail dingling1982 摘要 数据链路层就是通过一些数据链路层协议 在不太可能的物理链路上实 现可靠的数据传输 常见的协议是停止等待协议和连续APQ协议 而在网络中最常 用的 是串行线路网际协议 SLIP 和点对点协议 PPP 关键词 数据链路层 Data Link Layer 串行线路网际协议 SLIP 点对 点协议 PPP Summary Data link layer by means of some data link layer protocols achieving the reliable data transmission on unable physical link The usual protocols are stop and wait protocol and continual APQ protocol But the most popular are SLIP and PPP Keywords DLL Data Link Layer SLIP Serial Internet Protocol PPP Point to Point 引言 数据链路层是网络体系分层结构中组要负责两个相邻结点见的线路上 无差错地传输以帧为单位的数据 如果接受端收到错误信息 就要通知发方重发一 帧 这样 数据链路层就把一条有可能出差错的实际链路 转变成为让网络层向下 看起来好象是一条不出差错的链路 数据链路 Data link 可以粗略地理解为数据通道 物理线路的链路控 制 传播媒体及其连接 媒体是长期的 连接是有生存期的 在连接生存期内 收发两 端可以进行不等的一次或多次数据通信 每次通信都要经过建立通信联络和拆除通 信联络两过程 这种建立起来的数据收发关系就叫作数据链路 data link 而在物 理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错 为了弥补物理层 上的不足 为上层提供无差错的数据传输 就要能对数据进行检错和纠错 数据链路 的建立 拆除 对数据的检错 纠错是数据链路层 Data Link layer 的基本任务 数据链路层是OSI RM七层模型中主要负责为相邻网络实体之间建立 维持 和释放数据链路连接 以及传输数据链路服务数据单元 是一种透明 可靠的信息 传输工具 透明 意味着对所传输的数据的内容 格式及编码不做任何限制 可靠 表示在该层设置有相应的检错和纠错设施 1 链路层的主要功能 链路层是为网络层提供数据传送服务的 这种服务要依靠本层具备的功能来 实现 链路层应具备如下功能 1 1 链路连接的建立 拆除 分离 1 2 帧定界和帧同步 链路层的数据传输单元是帧 协议不同 帧的长短和界 面也有差别 但 无论如何必须对帧进行定界 1 3 顺序控制 指对帧的收发顺序的控制 1 4 差错检测和恢复 还有链路标识 流量控制等等 差错检测多用方阵码 校验和循环码校 验来检测信道上数据的误码 而帧丢失等用序号检测 各种错误的恢复则 常靠反馈重发 技术来完成 2 数据链路层的主要协议 数据链路层协议是为发对等实体间保持一致而制定的 也为了顺利完成对网络 层的服务 主 要协议如下 2 1 ISO1745 1975 数据通信系统的基本型控制规程 这是一种面向字符 的标准 利用10 个控制字符完成链路的建立 拆除及数据交换 对帧的收发情况及差错 恢复也是靠这些 字符来完成 ISO1155 ISO1177 ISO2626 ISO2629等标准的配合使用 可形成多种链路 控制和数据传输方式 2 2 ISO3309 1984 称为 HDLC 帧结构 ISO4335 1984 称为 HDLC 规程要 素 ISO7809 1984 称为 HDLC 规程类型汇编 这3个标准都是为面向比特 的数据传输控制 而制定的 有人习惯上把这3个标准组合称为高级链路控制规程 2 3 ISO7776 称为 DTE数据链路层规程 与CCITT X 25LAB 平衡型链路访问 规程 相兼容 为了深入理解数据链路层的协议 我们先从一种假想的 完全理想化的数据传 输过程开始讨论 如果链路是理想的传输信道 所传送的任何数据既不会出差错也不会丢失 那么数 据链路层协议是根本不需要的 但是 这可能吗 不可能 所以我们需要数据链路 层协议 如果不管发送方以多快的速率发送数据 接收方总是来得及收下 并及时 上交主机 那么数据链路层协议也是不需要的 但是 这可能吗 不可能 所以我 们还是需要数据链路层协议 这就是说 传输数据的信道是不可靠的 即不能保 证所传的数据不产生差错 并且还需要对数据的发送端进行流量控制 3 简单的停止等待协议 收方在收到一个正确的数据帧后 向发方发送一个确认帧ACK 表示 我收到 啦 当发方收到确认帧后才能发送一个新的数据帧 这样就实现了收方对发方 的流量控制 假如数据帧在传输过程中出现了差错 由于通常都在数据帧中加上了 循环冗余校验CRC 所以收方很容易校验出收到的数据帧是否有差错 当发现差错 时 收方就向发方发送一个否认帧NAK 表示 我没有受到 以表示发方应当 重发出错的那个数据帧 有时 链路上的干扰很严重 或由于其他一些原因 收方 收不到发方发来的数据帧 这种情况称为帧丢失 发生帧丢失时 收方当然不会向 发方发送任何应答帧 如果发方要等收到收方的应答信息后再发送下一个数据帧 那么就将永远等下去 要解决这个问题 可在收方发送完一个数据帧时 就启动一 个超时定时器 若到了超时定时器所设置的重发时间仍收不到收方的任何应答帧 则发方就重传前面所发送的这一数据帧 然而现在问题并没有完全解决 当出现数据帧丢失时 超时重发的确是一个好 办法 但是若丢失的是应答帧 则超时重发将使收方收到两个同样的数据帧 由于 收方现在无法识别重复的数据帧 因而在收方收到的数据中出现了另一种差错 称 为重复帧 要解决这个问题 必须使每一个数据帧带上不同的发送序号 若收方收 到序号相同的数据帧 就表明出现了重复帧 这时应当丢弃这重复帧 但应注意 此时收方还必须向发方发送一个确认帧 因为收方已经知道发方还没有收到上一次 发过去的确认帧 我们知道 任何一个编号系统的序号所占用的比特数一定是有限的 因此 经 过一段时间 发送序号就会重复 序号占用的比特数越少 数据传输的额外开销就 越少 对于停等协议 由于每发送一个数据帧就停止等待 因此用一个比特来编号 就够了 就是说序号轮流使用0和1 由于发方对出错的数据帧进行重复是自动进行 的 所以这种差错控制体制常简称为ARQ Automatic Repeat reQuest 直译是 自动重复请求 意思是自动请求重发 停止等待协议ARQ比较简单 但信道利用率不高 为了克服这一缺点 就产生 了另外两种协议 即连续ARQ和选择重传ARQ 连续ARQ的要点就是在发送完一个数据帧后 不是停下来等待应答帧 而是可 以连续再发送若干个数据帧 如果这时收到了收方发来的确认帧 那么还可以接着 发送数据帧 由于减少了等待时间 整个通信的吞吐量就提高了 但是 收方只按 序接收数据帧 如果收到有差错的某帧之后接着又收到了正确的几个数据帧 都必 须将它们全部丢弃 而发方在重传时 又必须把原来已正确传送过的数据帧进行重 传 仅因为这些数据帧之前有一个数据帧出了错 这种做法又使传送效率降低 由此可见 若传输信道的传输质量很差因而误码率较大时 连续ARQ不一定优于停 止等待协议 在计算机通信的早期 人们就已发现 对于经常产生误码的实际链路 只要加 上合适的控制规程 就可以使通信变为比较可靠 这类控制规程分为面向字符型协 议和面向位 比特 型协议 所谓面向字符就是说在链路上所传送的数据必须是由 规定字符集 例如ASCII码 中的字符所组成 在链路上传送的控制信息也必须由 同一字符集中的若干指定的控制字符构成 这种面向字符的链路控制规程在计算机 网络的发展过程中曾起了重要的作用 但它存在通信线路的利用率低 可靠性较差 不易扩展等缺点 所以具有更大的灵活性和更高的效率的面向比特型协议逐渐成为 数据链路层的主要协议 高级数据链路控制HDLC High level Data Link Control 就是一种面向比特 型协议 其特点是以位的位置来定位各个字段 而不用控制字符 各字段内均由位 的各种组合组成 它的最早版本是IBM公司研制的SDLC协议 用作IBM SNA网的数据 链路层协议 后来几个国际标准化组织做了少量修改 发展为多个版本的面向比特 协议 如ANSI的版本是ADDCP协议 ISO的版本就是HDLC协议 CCITT的版本是LAP协 议 并作为建议书X 25的一部分 为了进一步提高信道的利用率 可设法只重传出现差错的数据帧或者是定时器 超时的数据帧 但这时必须加大收方的缓冲区 以便先收下发送序号不连续但仍处 在缓冲区中的那些数据帧 等到所缺序号的数据帧收到后再一并送交主机 这就是 选择重传ARQ协议 使用选择重传ARQ协议可以避免重复传送那些本来已经正确到达 收方的数据帧 但我们付出的代价是在接收端要设置具有相当容量的缓冲空间 这 在许多情况下是不够经济的 正因为如此 选择重传ARQ协议在目前就远没有连续 ARQ协议使用得那么广泛 4 网络中的数据通道 用户接入Internet的一般方法有两种 一种是用户拨号上网 另一种是使用 专线接入 不管用哪一种方法 在传送数据时都需要有数据链路层协议 在 Internet中使用得最为广泛的就是SLIP和PPP协议 4 1 SLIP Serial Line Internet Protocol 意为串行线路Internet协议 它是通过直接连接和用调制解调器连接的TCP IP 在计算机的背面 有一些端口 它可以挂接一些设备 并在计算机上运行 调制解调器就是挂接在串口上 也叫 COM口 或RS 232端口 SLIP的规则有三个 4 1 1 在每一个IP数据报的首尾各加上一个特殊的标志字节END 封装成为 SLIP帧 标识字节END的编码为 0 xC0 这里的0 x代表 十六进制 4 1 2 如果在IP数据报中的某个字节恰好与标识字节END的编码 0 xC0 一样 那么就要将这一个字节更换成 0 xDB 0 xDC 这样的2字节序列 4 1 3 如果在IP数据报中的某一个字节恰好与转义字符一样 则将它更换成 0 xDB 0 xDD 的2字节序列 4 2 PPP Point to Point Protocol 点到点协议 用于实现与SLIP一样的 目的和作用 它在实现其作用的方式上比SLIP要优越得多 PPP连接协议包括出错 检测和纠正 以及分组验证 这是一个安全性特征 它能确保接收的数据分组确实 来自于发送者 这些特性合起来使得通过电话线可以建立更为安全的连接 PPP是 一种被认可的Internet标准协议 所以目前得到最广泛的开发支持 微机用户可以采用SLIP PPP方式拨号上网 成为Internet上的一个注册节点 也就是成为一台具有独立有效IP地址的Internet主机 以SLIP PPP方式入网在性能 上优于以仿真终端方式入网 特别是SLIP PPP方式可以使用具有图形界面的应用软 件 如Netscape Navigator Microsoft IE等 以SLIP PPP方式入网是近年来发展 最快的一种Internet入网方式 但这种方式在使用图形界面时对通信速率有一定要 求 不小于9600bps 相对于专用访问方式来说 SLIP和PPP被称为 准专用访问 技术 这种连接 方式使用电话线和调制解调器拨号连接到Internet的某台主机上 当不需要访问 Internet时 电话线仍然可以作为他用 一旦通过运行SLIP或PPP软件与Internet 上的某台主机相连 你就可以成为Internet的正式成员了 你的计算机并不作为终 端 它和主机都使用SLIP或PPP协议通信 主机只作为Internet的 访问点 你 的计算机是Internet物理上的一部分 它可以有自己的主机名和IP地址

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论