网络类型及数据链路层的协议
网络类型
--- 根据数据链路层使用的协议来进行划分的。
MA网络
--- 多点接入网络
BMA --- 广播型多点接入网络---以太网协议
NBMA --- 非广播型多点接入网络
以太网协议 --- 需要使用mac地址对不同的主机设备进行区分和标识 --- 以太网之所以需要使用mac地址进行数据寻址,主要是因为以太网组建的二层网络可以包含多个的接口,每个以太网接口之间都可以通过交互以太网帧的方式进行二层通讯。 --- BMA
以太网 --- 频分 --- 在同一种传输介质上可以同时发送不同频段的电波,而互不干扰。实现数据并行发送
P2P网络
--- 点到点的网络
当一个网络中只能包含两台设备时,则这样的网络不需要使用mac地址进行寻址,这样的网络称为P2P网络
针对串线网络的数据链路层协议
1.HDLC
2.PPP
1、HDLC
--- 高级数据链路控制协议
标准的HDLC:iso组织颁布的满足工业标准的HDLC版本
非标准的HDLC : 各大厂商基于标准的HDLC协议改进而来
(默认情况下:思科设备组件的串线网络使用的封装协议是HDLC,华为默认使用的是ppp协议。
[a1]display interface Serial 4/0/0 --- 查看接口的二层特征
[a1-Serial4/0/0]link-protocol hdlc --- 修改二层的协议类型
2、PPP
--- 点到点协议
特点:
1.兼容性强,有统一的版本,只要是支持全双工的串线,都可以使用ppp协议进行封装
2.ppp协议具有很强的可移植性 --- pppoE
3.支持认证和授权
4、ppp的会话是一次性会话 --- 建立会话成功后,修改参数不会影响这个会话
ppp建立会话:
--- ppp协议和tcp协议相似,在传输数据之前,需要建立ppp会话
1.链路建立阶段 --- LCP建立
2.认证阶段 --- 可选项
3.网络层协议协商阶段 --- NCP协商--- NCP协议是一堆协议的总称。
ppp协议拥有一系列的成员协议
--- LCP --- 链路控制协议(一个)
---NCP --- 网络控制协议(一堆)---如ipcp协议
1.链路建立阶段
--- LCP建立(双向)
沟通MRU --- ppp帧中数据部分所允许携带的最大字节数 ---默认1500字节
沟通第二阶段是否需要认证以及认证方式

2.认证阶段
--- 可选项 --- ppp一般通过调用aaa平台来完成认证过程的
ppp中既支持单向认证,也支持双向认证
pap --- 密码认证协议

被认证方将用户名和密码以明文的形式发送给认证方,如果认证成功,则认证方回复ACK,否则回复NAK。
pap认证的配置方法:
1、认证方:
1、创建用户信息
[a1-aaa]local-user admin password cipher 123456
[a1-aaa]local-user admin service-type ppp
2、配置认证方式
[a1-Serial4/0/0]ppp authentication-mode pap
2、被认证方:
配置用户名和密码:
[a2-Serial4/0/0]ppp pap local-user admin password cipher 123456
CHAP ---- 挑战握手协议
--- 安全性更高,不再是明文来进行认证,而是通过比对摘要值的方式来进行认证

认证方可以不配置用户名,但被认证方必须配用户名
HASH(散列函数) --- 将任意长度的输入转换成固定长度的输出
1、相同输入,相同输出;
2、不可逆性
3、雪崩效应(当其中的值改变,会引起巨大的变化)
MD5 --- HASH算法中的一种,可以将任意长度的输入转化成128位的输出
CHAP认证配置方法:
1、认证方:
1、创建用户信息
[a1-aaa]local-user admin password cipher 123456
[a1-aaa]local-user admin service-type ppp
2、配置认证方式
[a1-Serial4/0/0]ppp authentication-mode chap
2、被认证方:
配置用户名和密码:(同pap不同,chap的密码和用户名分开配置)
[a2-Serial4/0/0]ppp chap user admin
[a2-Serial4/0/0]ppp chap password cipher 123456
3.网络层协议协商阶段
--- NCP协商 --- 如果三层使用的是IP协议,则需要使用IPCP协议来协商其参数
1、协商IP报文的压缩格式;
2、协商IP地址(授权,双向)
--- 一旦认可对方发的IP地址, 则会自动学习到达该地址的主机路由(到达该地址的路由掩码为32)

IPCP可以自动获取IP地址:
--- 获取方通过发送IP地址为全0的地址向给予方请求地址

获取IP地址的配置:
获取方:
[a1-Serial4/0/0]ip address ppp-negotiate --- ip地址通过ppp的ipcp协议获取
给予方:
[a2-Serial4/0/0]remote address 1.1.1.1 ---- 因为是主机路由,所以不须要配掩码
ppp帧的格式

F --- flag --- 01111110---当看到F标记时,说明ppp帧的开始,当再次看到时,说明该帧结束了
如果在数据部分出现了F标记,则通过转义的方式表示
A--- address --- 11111111--- (固定值)没有实质性作用
C --- control --- 00000011 --- (固定值)没实质性作用
协议 --- 表示上层使用的协议类型
FCS --- 帧校验序列 --- 确保数据完整性
协议部分的内容:

其中,PAP和CHAP协议为上文中提到的认证阶段的两个协议
相关文章:
网络类型及数据链路层的协议
网络类型 --- 根据数据链路层使用的协议来进行划分的。 MA网络 --- 多点接入网络 BMA --- 广播型多点接入网络---以太网协议 NBMA --- 非广播型多点接入网络 以太网协议 --- 需要使用mac地址对不同的主机设备进行区分和标识 --- 以太网之所以需要使用mac地址进行数据寻址&…...
ROC 曲线:健康背景下的应用和解释
一、介绍 在医疗保健领域,做出明智的决策对于改善患者治疗结果、有效分配资源和设计有效的诊断测试至关重要。受试者工作特征 (ROC) 曲线是一个强大的工具,在评估诊断测试的性能、区分健康个体和患病个体以及优化医疗保健干预方面发挥着至关重要的作用。…...
SpringBoot + Disruptor 实现特快高并发处理,使用Disruptor高速实现队列
1 前言 工作中遇到项目使用Disruptor做消息队列,对!你没看错,不是Kafka也不是rabbitmq。Disruptor有个最大的优点就是快,还有一点它是开源的哦,下面做个简单的记录。 2 Disruptor介绍 Disruptor 是英国外汇交易公司…...
git push origin HEAD:refs/for/master
git push <远程主机名> <本地分支名> : <远程分支名> 例如 git push origin master:refs/for/master 是将本地的master分支推送到远程主机origin上的对应master分支 origin 是远程主机名, 第一个master是本地分支名, 第二…...
S25FL256S介绍及FPGA实现思路
本文介绍 S25FL256S 这款 FLASH 芯片,并进行 FPGA 读写控制的实现(编程思路及注意事项)。 文章目录 S25FL-S 介绍管脚功能说明SPI 时钟模式SDRDDR 工作模式FLASH存储阵列(地址空间映射)常用寄存器及相关指令Status Reg…...
淘宝客APP源码/社交电商自营商城源码/前端基于Uniapp开发
淘宝客APP源码,前端基于Uniapp开发的社交电商自营商城源码。Thinkphp的后台,不是很标准,感兴趣的可以自行研究。 商城功能 1、首页基础装修;2、丰富选品库;3、淘口令解析;4、支持京东;5、支持…...
Oracle 服务器日常巡检
文章目录 1、数据库基本状况检查2、数据库相关资源使用情况检查3、检查Oracle数据库性能4、数据库服务器CPU、MEM、I/O性能5、数据库服务器安全检查 Oracle数据库的日常巡检内容包括: (1)Oracle数据库基本状况检查; (…...
【轨道机器人】实现Windows与下位机串口通信(未完成)
方案一:QT,编写类似串口调试助手的APP,连接上硬件,qt有个好像是串口缓存函数,可以防止占用CPU。(缺点qt估计要时间学) 方案二:利用vscode、C,编写一个可执行exe文件&…...
无人机内存卡数据恢复
1.插入内存卡 2.选择对应的品牌 3.点击恢复 建议:发现数据打不开或者丢失情况,建议及时断电,以免影响数据的正常恢复! #无人机##数据恢复##储存卡#...
基于SSM的校园二手物品交易市场设计与实现
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…...
Android14 Beta 5
Beta 5,这是 Android 14 Beta 计划中的最后一次计划更新。这是确保您的应用程序已准备就绪并在非 Beta 用户开始获取 Android 14 之前提供反馈的最后机会。为了使您能够在跨多种外形尺寸的设备上测试您的应用程序,Beta 5 适用于 Pixel Tablet 和 Pixel F…...
力扣labuladong——一刷day32
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、力扣654. 最大二叉树二、力扣105. 从前序与中序遍历序列构造二叉树三、力扣106. 从中序与后序遍历序列构造二叉树四、力扣889. 根据前序和后序遍历构造二叉…...
Day01_《MySQL索引与性能优化》摘要
一、资料 视频:《尚硅谷MySQL数据库高级,mysql优化,数据库优化》—周阳 其他博主的完整笔记:MySQL 我的笔记:我的笔记只总结了视频p14-p46部分,因为只有这部分是讲解了MySQL的索引与explain语句分析优化…...
BMS系统项目
1、通过电压监测是否冲满,通过电压可以监测是否放完电 电池得参数 单体过压(充满电) 过压恢复(百分之90多) 欠压保护(百分之几得电,快关机了) 欠压恢复(就是欠压之上…...
sql server 多行数据合并一行显示
在 SQL Server 中,可以使用 STUFF 和 FOR XML PATH 进行多行合并成一行。例如,假设有一个表名为 orders ,其中包含订单号和产品名称: order_idproduct_name1Product A1Product B2Product C2Product D 以下查询将在 order_id 列上…...
「我的AIGC咒语库:分享和AI对话交流的秘诀——如何利用Prompt和AI进行高效交流?」
文章目录 每日一句正能量前言基础介绍什么是Prompt?什么是 Prompt Engineering?为什么需要 Prompt Engineering?如何进行 Prompt Engineering?Prompt的基本原则Prompt的编写模式AI 可以帮助程序员做什么?技术知识总结拆解任务阅读…...
强国有我助力苔花绽放 | 爱心捐赠仪式在西安顺利举办
2023年11月2日,由中国儿童中心、全国少年儿童“双有”主题教育活动组委会、中华少年儿童慈善救助基金会强国有我项目主办,陕西省青少年宫协会、陕西省妇女儿童活动中心、陕西回归儿童救助中心承办的“苔花绽放”事实无人抚养儿童关爱计划捐赠仪式在陕西回…...
Flink SQL -- CheckPoint
1、开启CheckPoint checkpoint可以定时将flink任务的状态持久化到hdfs中,任务执行失败重启可以保证中间结果不丢失 # 修改flink配置文件 vim flink-conf.yaml# checkppint 间隔时间 execution.checkpointing.interval: 1min # 任务手动取消时保存checkpoint execu…...
Load-balanced-online-OJ-system 负载均衡的OJ系统项目
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 本项目Github地址 - Load-balanced-o…...
ES6 导入导出
ES6 导入导出 ES6引入了原生的模块化支持,使得JavaScript代码可以被划分为可重用的模块。这些模块可以导出部分代码(如函数、对象、类等),并被其他模块导入使用。 export 命名导出(Named Exports) 可以从…...
全面只使用sessionid来验证登录-----客户端只保留sessionid
虽然说sessionid 也是可以伪造的,可以快速发送伪造的sessionid,但是因为sessionid是32位的随机字符串,暴力破解需要几亿年,安全性比user_id1,user_id2 高得多。不过一个有意思的事情是:如果我把user_id1改成 user_id32位随机字符串…...
Qwen3-0.6B-FP8与STM32开发联动:生成嵌入式系统控制逻辑伪代码
Qwen3-0.6B-FP8与STM32开发联动:生成嵌入式系统控制逻辑伪代码 1. 引言 如果你是一位嵌入式开发者,或者正在学习STM32,下面这个场景你一定不陌生:拿到一个传感器模块,比如温湿度传感器,想用它来控制一个风…...
AudioLDM-S极速音效生成:5分钟搞定游戏音效,小白也能当音效师
AudioLDM-S极速音效生成:5分钟搞定游戏音效,小白也能当音效师 1. 游戏音效制作的新纪元 想象一下这样的场景:你正在开发一款独立游戏,需要一个"科幻飞船引擎启动"的音效。传统方式可能需要花费数小时搜索音效库、购买…...
深度解析开源Galgame社区:从零构建纯净视觉小说交流平台
深度解析开源Galgame社区:从零构建纯净视觉小说交流平台 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next TouchGAL是一个基…...
intv_ai_mk11开源模型教程:7B Llama架构对话机器人在GPU云上的安全沙箱实践
intv_ai_mk11开源模型教程:7B Llama架构对话机器人在GPU云上的安全沙箱实践 1. 什么是intv_ai_mk11对话机器人 intv_ai_mk11是一个基于7B参数Llama架构的AI对话助手,专门设计运行在GPU云服务器环境中。这个模型经过优化,能够在保持较高响应…...
别只盯着时钟了!用Vivado的Set_Data_Check搞定FPGA里两个数据信号的时序检查(附工程源码)
FPGA时序约束进阶:用Set_Data_Check精准控制数据信号时序关系 在FPGA设计中,时序约束是确保电路功能正确性的关键环节。大多数工程师对时钟与数据信号之间的setup/hold约束已经驾轻就熟,但当面对两个数据信号之间的时序关系时,却常…...
开源可部署!PyTorch 2.8 RTX 4090D镜像在企业AIGC生产环境落地实践
开源可部署!PyTorch 2.8 RTX 4090D镜像在企业AIGC生产环境落地实践 1. 为什么选择这个深度学习镜像 在当今AI技术快速发展的背景下,企业面临的最大挑战之一是如何快速搭建稳定高效的AI开发环境。传统方式需要手动配置CUDA、PyTorch和各种依赖库&#x…...
Excel VBA实战:打造高精度自定义计时器
1. 为什么需要自定义计时器? 在实验室数据采集、运动训练计时、工业生产监控等场景中,我们经常需要精确记录时间间隔。虽然Excel自带的时间函数能解决部分需求,但遇到以下情况时,原生功能就显得力不从心: 毫秒级精度要…...
从HuggingFace下载到本地部署:手把手教你定制自己的BertTokenizer工作流
从HuggingFace下载到本地部署:手把手教你定制自己的BertTokenizer工作流 在自然语言处理项目中,一个高效且灵活的分词器往往是整个流程的基石。BertTokenizer作为HuggingFace生态中的核心组件,其预训练版本能够处理绝大多数英文和中文文本处理…...
从激光雷达到AI服务器:实战解析PCIe高速走线在车载与数据中心的不同设计策略
从激光雷达到AI服务器:实战解析PCIe高速走线在车载与数据中心的不同设计策略 在硬件设计领域,PCIe总线技术已经成为了高速数据传输的事实标准。从自动驾驶汽车的激光雷达到数据中心的AI加速卡,PCIe的身影无处不在。然而,看似相同的…...
