2008年4月5日 星期六

SS的Scheduler6---process_dcd (mac802_16_dcd_frame *frame)

此member function主要是處裡當SS收到DCD的時候,該進行何種相對應的程序,以下將敘述此member funciton的流程---

Step1. 收到DCD後,首先會判斷Mac的state是否為MAC802_16_WAIT_DL_SYNCH,若是的話則不進行後續的動作,把封包丟棄.SS會繼續等DL MAP,等SS收到DL MAP後會將Mac state改為MAC802_16_WAIT_DL_SYNCH_DCD (可參照"SS的Scheduler5"),這樣後來收到DCD才會進行後續的動作.

Step2. 若受到DCD的時候,Mac的state為MAC802_16_WAIT_DL_SYNCH_DCD,則會設定Start time,並且判斷sub state是否為SCANNING.若是的話,則會將所收到的frame複製一份存到mac802_16_dcd_frame中,以備給handoff時使用.

Step3. 將Mac的state設為MAC802_16_UL_PARAM,並且設定T1timer.

End~~

沒有留言: