第三章 数据链路层

定义了在单个链路上如何传输数据。这些协议与被讨论的各种介质有关。示例:ATM,FDDI等。

数据链路层使用的信道主要有以下两种:

点对点信道:使用一对一的点对点通信方式

广播信道:使用一对多的广播通信方式

链路:从一个结点到相邻结点的一段物理线路,中间没有任何其他的交换结点。是一条路径的组成部分。

数据链路:包括链路以及必需的通信协议。

现在最常用的是网络适配器以及通过以太网上网使用局域网适配器。一般的适配器都包括了数据链路层和物理层这两层的功能。

数据链路层的协议数据单元:帧

数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧中的数据结构取出并上交给网络层。

下三层:网络层、数据链路层和物理层

封装成帧:在一段数据的前后分别添加首部和尾部。

最大传送单元MTU:帧的数据部分长度上限。

错检测

比特差错:比特在传输过程中可能会产生差错,即1可能变成0,0可能变成1。

误码率BER(Bit Error Rate):传输错误的比特占所传输比特总数的比率。

误码率与信噪比有很大关系,如果可以设法提高信噪比,就可以使误码率减小。

目前在数据链路层广泛使用的检错技术:循环冗余检验CRC。

用生成多项式对应的二进制数对左移3位后的原始报文进行模2除(高位对齐),相当于按位异或

注意,无比特差错和无传输差错并不同,无比特差错是指在帧中无比特差错,而传输差错是指帧丢失,帧重复,帧失序等。

点对点协议PPP:目前使用得最广泛的数据链路层协议。

PPP协议的特点:

简单(因特网体系结构中最复杂的部分在TCP协议中)简单是首要需求。

封装成帧(SOH EOT做为帧界定符)

透明性

多种网络层协议(PPP协议必须能够在同一条物理链路上同时支持多种网络层协议)

多种类型链路(PPP协议必须能够在多种类型的链路上运行)

差错检验(并立即丢弃有差错的帧)

检测连接状态(PPP协议必须有一种机制能够及时(不超过几分钟)自动检测出链路是否处于正常工作状态,这样出现故障的链路隔了一段时间后又重新恢复正常工作时,就起到很大作用)

最大传送单元(MTU是数据部分最大长度,不是帧的总长度)

网络层地址协商

数据压缩协商

PPP协议不需要的功能:

纠错(PPP协议是不可靠的传输协议)

流量控制(TCP/IP协议中,端到端的流量控制由TCP负责)

序号(不需要使用帧的序号)

多点线路(PPP协议不支持多点线路)

半双工或单工链路(PPP只支持全双工链路)。

PPP协议的组成

PPP协议的帧格式

同步传输:一连串的比特连续传送

异步传输:逐个字符地传送

使用广播信道的数据链路层:

局域网(LAN)使用的是广播信道,即一对多的通信。

局域网最主要的特点为:网络为一个单位所拥有,且地理范围和站点数目均有限。

局域网可按照拓扑结构进行分类。

星形网

环形网(最典型的是令牌环形网)

总线网(可使用两种协议:一种是传统以太网使用的CSMA/CD,另一种是令牌传递总线网,即物理上为总线网而逻辑上为令牌环形网,前一种演化为星形网,后一种逐渐退出了市场)

树形网

以太网在局域网中占据了绝对优势。

以太网

MAC协议:媒体接入控制协议。与接入到传输媒体有关的内容都由mac协议控制。

适配器:网卡,一块网络接口板。适配器上面包括处理器和存储器(包括RAM和ROM)。

适配器和局域网之间的通信通过电缆或双绞线以串行传输的方式进行,而适配器和计算机之间的通信则是通过计算机主板上的I/O总线以并行传输的方式进行。因此适配器的一个重要功能就是进行数据串行传输和并行传输的转换。(基本所有的适配器,电源适配器什么的作用都是转换好像> <).

由于网络上的数据率和计算机总线上的数据率并不相同,因此适配器中装有对数据进行缓存的存储芯片。

CSMA/CD协议

退避时间为争用期的整数倍。

以太网每发送一帧就要执行一遍CSMA/CD算法。适配器对过去发生的碰撞并无记忆功能。

以太网端到端的时延实际上是争用期的一半,即5.6us.

使用广播信道的以太网

目前使用的以太网采用星型拓扑,在星形的中心还增加了集线器,配合双绞线使用。

使用集线器的以太网在逻辑上仍然是一个总线网,各站共享逻辑上的总线,使用的还是CSMA/CD协议。

以太网信道的利用率

即a要尽量小

以太网的MAC层

在局域网中,硬件地址又称为物理地址或MAC地址(因为这种地址用在MAC帧中)。

以太网地址由24位的OUI(组织唯一标识符,要向IEEE购买)和扩展标识符(低24位,可由厂家自行指定得到48位的EUI(扩展的唯一标识符)MAC地址,称为EUI-48或MAC-48.

EUI-48的适用范围并不局限于局域网的硬件地址,而是可以用于软件接口。(以太网或者说局域网的地址为48位,即6字节,高24位固定,低24位可自行指定)。

生产适配器时,这种6字节的MAC地址被固化在适配器的ROM中,因此MAC地址也叫做硬件地址或物理地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48.

扩展的以太网:即将以太网的覆盖范围扩展

在物理层扩展以太网

在数据链路层扩展以太网

在物理层扩展以太网:使用光纤(通常是一对光纤)和一对光纤调制解调器。

光纤调制解调器的作用就是进行电信号和光信号的转换。

使用多个集线器

在数据链路层扩展以太网

网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。网络1 和网络2 通过网桥连接后,网桥接收网络1 发送的数据包,检查数据包中的地址,如果地址属于网络1 ,它就将其放弃,相反,如果是网络2 的地址,它就继续发送给网络2.这样可利用网桥隔离信息,将同一个网络号划分成多个网段(属于同一个网络号),隔离出安全网段,防止其他网段内的用户非法访问。由于网络的分段,各网段相对独立(属于同一个网络号),一个网段的故障不会影响到另一个网段的运行。

高速以太网

速率达到或超过100Mb/s的以太网称为高速以太网:

100BASE-T以太网

吉比特以太网(1Gb/s)

10吉比特以太网(10Gb/s)

转载于:https://www.cnblogs.com/Cheryl06/p/7293753.html

计算机网络 chapter3数据链路层相关推荐

  1. 计算机网络:数据链路层

    计算机网络:数据链路层 数据链路层是 OSI 分层模型的第二层.该层是最复杂的层之一,具有复杂的功能和责任.数据链路层隐藏底层硬件的详细信息,并将自身表示到上层作为通信介质. 数据链路层在某种意义上直 ...

  2. 【计算机网络】数据链路层(五)—— 广域网(PPP 协议与 HDLC 协议)

    [计算机网络]数据链路层(五)-- 广域网(PPP 协议与 HDLC 协议) 一.广域网 二.PPP 协议 PPP协议应满足的要求 PPP协议的三个组成部分 PPP协议的帧格式 三.HDLC 协议 H ...

  3. 3.1.1计算机网络(数据链路层 差错控制 循环冗余码 海明码 流量控制)

    目录 数据链路层 数据链路层基本概念 数据链路层功能概述 封装成帧 透明传输 组帧的四种方法: 1.字符计数法 ​2.字符填充法 ​3.零比特填充法 4.违规编码法 差错控制 差错从何而来? 数据链路 ...

  4. 计算机网络笔记——数据链路层

    计算机网络笔记--数据链路层 3. 数据链路层 3.1 数据链路层的功能 3.2 组帧 字符计数法 字符填充的首尾界符法 比特填充的首尾标志法(零比特填充法) 物理编码违例法 3.3 差错控制 3.3 ...

  5. 【计算机网络】数据链路层 : 总结 ( 封装成帧 | 流量控制与可靠传输 | 差错控制 | 介质访问控制 | 局域网 | 广域网 | 数据链路层设备 ) ★★★

    文章目录 一.数据链路层 功能 二.封装成帧 ★ 三.流量控制 和 可靠传输 ★★ 1.停止等待协议 ★ 2.后退 N 帧 ( GBN ) 协议 ★ 3.选择重传 ( SR ) 协议 ★ 四.差错控制 ...

  6. 计算机网络总结——数据链路层

    本篇文章是对 湖科大计算机网络微课堂 中数据链路层的笔记总结,希望对大家有所帮助. 文章目录 3.1数据链路层概述 3.2封装成帧 (1)封装成帧 (2)透明传输: 3.3差错检测 (1)奇偶校验 ( ...

  7. 【计算机网络】数据链路层(三)—— 介质访问控制

    [计算机网络]数据链路层(三)-- 介质访问控制 一.什么是介质访问控制 二.静态划分信道 (一)信道划分介质访问控制 1. 频分多路复用(FDM) 2. 时分多路复用(TDM) 3. 波分多路复用( ...

  8. 计算机网络2————数据链路层

    计算机网络2----数据链路层 文章目录 计算机网络2----数据链路层 一.链路层概述 1.链路层的概念 2.链路层任务 3.结点间链路类型 4.链路设备 二.PPP协议和HDLC协议 1.PPP协 ...

  9. 计算机网络之数据链路层原理

    链路层数据发送模型 当网络上的两台主机进行通信的时候,链路层是如何进行数据传输的呢?以及数据链路层数据可能会遇到那些问题呢?搞清楚这些问题之前,先让我们看下面经典的数据链路层数据发送模型. 主机H1与 ...

最新文章

  1. input blur获取不到当前值_解决 Laravel JWT 多表认证时获取不到当前认证用户的问题...
  2. legend3---lavarel多对多模型操作实例
  3. 5800对于存储卡密码设置问题
  4. WebDriver介绍
  5. C++ primer第六章6.4函数的学习 之函数的重载
  6. LeetCode 1808. 好因子的最大数目(整数拆分,乘积最大)
  7. django-验证码
  8. php yaf 教程,干货:PHP YAF框架实践教程——配置与多模块
  9. Excel 2007 Open XML文件结构~~~1
  10. 计算机缺失esul.dll,msedgeupdateres_es.dll
  11. RGB图像中值平滑和均值平滑
  12. 重读领域驱动设计——如何说好一门通用语言
  13. 在线课程培训系统源码 在线授课 在线教育源码 网课小程序源码
  14. 视频教程-visio 2010基础培训视频教程-Office/WPS
  15. 高性价比运维工具推荐
  16. 海康摄像头ffmpeg推流到srs流媒体服务器
  17. CGAL license说明
  18. 浏览器不能调用JAVA打印_网页调用IE浏览器的打印功能
  19. 计算机硬盘根目录是什么,硬盘根目录是什么意思?存放哪里?
  20. 上架APPStore 截图尺寸要求

热门文章

  1. 编程通用知识 字符编码(ascii,unicode,utf-8)
  2. MySQl Modify JSON Values
  3. 1.6 开发集合测试集的大小
  4. opencv-api getPerspectiveTransform
  5. C/C++程序员如何学习英语
  6. oracle表空间状态如何离线,六步了解Oracle表空间状态
  7. 虚拟化 VS 容器化(docker)
  8. 敏捷开发系列学习总结(14)——Spotify敏捷模式详解三部曲第二篇:研发过程
  9. Java基础学习总结(142)——以正确的姿势使用Java 8 Optional
  10. 消息中间件学习总结(13)——Kafka与RocketMQ的单机系统可靠性比较分析