计算机网络——数据链路层(点对点协议PPP)

点对点协议PPP的概述

         对于点对点的链路,目前使用得最广泛的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)

        它主要应用于两个场景:

        用户计算机与ISP之间的链路层协议就是点对点协议 PPP,1999年公布了回以在以太网上运行的PPP协议,即PPPOE。

        PPPOE:它可以使数字用户线路,电路调制解调器以及以太网等宽带接入技术,利用以太网接口的形式,为用户提供服务。

         他还广泛用于广域网路由器之间的专用线路

点对点协议PPP的要求 

•    简单:这是首要的要求(最复杂的功能TCP实现,  IP也简单且不可可靠),因此数据链路层的PPP没有必要比 IP复杂;

PPP的简单:  每收到一个帧,进行CRC检验,如果CRC检验正确, 就收下这个帧,反之,就丢弃这个帧,其他什么也不做。

•    封装成帧:必须规定特殊的字符作为帧定界符;

•    透明性:必须保证数据传输的透明性;

•    多种网络层协议:支持多种网络层协议(IP/IPX);

•    多种类型链路:能够在多种类型的链路上运行;

  • 串行的、并行的;
  • 同步链路、异步链路;
  • 低速链路、高速链路;
  • 交换的(动态的)、非交换的(静态的);
  • 电的、光的;
  • PPPoE ( PPP over Ethernet) 

•    差错检测:对收到的帧进行检测,并丢弃有差错的帧

•   检测连接状态:能够及时自动检测出链路是否处于正常工作状态。

•    最大传送单元:必须对每一种类型的点对点链路设置最大传送单元MTU 的标准默认值,促进各种实现之间的互操作性。

需要强调的是,MTU是数据链路层的帧可以载荷的数据部分的最大长度,而不是帧的总长度

•    网络层地址协商: 必须提供一种机制使通信的两个网络层实体能够通过协商知道或能够配置彼此的网络层地址。

•   数据压缩协商:必须提供一种方法来协商使用数据压缩算法

        在 TCP/IP协议族中,可靠传输由运输层的TCP协议负责,因此数据链路层的PPP协议不需要进行纠错,不需要设置序号,也不需要进行流量控制。

        PPP协议不支持多点线路(即一个主站轮流和链路上的多个从站进行通信),而只支持点对点的链路通信。此外,PPP协议只支持全双工链路。

 ppp协议的组成

PPP协议有三个组成部分:

        1. 一个将IP数据报封装到串行链路的方法:PPP既支持异步链路(无奇偶检验的8比特数据),也支持面向比特的同步链路。IP 数据报在PPP帧中就是其信息部分。这个信息部分的长度受最大传送单元MTU的限制。 

        2.链路控制协议 LCP(Link ControlProtocol):用来建立、配置和测试数据链路连接,通信的双方可协商一些选项。

        3.网络控制协议NCP (Network Control Protocol):其中的每一个协议支持不同的网络层协议,如IP、OSl的网络层、DECnet和 AppleTalk等。

ppp的帧格式 

        由上图所示,你可以看到协议不同,其帧的数据载荷所表达类型也有所不同。     

 PPP帧的透明传输——面向字节的异步链路

 数据帧中出现帧定界

数据帧中出现转义字符

数据帧中出现ASCLL码控制字符

接收方的处理就完全与发送方相反即可: 

PPP帧的透明传输——面向比特的同步链路
 

 PPP帧的差错检测

PPP的工作状态 

        LCP如何配置协调:LCP开始协商一些配置选项,即发送LCP的配置请求帧。这是个PPP帧,其协议字段置为LCP对应的代码,而信息字段包含特定的配置请求。链路的另端可以发送以下几种响应中的一种:
        (1)配置确认帧(Configure-Ack):所有选项都接受。
        (2)配置否认帧(Configure-Nak):所有选项都理解但不能接受。
        (3)配置拒绝帧(Configure-Reject):选项有的无法识别或不能接受,需要协商。
        LCP配置选项包括链路上的最大帧长、所使用的鉴别协议的规约(如果有的话),以及不使用PPP帧中的地址和控制字段(因为这两个字段的值是固定的,没有任何信息量,可以在 PPP帧的首部中省略这两个字节)。

        鉴别状态:

        协商结束后双方就建立了LCP链路,接着就进入“鉴别”状态。在这一状态,只允许传送 LCP协议的分组、鉴别协议的分组以及监测链路质量的分组。

        若使用口令鉴别协议PAP,则需要发起通信的一方发送身份标识符和口令。系统可允许用户重试若干次。如果需要有更好的安全性,则可使用更复杂的口令握手鉴别协议CHAP。


        网络层状态:

        在“网络层协议”状态,PPP链路两端的网络控制协议 NCP根据网络层的不同协议互相交换网络层特定的网络控制分组。PPP 协议两端的网络层可以运行不同的网络层协议,但仍然可使用同一个PPP协议进行通信。

        举例:通过NCP配置网络层协议。NCP是一组协议,用于配置特定的网络层协议,如IP、IPX等。例如,IPCP(IP Control Protocol)用于配置IP协议的参数,包括分配IP地址。


        连接释放:

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

可见,由NCP和LCP可见,PPP 协议已不是纯粹的数据链路层的协议,它还包含了物理层和网络层的内容 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JAVA每日作业day7.1-7.3小总结

ok了家人们前几天学了一些知识,接下来一起看看吧 一.API Java 的 API ( API: Application( 应用 ) Programming( 程序 ) Interface(接口 ) ) Java API 就是 JDK 中提供给我们使用的类,这些类将底层 的代码实现封装了起来&#x…

10 docker 安装 mysql详解

目录 一、安装mysql 1. 镜像获取 2. 简单版 2.1. 使用mysql镜像 2.2. 建库建表插入数据 2.3. 外部win 连接并插入中文数据测试 2.4. 简单版本问题 3. 创建容器-实战版 3.1. 新建容器实列并挂载卷 3.2. 新建my.cnf , 解决中文乱码 3.3. 重启容器验证 3.4. 总结 一、…

2024年精选推荐的16个向量数据库:提升你的AI应用性能

在人工智能时代,向量数据库已成为数据管理和AI模型不可或缺的一部分。向量数据库是一种专门设计用来存储和查询向量嵌入数据的数据库。这些向量嵌入是AI模型用于识别模式、关联和潜在结构的关键数据表示。随着AI和机器学习应用的普及,这些模型生成的嵌入…

聊一聊领域驱动和贫血

写在前面 前段时间跟领导讨论技术债概念时不可避免地提到了代码的质量,而影响代码质量的因素向来都不是单一的,诸如项目因素、管理因素、技术选型、人员素质等等,因为是技术债务,自然就从技术角度来分析,单纯从技术角…

UOS系统中JavaFx笔锋功能

关于笔锋功能,网上找了很久,包括Java平台客户端,Android端,相关代码资料比较少,找了很多经过测试效果都差强人意,自己也搓不出来,在UOS平台上JavaFX也获取不到压力值,只能用速度的变…

c++习题07-求小数的某一位

目录 一,问题 二,思路 三,代码 一,问题 二,思路 被除数a的类型设置为long long类型,a变量需要变大,需要更大的数据类型来存储除数b和指定的小数位置n为int类型,这两个变量的的…

计算机图形学入门23:蒙特卡洛路径追踪

1.前言 前面几篇文章介绍了Whitted-style光线追踪,还介绍了基于物理渲染的基础知识,包括辐射度量学、BRDF以及渲染方程,但并没有给出解渲染方程的方法,或者说如何通过该渲染方程计算出屏幕上每一个坐标的像素值。 Whitted-style光…

未来的钥匙在于过去:学历史的真正意义,震惊!历史竟然是偶然的?从历史中寻找未来的方向!

我们自幼接受的教育是,学历史是为了相信历史是必然的。中国人民必然战胜日寇的侵略,解放思想和改革开放必定会发生,和平和发展必定是世界的主题,中国经济必定是高速增长…… 然而,在真正的历史学家眼中,历史…

1分钟了解,预写日志WAL的核心思路...

上一篇《刷盘,还是不刷盘,是一个问题》中我们遇到了哪些问题? 1. 已提交事务未提交事务的ACID特性怎么保证? 画外音:上一篇中遇到的问题,主要是原子性与持久性。 2. 数据库崩溃,怎么实施故障恢复…

新声创新20年:无线技术给助听器插上“娱乐”的翅膀

听力损失并非现代人的专利,古代人也会有听力损失。助听器距今发展已经有二百多年了,从当初单纯的声音放大器到如今的全数字时代助听器,助听器发生了翻天覆地的变化,现代助听器除了助听功能,还具有看电视,听…

AD导入.step 3D封装

在网站查找想要的3D封装 https://www.3dcontentcentral.cn/ 下载 AD导入 在封装库下导入

融云上线 HarmonyOS NEXT 版 SDK,全面适配「纯血鸿蒙」生态

6 月 21 日,“2024 华为开发者大会”正式发布使用自研内核的原生鸿蒙系统 HarmonyOS NEXT,即 “纯血鸿蒙”。 同时,华为宣布开放“鸿蒙生态伙伴 SDK 市场”,甄选各类优质、安全的 SDK 加入聚合平台,助力各行业开发者轻…

数据结构初阶 堆的问题详解(三)

题目一 4.一棵完全二叉树的节点数位为531个,那么这棵树的高度为( ) A 11 B 10 C 8 D 12 我们有最大的节点如下 假设最大高度为10 那么它的最多节点应该是有1023 假设最大高度为9 那么它的最多节点应该是 511 所以说这一题选B 题目二 …

08 docker Registry搭建docker私仓

目录 本地镜像发布流程 1. docker pull registry 下载镜像 2. docker run 运行私有库registry 3. docker commit 构建镜像 4. docker tag 修改新镜像,使之符合私服规范tag 5. 修改配置文件使之支持http 6. curl验证私服库上有什么镜像 7. push推送 pull拉取 …

Jenkins教程-13-参数化任务构建

上一小节我们学习了发送html邮件测试报告的方法,本小节我们讲解一下Jenkins参数化任务构建的方法。 很多时候我们需要根据不同的条件去执行构建,如自动化测试中执行test、stg、prod环境的构建,Jenkins是支持参数化构建的。 以下是Jenkins官…

kaggle量化赛金牌方案(第七名解决方案)(下)

— 无特征工程的神经网络模型(得分 5.34X) 比赛进入最后阶段,现在是时候深入了解一些关于神经网络模型的见解了。由于 Kaggle 讨论区的需求,我在这里分享两个神经网络模型。第一个是 LSTM 模型,第二个是卷积网络&…

pmp顺利通关总结

目录 一、背景二、总结三、过程 一、背景 人活着总是想去做一些事情,通过这些事情来证明自己还活着。 而我证明自己还会活着并且活得很好的方式和途径,是通过这些东西去让自己有一个明确的边界节点;借此知识来验证自己的学习能力。 我坚定认…

汇凯金业:投资交易如何才能不亏损

投资交易中永不亏损是一个理想化的目标,现实中无法完全避免亏损。然而,通过科学的方法、合理的策略和严格的风险管理,投资者可以大幅减少亏损,并提高长期盈利的概率。以下是一些关键策略和方法,帮助投资者在交易中尽量…

Android线性布局的概念与属性

线性布局(LinearLayout)是Android中最简单的布局方式,线性布局方式会使得所有在其内部的控件或子布局按一条水平或垂直的线排列。如图所示,图a是纵向线性布局示意图,图b是横向线性布局示意图。 a)纵向线性布局示意图 …

2024年电子信息工程与电气国际学术会议 (EIEEE 2024)

2024年电子信息工程与电气国际学术会议 (EIEEE 2024) 2024 International Academic Conference on Electronic Information Engineering and Electrical Engineering 【重要信息】 大会地点:北京 大会官网:http://www.iceieee.co…