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

news2024/11/19 5:39:29

点对点协议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.coloradmin.cn/o/1890629.html

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

相关文章

配音软件有哪些?分享五款超级好用的配音软件

随着嫦娥六号的壮丽回归,举国上下都沉浸在这份自豪与激动之中。 在这样一个历史性的时刻,我们何不用声音记录下这份情感,让这份记忆以声音的形式流传? 无论是制作视频分享这份喜悦,还是创作音频讲述探月故事&#xff…

AI 会淘汰程序员吗?

前言 前些日子看过一篇文章,说国外一位拥有 19 年编码经验、会 100% 手写代码的程序员被企业解雇了,因为他的竞争对手,一位仅有 4 年经验、却善于使用 Copilot、GPT-4 的后辈,生产力比他更高,成本比他更低&#xff0c…

【分布式系统】监控平台Zabbix对接grafana

以前两篇博客为基础 【分布式系统】监控平台Zabbix介绍与部署(命令截图版)-CSDN博客 【分布式系统】监控平台Zabbix自定义模版配置-CSDN博客 一.安装grafana并启动 添加一台服务器192.168.80.104 初始化操作 systemctl disable --now firewalld set…

<电力行业> - 《第16课:电力领域(二)》

3 制造 3.1 电气制造厂 发电厂发电需要发电机,变电站升压降压需要变压器,输电线路输送电能需要电缆,这些主要电气设备的制造商,就是电力设备厂家。 电气设备制造是电力领域市场最基础也是最开放的领域,电力行业内最…

BugKu-WEB-sodirty

目录 前言 正文 信息收集 代码审计 验证 结尾 前言 七月始,暑假副本也正式开启 正文 信息收集 看着貌似没啥意义 看样子是有备份文件 下载下来 快速审计一下 代码审计 来吧 app.js没啥东西,主要是功能是实现error 我们找一找有没有index.js 找到了 \www\routes\in…

ESP32-VScode环境设置

目录 前言 一、安装VSCode 二、安装ESP32环境 1.安装ESP-IDF 2.ESP-IDF设置 3:开始配置环境 4.打开example进行验证 5.烧录 6.调整波特率 总结 前言 环境:Visual Studio Code 芯片:ESP32 说实话,这是我装的时间最长的一个环境&…

【数据分享】《中国金融年鉴》1986-2020年PDF版

而今天要免费分享的数据就是1986-2020年间出版的《中国金融年鉴》并以多格式提供免费下载。(无需分享朋友圈即可获取) 数据介绍 《中国金融年鉴》自1986年起,逐年记录着中国金融领域的发展历程、政策变化和市场动态。这部年鉴不仅是金融专业…

分析数据不要太老实,有BI方案就用起来——奥威BI软件

在当今数据驱动的时代,企业对于数据分析的需求日益迫切。然而,面对海量的数据和复杂的分析需求,许多企业仍停留在传统的手工分析模式,这不仅效率低下,还容易出错。幸运的是,像奥威BI这样的数据分析软件提供…

【深度学习】【Lora训练3】StabelDiffusion,Lora训练过程,秋叶包,Linux,SDXL Lora训练

为了便于使用,构建一个docker镜像来使用秋叶包。2024年6月26日。 docker run -it --gpus all -v /ssd/xiedong:/datax --net host kevinchina/deeplearning:pytorch2.3.0-cuda12.1-cudnn8-devel-xformers bashgit clone --recurse-submodules https://github.com/A…

SXSSFWorkbook导出百万级数据性能和行数问题解决

先说我的背景:我的情况是从iotdb中查询数据,然后解析成需要的格式 通过SXSSFWorkbook导出到excel,实验数据频次n*5000/s,n表示我本次实验选择的通道数量,可想而知我几分钟的实验就会有几百万的数据,并且要对数据进行解析然后画表导出。 再说遇到的问题: 1.大数据量势必出…

聚焦西安应博会|2024西安城市安全应急产业展9月精彩呈现

2024西安城市安全应急产业博览会 时间:2024年9月12日-14日 地点:西安国际会展中心 运营:西安西部文化产业博览会有限公司 【展会简介】 为推动安全应急装备向智能化、成套化、专业化方向发展,迎接新质生产力在应急产业新技术…

TapData 医疗美容行业数字化白皮书上线

随着颜值经济的发展,人们追求“美”的热情也不断高涨,而作为近年来被资本频频下注的赛道之一,医疗美容逐渐走进大众视野。 一方面,社会对外貌的重视程度不断提升,越来越多的人愿意通过医疗美容来提升自身形象&#xf…

Linux系统之玩转SafeLine防火墙应用

Linux系统之玩转SafeLine防火墙应用 一、SafeLine介绍1.1SafeLine简介1.2 SafeLine功能1.3 SafeLine 的工作原理二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本四、部署SafeLine4.1 安…

【密码学】面向小白的古典密码基础入门笔记

目录 Mindmap 前言 破译方法 三类古典密码 替换密码 分类 单表替换密码 凯撒密码 简单替换密码 仿射密码 普莱费尔密码 培根密码 猪圈密码 摩斯密码 多表替换密码 维吉尼亚密码 移位密码 滚筒密码 栅栏密码 Mindmap 前言 1.所有古典密码都已不安全 2.密…

前端Web开发HTML5+CSS3+移动web视频教程 Day4 CSS 第2天

P44 - P 四个知识点: 复合选择器 CSS特性 背景属性 显示模式 复合选择器 复合选择器仍然是选择器,只要是选择器,作用就是找标签。复合选择器就是把基础选择器进行组合使用。组合了之后就可以在大量的标签里面更快更精准地找标签了。找…

分布式锁——基于Redis分布式锁

单机锁 服务器只有一个,JVM只有一个。 用synchronized加锁,对lock对象加锁,只有线程1结束,线程2,3才会开始。 再用uid避免一个线程多次进来。 分布式锁 真正上线时: 【注:这些服务器连接的是一个Redis集…

构建安全稳定的应用:Spring Security 实用指南

前言 在现代 Web 应用程序中,安全性是至关重要的一个方面。Spring Security 作为一个功能强大且广泛使用的安全框架,为 Java 应用程序提供了全面的安全解决方案。本文将深入介绍 Spring Security 的基本概念、核心功能以及如何在应用程序中使用它来实现…

PyTorch计算机视觉实战:目标检测、图像处理与深度学习

本书基于真实数据集,全面系统地阐述现代计算机视觉实用技术、方法和实践,涵盖50多个计算机视觉问题。全书分为四部分:一部分介绍神经网络和PyTorch的基础知识,以及如何使用PyTorch构建并训练神经网络,包括输入数据缩放…

Study--Oracle-06-Oracler网络管理

一、ORACLE的监听管理 1、ORACLE网络监听配置文件 cd /u01/app/oracle/product/12.2.0/db_1/network/admin 2、在Oracle数据库中,监听器(Listener)是一个独立的进程,它监听数据库服务器上的特定端口上的网络连接请求&#xff0c…

Laravel介绍与学习入门

Laravel 是一款优雅且功能强大的 PHP Web 开发框架,它被广泛认为是 PHP 领域内构建现代 Web 应用程序的最佳选择之一。Laravel 提供了一套简洁、富有表现力的语法,使得开发者能够高效地编写清晰、可维护的代码。以下是 Laravel 的一些关键特点和入门概念…