数据链路层(四)---PPP协议的工作状态

1 PPP链路的初始化

通过前面几章的学习,我们学了了PPP协议帧的格式以及组成,那么对于使用PPP协议的链路是怎么初始化的呢?

当用户拨号上网接入到ISP后,就建立起了一条个人用户到ISP的物理链路。这时,用户向ISP发送一系列的链路控制协议LCP分组(封装成多个PPP帧),以便建立起LCP连接。这些分组及相应选择了将要使用的一些PPP参数。接着还要进行网络层配置,网络控制协议NCP给新接入的用户个人电脑分配一个临时的IP地址,这样,用户就完成了与互联网的初始化连接。当用户通信完毕时,NCP释放网络层连接,收回原来分配出去的IP地址,LCP释放数据链路层连接,最后释放物理层的连接。

2 PPP链路的详细工作过程

(1)PPP链路的起始和终止状态永远时链路静止状态,这个时候用户与ISP的路由器不存在任何物理层上的连接;

(2)当用户通过调制解调器发出载波信号呼叫路由器时,路由器就能够检测到调制解调器的信号,双方开始建立物理连接。比如,你打开了百度搜索;

(3)双方完成物理层连接以后,PPP进入链路建立状态,其目的是为了建立数据链路层的LCP连接:用户侧会发送LCP的配置请求帧(封装成多个PPP协议帧,此时PPP协议帧中的协议字段为LCP对应的代码:0xC021),而信息字段包含特定的信息配置(包括:最大帧长、所使用的鉴别协议的规定、不使用PPP帧中的地址和控制字段等)。链路另一端在收到LCP配置请求帧后,可以响应以下几种协议帧的一种:

配置确认帧(Configure-ACK):所有选项都接受

配置否认帧(Configure-NCK):所有选项都理解但不接受

配置拒绝帧(Configure-Reject):选项有的无法识别或不能接受,需要协商。

(4)双方协商结束后,即建立起了LCP链路,紧接着进入"鉴别"状态。在此状态下,只允许传送LCP协议的分组、鉴别协议的分组以及检测链路质量的分组。鉴别状态下可以使用两种鉴别协议:PAP(口令鉴别协议)和CHAP(口令鉴别协议)。其中,CHAP更见安全、可靠。

PAP:认证过程比较简单,发起方发送用户名/密码至服务端做请求认真,服务器处理并做出回应,整个过程明文传输,安全性低。

CHAP:全程采用加密传输,需要做三次认证,过程比较复杂。具体过程如下:

  1. 在LCP协商完成之后,服务端(认证方)会发送一个challenage报文给用户端(被认证方);

  2. 用户端在收到challenage报文以后,根据challenage报文对用户名/密码进行md5加密,然后将加密后的数据发送给服务端;

3)服务端收到数据后,从本地数据库调取对应用户名密码,同样进行md5加密,与收到的用户名密码进行比对,如果一样,则表示鉴别成功,向用户端回复认可消息,否则失败。

(5)链路鉴别失败,则直接进入链路终止,如果链路鉴别成功,则进入"网络层协议"状态,开始准备NCP配置协商。PPP链路的两端网络控制协议NCP根据网络层的不同协议互相交换网络层特定的网络控制分组,保证在两端运行不同网络层协议的数据可以使用同一个PPP协议进行通信。

(6)当网络层配置完毕后,链路就进入可进行数据通信的"链路打开"状态。链路的两个PPP端点可以进行彼此向对方发送数据分组。两个PPP端点可以发送会送请求LCP分组和回送回答LCP分组,以来检车链路的状态。

(7)数据传输结束后,可以由链路的一端发出中止请求LCP分组请求链路中止连接,在收到对方发来的终止确认LCP分组后,转到"链路终止"状态。

(8)当链路终止,调制解调器的载波停止后,则回到"链路静止"状态。

相关推荐
原来是猿7 小时前
JSON 序列化与反序列化 —— 用 Jsoncpp 打造自己的网络协议
网络·网络协议·json
@insist1237 小时前
信息安全工程师-入侵阻断与网络流量清洗技术详解
网络·安全·软考·信息安全工程师·软件水平考试
!沧海@一粟!8 小时前
NAT映射回流解决内网通过公网映射访问内部服务器
运维·网络
key_3_feng8 小时前
eBPF网络性能监控通用方案:构建低开销、高精度的实时洞察体系
网络
Bat U8 小时前
JavaEE|网络初识
网络·智能路由器
砍材农夫8 小时前
物联网 MQTT订阅性能优势
网络·物联网
无名的小三轮8 小时前
VMware的三种网卡模式介绍
网络·智能路由器
yyuuuzz8 小时前
国际云服务商使用的常见问题分析
运维·服务器·网络·云计算·github·aws
minji...8 小时前
Linux 网络基础(五)守护进程化,前后台进程组,作业,会话,setsid(),daemon(),端口号频繁更换问题
linux·运维·服务器·网络·c++·tcp/ip
Tipriest_9 小时前
【TBB】多生产者、多消费者(MPMC) 队列concurrent_queue介绍
网络·数据库