基于PPP協(xié)議單片機(jī)拔號上網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)
(2)PAP包的配置
由于LCP包中選項(xiàng)3的使用情況,PAP包是必需的。簡單起見,程序中只交換了一個(gè)PAP包,但已完成了用戶的身份鑒定,如圖6所示。
(3)IPCP包的配置
IPCP選項(xiàng)是關(guān)于IP地址和IP壓縮的,測試選擇了選項(xiàng)3(IP-address)。本程序通過發(fā)出一個(gè)無效的地址請求(0.0.0.0),等待服務(wù)器回答一個(gè)NAK(選項(xiàng)為3)從這個(gè)NAK包中得到自己的正確地址。IPCP包的配置如圖7所示。
(4)CCP包的處理
有些服務(wù)器試圖協(xié)商壓縮,但由于我們關(guān)心的是程序的大小(越小越好)而不是數(shù)據(jù)傳送的速度,所以CCP請求被拒絕。
(5)IP包的處理
在協(xié)商好PPP協(xié)議的各選項(xiàng)后,即可進(jìn)行數(shù)據(jù)傳輸了。同樣,為了簡單起見,采用了UDP協(xié)議而不是TCP協(xié)議。數(shù)據(jù)的正確性由應(yīng)用程序控制。
(6)驗(yàn)證
在(202.119.116.248)端,安裝了Netxray3.0版網(wǎng)絡(luò)嗅探器。利用該軟件可以很方便地查看進(jìn)行該機(jī)器的數(shù)據(jù)包的功能,我們驗(yàn)證出源端發(fā)送數(shù)據(jù)的測試程序是可行的。
結(jié)束語
本文針對實(shí)際應(yīng)用情況,對龐大的TCP/IP網(wǎng)絡(luò)協(xié)議組進(jìn)行了簡化,具體分析了簡化后的協(xié)議組中各種數(shù)據(jù)包,同時(shí)給出了測試程序?qū)λ璋l(fā)送數(shù)據(jù)的具體打包過程。完整的TCP/IP協(xié)議很大,只能嵌入到32位以上的單片機(jī)上運(yùn)行。我們在軟件只需要3K B(字節(jié)的ROM即可運(yùn)行。在接收數(shù)據(jù)的目的端,PC機(jī)上安裝了Netxray 3.0軟件,對測試程序的結(jié)果進(jìn)行測試,驗(yàn)證出最終在目的端接收到的數(shù)據(jù)就是我們在源端所發(fā)送的數(shù)據(jù),而且所有的數(shù)據(jù)包都符合TCP/IP規(guī)范。
tcp/ip相關(guān)文章:tcp/ip是什么
評論