PPP(點到點協(xié)議)協(xié)議:是為在同等單元之間傳輸數(shù)據(jù)包這樣的簡單鏈路設(shè)計的鏈路層協(xié)議。這種鏈路提供全雙工操作,并按照順序傳遞數(shù)據(jù)包。設(shè)計目的主要是用來通過撥號或?qū)>€方式建立點對點連接發(fā)送數(shù)據(jù),使其成為各種主機、網(wǎng)橋和路由器之間簡單連接的一種共通的解決方案。
它改進了之前的一個點對點協(xié)議–SLIP協(xié)議–只能同時運行一個網(wǎng)絡(luò)協(xié)議、無容錯控制、無授權(quán)等許多缺陷,PPP是現(xiàn)在最流行的點對點鏈路控制協(xié)議。這種連接提供了同時的雙向的全雙工操作,并且假定數(shù)據(jù)包是按順序投遞的。PPP連接提供了一種廣泛的解決辦法,方便地將多種多樣不同的值作為最大接收單元的值。
PPP的特點:
1) 明確地劃分出一幀的尾部和下一幀的頭部的成幀方式,這種幀格式也處理錯誤檢測工作
2) PPP幀不僅能通過撥號電話線發(fā)送出去,而且還能通過SONET或真正面向位的HDLC線路(即路由器與路由器相連)發(fā)送出去。
PPP協(xié)議中提供了一整套方案來解決鏈路建立、維護、拆除、上層協(xié)議協(xié)商、認證等問題。具體包含這樣幾個部分:鏈路控制協(xié)議LCP(Link Control Protocol);網(wǎng)絡(luò)控制協(xié)議NCP(Network Control Protocol);認證協(xié)議,最常用的包括口令驗證協(xié)議PAP(Password Authentication Protocol)和挑戰(zhàn)握手驗證協(xié)議CHAP(Challenge-Handshake Authentication Protocol)。
LCP負責(zé)創(chuàng)建,維護或終止一次物理連接。NCP,負責(zé)解決物理連接上運行什么網(wǎng)絡(luò)協(xié)議,以及解決上層網(wǎng)絡(luò)協(xié)議發(fā)生的問題。PPP擁有一個將IP數(shù)據(jù)報封到串行鏈路的能力,既支持異步鏈路,也支持面向比特的同步鏈路。
PPP幀格式和HDLC幀格式相似,二者主要區(qū)別在于:PPP是面向字符的,而HDLC是面向位的。PPP幀中地址字段和控制字段都是固定不變的。由于PPP協(xié)議不面向比特,因而所有的PPP幀長度都是整數(shù)個字節(jié)。與HDLC不同的是多了2個字節(jié)的協(xié)議字段。協(xié)議字段不同,后面的信息字段類型就不同。
功能:
· PPP具有動態(tài)分配IP地址的能力,允許在連接時刻協(xié)商IP地址;
· PPP支持多種網(wǎng)絡(luò)協(xié)議,比如TCP/IP、NetBEUI、NWLINK等;
· PPP具有錯誤檢測能力,但不具備糾錯能力,所以ppp是不可靠傳輸協(xié)議;
· ppp支持數(shù)據(jù)壓縮
· PPP具有身份驗證功能。
· PPP可以用于多種類型的物理介質(zhì)上,包括串口線、電話線、移動電話和光纖(例如SDH),PPP也用于Internet接入。
鏈路建立分為三個階段:
1、 創(chuàng)建
2、 認證
3、 協(xié)商
· 創(chuàng)建PPP鏈路:
使用LCP報文來協(xié)商連接,該階段主要是發(fā)送一些配置報文來配置數(shù)據(jù)鏈路,這些配置的參數(shù)不包括網(wǎng)絡(luò)層協(xié)議所需的參數(shù)。協(xié)商中雙方獲得當(dāng)前點對點連接的狀態(tài)配置等。
· 用戶驗證:
在這個階段,客戶端會將自己的身份發(fā)送給遠端的接入服務(wù)器。該階段使用一種安全驗證方式避免第三方竊取數(shù)據(jù)或冒充遠程客戶接管與客戶端的連接。在認證完成之前,禁止從認證階段前進到網(wǎng)絡(luò)層協(xié)議階段。最常用的認證協(xié)議有口令驗證協(xié)議(PAP)和挑戰(zhàn)握手驗證協(xié)議(CHAP)。
· 協(xié)商階段:
認證階段完成之后,PPP將調(diào)用在鏈路創(chuàng)建階段選定的各種網(wǎng)絡(luò)控制協(xié)議。選定的NCP解決PPP鏈路之上的高層協(xié)議問題,這樣,一條完整的PPP鏈路就建立起來了。
PPP認證方式:
一種是PAP,一種是CHAP。相對來說PAP的認證方式安全性沒有CHAP高。PAP在傳輸password是明文的,而CHAP在傳輸過程中不傳輸密碼,取代密碼的是hash(哈希值)。PAP認證是通過兩次握手實現(xiàn)的,而CHAP則是通過3次握手實現(xiàn)的。PAP認證是被叫提出連接請求,主叫響應(yīng)。而CHAP則是主叫發(fā)出請求,被叫回復(fù)一個數(shù)據(jù)包,這個包里面有主叫發(fā)送的隨機的哈希值,主叫在數(shù)據(jù)庫中確認無誤后發(fā)送一個連接成功的數(shù)據(jù)包連接。
PPP協(xié)議是目前廣域網(wǎng)上應(yīng)用最廣泛的協(xié)議之一,它的優(yōu)點在于簡單、具備用戶驗證能力、可以解決IP分配等。典型的應(yīng)用是在ADSL(非對稱數(shù)據(jù)用戶環(huán)線,Asymmetrical Digital Subscriber Loop)接入方式當(dāng)中,PPP與其他的協(xié)議共同派生出了符合寬帶接入要求的新的協(xié)議,如PPPoE(PPP over Ethernet),PPPoA(PPP over ATM)。