ppp協議 詳細說明

2021-08-03 06:42:28 字數 4433 閱讀 9371

1. 兩台裝置使用ppp連線,直連線口屬於不同網段,是否可以ping通?

可以ping通。因為ppp在進行ipcp協商後會把學習到的直連路由加入到路由表中。

2. ppp 協議位於tcp/ip協議棧中哪一層?其主要功能是什麼?

ppp協議處於tcp/ip協議棧中的鏈路層(第二層),是一種提供在點到點鏈路上傳輸封裝網路層資料報的資料鏈路層協議;ppp的主要功能是用來在支援全雙工的同非同步鏈路上進行點到點之間的資料傳輸。

3. ppp 主要由哪幾類協議組成?各類協議的功能是什麼?

ppp定義了一整套的協議,其組成及功能如下:

(1) 

鏈路控制協議(lcp:link control protocol),主要用來建立、拆除和監控資料鏈路。

(2) 

網路層控制協議(ncp:network control protocol),主要用來協商在該資料鏈路上所傳輸的資料報的格式與型別。

(3) 

擴充套件協議族,主要用於提供對ppp功能的進一步支援。例如用於網路安全方面的驗證的pap和chap。

4. ppp 協議有哪些特點?

ppp協議的特點如下:

(1) 

ppp協議與其他鏈路層協議不同,ppp既支援同步鏈路又支援非同步鏈路,而如x25、fr 等資料鏈路層協議只對同步鏈路提供支援;

(2) 

ppp協議具有各種ncp協議,如ipcp、ipcpv6、ipxcp協議,它更好地支援了網路層協議;

(3) 

ppp協議具有驗證協議pap、chap,它更好了保證了網路的安全性;

(4) 

ppp協議更容易擴充。

5. lcp 協商哪些內容,過程如何?

ppp在建立鏈路之前要進行一系列的協商,ppp 首先進行lcp協商,協商內容包括mru(最大傳輸單元)、魔術字(magic number)、 驗證方式非同步字元對映等選項(詳見rfc1661);lcp協商成功後才進入establish(鏈路建立)階段;任何階段的協商失敗都將導致鏈路的拆除,mru用於協商ppp鏈路的最大包傳輸能力,該選項向對端指出本端能夠接收的最大報文長度,它以位元組為單位,指出information+padding的長度,不包括framing、protocol、fcs和任何為透明傳輸所填充的位元或位元組。該選項的預設值為1500位元組。該選項實際上指出本端的一種能力,但並不要求對端一定要最大化使用這種能力。

例如,本端在配置選項中宣告mru為2048 位元組,這並不是說要求對端傳送的任何報文都要達到2048位元組,若對端能滿足mru選項,則回config ack報文,若不滿足,則回config nak報文;魔術字主要用於檢測鏈路自環,ppp靠傳送echo request和echo reply報文來檢測自環和維護鏈路狀態;如連續發現有超過最大自環允許數目,echo request報文中魔術字與上次傳送魔術字相同,則判定網路發生自環現象。如鏈路發生自環,則就需採取相應措施對鏈路復位;另外,lcp傳送config request時也可以檢測自環,lcp發現自環後,在傳送一定數目的報文後也會復位鏈路,如果ppp傳送的echo request報文產生丟失,則在連續丟失最大允許丟失的個數之後,將鏈路復位,以免過多的無效資料傳輸。非同步字元對映用於同非同步轉換。

7. pap的詳細驗證過程是什麼樣的?

pap為兩次握手協議,詳細驗證過程如下:當兩端鏈路可相互傳輸資料時,被驗證方傳送本端的使用者名稱及口令到驗證方,驗證方根據本端的使用者表(或radius伺服器)檢視是否有此使用者,口令是否正確。如正確則會給對端傳送ack報文,通告對端已被允許進入下一階段協商;否則傳送nak報文,通告對端驗證失敗。一次認證失敗並不會直接將鏈路關閉,只有當驗證不過次數達到一定值時,才會關閉鏈路,來防止因誤傳、網路干擾等造成不必要的lcp重新協商過程。

8. chap的詳細驗證過程是什麼樣的?

chap為三次握手協議,其單向驗證過程分為兩種情況:驗證方配置了使用者名稱和驗證方沒有配置使用者名稱。

l  驗證方配置了使用者名稱的chap驗證過程如下:

(1) 

(2) 

被驗證方接到驗證方的驗證請求後,根據此報文中驗證方的使用者名稱在本端的使用者表查詢該使用者對應的密碼,如果在使用者表找到了與驗證方使用者名稱相同的使用者,便利用報文id、此使用者的金鑰(密碼)和md5演算法對該隨機報文進行加密,將生成的密文和被驗證方自己的使用者名稱發回驗證方(response);

(3) 

驗證方用自己儲存的被驗證方密碼和md5演算法對原隨機報文加密,比較二者的密文,根據比較結果返回不同的響應(acknowledge or not acknowledge)。

l  驗證方沒有配置使用者名稱的chap驗證過程如下:

(1) 

驗證方主動發起驗證請求,驗證方向被驗證方傳送一些隨機產生的報文(challenge);

(2) 

被驗證方接到驗證方的驗證請求後,利用報文id、配置的chap密碼和md5演算法對該隨機報文進行加密,將生成的密文和自己的使用者名稱發回驗證方(response);

(3) 

驗證方用自己儲存的被驗證方密碼和md5演算法對原隨機報文加密,比較二者的密文,根據比較結果返回不同的響應(acknowledge or not acknowledge)。

9. ppp lcp協商中的mru選項是如何取值的?

ppp lcp協商的mru(maximum-receive-unit 最大接收單元)是針對ppp報文而言,指傳送端ppp報文中資訊域的長度不能超過mru,否則接收端不負責處理,可能會將報文丟棄。

大多數廠家不提供mru的設定命令而是把mtu的配置值作為本端mru的值與對端協商mru。最終ppp鏈路的mtu的取值應該是:min(配置mtu,min(本端mru,對端mru))

因此,封裝ppp的介面上的mtu值被改變後,如想讓這個改變立即生效,就需觸發lcp重新協商。

這裡描述的是普通ppp的情形,mp、pppox等ppp應用的mtu的最終取值更加複雜一些。

mru選項是lcp協商成功的必要選項,這個選項最終必須協商成功,不能忽略,最終ppp雙方必須確認這個選項,不能否認或拒絕。

10. ppp lcp協商中的accm選項有什麼意義?

accm(async-control-character-map 非同步控制字元對映)選項是在非同步鏈路上用來通知對端哪些字元被本端用於控制,必須被轉義(對映)。

ppp幀中flag欄位的值是0x7e(實際上大多鏈路層協議幀中flag欄位都是這個值)。當這個值出現在幀內容中時需對它進行轉義,同步鏈路中,這個過程是通過位位元填充的技術完成的(即在第5個1與第6個1之間填充0)。非同步鏈路中,特殊字元0x7d被用做轉義字元,對一些字元進行轉義。由於非同步鏈路中,有些序列介面驅動程式或modem需要用一些字元作為控制字元使用,字元的範圍是0x00-0x1f(0-31)所以需要對這些字元進行轉義處理,大多數情況下並不是這個範圍內的所有字元都作為控制字元,因此ppp lcp提供這個選項用來告訴對端,本端將哪些字元作為控制字元處理,請對端將這些字元轉義後傳送。

accm選項用乙個32位整數的位的值來表示哪些字元用作控制字元,譬如0x000a0000,第17位與第19位為1,說明字元17(xon)與字元19(xoff)作為控制字元使用,需要進行轉義。

在非同步鏈路上,尤其是低頻寬、高時延的非同步線路(例如無線)上合理設定accm值可以有效避免在資料傳輸過程中引入額外時延。

非同步鏈路上的lcp協商,這個選項是必要選項,必須協商成功。

11. ppp lcp協商中的magic-number選項有什麼意義?

magic-number選項用來協商雙方的魔術字,兩端魔術字不能重複,魔術字可用來檢測鏈路的環迴情況。

這是乙個必要選項,必須被確認否則lcp不能up。

12. ppp lcp協商中的pfc選項有什麼意義?

pfc(protocol-field-compression 協議域壓縮)選項是用來協商ppp報文的協議域是否可以被壓縮,用高位位元組的最低位表示此報文是否協議域被壓縮,1表示是,0表示沒有。壓縮後協議域的兩個位元組會被壓縮成乙個位元組,如ip報文中的0021可被壓縮為21。實施者必須能夠接收這兩種情況(壓縮或沒有被壓縮)的報文。

13. ppp lcp協商中的acfc選項有什麼意義?

acfc(address-and-control-field-compression位址控制域壓縮)選項是用來協商ppp報文的位址、控制域是否可以被壓縮。壓縮後位址域和控制域會被省略。lcp報文不能進行位址控制域壓縮。

14. mp lcp協商中的mrru選項有什麼意義?

mrru(multilink maximum received reconstructed unit mp最大接收重構單元)選項可用來通知對端本端要實施mp,這個選項的值是指接收端重組後的mp報文的最大值。這個選項的確認與拒絕主要用來確定對端是否支援mp鏈路的使用。該選項被拒絕後,則該通道不能作為mp鏈路使用,而只能作為普通ppp鏈路使用。

15. mp鏈路上的mtu是如何計算的?

一般mp鏈路上的mtu的取值依據下面的公式:

minmru=min(本端mru,對端mru)

minmrru=min(本端mrru,對端mrru)

mtu=min(配置mtu,min(minmru,minmrru))

如果mp通道是pppoe之類的鏈路,mp mtu還要考慮底層的mtu,會更複雜一些。

ppp協議說明

1.兩台裝置使用ppp連線,直連線口屬於不同網段,是否可以ping通?可以ping通。因為ppp在進行ipcp協商後會把學習到的直連路由加入到路由表中。2.ppp 協議位於tcp ip協議棧中哪一層?其主要功能是什麼?ppp協議處於tcp ip協議棧中的鏈路層 第二層 是一種提供在點到點鏈路上傳輸封...

Struts config xml 詳細說明

頁面中表單對應的bean儲存表單資料,驗證 type hello.helloform formbean 對應的包名.類名 路徑的邏輯名,此項必須有 path action1.do 指向 或重定向的uri.此項是必需的,必須以 開頭.請求訪問action的路徑,必須以 開頭 type hello.he...

Struts config xml 詳細說明

頁面中表單對應的bean儲存表單資料,驗證 type hello.helloform formbean 對應的包名.類名 name forward1 路徑的邏輯名,此項必須有 path action1.do 指向 或重定向的uri.此項是必需的,必須以 開頭.name forward2 path a...