0

0

如何分析数据链路协议HDLC及PPP

WBOY

WBOY

发布时间:2023-05-12 14:43:11

|

3392人浏览过

|

来源于亿速云

转载

一、常用的数据链路协议(hdlc、ppp)

   (一)分析协议的思路

         步骤一:了解协议的概貌,知道这个协议设计的目的、基本特征

步骤二:以协议数据单元(对于数据链路层而言是帧)的格式为主要线索来研究协议的      具体实现

步骤三:协议如何解决实际问题?

(二)HDLC协议(高级数据链路控制规程)(面向比特协议)

    HDLC协议是一个面向比特的协议,其主要解决了数据链路层链路管理、寻址、帧同步、差错控       制、流量控制,其具有了平衡系统的和非平衡系统两个特性。

   1、HDLC的组成:

       帧结构(语法)

       规程元素(语法)

       规则类型(语义)

       使用HDLC语法可以定义多种具有不同操作特点的链路层协议。

   2、HDLC的描述

       HDLC在描述时提出了三个层次的概念:

       (1)所有参与通信的节点分类(数据站):主站、次站、组合站。

在以前的以单处理机为中心的多终端联机系统的集中式控制,主站和次站时成对出现的,而对于现在的分布式结构(如分组交换网络)来说,所有的站点都是组合站。

(2)链路类型:平衡型,非平衡型。

  集中式控制属于非平衡型,而分布式控制则属于平衡型

(3)操作模式:正规响应模式、异步响应模式、异步平衡模式

  对于平衡型来说其只有异步平衡模式,即每个站点自主发出通信,是自治系统。而对于由主站和次站构成的非平衡型来说,有正规响应模式,即次站必须受到主站的控制,在没有得到主站许可的情况下,不能主动发起数据传输。而在异步响应模式下,次站可以主动发起数据传输。

3、HDLC协议数据单元的格式(帧格式)

如何分析数据链路协议HDLC及PPP

(1)标志字段:帧首字段和帧尾字段在内容上看都是由“01111110”组成,其用来划分帧的起始位置和结束位置

(2)地址字段:其有两个缺陷:一,由于当时是为以单处理机为中心的多终端联机系统设计的,所以只有一个地址(终端地址),不适用于现在的分布式计算机系统。二,地址只有8位,即最多只能表示256个节点。

(3)信息字段:协议数据单元的用户数据部分,长度可变,但是一般情况下是1500个字节。

(4)帧校验序列:使用CRC校验法。

 (5)信息帧:发送方在发送数据时使用了固定尺寸的滑动窗口协议(窗口大小固定为7)

4、HDLC帧的类型

   帧类型:(1)信息帧:替上层的实体传送数据使用的帧

       (2)监控帧:进行差错控制和流量控制

     (3)无序号帧:链路管理控制,负责协商双方如何通信、如何使用信道

   (三)协议工程设计

       1、协议说明(需求分析、功能设计):一般不用自然语言描述(冗余、多义性、结构性不           好)。而用有限状态机(FSM)、Petri网等形式描述

       2、协议验证(协议工作模式是否把网络环境所遇到的问题考虑全、是否能够正常运行)

       3、协议测试:一致性测试、互操作性测试、性能测试 

       4、有限状态机:其认为任何一个协议,就是要描述网络中的各种状态,而状态是有限的。

(1)有限状态机是一个四元组(S,M,I,T)

    S为状态的集合,M是标号的集合,I是状态的集合,T是变迁的集合

    其基本思想为:当出现一个变迁时,会由一个状态迁移到另外一个状态,而变迁产生的原因是来自用户的命令,信息的到达,内部的超时等事件

Genspark
Genspark

Genspark 是一款创新的 AI 搜索引擎,致力于提供比传统搜索引擎更高效、准确和无偏见的信息获取方式。

下载

(2)状态举例:信道有错的单工停等协议

     用三元组XYZ来表示状态:XYZ

          X:发送方正发送的帧序号,为0或1

          Y:接收方正在等待的帧序号,为0或1;

         Z:信道状态:为0(表示正在传送序号为0的帧),

1(表示正在传送序号为1的帧),

A(信道正在传送应答帧)

或-(空)(表示信道没有传送数据或者传送的数据出错)

其初始状态为000

如何分析数据链路协议HDLC及PPP

(3)优点:简单明了,比较精确

     缺点:对于复杂协议来说,事件数和状态数会增加,处理困难。

5、perti网

   (1)元素:

       位置:描述系统状态,用一个圆圈表示

       变迁:描述修改系统状态的事件,用一个长方形或线段表示

       弧:描述状态与事件之间的关系,包括输入弧和输出弧,用用有向弧表示。

       黑点:标记,是当前的状态

如何分析数据链路协议HDLC及PPP

如图为有错单工停等协议的preti描述,其最大特点在于可以单独描述三种不同的状态

(四)Internet的数据链路层

    1、点到点通信的两种主要情形(intenet工作的主要场合):

       (1)路由器到路由器:

         (2)通过调制解调器拨号上网,或者连入接入服务器

      接入INTERNET的方法:拨号接入(用户要想连入internet,有一个路由器或主机相连,必须申请连入才能接入)、专线接入(线路实时开放,不需要申请就可以完成数据传输)

   2、SLIP(Serial LINE IP 串行线路IP协议)

      本协议1984年提出,发送原始IP数据包,用一个标记字节(0Xc0)来定界,采用字符填充技术。其存在的问题主要有不提供差错校验、只能支持IP协议且IP地址不能动态分配,不支持身份验证,多版本不兼容等问题,现在已经不再使用。

  3、PPP(point-to-point Protocol)协议(RFC 1661 16621663)

      (1)特点:提供差错校验、支持多种协议、允许动态IP地址、支持身份认证

    (2)与SLIP不同的是,其发送的不是原始IP数据包,而是以帧位单位传输。

     (3)PPP协议为了增加协议的适应性和灵活性,协议被分为了两个部分,一部分为链路控制协议LCP(LinkControl Protocol),可以建立、测试多种物理层服务,使得本数据链路层可以支持更加丰富的类型

       (4)PPPoE(Point to Point Protocol over Ethernet) 是基于以太网的点对点通讯协议

      (5)帧格式:PPP协议的帧格式与HDLC协议的帧格式基本相同,但是有以下两点不同:第一,HDLC协议面向比特,而PPP协议面向的是字符,其要求所有通信的节点支持ASCII字符集;第二,PPP协议是HDLC的简化版本:

(1)帧首与帧尾的定界符与HDLC协议相同(00111111),

(2)地址字段保留了8位(为8个1),其不需要地址(应用环境是一条链路对应的两段,不需要地址)

(3)控制字段(无序号帧)

(4)协议字段:处理完成之后指向哪个应用进程进行处理(IP/IPX。。)

(5)净负荷域:缺省为1500字节(6)校验和域:2或4个字节

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

28

2026.02.28

Golang 工程化架构设计:可维护与可演进系统构建
Golang 工程化架构设计:可维护与可演进系统构建

Go语言工程化架构设计专注于构建高可维护性、可演进的企业级系统。本专题深入探讨Go项目的目录结构设计、模块划分、依赖管理等核心架构原则,涵盖微服务架构、领域驱动设计(DDD)在Go中的实践应用。通过实战案例解析接口抽象、错误处理、配置管理、日志监控等关键工程化技术,帮助开发者掌握构建稳定、可扩展Go应用的最佳实践方法。

23

2026.02.28

Golang 性能分析与运行时机制:构建高性能程序
Golang 性能分析与运行时机制:构建高性能程序

Go语言以其高效的并发模型和优异的性能表现广泛应用于高并发、高性能场景。其运行时机制包括 Goroutine 调度、内存管理、垃圾回收等方面,深入理解这些机制有助于编写更高效稳定的程序。本专题将系统讲解 Golang 的性能分析工具使用、常见性能瓶颈定位及优化策略,并结合实际案例剖析 Go 程序的运行时行为,帮助开发者掌握构建高性能应用的关键技能。

27

2026.02.28

Golang 并发编程模型与工程实践:从语言特性到系统性能
Golang 并发编程模型与工程实践:从语言特性到系统性能

本专题系统讲解 Golang 并发编程模型,从语言级特性出发,深入理解 goroutine、channel 与调度机制。结合工程实践,分析并发设计模式、性能瓶颈与资源控制策略,帮助将并发能力有效转化为稳定、可扩展的系统性能优势。

16

2026.02.27

Golang 高级特性与最佳实践:提升代码艺术
Golang 高级特性与最佳实践:提升代码艺术

本专题深入剖析 Golang 的高级特性与工程级最佳实践,涵盖并发模型、内存管理、接口设计与错误处理策略。通过真实场景与代码对比,引导从“可运行”走向“高质量”,帮助构建高性能、可扩展、易维护的优雅 Go 代码体系。

18

2026.02.27

Golang 测试与调试专题:确保代码可靠性
Golang 测试与调试专题:确保代码可靠性

本专题聚焦 Golang 的测试与调试体系,系统讲解单元测试、表驱动测试、基准测试与覆盖率分析方法,并深入剖析调试工具与常见问题定位思路。通过实践示例,引导建立可验证、可回归的工程习惯,从而持续提升代码可靠性与可维护性。

2

2026.02.27

漫蛙app官网链接入口
漫蛙app官网链接入口

漫蛙App官网提供多条稳定入口,包括 https://manwa.me、https

164

2026.02.27

deepseek在线提问
deepseek在线提问

本合集汇总了DeepSeek在线提问技巧与免登录使用入口,助你快速上手AI对话、写作、分析等功能。阅读专题下面的文章了解更多详细内容。

8

2026.02.27

AO3官网直接进入
AO3官网直接进入

AO3官网最新入口合集,汇总2026年可用官方及镜像链接,助你快速稳定访问Archive of Our Own平台。阅读专题下面的文章了解更多详细内容。

309

2026.02.27

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号