linux中pppoe技术分析,Linux中PPPOE技术分析

本文详细介绍了Linux中PPPOE技术,包括PPP协议的组成、链接过程、PPP包的封装格式,以及PPPOE协议的链接建立过程、包格式。此外,还探讨了内核空间和用户空间中PPP与PPPOE的实现流程和数据包流向,分析了两者在效率上的差异。
摘要由CSDN通过智能技术生成

一、PPP协议介绍

1.PPP协议的组成

PPP协议包括两部分组成:一部分是数据链路控制协议(LCP);另一部分是网络控制协议(NCP)。

2.PPP链接的过程分析

PPP链接的建立过程分为三个阶段:创建,认证和网络协商阶段。创建阶段主要是工作是对基本的通信方式进行选择,链路两端的设备通过LCP向对方发

送配置信息分组,一旦配置信息分组被发送且被接收。就完成交换,进入LCP开启状态。认证阶段主要工作是客户机将自己的身份发送给远程的接入服务器,该阶

段使用一种安全的验证方式避免第三方窃取数据或冒充远程客户机服务器的链接。最常用的验证协议是(PAP)和(CHAP)。网络协商阶段的主要工作是调用

创建阶段协商的网络控制协议模块解决PPP链路上高层协议问题。

3.PPP包的封装格式

PPP的包封装格式为

其中协议字段决定了信息字段里信息的意义,协议字段包括:

0x0021——信息字段是IP数据报

0xC021——信息字段是链路控制数据LCP

0x8021——信息字段是网络控制数据NCP

0xC023——信息字段是安全性认证PAP

0xC025——信息字段是LQR

0xC223——信息字段是安全性认证CHAP

注意:在PPP包被封装在PPPOE中的时候,PPP包部分不包括F,A,C,FCS,F字段,即只有协议和信息字段。

二、PPPOE协议介绍

PPPOE链接建立过程:发现(discovery )阶段和会话(session)阶段。会话阶段的主要工作是建立与PPPOE服务器的链接。此阶段主要是通过包PADI,PADO,PADR,PADS,PADT完成的。

PADI:DUT向外广播,由PPPOE服务器接收的包,主要是完成PPPOE服务器的发现功能。

PADO:PPPOE服务器接收到DUT发来的PADI包后,解析PADI包中带点service name是否是PPPOE服务器可提供,如果是就向DUT回一个带有本机AC name tag的包。

PADR:当DUT接收到PPPOE服务器发来的PADO包,解析PADO包携带的AC name是否与DUT设置的AC name相同,如相同向PPPOE服务器发送一个session ID的请求包。

PADS:当PPPOE服务器收到DUT的session ID的请求包PADR后,向DUT发送带有session ID信息的包PADS。

PADT:终止PPPOE链接包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值