嵌入式單片機PPP協(xié)議的應用
下面是由服務(wù)器發(fā)送的一段LCP建立連接的字符串:
0000:7E FF 03 C0 21 01 71 00 2B 01 04 06 40 05 06 3A 5D 8B B4 02 06 00
0016:00 00 00 11 04 06 40 17 04 00 64 00 02 03 04 C0 23 13 09 03 08 00
002C:03 0A 2C 2C 95 7F 7E
對它進(jìn)行分析如表3。
4.2 PAP處理階段
首先,系統發(fā)送PAP數據包給服務(wù)器端,然后服務(wù)器端通過(guò)用戶(hù)ID和密碼驗證。
PAP密碼驗證協(xié)議在RFC1334中有詳細定義,主要是為撥號網(wǎng)絡(luò )中提供密碼保護。這個(gè)選項是可選的。在本應用軟件中,強制單片機和PC協(xié)商的選項中,PC要求密碼驗證,單片機端不要求。所以如果PC機作為服務(wù)器,單片機需要發(fā)送用戶(hù)名和密碼;如果單片機作服務(wù)器,則沒(méi)有密碼驗證的要求。
PAP的格式如圖4所示。
下面是單片機發(fā)送PAP的數據包:
7E FF 03 C0 23 01 06 00 0C 03 7A 77 6D 03 7A 77 6D…
解析如表4所示。
單片機向PC機發(fā)送PAP數據包是在PC機發(fā)送對單片機LCP選項的確認之后、PC機向單片機發(fā)送IPCP請求之前。
4.3 IPCP處理階段
IPCP是用來(lái)設置PPP連接中的網(wǎng)絡(luò )環(huán)境,包括IP地址、IP壓縮協(xié)議、DNS服務(wù)器地址等都是通過(guò)IPCP來(lái)協(xié)商的。首先服務(wù)器端發(fā)送請求進(jìn)行IPCP協(xié)商,然后系統返回一個(gè)拒絕包給除IP地址外的所有操作。由于先前的發(fā)送被拒絕,服務(wù)器端發(fā)送一個(gè)回復,只包含IP地址。此時(shí),系統相當于服務(wù)器端的IP地址認證,然后由請求信息和IP地址來(lái)完成三路握手協(xié)議。接著(zhù)服務(wù)器端返回一個(gè)包含預先指派IP地址的拒絕包。此時(shí)連接建立并擁有一個(gè)指定的IP地址。IPCP幀的格式與LCP也是類(lèi)似的:一字節的代碼,然后是標志,長(cháng)度,選項。當IP協(xié)議的選項配置完,就可以開(kāi)始通訊了。IPCP的詳細描述在RFC1332中。
連接建立后,PPP將在原有協(xié)議的基礎上調用網(wǎng)絡(luò )協(xié)議UDP(User Datagram Protocol)和ICMP(Internet Control Messages Protocol)等。有關(guān)用戶(hù)數據包協(xié)議UDP的詳細資料可參看RFC882、RFC883文檔;Internet信息控制協(xié)議ICMP的詳細資料可參看文檔RFC792。 linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論