最开始,电话线入户,用户买来电脑想上网,最简便的方法想办法利用电话线来实现。
最后想了个法子,用电脑的UART的口连到电话线上;
网络提供商一段也用UART为用户提供网络服务;
那么问题来了,UART的波特率、奇偶校验位怎么定呢?
最后决定先协商一下,就称之为链路控制协议(LCP)
上述阶段还干了一个活就是服务提供商(ISP)为用户分配了一个独有的ID(session id), 以后报文中带着这个ID,就好像用户和服务提供商进行点对点对话,所以叫做点对点协议。
至于协商好以后后续传送IP报文或是啥的都无所谓。
PPP协议报文有一个特点就是一7E开头,也以7E结尾;他协商UART的波特率就像以太网协商速率和双工模式,可以看出它是链路层协议;
后来以太网普及,网线入户了,用网线上网可以百兆/千兆了。
用户不想用UART,改用网线可以,但是ISP不想改成网线怎么办?
就要在以太网上跑PPP,也就是报文不能以7E开头了,必须以MAC地址开头了
应运而生了PPPOE,以后报文中既要有MAC来支持以太网,又要有SESSION id让服务提供商能识别用户
所以服务提供商记录每个session ID的用户MAC是多少,每次发报文时用用户的MAC地址开头,
用户发的报文里必须携带SESSION id以便让服务提供商知道自己是谁。
再后来,ISP的网络也都改成了以太网,就不需要PPPOE了。