【链路层】点对点协议 PPP

目录

1、PPP协议的特点

2、PPP协议的组成和帧格式

3、PPP协议的工作状态


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

1、PPP协议的特点

        我们知道,互联网用户通常都要连接到某个 ISP 才能接入到互联网。PPP 协议就是用户计算机和 ISP 进行通信时所使用的数据链路层协议。//ISP是互联网服务提供商(Internet Service Provider)的缩写

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

        封装成帧:规定作为帧定界符的特殊字符,以便使接收端从收到的比特流中能准确地找出顿的开始和结束位置。

        透明性:如果数据中碰巧出现了和帧定界符一样的比特组合时,必须采取有效的措施来解决这个问题。

        支持多种网络层协议:能够在同一条物理链路上同时支持多种网络层协议(如 IP 和IPX等)的运行。

        支持多种类型链路:例如,串行的或并行的同步的或异步的,低速的或高速的,电的或光的,交换的或非交换的点对点链路。

        差错检测:能够对接收端收到的帧进行检测,并立即丢弃有差错的帧,避免无用帧浪费网络资源。

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

        最大传送单元限制:对每一种类型的点对点链路设置最大传送单元 MTU 的标准默认值。

        支持网络层地址协商:支持通信的两个网络层的实体能够通过协商知道或能够配置彼此的网络层地址。

        支持数据压缩协商:协议需要支持协商使用数据压缩算法,但并不要求将数据压缩算法进行标准化。

        在 TCP/IP 协议族中,可靠传输由运输层的 TCP 协议负责,因此数据链路层的 PPP 协议不需要进行纠错,不需要设置序号,也不需要进行流量控制。PPP 协议不支持多点线路,而只支持点对点的链路通信。此外,PPP 协议只支持全双工链路。

2、PPP协议的组成和帧格式

        PPP 协议由三个组成部分:

  • 一个将 IP 数据报封装到串行链路的方法。//数据报封装
  • 一个用来建立、配置和测试数据链路连接的链路控制协议 LCP (Link Control Protocol)。//连接控制
  • 一套网络控制协议 NCP(Network Control Protocol),其中的每一个协议支持不同的网络层协议,如 IP、OSI 的网络层、DECnet 和 AppleTalk 等。//网络控制协议

        PPP协议的帧格式:

        PPP 协议的帧格式如下图所示,首部和尾部分别为四个字段和两个字段:

        首部的第一个字段和尾部的第二个字段都是标志字段 F (Flag),规定为 0X7E(符号 "0X表示它后面的字符是用十六进制表示的。十六进制的 7E 的二进制表示是 01111110)。标志字段表示一个帧的开始或结束。因此标志字段就是 PPP 的定界符。连续两帧之间只需要用一个标志字段。如果出现连续两个标志字段,就表示这是一个空帧,应当丢弃。

        首部中的地址字段 A 规定为 OXFF(即 11111111),控制字段 C 规定为 OX03(即00000011)。最初曾考虑以后再对这两个字段的值进行其他定义,但至今也没有给出。可见这两个字段实际上并没有携带 PPP 的信息。//暂时无意义,不携带信息

        PPP 首部的第四个字段是 2 字节的协议字段。当协议字段为 OX0021 时,PPP 的信息字段就是 IP 数据报。若为 OXC021 则信息字段是 PPP 链路控制协议 LCP 的数据,而 OX8021 表示这是网络层的控制数据。

        信息字段的长度是可变的,不超过1500 字节。

        尾部中的第一个字段(2字节)是使用 CRC 的检验序列 FCS

3、PPP协议的工作状态

        思考一个问题:PPP 链路一开始是怎样被初始化的?

        当用户拨号接入 ISP 后,就建立了一条从用户个人电脑到 ISP 的物理连接

        这时,用户个人电脑向 ISP 发送一系列的链路控制协议 LCP 分组(封装成多个 PPP),以便建立 LCP 连接。这些分组及其响应选择了将要使用的一些 PPP 参数。接着还要进行网络层配置,网络控制协议 NCP 给新接入的用户个人电脑分配一个临时的 IP 地址。这样,用户个人电脑就成为互联网上的一个有 IP 地址的主机了。//物理连接+LCP连接+IP分配

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

        上述过程可用下图所示的状态图来描述。

        图右方的绿色方框给出了对 PPP 协议的几个状态的说明。从设备之间无链路开始到先建立物理链路,再建立链路控制协议 LCP 链路。经过鉴别后再建立网络控制协议 NCP 链路,然后才能交换数据。

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

        至此,全文结束。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端技术演进史

大家好,我是宝哥 在互联网的快速发展中,前端技术扮演着至关重要的角色。它不仅是用户与网站交互的窗口,更是网站性能和用户体验的决定因素。本文将从早期的前端技术发展到现代前端框架的诞生,再到构建工具的演变,最后…

Linux下使用Docker部署MinIO实现远程上传

📑前言 本文主要是Linux下通过Docker部署MinIO存储服务实现远程上传的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是青衿🥇 ☁️博客首页:CSDN主页放风讲故事 &#…

[java数据结构] ArrayList和LinkedList介绍与使用

目录 (一) 线性表 (二) ArrayList 1. ArrayList的介绍 2. ArrayList的常见方法和使用 3. ArrayList的遍历 4. ArrayList的模拟实现 5. ArrayList的优缺点 (三) LinkedList 1. LinkedList的介绍 2. LinkedList的常见方法和使用 3. LinkedList的遍历 4. LinkedList的…

基于springboot+vue的在线视频教育平台系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

【Linux】配置dns主从服务器,能够实现正常的正反向解析

​​​​​​1、首先,在主服务器上配置DNS解析器。打开配置文件/etc/named.conf,添加以下内容: zone"example.com" IN {type master;file "example.com.zone";allow-transfer { slave_ip_address: }; };zone"xx.16…

vba设置excel单元格背景色

vba设置excel单元格背景色位蓝色 Sheet1.Cells(hang, 2).Interior.Color RGB(0, 0, 255) 参考链接 【VBA】给单元格设置背景色_vba 将一行底色置绿色-CSDN博客https://blog.csdn.net/s_h_m114_2/article/details/105787093 参考2 知乎 VBA--单元格的背景色设置 特此…

小程序系列--8.页面事件

一、下拉刷新事件 1. 什么是下拉刷新? 下拉刷新是移动端的专有名词,指的是通过手指在屏幕上的下拉滑动操作,从而重新加载页面数据的行为。 2. 启用下拉刷新 3. 配置下拉刷新窗口的样式 4. 监听页面的下拉刷新事件 在页面的 .js 文件中&am…

【机组】时序与启停实验的解密与实战

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《机组 | 模块单元实验》⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 ​ 目录 🌺一、 实验目…

从QObject类及非QObject类实现多继承,需把QObject放在继承链最前面

在开发中,有时需要实现多继承,如下定义了一个抽象类作为接口: // 接收CAN数据接口类#ifndef _RECVCANDATA_INTERFACE_H #define _RECVCANDATA_INTERFACE_H#include"cansocketlinux.h" class CRecvCanDataInterface {public: // vi…

邮政快递查询,邮政快递单号查询,筛选出指定派件员的单号

面对堆积如山的快递单号,手动筛选、整理既费时又容易出错。现在有了【快递批量查询高手】,这些问题都会迎刃而解。这款软件具备强大的筛选功能,可以根据更新量、派件员、发货时间等条件进行筛选,快速找到目标单号,提高…

Linux快速部署文件服务器

参考文档: Linux命令之nohup详解 - 掘金 【Linux】ps -ef|grep详解-CSDN博客 有个简单想法,我的一些文件放在机器某个目录下面,可以简单提供团队内部人员浏览和下载功能,节约时间,用最简单方法实现。 注:…

每周一算法:数独游戏

题目链接 数独游戏 题目描述 数独是根据 9 9 9 \times 9 99 盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含 1 − 9 1 - 9 1−9 ,不重复。每一道合格的数独谜题都有且仅有唯一答案&#x…