詢問-應答機制的描述
OLT以先到先處理為原則處理從ONU發(fā)來的請求。OLT有一個信息表,記錄了每個ONU的緩沖區(qū)和RTT(round-trip time)大小。若某一時刻OLT收到ONUi發(fā)來的請求,則即時處理,根據請求的信息更新信息表,并立即向ONUi發(fā)送一個應答信號,準許其在指定時刻發(fā)送一定大小的數據。
本文引用地址:http://www.ex-cimer.com/article/150629.htm為簡便說明,假設一個系統(tǒng)只有3個ONU。如圖1所示,在t0時刻,OLT收到ONU1發(fā)來的請求,則立即處理并向ONU1發(fā)送一個應答信號G1,準許其在t1時刻發(fā)送6 000 bit的數據。收到G1后,ONU1在t1時刻開始發(fā)送數據。該數據由6 000 bit的數據和ONU1新的請求R1組成。ONU1通過R1告訴OLT在請求產生時刻ONU緩沖區(qū)里的剩余比特數。若一個ONU清空了緩沖區(qū),就向OLT報告0字節(jié)。相應地,OLT向其發(fā)送0字節(jié)的應答,允許發(fā)送一個新的沒有數據的請求。因請求和應答時間只消耗很小一部分帶寬,OLT接收信道的利用率接近100%。在一段時間后,ONU1的數據到達了OLT,OLT用R1中的信息以及通過發(fā)送G1和收到數據的時間來更新信息表。因為已知ONU1發(fā)送的數據大小,OLT又知ONU1發(fā)送的最后一個比特到來的時間,從而可以合理安排ONU2發(fā)送數據的時間,使ONU2的第一個比特能緊接著ONU1的最后一個比特的到來,其間只隔保護間隔B,用同樣方法可處理ONU3的數據及R3。
圖1 DBA算法的流程
冷啟動
冷啟動開始時,OLT按順序每隔300 μs向一個ONU發(fā)送0字節(jié)的應答作為測距信息,依次處理收到的請求,先根據收到的請求信息將狀態(tài)表更新,再根據狀態(tài)表生成新的應答信息并發(fā)送給相應的ONU。若隔了300 μs未收到請求,則將該ONU的RTT標志為TIMEOUT。若有N個ONU,則冷啟動全過程歷時300N μs。
啟動結束后RTT[i]=TIMEOUT的ONU被標記為未激活的ONU。OLT以1 s的間隔向ONU發(fā)送測距應答信息。若連續(xù)向某個ONU發(fā)送3次應答,其狀態(tài)表表項都未更新,則將該ONU標記為未連接的ONU,每隔1 min向該ONU發(fā)送一次應答,其斷開的ONU只占用很少的帶寬。
評論