第五章 数据链路层与局域网

news2024/9/21 14:32:22

数据链路层服务

  • 组帧;将要传输的数据封装成帧
  • 链路接入;可分为点对点链路(独占)和广播链路(共享)
  • 可靠交付;即在相邻节点间经数据链路实现数据报的可靠传输
  • 差错控制;检错纠错

差错控制

  • 噪声可分为随机噪声和冲击噪声
    • 随机噪声:热噪声、传输介质引起的噪声等,具有典型的随机特征。
    • 冲击噪声:突然发生的噪声,如雷击、电机启停等,具有很强的突发性,并且容易造成一段时间的传输差错。
    • 随机噪声引起的传输差错称为随机差错或独立差错,具有独立性、稀疏性和非相关性等特点
    • 冲击噪声引起的差错称为突发差错,通常是连续或成片的信息差错,差错之间具有相关性,差错通常几种发生在某段信息

差错控制的基本方式

  • 检错重发;接收方利用差错编码检测数据是否出错,对于出错的数据,接收端请求发送端重发数据加以纠正
  • 前向纠错(FEC);发送端对数据进行纠错编码,发生包含纠错编码信息的帧,接收端收到帧后利用纠错编码进行差错检测,对于发生错误的帧直接进行纠错
  • 反馈校验;接收端将受到的数据原封不动发回发送端,发送端对比判断是否正确
  • 检错丢弃;不纠正出错的数据,直接丢弃数据

差错编码的基本原理

  • 香农信道编码定理指出:对于一个给定的有干扰信道,只要发送端以低于信道容量C的数据速率R发送信息,则一定存在一种编码方式,使得编码错误概率P随着码长n的增加而按指数下降至任意小的值

差错编码的检错和纠错能力

  • 汉明距离:两个等长码字之间,对应位不同的位数。差错编码的检错或纠错能力与编码的汉明距离有关;例如码字01100101与码字10011101之间的汉明距离为5
  • 对于检错编码,如果编码集的汉明距离为r+1,则该差错编码可以检测r位的差错
  • 对于纠错编码,如果编码集的汉明距离2r+1,则该差错编码可以纠正r位的差错

典型的差错编码

异或(XOR)运算:位相同结果为0,位不同结果为1

  • 奇偶校验码——50%检错率,使用1位冗余信息实现差错检测,补0或1确保1的个数位1或0;示例如下:

在这里插入图片描述

  • 汉明码——可实现单个比特差错纠正
  • 循环冗余码CRC,示例如下:

在这里插入图片描述

多路访问控制协议

  • MAC协议分类:信道划分MAC协议、随机访问MAC协议、受控接入MAC协议

信道划分MAC协议

  • 频分多路复用FDM——常用于模拟传输的宽带网络中
  • 时分多路复用TDM——分为同步时分多路复用(STDM)、异步时分多路复用(ATDM)
  • 波分多路复用WDM——广泛应用于光纤,实质是一种频分多路复用
  • 码分多路复用CDM

随机访问MAC协议

  • ALOHA协议
    • 纯ALOHA——工作原理:任何一个站点有数据要发送时就可以直接发送至信道
    • 时隙ALOHA——基本思想:把信道时间分成离散的时隙,每个时隙为发送一帧所需要的发送时间,每个通信站只能在每个时隙开始时刻发送帧,如果在一个时隙内发生帧出现冲突,下一个时隙以概率P重发帧,以概率1-P不发该帧,直到帧发送成功
  • 载波监听多路访问协议CSMA
    • 非坚持CSMA——基本原理:若通信站有数据发送,先侦听信道,若空闲,立即发送,若忙,则等待一个随机时间,然后重新侦听信道,尝试发送数据,若冲突,则等待一个随机事件,重新开始侦听信道,尝试发送数据
    • 1-坚持CSMA——若通信站有数据发送,先侦听信道,若空闲,立即发送,若忙,则继续侦听信道直至发现信道空闲,然后立即发送数据
    • P-坚持CSMA——若通信站有数据发送,先侦听信道,若空闲,则以概率P在最近时隙开始时刻发送数据,以概率1-P延迟至下一个时隙发送;若信道忙,则等待下一个时隙,重新开始发送过程;若发送数据时发送冲突,则等待一个随机时间,然后重新开始发送过程
  • 带冲突检测的载波监听多路访问协议——CSMA/CD基本原理:通信站使用CSMA进行数据发送,发送期间如果检测到碰撞,立即终止发送,并发出一个冲突强化信号,使所有通信站都知道冲突的发生;发出冲突强化信号后,等待一个随机时间,再重复上述过程。
  • CSMA/CD的工作状态分为如下三种:
    • 传输状态;一个通信站使用信道,其他站禁止使用
    • 竞争状态;所有通信站都有权尝试对信道的使用权
    • 空闲状态:没有通信站使用信道

受控接入MAC协议

  • 集中式控制——系统中有一个主机负责调度其他通信站接入信道,从而避免冲突。主要方法是轮询技术,又分为轮叫轮询和传递轮询
    • 轮叫轮询——主机轮流查询各站,询问有无数据要发送,主机也可以主动将数据发给各站
    • 传递轮询——主机先向站N发出轮询帧,站N在发送数据后或在告诉主机没有数据发送时,即将其相邻站(站N-1)的地址附上
  • 分散式控制
    • 比较典型的分散式控制方法就是令牌技术——令牌代表了通信站使用信道的许可,在信道空闲时抑制在信道上传输,一个通信站如果想发送数据就必须首先获得令牌,然后在一定时间内发送数据,在发送完数据后重新产生令牌并发送到信道上,以便其他通信站使用信道
    • 令牌环主要操作过程:
      • 网络空闲时,只有一个令牌在环路上绕行
      • 当一个站点要发送数据时,必须等待并获得一个令牌,将令牌标志位置为“1”随后便可发送数据
      • 环路中每个站点边转发数据,边检查数据帧中目的地址,若为本站点地址,便读取其中所携带的数据
      • 数据帧环绕一周返回时,发送站将其从环路上撤销,即“自生自灭”
      • 发送站点完成数据发送后,重新产生一个令牌传至下一个站点,以使其他站点获得发送数据帧的许可权

局域网

  • IEEE802委员会将局域网的数据链路层拆分为两个子层:逻辑链路控制(LLC)子层和介质访问控制MAC子层

数据链路层寻址与ARP

  • MAC地址——MAC地址长度为6字节,共有2的48次方个可能的MAC地址;MAC地址具有唯一性
  • 地址解析协议ARP——用于根据本网内目的主机或默认网关的IP地址获取其MAC地址
  • DNS与ARP比较
    • 解析内容不同;DNS将主机域名解析为对应的IP地址,ARP将IP地址解析为对应的MAC地址
    • 解析范围不同;DNS可以解析Internet内任何位置的主机域名,ARP只为在同一个子网上的主机和路由器接口解析IP地址
    • 实现机制不同;DNS是一个分布式数据库,DNS解析需要在层次结构的DNS服务器之间进行查询,ARP是通过局域网内广播ARP查询,维护ARP表,获取同一子网内主机或路由器接口的IP地址与MAC地址映射关系

以太网

  • 以太网帧结构

在这里插入图片描述

  • 以太网向网络层提供的是无连接不可靠服务
  • 以太网技术
    • 10Base-T——采用UTP作为介质,传输速率为10Mbit/s
    • 快速以太网——数据传输速率提高到100Mbit/s
    • 千兆位以太网
    • 万兆位以太网

交换机

  • 交换机基本工作原理:当一帧到达后,交换机首先要决策该帧丢弃还是转发,如果是转发的化,还必须进一步决策应将该帧转发到哪个(或哪些)端口去
  • 以太网交换机的自学习

在这里插入图片描述
A向B发送一个帧,从端口1进入交换机;交换机收到该帧后,查找交换表,查询无果;交换机将该帧的源MAC地址A和端口1写入交换表,(一次学习),并向出端口1意外的所有端口泛洪该帧;C和D丢弃该帧,B收下写入交换表

  • 以太网交换机的优点:
    • 消除冲突
    • 支持异质链路
    • 网络管理

虚拟局域网

  • 划分虚拟局域网的方法:
    • 基于交换机端口划分——每个交换机端口属于一个VLAN,如Trunk端口
    • 基于MAC地址划分——每个连接到交换机的主机MAC地址定义VLAN成员
    • 基于上层协议类型或地址划分——根据链路层帧所携带数据中的上层协议类型(如IP)或地址(如IP地址)定义VLAN成员;优点:有利于组成基于应用的VLAN

点对点链路协议

PPP

  • 主要功能:成帧、链路控制协议、网络控制协议
  • 不能实现的功能:差错纠正、流量控制、按序交付

在这里插入图片描述

  • PPP中的一个典型应用场景是家庭用户拨号上网
  • PPP需要提供透明传输服务,即无论上层协议的分组中包含什么样的位串或字节,都应该能够通过PPP正确传输
  • PPP定义了一个特殊的控制转义字节01111101

HDLC协议

  • 高级数据链路控制(HDLC)是面向位的协议,其帧格式如下:

在这里插入图片描述

  • HDLC有三种类型帧:信息帧(I格式)、管理帧(S格式)、无序号帧(U格式),如下图所示:

在这里插入图片描述

  • HDLC使用位填充,首先,发送端扫描整个数据字段,只要发现5个连续的1,就立即插入一个0;接收端先找到标志字段01111110确定帧边界,接着利用硬件扫描整个比特流,发现5个连续1后删除其后的0

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/431968.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端基础复习

1.什么叫HTML5&#xff1f;和原本的所说的HTML有什么区别&#xff1f; 本质上html和html5是一样的的。区别有&#xff1a; 1. 在文档类型声明上 HTML4.0 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loos…

密码加密之bcrypt

在这里是用的bcrypt加密算法&#xff0c;这种现在比较流行 而且无法进行解密 引入依赖 <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</ar…

JetBrains AppCode 2023.1 (macOS x64、aarch64) - 适用于 iOS/macOS 开发的智能 IDE

Xcode 14.3 compatibility, Swift refactorings and intentions, the IDE’s UI, and Kotlin Multiplatform Mobile. 请访问原文链接&#xff1a;https://sysin.org/blog/jb-appcode-2023/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a…

技术分享 | OMS 初识

作者&#xff1a;高鹏 DBA&#xff0c;负责项目日常问题排查&#xff0c;广告位长期出租 。 本文来源&#xff1a;原创投稿 *爱可生开源社区出品&#xff0c;原创内容未经授权不得随意使用&#xff0c;转载请联系小编并注明来源。 本文主要贡献者&#xff1a;进行OMS源码分析的…

GPT-4,大增长时代的序幕

虽然我们早在 2017 年就预测了超大模型的到来&#xff0c;因此才搞了分布式深度学习框架 OneFlow&#xff08;github.com/Oneflow-Inc/oneflow/&#xff09;&#xff0c;且 2020 年的 GPT-3 也掀起了大模型热潮&#xff08;OneFlow—— 让每一位算法工程师都有能力训练 GPT&…

BGP相关实验

实验要求及其拓扑图 划分好IP的拓扑图 实验分析 1,AS1存在两个环回&#xff0c;一个地址为192.168.1.0/24该地址不能在任何协议中宣告&#xff0c;AS3中存在两个环回&#xff0c;一个地址为192.168.2.0/24该地址不能在任何协议中宣告&#xff0c;最终要求这两个环回可以互相…

30天学会《Streamlit》(4)

30学会《Streamlit》是一项编码挑战&#xff0c;旨在帮助您开始构建Streamlit应用程序。特别是&#xff0c;您将能够&#xff1a; 为构建Streamlit应用程序设置编码环境 构建您的第一个Streamlit应用程序 了解用于Streamlit应用程序的所有很棒的输入/输出小部件 第4天 - st…

【NLP】自然语言处理_NLP入门——分词和词性标注

【NLP】自然语言处理_NLP入门——分词和词性标注 文章目录 【NLP】自然语言处理_NLP入门——分词和词性标注1. 介绍2. 概念和工具2.1 分词2.2 词性标注2.3 NLTK2.4 Jieba2.5 LAC 3. 代码实现举例3.1 分词3.1.1 使用nltk进行分词3.1.2 使用jieba进行分词3.1.3 使用LAC进行分词 3…

定义全局变量property与getprop

authordaisy.skye的博客_CSDN博客-Qt,嵌入式,Linux领域博主 adb调试 adb shell getprop .adb logcat 报错 init: sys_prop: permission denied uid:1006 name:ro.camera.gc02m1 在linux驱动中查找 find ./ -name *.c | xargs grep -n "property_set" find ./ -n…

《2023金融科技·校园招聘白皮书》新鲜出炉|牛客独家

数智创新时代&#xff0c;科技人才为先。 眼下&#xff0c;在建设“数字中国”的时代背景下&#xff0c;金融行业全面数智化转型已箭在弦上。政策端&#xff0c;金融行业为中共中央、国务院印发《数字中国建设整体布局规划》的7大重点行业之一。 资本端&#xff0c;仅2022年三…

【C++ 四】函数、指针

函数、指针 文章目录 函数、指针前言1 函数1.1 概述1.2 函数定义1.3 函数调用1.4 值传递1.5 函数常见样式1.6 函数声明1.7 函数分文件编写 2 指针2.1 指针基本概念2.2 指针变量定义和使用2.3 指针所占内存空间2.4 空指针和野指针2.5 const 修饰指针2.6 指针和数组2.7 指针和函数…

Cross compiling Windows binaries from Linux

IntroductionWhy? SpeedCostContainers k8sRejected Strategies Using x86_64-pc-windows-gnuUsing wine to run the MSVC toolchainHow? Prerequisites1. Setup toolchain(s)2. Acquire Rust std lib3. Acquire CRT and Windows 10 SDK4. Override cc defaults5. ProfitBon…

机器学习 探索性数据分析

文章目录1. 数据总览1.1 查看数据的维度1.2 查看列的数据类型1.3 查看索引1.4 获取数据值1.5 数据集相关信息概览1.6 查看数据的统计信息1.7 查看前3行数据2. 缺失值查看与处理2.1 缺失值查看2.2 缺失值处理3. 异常值检测与处理3.1 异常值检测3.2 异常值处理4. 特征分析4.1 查看…

计算机网络考试复习——第4章 4.6

理想的路由算法&#xff1a;几个特点 1.算法必须是正确和完善的 2.算法在计算上应该简单 3.算法能适应通信量和网络拓扑的变化具有自适应性也称为稳健性 4.算法应该具有稳定性 5。算法应该是公平的 6.算法应该是最佳的 关于“最佳路由”——不存在一种绝对的最佳路由算法…

第二章 法的内容与形式

目录 第一节 法的内容与形式的概念 一、法的内容与形式的含义 二、法的内容和形式的关系 第二节 法律权利与法律义务 一、权利和义务的概念 二、权利和义务的分类 三、权利与义务的联系 第三节 法的成文形式与不成文形式 一、历史上各种法的表现形式 二、成文法与不成文…

defaultdict 默认值

文章目录 前言语法setdefault()和defaultdict()的区别setdefault()defaultdict() 前言 在字典中查找某一个值的时候&#xff0c;若key不存在就会返回一个keyerror错误而不是一个默认值&#xff0c;如果想要返回一个默认值可以使用defaultdict函数。 defaultdict是python内建dic…

从0搭建Vue3组件库(三): 组件库的环境配置

本篇文章将在项目中引入 typescript,以及手动搭建一个用于测试组件库组件 Vue3 项目 因为我们是使用 ViteTs 开发的是 Vue3 组件库,所以我们需要安装 typescript、vue3,同时项目将采用 Less 进行组件库样式的管理 pnpm add vuenext typescript less -D -w 使用pnpm如果要安装在…

【C语言】void 和 void* 类型

一. void 类型 1. 为何不能定义 void 类型的变量 为什么不能定义 void 类型的变量&#xff1f;因为它是空类型&#xff0c;不能够为变量提供空间吗&#xff1f; 定义变量的本质是开辟空间&#xff0c;我们用 sizeof 来计算 void 类型的大小&#xff1a; 在vs2017下&#xf…

Direct3D 12——模板——平面阴影效果

平行光阴影 图展示了由平行光源经物体所投射岀的阴影。给定方向为L的平行光源&#xff0c;并用r&#xff08;t&#xff09;p tL来表 示途经顶点p的光线。光线r &#xff08;t&#xff09;与阴影平面(n,d&#xff09;的交点为S。以此光源射出的光线照射到物体的各个顶点&#x…

Stable Diffusion本地搭建windows and linux(附搭建环境)

linux搭建过程以centos为例 1.使用git工具下载项目文件到本地文件夹&#xff0c;命令如下&#xff1a; git clone https://github.com/IDEA-CCNL/stable-diffusion-webui.git然后进入该文件夹&#xff1a; cd stable-diffusion-webui2.运行自动化脚本 运行webui.sh安装一些p…