根據文件上的敘述,當SS收到MOB_SCN_RSP後會跟其他neighbor BS進行Scanning並且接收其DL MAP, UL MAP, DCD, UCD(進行同步的動作),並且會送MOB_SCN_REP給BS(但是我找不到這段程式碼在哪),接著SS會送出MOB_MSHO_REQ給BS,以下將敘述SS的send_msho_req ()流程---
Step1. 先取得peer node的head,在依序產生WimaxNeighborEntry,其內儲存neighbor的資訊.在判斷此node是否為發現過的neighbor,若是新的neighbor則nbrPref就加1.
Step2.若是nbrPref不為0的話,那SS就必須產生出request用的packet.產生packet,並且透過packet建立起一個frame,初始frame,並且把frame的type設為MAC_MOB_MSHO_REQ.接著設定report_metric, n_new_bs_index, n_new_bs_full...等等利用getStatWatch()取得訊號強度在利用average()算出rssi,再利用rssi算出bs_rssi_mean,並將其儲存至struct bs_current[]中,也把當下的peer node存進temp bsid內.
Step3. 開始收集neighor BS的rssi.根據neighbor 的數量產生WimaxNeighborEntry,在判斷此entry是否為已發現且跟目前的BS不同,若是的話,將會取出此BS的id,並且計算rssi跟rssi_mean,在將這些值存入至bs_full[]中.
Step4. 取出peer node的connection id並且存入至wimaxHdr的header.cid中,最後將packet enqueue.
End~
Step3. 開始收集neighor BS的rssi.根據neighbor 的數量產生WimaxNeighborEntry,在判斷此entry是否為已發現且跟目前的BS不同,若是的話,將會取出此BS的id,並且計算rssi跟rssi_mean,在將這些值存入至bs_full[]中.
Step4. 取出peer node的connection id並且存入至wimaxHdr的header.cid中,最後將packet enqueue.
End~
沒有留言:
張貼留言