【求助】PPP協定中的旗標欄位〈0x7e〉?



贊助商連結


kevin_bolton
2004-04-27, 10:32 AM
在PPP框架中的資料欄位若有0x7e則需先將之改成0x7d5e〈或0x7d5d〉......

但是,如果資料欄位中要有0x7d5e〈或0x7d5d〉時,又該怎麼辦?

贊助商連結


wangcm
2004-04-28, 04:14 PM
最初由 kevin_bolton 發表
在PPP框架中的資料欄位若有0x7e則需先將之改成0x7d5e〈或0x7d5d〉......

應該是0x7d5e而非0x7d5d,在PPP AHDLC中0x7d是escape字元,在0x7d後面的user data應該要和0x20作XOR...



但是,如果資料欄位中要有0x7d5e〈或0x7d5d〉時,又該怎麼辦?

會變成0x7d5d5e(user data只有小於0x20或等於0x7d或等於0x7e者才須要escape)....BTW,懶得查RFC時不妨參考Addison Wesley的PPP Design and Debugging,James Carlson著,講的蠻清楚的,我提的是這本書中PPP AHDLC的部份,在P12-P13 ;);)....

kevin_bolton
2004-04-28, 08:35 PM
嗯~

真抱歉,可以告訴我RFC是幾號ㄚ? :D

我是看TCP/IP的書,它說......
在非同步鏈結 => 0x7e被當作是跳脫字元
同步鏈結 => 用位元填充
不論如何,跳脫字元出現在PPP框架時,框架的下個字元就已完成它的第六個位元,如下:
1. 0x7e位元以2位元組序列 0x7d,0x5e被傳輸。這是旗標位元的跳脫。
2. 0x7e位元以2-位元組序列 0x7d,0x5d被傳輸。這是置換位元的跳脫。

看起來很亂,雖然想先把TCP/IP協定搞懂,但遇到不懂的還是很不想跳過......可以告訴我它的意思嗎?

wangcm
2004-04-29, 03:09 PM
最初由 kevin_bolton 發表
嗯~

真抱歉,可以告訴我RFC是幾號ㄚ? :D

RFC 1661,RFC 1662....用google查"rfc+ppp"也行,再不然裝套linux,linux kernel中ppp的部份及pppd的source(http://ppp.samba.org/)也夠瞧了:D :D ....



我是看TCP/IP的書,它說......
在非同步鏈結 => 0x7e被當作是跳脫字元
同步鏈結 => 用位元填充

非同步鏈結?? 大概是指非同步式HDLC(AHDLC)--HDLC的同步信號是穿插在資料流內傳送的,因此資料流內某些特定的字元要作特別的處理(通常是取比較少出現在資料流內的字元當分界/跳脫字元,但在資料流內出現此字元時便須先作跳脫處理)以免與同步/跳脫字元混淆....BTW,0x7d是跳脫字元,0x7e是分界字元,兩者是不同的....
相對的以位元為基準的同步式HDLC(Bit-Synchronous HDLC)因為同步/CRC通常是由H/W(layer 1)負責的與資料流無關,就不須要跳脫處理,但為了避免和HDLC的end of frame(0b01111110)混淆,在傳輸5個1之後便會插入一個0,但此時1char=8bits就沒有特別的意義了,純粹只是一串二進位的位元流而以....



不論如何,跳脫字元出現在PPP框架時,框架的下個字元就已完成它的第六個位元,如下:
1. 0x7e位元以2位元組序列 0x7d,0x5e被傳輸。這是旗標位元的跳脫。
2. 0x7e位元以2-位元組序列 0x7d,0x5d被傳輸。這是置換位元的跳脫。

看起來很亂,雖然想先把TCP/IP協定搞懂,但遇到不懂的還是很不想跳過......可以告訴我它的意思嗎?

這一段鵝也看不懂(有沒有英文原文):confused: :confused: ?? BTW,有些書還是看原文比較好,因為翻譯的人不見得真正懂網路;) ;) ....

kevin_bolton
2004-04-29, 08:45 PM
很可惜,沒有買原文的,唉,有點後悔了.....
真的很感謝您的回答......

wangcm
2004-04-30, 04:58 PM
最初由 kevin_bolton 發表
很可惜,沒有買原文的,唉,有點後悔了.....
真的很感謝您的回答......

不用客氣,如果你只是想搞懂TCP/IP的話博碩有一本TCP/IP通訊協定理論與實務,方盈著(不是譯喔;) )寫的還不錯,但是主要是寫TCP/IP本身(layer 3),至於PPP/SLIP等layer 2的東東就只有薄薄幾頁而已,要是英文還可以的話直接買Prentice Hall出的Internetworking with TCP/IP,Douglas E. Comer著(只要買Volume 1就好了,國內賣NT$7xx,Volume2/3等你真的有須要時再買...BTW,你問十個搞網路的人要買什麼書恐怕有十一個會告訴你這本;) ;) ),其實英文的專業書籍也沒有一般人想像中那麼難看懂:) :) ...

kevin_bolton
2004-04-30, 10:20 PM
感動ㄚ~
忍不住再跟你說聲謝謝......