HDLC概述
HDLC是通用的數(shù)據(jù)鏈路控制協(xié)議,當(dāng)開始建立數(shù)據(jù)鏈路時(shí),允許選用特定的操作方式。所謂鏈路操作方式,通俗地講就是某站點(diǎn)以主站方式操作,還是以從站方式操作,或者是二者兼?zhèn)?。在鏈路上用于控制目的站稱為主站,其它的受主站控制的站稱為從站。主站負(fù)責(zé)對(duì)數(shù)據(jù)流進(jìn)行組織,并且對(duì)鏈路上的差錯(cuò)實(shí)施恢復(fù)。由主站發(fā)往從站的幀稱為命令幀,而由由站返回主站的幀稱響應(yīng)幀。連有多個(gè)站點(diǎn)的鏈路通常使用輪詢技術(shù),輪詢其它站的站稱為主站,而在點(diǎn)到點(diǎn)鏈路中每個(gè)站均可為主站。主站需要比從站有更多的邏輯功能,所以當(dāng)終端與主機(jī)相連時(shí),主機(jī)一般總是主站。
操作方式HDLC中常用的操作方式有以下三種:(1)正常響應(yīng)方式NRM是一種非平衡數(shù)據(jù)鏈路操作方式,有時(shí)也稱非平衡正常響應(yīng)方式。該操作方式適用于面向終端的點(diǎn)到點(diǎn)或一點(diǎn)與多點(diǎn)的鏈路。在這種操作方式,傳輸過程由主站啟動(dòng),從站只有收到主站某個(gè)命令幀后,才能作為響應(yīng)向主站傳輸信息。響應(yīng)信息可以由一個(gè)或多個(gè)幀組成,若信息 由多個(gè)幀組成,則應(yīng)指出哪一個(gè)是最后一幀。主站負(fù)責(zé)管理整個(gè)鏈路,且具有輪詢、選擇從站及向從站發(fā)送命令的權(quán)利,同時(shí)也負(fù)責(zé)對(duì)超時(shí)、重發(fā)及各類恢復(fù)操作的控制。(2)異步響應(yīng)方式ARM,異步響應(yīng)方式ARM也是一種非平衡數(shù)據(jù)鏈路操作方式,與NRM不同的是,ARM的傳輸過程由從站啟動(dòng)。從站主動(dòng)發(fā)送給主站的一個(gè)或一組幀中可包含有信息,也可以是僅以控制為目的而發(fā)的幀。在這種操作方式下,由從站來控制超時(shí)和重發(fā)。該方式對(duì)采用輪詢方式的多站蓮路來說是必不可少的。ARM操作方式見圖3.7(b)。(3)異步平衡方式ABM,異步平衡方式ABM是一種允許任何節(jié)點(diǎn)來啟動(dòng)傳輸?shù)牟僮鞣绞健榱颂岣哝溌穫鬏斝?,?jié)點(diǎn)之間在兩個(gè)方向上都需要的較高的信息傳輸量。在這種操作方式下任何時(shí)候任何站都能啟動(dòng)傳輸操作,每個(gè)站既可作為主站又可作為從站,每個(gè)站都是組合站。各站都有相同的一組協(xié)議,任何站都可以發(fā)送或接收命令,也可以給出應(yīng)答,并且各站對(duì)差錯(cuò)恢復(fù)過程都負(fù)有相同的責(zé)任。
幀格式在HDLC中,數(shù)據(jù)和控制報(bào)文均以幀的標(biāo)準(zhǔn)格式傳送。HDLC中的幀類似于BSC的字符塊,但BSC協(xié)議中的數(shù)據(jù)報(bào)文和控制報(bào)文是獨(dú)立傳輸?shù)?,而HDLC中的命令應(yīng)以統(tǒng)一的格式按幀傳輸。HDLC的完整的幀由標(biāo)志字段(F)、地址字段(A)、控制字段(C)、信息字段(I)、幀校驗(yàn)序列字段(FCS)等組成。
(1)標(biāo)志字段(F):標(biāo)志字段為01111110的比特模式,用以標(biāo)志幀的起始和前一幀的終止。標(biāo)志字段也可以作為幀與幀之間的填充字符。通常,在不進(jìn)行幀傳送的時(shí)刻,信道仍處于激活狀態(tài),在這種狀態(tài)下,發(fā)方不斷地發(fā)送標(biāo)志字段,便可認(rèn)為一個(gè)新的幀傳送已經(jīng)開始。采用“0比特插入法”可以實(shí)現(xiàn)0數(shù)據(jù)的透明傳輸。(2)地址字段(A):地址字段的內(nèi)容取決于所采用的操作方式。在操作方式中,有主站、從站、組合站之分。每一個(gè)從站和組合站都被分配一個(gè)唯一的地址。命令幀中的地址字段攜帶的是對(duì)方站的地址,而響應(yīng)幀中的地址字段所攜帶的地址是本站的地址。某一地址也可分配給不止一個(gè)站,這種地址稱為組地址,利用一個(gè)組地址傳輸?shù)膸鼙唤M內(nèi)所有擁有該組一焉的站接收。但當(dāng)一個(gè)站或組合站發(fā)送響應(yīng)時(shí),它仍應(yīng)當(dāng)用它唯一的地址。還可用全“1”地址來表示包含所有站的地址,稱為廣播地址,含有廣播地址的幀傳送給鏈路上所有的站。另外,還規(guī)定全“0”地址為無站地址,這種地址不分配給任何站,僅作作測(cè)試。(3)控制字段(C):控制字段用于構(gòu)成各種命令和響應(yīng),以便對(duì)鏈路進(jìn)行監(jiān)視和控制。發(fā)送方主站或組合站利用控制字段來通知被尋址的從站或組合站執(zhí)行約定的操作;相反,從站用該字段作對(duì)命令的響應(yīng),報(bào)告已完成的操作或狀態(tài)的變化。該字段是HDLC的關(guān)鍵??刂谱侄沃械牡谝晃换虻谝?、第二位表示傳送幀的類型,HDLC中有信息幀(I幀)、監(jiān)控幀(S幀)和無編號(hào)幀(U幀)三種不同類型的幀??刂谱侄蔚牡谖逦皇荘/F位,即輪詢/終止(Poll/Final)位。(4)信息字段(I):信息字段可以是任意的二進(jìn)制比特串。比特串長度未作限定,其上限由FCS字段或通信站的緩沖器容量來決定,國際上用得較多的是1000~2000比特;而下限可以為0,即無信息字段。但是,監(jiān)控幀(S幀)中規(guī)定不可有信息字段。(5)幀校驗(yàn)序列字段(FCS):幀校驗(yàn)序列字段可以使用16位CRC,對(duì)兩個(gè)標(biāo)志字段之間的整個(gè)幀的內(nèi)容進(jìn)行校驗(yàn)。