计算机网络-链路层

计算机网络

计算机网络-链路层

1.1 链路层介绍

1.1.1 链路层概念

  • 数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范。通信媒介包括双绞线电缆、同轴电缆、光纤、电波以及红外线等物理介质。此外,各个设备之间有时也会通过交换机、网桥、中继器等中转数据
  • 总结来说,数据链路层就是负责数据在各个链路中进行传输的

1.1.2 链路层功能

(1)为网络层提供服务

  • 链路接入管理 :连接的建立、维持、释放(用于面向连接的服务)
  • 帧同步 :帧定界
  • 可靠交付 :常用于易产生差错的链路,比如无线链路。而对于不易产生差错的链路这是不必要的开销。
  • 数据和控制信息的识别
  • 寻址
  • 流量控制 :链路层协议提供流量控制
  • 透明传输
  • 差错检测与修正 :循环冗余检测(CRC);TCP和UDP用检验和方法;奇偶校验思想(二维奇偶校验

1.1.3 相关术语

(1)结点

  • 将运行链路层协议(即第2层)协议的任何设备均称为 结点(node)。
    • 结点包括主机、路由器、交换机和WiFi接入点等

(2)链路(物理链路)

  • 从一个结点到相邻结点的一段物理线路,中间没有任何其他的交换节点链路是一条路径的一个组成部分
    • 两台计算机之间的通信路径需要许多链路

(3)数据链路(逻辑链路)

  • 把实现了这些通信协议的硬件和软件加到链路上,就构成了数据链路(物理线路+协议)

(4)网络适配器

  • 既有硬件也包括软件,实现了通信协议,包括了数据链路层和物理层两层的功能

(5)规程

  • 数据链路层中,规程等同于协议

1.2 链路层需要解决的问题

1.2.1 封装成帧

(1)帧

  • 数据链路层的协议数据单元,一个帧由一个数据字段和若干首部字段组成,其中网络层数据报就插在数据字段中。帧的结构由链路层协议规定

(2)封装成帧概念

  • 封装成帧:就是在一段数据前后分别添加首部和尾部,添加一些额外信息,确定帧的界限,然后就构成了一个帧

(3)首部尾部作用

  • 进行帧定界(确定帧的界限);
  • 包含许多必要的控制信息

(4)帧定界的方法

  • 帧界定的方法:可用特殊的帧定界符,在ACSCII码中,用SOH表示帧的首部开始,EOT表示帧的结束

(5)帧界定的作用

  • 判断收到的帧是否完整,不完整则丢弃

1.2.2 透明传输

(1)透明传输概念

  • 不管什么数据,都能完整无差错的通过这个数据链路层,数据链路层对数据没有妨碍,数据链路层对数据时透明的

(2)透明传输的问题

  • 透明传输中的问题:若数据中的某个字节的二进制代码恰好组成了帧界定符,就会出现帧定界错误,从而影响整个链路层数据的传输
    • 923388-20160701094948296-2047959754
    • 解决方法:字节填充 :在控制字符和特殊字符前插入一个转义字符"ESC"(1B),而真正的首部和尾部前不加;当上交个给网络层时删除这个字符即可

1.2.3 差错检测

(1)差错检测概念

  • 通过编码与附加校验信息手段,可以使得接受方对收到的数据帧进行校验,发现是否数据出错,从而进行下一步的处理
    • 传输差错分类:
      • 基本的比特差错。
      • 收到的帧出现了帧丢失,帧重复,帧失序。

(2)常用校验方式-循环冗余校验CRC(Cyclic Redundancy Check)

  • 循环冗余码 (CRC)是一种特殊的线性分组码。 循环冗余码各码组中的码元循环左移(或右移),所形成的码组仍然是一个许用码组(全零码组除外),称为循环性。 循环冗余码具有较高的检错能力。
    • 帧检测序列FCS
  • 在数据链路层里面使用CRC循环检验法能够实现无比特差错的传输,但是不是无传输差错,还不是可靠传输

循环冗余码-百度百科


1.3 链路层种类

1.3.1 点对点协议(Point-to-Point Protocol,PPP)

(1)PPP介绍

  • 点对点协议(Point to Point Protocol,PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议

PPP 百度百科

(2)PPP特点

  • PPP具有动态分配IP地址的能力,允许在连接时刻协商IP地址
  • PPP支持多种网络协议,比如TCP/IPNetBEUINWLINK
  • PPP具有错误检测能力,但不具备纠错能力,所以ppp是不可靠传输协议;
  • 无重传的机制,网络开销小,速度快。
  • PPP具有身份验证功能。
  • PPP可以用于多种类型的物理介质上,包括串口线、电话线、移动电话和光纤(例如SDH),PPP也用于Internet接入。

(3)帧格式

字段名 7E FF 03 协议 信息 FCS 7E
字节 1 1 1 2 <=1500 2 1
  • 7EH作为一帧的开始和结束标志(F)

    • 若信息域中出现7EH,则转换为(7DH,5EH)两个字符。当信息域出现7DH时,则转换为(7DH,5DH)。
    • 当信息流中出现ASCII码的控制字符(即小于20H),即在该字符前加入一个7DH字符
  • 其中地址域(A)和控制域(C)取固定值

    • A=FFH
    • C=03H
  • 协议域(两个字节)

    • 0021H表示IP分组
    • 8021H表示网络控制数据
    • C021H表示链路控制数据
  • 帧校验域(FCS)也为2个字节,它用于对信息域的校验。

(4)相关协议

  • 链路控制协议(LCP):一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。

  • 网络控制协议(NCP):协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议

(5)工作流程

78310a55b319ebc4c3e239608c26cffc1f1716b4

  1. 当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接(底层up)。

  2. PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。

  3. 这些分组及其响应选择一些 PPP 参数,和进行网络层配置(此前如有PAP或CHAP验证先要通过验证),NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。

  4. 通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。


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

1.4.1 广播信道介绍

(1)广播信道特点

  • 广播信道可以进行一对多的通信,当一台计算机发出信号时,总线上的所有计算机都能检测到这个数据,能很方便且廉价地连接多个邻近的计算机,曾广泛应用于局域网中

1.4.2 局域网

(1)局域网介绍

  • 网络为一个单位所拥有,且地理范围和站点数目均有限

  • 局域网的拓扑:

    • 星形网、环形网和总线网。
  • 局域网的数据链路层分为两个子层:

    • 逻辑链路控制(Logical Link Control,LLC)子层
    • 媒体接入控制(Medium Access Control,MAC)子层

(2)局域网技术

  • 现阶段成熟的局域网技术有三种:其中以太网技术逐步成为局域网技术的主流。
    • 以太网(Ethernet)、
    • 令牌环(Token Ring)
    • 光纤分布式数据接口(FDDI)

20170313194923459


1.5 以太网

1.5.1 以太网介绍

  • 以太网是一种计算机局域网技术。IEEE组织的IEEE 802.3标准制定了以太网的技术标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网是目前应用最普遍的局域网技术,取代了其他局域网技术如令牌环FDDIARCNET

以太网-百度百科

1.5.2 访问控制协议

(1)CSMA/CD 载波监听多路访问/冲突检测 (有线网络)

  • CSMA/CD的工作原理:

    • 所有节点都共享网络传输信道,节点在发送之前,首先检测信道是否为空闲,如果信道为空闲则发送,否则就等待;
    • 在发送信息后,再对冲突进行检测,当发现冲突时,取消发送
  • 优缺点:

    • 原理比较简单,技术上容易实现,网络中各工作站处于平等地位,不需要集中控制,不提供优先级控制
    • 但是在网络负载 增大时,发送时间增长,发送效率急剧下降

(2)CSMA/CA (载波监听多路访问/冲突避免)(无线网络)

  • CSMA/CA的工作原理:
    1. 先检测信道(进行载波监听)
    2. 发送数据帧后,若目的站正确收到此帧,则经过时间间隔SIFS(短帧间间隔)后,向源站发送确认帧ACK。
    3. 所有其他站都设置网络分配向量NAV(信道忙的持续时间),表明在这段时间内信道忙,不能发送数据。
    4. 当确认帧ACK结束时,NAV也就结束了。在经历了帧间间隔之后,接着回出现一段空闲时间,叫做争用窗口,表示在这段时间内有可能出现各站点争用信道的情况。

1.5.3 以太网通信标识-MAC地址

(1)MAC地址介绍

  • MAC地址英语:Media Access Control Address),直译为媒体存取控制位址,也称为局域网地址(LAN Address),MAC位址以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。在OSI模型中,第三层网络层负责IP地址,第二层数据链路层则负责MAC位址 [1] 。
  • MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址

(2)MAC地址结构

  • MAC地址的长度为48位(6个字节),通常表示为12个16进制数,
    • 如:00-16-EA-AE-3C-40
    • 其中:
      • 前6位16进制数00-16-EA代表网络硬件制造商的编号[OUI(Organizationally Unique Identifier)],它由IEEE(电气与电子工程师协会)分配
      • 后6位16进制数AE-3C-40代表该制造商所制造的某个网络产品(如网卡)的系列号(厂家分配)。只要不更改自己的MAC地址,MAC地址在世界是惟一的
  • MAC地址最高字节(MSB)的低第二位(LSb)表示这个MAC地址是全局的还是本地的,即U/L(Universal/Local)位
    • 如果为0,表示是全局地址。
    • 所有的OUI这一位都是0。
  • MAC地址最高字节(MSB)的低第一位(LSb),表示这个MAC地址是单播还是多播
    • 0表示单播

7af40ad162d9f2d36c26cc35a7ec8a136327cc31

1.5.5 MAC帧

(1)MAC帧介绍

  • 以太网的MAC帧格式有好几种,被广泛应用的是DIX Ethernet V2标准,还有一种是IEEE的802.3标准,该标准经过了多年的发展,已经出现了很多种子标准。DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网

(2)帧结构

20200220170435503

  • 长度在64~1518byte
  • 源MAC地址:发送方的MAC地址
  • 目的MAC地址 :接收方的MAC地址
  • 上层协议类型:
    • 若该字段的值小于1518,那么这个字段就是长度字段,并定义后面的数据字段的长度
    • 若该字段的值大于1518,它就定义使用因特网服务的上层协议
  • 数据:网络层传下来的数据
  • 帧校验序列FCS:通过CRC校验方式经计算的冗余码

(3)无效数据帧

  • 帧的长度不是整数个字节

  • 用收到的帧检验序列FCS查出有差错

  • 收到的帧的MAC客户数据字段的长度不在46~1500字节之间

1.5.4 其它

(1)广播风暴

  • 广播风暴(broadcast storm)简单的讲是指当广播数据充斥网络无法处理,并占用大量网络带宽,导致正常业务不能运行,甚至彻底瘫痪,这就发生了“广播风暴”。一个数据帧或包被传输到本地网段 (由广播域定义)上的每个节点就是广播;由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪,这就是广播风暴

    广播风暴-百度百科


1.6 以太网上的设备

1.6.1 网络适配器 Adapter

(1)介绍

  • 计算机与外界局域网的连接是通过通信适配器(adapter)
  • 适配器本来是主机内插入的一块网络接口板,这种接口板又称为网络接口卡(Network Interface Card,NIC)或称简为“网卡”。
  • 适配器的一个重要功能就是进行数据串行传输和并行传输的转换

1.6.2 集线器 Hub

(1)介绍

  • 集线器的作用仅仅是将设备连接起来,实现互联,一般没有设置转发控制功能,起到总线功能

1.6.3 交换机 Switch

(1)介绍

  • 交换机是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备。 交换机可以“学习”MAC地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址

(2)交换机工作原理

  • 交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中
    • MAC表并不是无限的,而且一般一段时间内要重置一次
  • 交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发
    • 如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。这一过程称为泛洪(flood)
  • 广播帧和组播帧向所有的端口转发

(3)生成树协议(Spanning Tree Protocol,STP)

  • STP是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源
  • 生成树协议工作原理:
    • 任意一交换机中如果到达根网桥有两条或者两条以上的链路.生成树协议都根据算法把其中一条切断,仅保留一条.从而保证任意两个交换机之间只有一条单一的活动链路.因为这种生成的这种拓扑结构.很像是以根交换机为树干的树形结构.故为生成树协议

(4)虚拟局域网VLAN

1. Vlan介绍

  • VLAN(virtual local area network,虚拟局域网)把一个LAN(local area network,局域网)划分为多个逻辑的LAN → VLAN,处于同一个VLAN的主机能直接互通,而处于不同VLAN的主机则不能直接互通,从而增加了局域网的安全

2. Vlan 优点

  • 限制广播域。广播域被限制在一个VLAN内,节省了带宽,提高了网络的处理能力

  • 增强了局域网的安全性

  • 可灵活构建虚拟工作组

3.帧结构

  • EEE802.1Q,俗称“Dot One Q”,是经过IEEE认证的对数据帧附加VLAN识别信息的协议。

  • IEEE802.1Q所附加的VLAN识别信息,位于数据帧中“发送源MAC地址”与“类别域(Type Field)”之间。具体内容为2字节的TPID和2字节的TCI,共计4字节。 在数据帧中添加了4字节的内容,那么CRC值自然也会有所变化。这时数据帧上的CRC是插入TPID、TCI后,对包括它们在内的整个数据帧重新计算后所得的值。
    基于IEEE802.1Q附加的VLAN信息,就像在传递物品时附加的标签。因此,它也被称作“标签型VLAN(Tagging VLAN)

145023517

  • 长度在68~1522byte

  • 解释:

    • TPID (Tag Protocol Identifier,也就是EtherType)
      是IEEE定义的新的类型,表明这是一个加了802.1Q标签的帧。TPID包含了一个固定的值0x8100
    • TCI (Tag Control Information)
      包括用户优先级(User Priority)、规范格式指示器(Canonical Format Indicator)和 VLAN ID
      • Pri优先级主要用于当交换机出端口发生拥塞时,交换机通过识别该优先级,优先发送优先级高的数据包
      • CFI:规范格式指示器,总是被设置为0. CFI常用于以太网类网络和令牌环类网络之间,如果在以太网端口接收的帧具有CFI,那么设置为1,表示该帧不进行转发(打这条线是因为这知识只作了解即可)
      • VLAN ID: 该字段为12bit,最大支持4096个VLAN,因为2^12=4096
posted @ 2020-03-29 16:35  NIShoushun  阅读(794)  评论(0编辑  收藏  举报