环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產(chǎn)品分類

當(dāng)前位置: 首頁(yè) > 傳感測(cè)量產(chǎn)品 > 數(shù)據(jù)采集產(chǎn)品 > 工控機(jī)

類型分類:
科普知識(shí)
數(shù)據(jù)分類:
工控機(jī)

嵌入式單片機(jī)PPP協(xié)議的應(yīng)用

發(fā)布日期:2022-04-18 點(diǎn)擊率:70

                   PPP協(xié)議(Point-to-Point Protocol)提供了在串行點(diǎn)對(duì)點(diǎn)鏈路上傳輸數(shù)據(jù)報(bào)的方法,支持異步8位數(shù)據(jù)及位導(dǎo)向的同步連接(如ISDN)。它提供了一種管理兩點(diǎn)間會(huì)話的有效方法,正在取代SLIP(Serial Line Interface Protocol)協(xié)議成為點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)的標(biāo)準(zhǔn)。

嵌入式單片機(jī)PPP協(xié)議是在單片機(jī)中嵌入PPP協(xié)議,以實(shí)現(xiàn)單片機(jī)與計(jì)算機(jī)之間的PPP數(shù)據(jù)傳輸,使它既可以作為PPP連接的客戶端,也可以作為獨(dú)立的PPP服務(wù)器端來使用。它在家電控制和小型數(shù)據(jù)傳輸系統(tǒng)中具有非常廣闊的應(yīng)用前景,并且具有成本低、傳輸穩(wěn)定等特點(diǎn),是當(dāng)前單片機(jī)研究的熱門話題之一。

1 PPP的工作原理

PPP采用高級(jí)數(shù)據(jù)鏈路控制(HDLC)協(xié)議作為在對(duì)點(diǎn)鏈路上分裝數(shù)據(jù)報(bào)的基本方法。使用可擴(kuò)展的鏈路控制協(xié)議(LCP)來建立、配置和測(cè)試數(shù)據(jù)鏈路。用網(wǎng)絡(luò)控制協(xié)議簇(NCP)來建立和配置不同的網(wǎng)絡(luò)層協(xié)議,PPP允許同時(shí)采用多種網(wǎng)絡(luò)層協(xié)議。

為了建立點(diǎn)對(duì)點(diǎn)鏈路上的通信連接,發(fā)送端PPP首先發(fā)送LCP幀,以配置和測(cè)試數(shù)據(jù)鏈路。在LCP建立好數(shù)據(jù)鏈路并協(xié)調(diào)好所選設(shè)備后,發(fā)送端PPP發(fā)送NCP幀,以選擇和配置一個(gè)或多個(gè)網(wǎng)絡(luò)層協(xié)議。當(dāng)所選的網(wǎng)絡(luò)層協(xié)議配置好后,便可以將各網(wǎng)絡(luò)層協(xié)議的數(shù)據(jù)包發(fā)送到數(shù)據(jù)鏈路上。配置好的鏈路將一直處于通信狀態(tài),直到LCP幀或NCP幀明確提示關(guān)閉鏈路,或有其它的外部事件發(fā)生。PPP連接狀態(tài)圖如圖1所示。


1.1 連接死亡階段

一個(gè)連接的開始和結(jié)束都要經(jīng)歷這個(gè)階段。當(dāng)一個(gè)外部事件指示物理層已準(zhǔn)備好并可使用時(shí),PPP進(jìn)入建立連接階段。此時(shí),LCP自動(dòng)機(jī)處于初始階段。當(dāng)它向鏈路建立階段轉(zhuǎn)換時(shí)將給LCP自動(dòng)機(jī)發(fā)送一個(gè)UP事件信號(hào)。

1.2 連接建立階段

LCP用于交換配置信息包、建立連接。一旦一個(gè)配置成功的信息包發(fā)送且被接收,就完成了交換,進(jìn)入LCP開啟狀態(tài)。所有的配置選項(xiàng)都假定使用默認(rèn)值,除非在配置交換過程中被改變。只有那些與特定的網(wǎng)絡(luò)層協(xié)議無關(guān)的選項(xiàng)才會(huì)被LCP配置。收到LCP配置數(shù)據(jù)包將使鏈路從網(wǎng)絡(luò)層協(xié)議階段或者認(rèn)證階段返回到鏈路建立階段。

1.3 認(rèn)證階段

在某些連接情況下,希望在允許網(wǎng)絡(luò)層協(xié)議交換數(shù)據(jù)前對(duì)等實(shí)行認(rèn)證。默認(rèn)情況下,是不要求認(rèn)證的。認(rèn)證要求必須在建立連接階段提出,然后進(jìn)入認(rèn)證階段。如果認(rèn)證失敗,將進(jìn)入連接終止階段。在此階段只對(duì)連接協(xié)議、認(rèn)證協(xié)議、連接質(zhì)量測(cè)試數(shù)據(jù)包進(jìn)行處理。

1.4 網(wǎng)絡(luò)層協(xié)議階段

一旦PPP完成上述階段,便進(jìn)入網(wǎng)絡(luò)協(xié)議階段。每一個(gè)網(wǎng)絡(luò)層協(xié)議 (例如IP、IPX、AppleTalk等)必須有相應(yīng)的網(wǎng)絡(luò)控制協(xié)議(NCP)單獨(dú)配置,每個(gè)網(wǎng)絡(luò)控制協(xié)議都可以隨時(shí)打開或關(guān)閉。此階段,LCP協(xié)議自動(dòng)狀態(tài)機(jī)處于打開狀態(tài),接收到的任何不支持的協(xié)議數(shù)據(jù)包都會(huì)被返回一個(gè)協(xié)議拒絕包,而接收到的所有支持的數(shù)據(jù)包都將被丟棄。此時(shí),鏈路上流通的是LCP數(shù)據(jù)包、NCP數(shù)據(jù)包以及網(wǎng)絡(luò)協(xié)議數(shù)據(jù)包。

1.5 終止連接階段

PPP連接可以隨時(shí)被終止。LCP通過交換連接終止包來終止連接。當(dāng)連接被終止時(shí),PPP會(huì)通知物理層采取相應(yīng)的動(dòng)作。只有當(dāng)物理層斷開,連接才會(huì)真正被終止。此階段,接收到的所有非LCP數(shù)據(jù)包都將被丟棄。

2 PPP數(shù)據(jù)結(jié)構(gòu)

PPP數(shù)據(jù)幀的結(jié)構(gòu)如表1所示,PPP協(xié)議標(biāo)志如表2所示。

 


每個(gè)PPP數(shù)據(jù)包的開始和結(jié)束都有一個(gè)0x7E的數(shù)據(jù)標(biāo)志。在開始標(biāo)志后,緊跟2個(gè)HDLC常量:地址常量0xFF和控制常量0x03。協(xié)議域長(zhǎng)度通常為2字節(jié),表示信息域里包含的是哪種協(xié)議以及它的處理信息。隨后是代碼(Code)、標(biāo)識(shí)符(ID)和長(zhǎng)度域(Length)。事實(shí)上它們都是信息域(Payload)的一部分。信息域長(zhǎng)度最多為1500字節(jié)。代碼部分用來指示LCP、PAP、IPCP或者CHAP協(xié)議數(shù)據(jù)包中的某種類型。通常情況下,用來表示IP自尋址信息數(shù)據(jù)包的標(biāo)識(shí)是0x45。ID對(duì)于每一幀來說都是唯一的,所有協(xié)議間的商談和響應(yīng)都通過ID聯(lián)系在一起。只有當(dāng)PPP協(xié)議幀被壓縮成IP尋址信息包時(shí)例外。這個(gè)時(shí)候ID表示的是一種服務(wù)類型。有效載荷部分是可變的,并能隨著請(qǐng)求和響應(yīng)的變化作相應(yīng)的改變。在IP自尋址情況下,IP數(shù)據(jù)包的大小與PPP協(xié)議幀的大小是兼容的,有效載荷包含有關(guān)協(xié)議的商談和數(shù)據(jù)包的保持。然后是一個(gè)長(zhǎng)度為2字節(jié)循環(huán)冗余檢驗(yàn)碼,以檢測(cè)數(shù)據(jù)幀中的錯(cuò)誤。由于標(biāo)志字符的值是0x7E,因此當(dāng)該字符出現(xiàn)在信息字段中時(shí), PPP需要對(duì)它進(jìn)行轉(zhuǎn)義。具體實(shí)現(xiàn)過程如下:

(1)當(dāng)遇到字符0x7E時(shí),需連續(xù)傳送2個(gè)字符:0x7D和0x5E,以實(shí)現(xiàn)標(biāo)志字符的轉(zhuǎn)義。

(2)當(dāng)遇到轉(zhuǎn)義字符0x7D時(shí),需連續(xù)傳送2個(gè)字符:0x7D和0x5D,以實(shí)現(xiàn)轉(zhuǎn)義字符的轉(zhuǎn)義。

(3)默認(rèn)情況下,如果字符的值小于0x20(例如ASCII控制字符),一般都要進(jìn)行轉(zhuǎn)義。例如,遇到字符0x01時(shí)需連續(xù)傳送0x7D和0x21兩個(gè)字符(這時(shí),第6個(gè)比特取補(bǔ)碼后變?yōu)?,而前面兩種情況均把它變?yōu)?)。這樣做是防止它們出現(xiàn)在雙方主機(jī)的串行接口驅(qū)動(dòng)程序或調(diào)制解調(diào)器中,因?yàn)樗鼈冇袝r(shí)會(huì)把這些控制字符解釋成特殊的含義。另一種可能是用鏈路控制協(xié)議來指定是否需要對(duì)這32個(gè)字符中的某些值進(jìn)行轉(zhuǎn)義。默認(rèn)情況下是對(duì)所有的32個(gè)字符都進(jìn)行轉(zhuǎn)義。

關(guān)于PPP協(xié)議的詳盡描述可以參閱RFC1661文檔。

3 單片機(jī)PPP協(xié)議

單片機(jī)PPP協(xié)議是PPP協(xié)議在單片機(jī)中的應(yīng)用,有其特點(diǎn)。單片機(jī)的存儲(chǔ)空間只有64KB,而PPP協(xié)議包括LCP、PAP、IPCP以及NCP等協(xié)議,并且在連接建立后還要用到數(shù)據(jù)傳輸協(xié)議(TCP/IP、UDP等)、各種壓縮協(xié)議等。要把這些協(xié)議完全嵌入單片機(jī)是不可能的,所以只能根據(jù)實(shí)際需要選擇其中的一部分。

例如采用UDP協(xié)議而不是功能相對(duì)齊全但協(xié)議內(nèi)容過于龐大的TCP/IP協(xié)議來傳輸數(shù)據(jù),傳輸中基本上不使用數(shù)據(jù)壓縮協(xié)議,跳過單片機(jī)作為服務(wù)器端時(shí)的密碼驗(yàn)證過程,省略IPX、AppleTalk等網(wǎng)絡(luò)層協(xié)議等。也就是說,本文的單片機(jī)PPP協(xié)議,事實(shí)上只包含了從PPP連接的建立到實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)傳輸所必需的協(xié)議,而不包括PPP協(xié)議的所有功能。這種協(xié)議的取舍是由硬件的客觀限制以及實(shí)際的應(yīng)用需要共同決定的。

4 單片機(jī)PPP協(xié)議PPP連接的建立

建立后的單片機(jī)PPP連接狀態(tài)如圖2所示。


其中,C51系統(tǒng)是已經(jīng)植入PPP協(xié)議的51系列單片機(jī),電話線部分也可以是某個(gè)網(wǎng)絡(luò)的一部分,甚至是Internet。

單片機(jī)PPP協(xié)議流程圖如圖3所示。


PPP連接的建立主要經(jīng)過三個(gè)階段,分別是LCP協(xié)商、密碼認(rèn)證以及網(wǎng)絡(luò)層協(xié)議配置。

4.1 LCP處理階段

首先,第一個(gè)LCP數(shù)據(jù)包被服務(wù)器端發(fā)送后,從服務(wù)器端返回一個(gè)PPP拒絕包給除密碼認(rèn)證外的所有選項(xiàng),接著服務(wù)器端強(qiáng)制認(rèn)證協(xié)議進(jìn)行協(xié)商(先前來自否定幀的PAP和CHAP都被發(fā)送)。隨后服務(wù)器端返回一個(gè)拒絕包給CHAP,本文用PAP來代替。然后服務(wù)器端認(rèn)同并返回一個(gè)新的請(qǐng)求,這時(shí)候需要進(jìn)行PAP。接下去對(duì)PAP進(jìn)行確認(rèn),系統(tǒng)對(duì)字符映射的丟棄進(jìn)行協(xié)商。最后所有控制特性被服務(wù)器端同意丟棄。

下面是由服務(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

對(duì)它進(jìn)行分析如表3。


4.2 PAP處理階段

首先,系統(tǒng)發(fā)送PAP數(shù)據(jù)包給服務(wù)器端,然后服務(wù)器端通過用戶ID和密碼驗(yàn)證。

PAP密碼驗(yàn)證協(xié)議在RFC1334中有詳細(xì)定義,主要是為撥號(hào)網(wǎng)絡(luò)中提供密碼保護(hù)。這個(gè)選項(xiàng)是可選的。在本應(yīng)用軟件中,強(qiáng)制單片機(jī)和PC協(xié)商的選項(xiàng)中,PC要求密碼驗(yàn)證,單片機(jī)端不要求。所以如果PC機(jī)作為服務(wù)器,單片機(jī)需要發(fā)送用戶名和密碼;如果單片機(jī)作服務(wù)器,則沒有密碼驗(yàn)證的要求。

PAP的格式如圖4所示。


下面是單片機(jī)發(fā)送PAP的數(shù)據(jù)包:

7E FF 03 C0 23 01 06 00 0C 03 7A 77 6D 03 7A 77 6D…

解析如表4所示。


單片機(jī)向PC機(jī)發(fā)送PAP數(shù)據(jù)包是在PC機(jī)發(fā)送對(duì)單片機(jī)LCP選項(xiàng)的確認(rèn)之后、PC機(jī)向單片機(jī)發(fā)送IPCP請(qǐng)求之前。

4.3 IPCP處理階段

IPCP是用來設(shè)置PPP連接中的網(wǎng)絡(luò)環(huán)境,包括IP地址、IP壓縮協(xié)議、DNS服務(wù)器地址等都是通過IPCP來協(xié)商的。首先服務(wù)器端發(fā)送請(qǐng)求進(jìn)行IPCP協(xié)商,然后系統(tǒng)返回一個(gè)拒絕包給除IP地址外的所有操作。由于先前的發(fā)送被拒絕,服務(wù)器端發(fā)送一個(gè)回復(fù),只包含IP地址。此時(shí),系統(tǒng)相當(dāng)于服務(wù)器端的IP地址認(rèn)證,然后由請(qǐng)求信息和IP地址來完成三路握手協(xié)議。接著服務(wù)器端返回一個(gè)包含預(yù)先指派IP地址的拒絕包。此時(shí)連接建立并擁有一個(gè)指定的IP地址。IPCP幀的格式與LCP也是類似的:一字節(jié)的代碼,然后是標(biāo)志,長(zhǎng)度,選項(xiàng)。當(dāng)IP協(xié)議的選項(xiàng)配置完,就可以開始通訊了。IPCP的詳細(xì)描述在RFC1332中。

連接建立后,PPP將在原有協(xié)議的基礎(chǔ)上調(diào)用網(wǎng)絡(luò)協(xié)議UDP(User Datagram Protocol)和ICMP(Internet Control Messages Protocol)等。有關(guān)用戶數(shù)據(jù)包協(xié)議UDP的詳細(xì)資料可參看RFC882、RFC883文檔;Internet信息控制協(xié)議ICMP的詳細(xì)資料可參看文檔RFC792。                

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

主站蜘蛛池模板: CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 实验室pH计|电导率仪|溶解氧测定仪|离子浓度计|多参数水质分析仪|pH电极-上海般特仪器有限公司 | 动环监控_机房环境监控_DCIM_机房漏水检测-斯特纽 | 波纹补偿器_不锈钢波纹补偿器_巩义市润达管道设备制造有限公司 | 深圳APP开发公司_软件APP定制开发/外包制作-红匣子科技 | 深圳法律咨询【24小时在线】深圳律师咨询免费 | 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 | 食品质构分析仪-氧化诱导分析仪-瞬态法导热系数仪|热冰百科 | 二手回收公司_销毁处理公司_设备回收公司-找回收信息网 | PCB接线端子_栅板式端子_线路板连接器_端子排生产厂家-置恒电气 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 海水晶,海水素,海水晶价格-潍坊滨海经济开发区强隆海水晶厂 | 艺术涂料|木纹漆施工|稻草漆厂家|马来漆|石桦奴|水泥漆|选加河南天工涂料 | 武汉森源蓝天环境科技工程有限公司-为环境污染治理提供协同解决方案 | 智能电表|预付费ic卡水电表|nb智能无线远传载波电表-福建百悦信息科技有限公司 | 计算机毕业设计源码网| 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 刚性-柔性防水套管-橡胶伸缩接头-波纹管补偿器-启腾供水材料有限公司 | 沈阳液压泵_沈阳液压阀_沈阳液压站-沈阳海德太科液压设备有限公司 | 注塑模具_塑料模具_塑胶模具_范仕达【官网】_东莞模具设计与制造加工厂家 | 泥沙分离_泥沙分离设备_泥砂分离机_洛阳隆中重工机械有限公司 | 双舌接地线-PC68数字式高阻计-ZC36|苏海百科 | GAST/BRIWATEC/CINCINNATI/KARL-KLEIN/ZIEHL-ABEGG风机|亚喜科技 | 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | 中药超微粉碎机(中药细胞级微粉碎)-百科 | 分类168信息网 - 分类信息网 免费发布与查询 | 黄石东方妇产医院_黄石妇科医院哪家好_黄石无痛人流医院 | 上海心叶港澳台联考一对一培训_上海心叶港澳台联考,港澳台联考一对一升学指导 | 珠宝展柜-玻璃精品展柜-首饰珠宝展示柜定制-鸿钛展柜厂家 | 千淘酒店差旅平台-中国第一家针对TMC行业的酒店资源供应平台 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 杭州营业执照代办-公司变更价格-许可证办理流程_杭州福道财务管理咨询有限公司 | 湖南印刷厂|长沙印刷公司|画册印刷|挂历印刷|台历印刷|杂志印刷-乐成印刷 | 上海洗地机-洗地机厂家-全自动洗地机-手推式洗地机-上海滢皓洗地机 | 上海洗地机-洗地机厂家-全自动洗地机-手推式洗地机-上海滢皓洗地机 | 多物理场仿真软件_电磁仿真软件_EDA多物理场仿真软件 - 裕兴木兰 | 高速混合机_锂电混合机_VC高效混合机-无锡鑫海干燥粉体设备有限公司 | 昆山新莱洁净应用材料股份有限公司-卫生级蝶阀,无菌取样阀,不锈钢隔膜阀,换向阀,离心泵 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 |