关键词:
数据链路层知识梳理
在数据链路层传输的数据单位为:帧
链路和数据链路
链路:一条点到点的物理线路。
数据链路:除了物理线路外,还必须有通信协议来控制这些数据的传输。
若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。(用网卡来实现这些协议的硬件和软件)
数据发送的模型
数据链路层主要使用的通道:
广播讯道:
一对多通信,一个节点发送的数据能够被广播信道上所有的节点接收到。
所有的节点都在同一个广播信道上发送数据,因此需要有专门的控制方法进行协调,避免发生冲突(冲突也叫碰撞)。
主要有两种控制方法进行协调,一个是使用信道复用技术,一是使用 CSMA/CD 协议。
点对点传播:
一对一通信。
因为不会发生碰撞,因此也比较简单,使用 PPP 协议进行控制。
数据链路层传输的是帧:
数据链路层的三个基本问题:封装成帧,透明传输,差错检测
封装成帧
就是在一段数据的前后添加首部和尾部,就构成了一个帧,确定帧的界限。
首部和尾部的一个重要作用就是进行帧定界。 (分片)
MTU:最大传输单元,不能超过1500字节
为什么加一个头部和尾部:
如果在接收端,只收到首部或者尾部,没有全都收到,就会将这个不完整的帧丢弃,重新接受
透明传输
透明表示一个实际存在的事物看起来好像不存在一样。
帧使用首部和尾部进行定界,如果帧的数据部分含有和首部尾部相同的内容,那么帧的开始和结束位置就会被错误的判定。
需要在数据部分出现首部尾部相同的内容前面插入转义字符。如果数据部分出现转义字符,那么就在转义字符前面再加个转义字符。
在接收端进行处理之后可以还原出原始数据。这个过程透明传输的内容是转义字符,用户察觉不到转义字符的存在。
在传输过程中,我们用一般传输的是ASCII,其中有打印字符和非打印字符,
我们用非打印字符作为帧定界符:代码SOH(Start Of Header)作为帧开始定界符,代码EOT(End Of Transmission)作为帧结束定界符。
如果我们传输的文本中也含有帧定界符的话, 为了防止错误就要加上转义字符,ESC作为转义字符。
差错检测
目前数据链路层广泛使用了循环冗余检验(CRC)来检查比特差错。
现实的通信链路都不会是理想的。这就是说,比特在传输过程中可能会产生差错:1可能会变成0,而0也可能变成1,这就叫做比特差错。
为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。目前在数据链路层广泛使用了循环冗余检验CRC(Cyclic Redundancy Check)的差错检验技术
降低误码率(BER,Bit Error Rate),广泛使用循环冗余检测(CRC,Cyclic Redundancy Check)
PPP协议
互联网用户通常需要连接到某个 ISP 之后才能接入到互联网,PPP 协议是用户计算机和 ISP 进行通信时所使用的数据链路层协议。
PPP 的帧格式:
- F 字段为帧的定界符
- A 和 C 字段暂时没有意义
- FCS 字段是使用 CRC 的检验序列
- 信息部分的长度不超过 1500
PPP的帧格式分为首部和尾部,分别为四个字段和两个字段。
首部的F(flag)表示帧定界,如果连续出现两个表示为空帧。
A和C目前无意义。然后是协议字段。表示后面的ip数据报存放的是什么信息数据。
信息部分长度不能超过1500字节
尾部的FCS占2个字节表示使用CRC的帧检验序列。
MAC地址
MAC 地址是链路层地址,长度为 6 字节(48 位),用于唯一标识网络适配器(网卡)。
一台主机拥有多少个网络适配器就有多少个 MAC 地址。例如笔记本电脑普遍存在无线网络适配器和有线网络适配器,因此就有两个 MAC 地址。
mac帧格式:
前两个字段为6字节的目的地址和源地址字段,第三个字段是2字节的类型字段,表示数据段的是什么信息。
第四个字段是46--1500字节的数据字段(46字节=64字节减去18字节的首部和尾部),第五个字段是4个字节的帧检验序列。
局域网:
局域网是一种典型的广播信道,主要特点是网络为一个单位所拥有,且地理范围和站点数目均有限。
主要有以太网、令牌环网、FDDI 和 ATM 等局域网技术,目前以太网占领着有线局域网市场。
可以按照网络拓扑结构对局域网进行分类
以太网
以太网是一种星型拓扑结构局域网。
早期使用集线器进行连接,集线器是一种物理层设备, 作用于比特而不是帧,当一个比特到达接口时,集线器重新生成这个比特,并将其能量强度放大,从而扩大网络的传输距离,之后再将这个比特发送到其它所有接口。如果集线器同时收到两个不同接口的帧,那么就发生了碰撞。
目前以太网使用交换机替代了集线器,交换机是一种链路层设备,它不会发生碰撞,能根据 MAC 地址进行存储转发。
以太网帧格式:
- 类型 :标记上层使用的协议;
- 数据 :长度在 46-1500 之间,如果太小则需要填充;
- FCS :帧检验序列,使用的是 CRC 检验方法;
- 前同步码 :只是为了计算 FCS 临时加入的,计算结束之后会丢弃。
虚拟局域网
虚拟局域网可以建立与物理位置无关的逻辑组,只有在同一个虚拟局域网中的成员才会收到链路层广播信息。
例如下图中 (A1, A2, A3, A4) 属于一个虚拟局域网,A1 发送的广播会被 A2、A3、A4 收到,而其它站点收不到。
使用 VLAN 干线连接来建立虚拟局域网,每台交换机上的一个特殊接口被设置为干线接口,以互连 VLAN 交换机。IEEE 定义了一种扩展的以太网帧格式 802.1Q,它在标准以太网帧上加进了 4 字节首部 VLAN 标签,用于表示该帧属于哪一个虚拟局域网。
[计算机网络基础]数据链路层(第一部分)
一:数据链路层的组帧: 组帧:网络层的IP数据报向下传送至数据链路层,成为数据链路层的数据单元,给数据单元加上首部和尾部,就组成数据链路层的一个帧。如图所示:其中规定数据链路层帧的数据单元所能传送的最... 查看详情
计算机网络-数据链路层
数据链路层信道,逻辑上的通信通道。链路(Link),指一个节点到相邻节点的物理线路,中间无其他交换节点。数据链路(DateLink),物理线路外还有其他必要实现的通行协议的软、硬件加到链路上,构成数据链路。帧,数据链路层... 查看详情
计算机网络基础数据链路层(目录)
数据链路层知识结构数据链路层组帧和透明传输数据链路层差错检验奇偶校验循环冗余校验(CRC)海明码数据链路层可靠传输(ARQ协议)停止-等待协议回退N帧协议(GBN协议)选择重传协议(SR协议)点对点通信PPP协议广播式通... 查看详情
计算机网络:数据链路层(代码片段)
...结构:(a)OSI的七层协议;(b)TCP/IP的四层协议;(c)五层协议数据链路层是实现设备之间通信的非常重要的一层数据链路层的作用数据链路层使用的信道一、使用点对点信道的数据链路层1.数据链路和帧链路(link)是一条无源的点到点... 查看详情
计算机网络数据链路层总结
数据链路层目录数据链路层概述基本概念数据链路层的三个基本问题点对点信道的数据链路层概述PPP协议的组成PPP帧的格式和要求PPP协议的工作状态广播信道的数据链路层局域网和以太网广播信道数据链路层的任务适配器CSMA/CD... 查看详情
计算机网络:数据链路层功能
数据链路层在物理层提供服务的基础上向网络层提供服务,其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。1.为网... 查看详情
计算机网络基础——数据链路层和网络层协议及设备
一、数据链路层 位于网络层与物理层之间1、功能 --数据链路的建立、维护与拆除 --帧包装、帧传输、帧同步 --帧的差错恢复 &n... 查看详情
计算机网络之数据链路层
一.数据链路层简介 数据链路层属于计算机网络的低层。数据链路层使用的信道主要有以下两种类型。 (1)点对点信道。这种信道使用一对一的点对点通信方式。 (2) 广播信道。这种信道... 查看详情
计算机网络01:数据链路层-基本介绍
...、传输层、应用层。有很多人将网络接口层分为物理层和数据链路层,因此也称为五层协议。物理层考虑的是如何连接不同主机的传输媒体设备,以便完成网络通信,主要是一些硬件的规范;数据链路层则是考虑在一个局域网内... 查看详情
计算机网络数据链路层
数据链路层的基本概念结点:主机或者路由器都成为结点链路:网络中两个节点之间的物理通道,链路的传输介质主要有双绞线,光纤和微波。分为有线链路和无线链路。主要是物理通道。数据链路:网络中... 查看详情
计算机网络-数据链路层
链路:2个相邻节点之间的物理线路数据链路:实现协议的硬件、软件+链路数据链路层3个基本问题 封装成帧 MTU(MaximumTransferUnit)最大传输单元 透明传输 差错控制 CRC(CyclicRedundancyCheck)循环冗余校... 查看详情
计算机网络温习1——数据链路层
数 据 链 路 层分组=包=IP数据报先从数据链路层开始数据链路层使用的信道类型(1)点对点信道:一对一的点对点通信方式1>网络适配器包括了数据链路层和物理层两层功能协议数据单元:帧2>主要步骤:a.前... 查看详情
计算机网络:数据链路层
... 按照TCP/IP协议由下往上的顺序,今天我们来学习一下数据链路层,数据链路层位于物理层和网络层之间,其设计的初衷就是顺利为网络层提供数据服务,不考虑可靠性,可靠性的部分由传输层的TCP协议实现。我们可以从下面... 查看详情
计算机网络数据链路层
数据链路层1.点对点信道的数据链路层1.1数据链路和帧1.2三个基本问题2.点对点协议PPP2.1PPP协议的特点2.2PPP协议的帧格式2.3PPP协议的工作状态3.使用广播信道的数据链路层3.1局域网的数据链路层3.2CSMA/CD协议3.3使用集线器的星状拓... 查看详情
超详细的计算机网络基础知识总结第三章:数据链路层(代码片段)
本文基于:王道计算机考研-计算机网络其他文章:超详细的计算机网络基础知识第一章:概述超详细的计算机网络基础知识第二章:物理层最近准备就业,整理计算机网络的相关笔记,后续会继续更新相... 查看详情
计算机网络--数据链路层
计算机网络–数据链路层链路和数据链路链路一条点到点的物理线路段,中间没有其它的交换节点,一条链路只是一条通路的一个组成部分数据链路除物理链路外,还必须有通信协议来控制这些数据的传输,若把... 查看详情
计算机网络--数据链路层
计算机网络–数据链路层链路和数据链路链路一条点到点的物理线路段,中间没有其它的交换节点,一条链路只是一条通路的一个组成部分数据链路除物理链路外,还必须有通信协议来控制这些数据的传输,若把... 查看详情
计算机基础(笔记)——计算机网络(链路层)(代码片段)
...在诸如长距离链路连接的两台路由器之间,或用户办公室计算机与它们所连接的邻近以太网交换机之间等场合经常能够发现。点到点协议(Point-toPointProtocol,PPP),该协议的适用范围从经电话线的拨号服务到经光纤链路的高速点到点帧... 查看详情