计算机网络——数据链路层

目录

一、数据链路层的功能

二、三个基本问题

三、PPP协议

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

五、以太网

 六、数据链路层设备


一、数据链路层的功能

  • 链路(物理链路):一条无源的点到点的物理线路段,中间没有任何其他的交换结点。
  • 数据链路(逻辑链路):除了物理线路外,还必须有通信协议软件来控制这些数据的传输。若是把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
  • 最常用的方法是使用网络适配器(即网卡)来实现这些协议的硬件和软件。
  • 适配器:收到有差错的帧时,直接丢弃而不必通知计算机。收到正确的帧时,使用中断来通知计算机,并交付协议栈中的网络层。

数据链路层的功能:主要作用是加强物理层传输原始比特流的功能,将物理层提供的物理连接无差错地转换成逻辑上的数据链路

数据链路层通常可为网络层提供以下服务:

  • 无确认的无连接服务
  • 有确认的无连接服务
  • 有确认的面向连接服务

注:有连接一定是有确认,不存在无确认的有连接服务

二、三个基本问题

(1)封装成帧:数据链路层把比特组合成为单位传输。所以在出错时只重发出错的帧,从而可以提高效率。组帧主要解决帧定界、帧同步、透明传输等问题。

  • 封装成帧就是在一段数据的前后分别添加首部尾部,起到帧定界作用
  • 每一种协议都规定了所能传送的帧的数据部分长度上限(最大传送单元MTU

计算机网络——数据链路层_第1张图片

三种常用的方法:

  • 字符计数法:在帧头部使用一个计数字段来标明帧内字符数
  • 字符填充法:使用一些特定的字符来定界一帧的开始(DLE STX)和结束(DLE ETX)
  • 零比特填充法:用01111110来标志一帧的开始和结束,数据中只要发现有5个连续的1,则立即填入一个0,因此经过这种填充后的数据不会出现六个连续的1

(2)透明传输

  • 帧同步:接收方应该能从接收到的比特流中,区分出帧的起始和终止
  • 透明传输:无论数据是怎样的比特组合,应该总能在链路上传送

问题:若数据中的某个字节的代码恰好和 SOH 或 EOT 一样,数据链路层就会错误地以为“找到帧的边界”。

解决方法:字节填充 (byte stuffing) 或字符填充 (character stuffing)。

  • 发送端在出现控制字符“SOH”或“EOT”的数据前添加转义字符“ESC”(其十六进制编码是 1B)。
  • 接收端的数据链路层,在将数据送往网络层之前删除添加的转义字符。
  • 如果数据中本身也包含转义字符,那么在转义字符前面再加一个转义字符 ESC。当接收到连续两个转义字符时,删除前面的 ESC。

(3)差错检验

在传输过程中可能会产生比特差错:1可能会变成0,0也可能变成1。为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施,其中循环冗余检测CRC在数据链路层得到广泛应用。

步骤:

  1. 发送端将数据分为 K 比特一组D1、D1 ···
  2. 计算冗余码,又称为帧检验序列FCS
  3. D_{_{}^{i}}^{}后面添加n位冗余码再发送
  4. 接收端使用 “模2除法”检验,若余数为0则正确。

冗余码计算:

  • 用二进制的模 2 运算进行 2^{n}D_{_{}^{i}}^{}的运算,这相当于在D_{_{}^{i}}^{}后面添加 n 个 0。
  • 得到的 (k + n) 位的数除以事先选定好的长度为 (n + 1) 位的除数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 少 1 位,即 R 是 n 位.
  • 将余数 R 作为冗余码拼接在数据D_{_{}^{i}}^{}后面发送出去。

计算机网络——数据链路层_第2张图片

注:进行除法运算时相同位为0,不同位为1。

三、PPP协议

一种使用得最广泛的数据链路层协议。满足的要求:

  1. 简单:首要需求
  2. 封装成帧:规定特殊的字符作为帧定界符
  3. 透明性:必须保证数据传输的透明性
  4. 在同一条物理链路上同时支持多种网络层协议
  5. 差错检测:检测并丢弃有差错的帧
  6. 最大传输单元MTU:MTU是数据链路层的帧可以载荷的数据部分的最大长度,而不是帧的总长度。

组成:

  • 将IP数据报封装到串行链路的方法
  • 链路控制协议LCP:用来建立,配置,和测试数据链路的连接
  • 网络控制协议NCP:其中的每一个协议支持不同的网络层协议

PPP是面向字节的,所有的PPP帧的长度都是整数字节

PPP协议的帧格式:

计算机网络——数据链路层_第3张图片

  • ppp帧的首部和尾部分别为4个字段(5个字节)2个字段(三个字节)
  • 标志字段F规定为0x7E(即01111110),标志一个帧的开始和结束
  • 地址字段A规定为0xFF(即111111)
  • 控制字段C规定为0x03(即00000011)
  • 协议字段:两个字节

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

局域网的特点:以网络为一个单位且地理范围和站点数据有限
局域网主要优点:具有广播功能,从一个站点可很方便地访问全网。主机可共享连接在局域网上的各种硬件和软件资源。便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。提高了系统的可靠性、可用性和残存性。主要传输媒体为双绞线,当数据率很高时,往往需要使用光纤作为传输媒体。
局域网按拓扑结构分类:

星型网 集线器
总线网 匹配电阻
环形网 干线耦合器

媒体共享技术特点:

(1)静态划分信道:频分复用、时分复用、波分复用、码分复用

(2)动态媒体接入控制(多点接入):

  • 随机接入:所有用户可随机的发送信息。同一时刻发送信息,会产生冲突,需要解决碰撞的网络协议。
  • 受控接入:用户不能随机发送信息,必须服从一定的控制,如多点线路探询、轮询

五、以太网

以太网实际上是:使用逻辑总线型拓扑和CSMA/CD协议的局域网。

CSMA/CD:载波监听多点接入/碰撞检测

  • “多点接入”:许多计算机以多点接入的方式连接在一根总线上。
  • “载波监听”:总线上并没有“载波”,因此“载波监听”就是每一个站在发送数据之前先要用电子技术检测总线上有没有其他计算机发送的数据信号。如果有,则暂时不要发送据,以免发生冲突。
  • “碰撞检测”:边发送边监听,也称为“冲突检测”。检测到碰撞后,每一个正在发送数据的站,要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。

计算机网络——数据链路层_第4张图片

在使用CSMA/CD协议时:不可能同时进行发送和接收(但必须边发送边监听信道),只能进行双向交替通信(半双工通信)

最先发送数据帧的站,在发送数据帧后最多会经过时间2τ(两倍的端到端往返时延) 就可知道发送的数据帧是否遭受了碰撞。因此:

  • 以太网的端到端往返时延 2τ 称为争用期或碰撞窗口
  • 经过争用期还没有检测到碰撞,才能肯定此次发送不会发生碰撞。

 二进制指数型退避算法规则:发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。

基本退避时间取争用期 2τ。

  • 从整数集合 [0, 1, … , (2k-1)] 中随机地取出一个数,记为 r。
  • 重传所需的时延就是 r 倍的基本退避时间。

参数 k 按下面的公式计算:k = Min[重传次数, 10],则 k ≤ 10 时, k 等于重传次数。
注:

  1. 重传达16次仍不能成功时即丢弃该帧,并向高层报告。
  2. 以太网在发送数据时,最短有效帧长为64字节。若前64字节没有冲突,则后续数据也不会发生冲突。
  3. 最小帧长= 总线传播时延 × 数据传输率 × 2= 2τ × 数据传输率

2种以太网标准:

  • IEEE 802.3 是第一个 IEEE 的以太网标准。
  • IEEE 802 委员会就将局域网的数据链路层拆成两个子层:① 逻辑链路控制 LLC 子层 ② 媒体接入控制 MAC 子层。

计算机网络——数据链路层_第5张图片

MAC层:在局域网中,每块网络适配器(网卡)都有一个地址,该硬件地址又称为物理地址,或MAC 地址,长度为6字节

计算机网络——数据链路层_第6张图片

(1)在物理层拓宽以太网

  • 使用光纤扩展
  • 使用集线器扩展(碰撞域)

        优点:1)使原来属于不同碰撞域的以太网上的计算机能够进行跨碰撞域的通信。
                   2)扩大了以太网覆盖的地理范围。

        缺点:1)碰撞域增大了,但总的吞吐量并未提高。

                   2)如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来。

(2)在数据链路层拓宽以太网:早期使用网桥,现在使用以太网交换机

        交换机的特点:实质上是多接口网桥,工作在全双工方式;相互通信的主机都是独占传输媒体,无碰撞地传输数据;具有并行性,能使多对主机同时通信;大多对收到的帧采用存储转发方式转发,但是也有一些交换机采用直通的交换方式。

高速以太网:

  1. 100BASE-T以太网
    • 双绞线上速率达到或超过100Mb/s的以太网称为高速以太网
    • 可在全双工方式下工作而无冲突发生,也支持半双工方式
  2. Gb以太网(1Gb/s):在半双工方式下使用 CSMA/CD 协议,全双工方式不使用 CSMA/CD 协议。
  3. 10Gb以太网 (10Gb/s):只工作在全双工方式,没有争用问题

 六、数据链路层设备

(1)网桥

功能:

  1. 连接不同网段的以太网
  2. 存储转发
  3. 隔离冲突域,不隔离广播域

(2)交换机(多端口的网桥)

两种交换方式:

  1. 直通式
  2. 存储转发式

注:利用以太网交换机可以方便实现虚拟局域网VLAN,不仅可以隔离冲突域,而且可以隔离广播域。 

你可能感兴趣的:(计算机网络,网络)