70 | | |
71 | | == == |
72 | | |
73 | | [[Image(P2MP.png, align=centre, 500)]] |
74 | | |
75 | | |
76 | | == == |
77 | | |
78 | | == == |
79 | | |
80 | | == == |
81 | | |
82 | | This behavioral description of both BS and SS can be transformed to state-machines, which in turn can be transformed to C-code. A few typical |
83 | | transitions through states are numbered. For the Base Station, we have the following states: |
84 | | |
85 | | [[Image(BS.bmp, align=left, 500)]] |
86 | | |
87 | | == == |
88 | | |
89 | | == == |
90 | | |
91 | | == == |
92 | | |
93 | | 1) '''Process Map''' : The BS decides the allocation of slots for the uplink and the downlink to the various SS. Each slot consists of the number |
94 | | of burst units allowed. For our TDM system we have assumed a equal slots for all the subscribers. Also, new Connection ID`s are allocated during |
95 | | this stage. |
96 | | |
97 | | 2) '''Send Map''' : The Base Station broadcasts the map created in the above stage, using a special '''Connection ID''' 0, meant for all the |
98 | | Subscriber nodes already in the system. |
99 | | |
100 | | 3)'''DL Burst''' : The BS emits on the DownLink as specified by Map transmitted in the previous stage. To distinguish between each of the SS |
101 | | it uses a Connection ID, which corresponds to its own queues. This can be heard by all the nodes and they too distinguish it by their |
102 | | Connection ID. |
103 | | |
104 | | 4) '''Contention Time''' : This stage is for future reserve. Any new SS wishing to join the system and already synchronized with BS would send in a Request |
105 | | during this stage. For the time being we make the BS and the SS sleep during this period. |
106 | | |
107 | | 5) '''UL Burst''' : The BS receives on the UpLink as specified by Map transmitted in the previous stage. Again it distinguishes between various SS`s |
108 | | by the use of Connection ID. |
109 | | |
110 | | 6) '''Map Sending''' : If the BS does not receive from any SS for a long time, it enters this special stage. After coming to this state, the BS |
111 | | emits MAPS Periodically and simply waits for the rest of the frame. |
112 | | |
139 | | 3) |
| 97 | == == |
| 98 | |
| 99 | [[Image(SS.bmp, align=right, 500)]] |
| 100 | |
| 101 | 1) '''Map Wait''' : A Subscriber Station begins by waiting for a good map broadcast. This is like polling for reception of a Map. The SS state machine |
| 102 | cannot proceed any further untill it receives any further |
| 103 | |
| 104 | 2) '''Read Map''' : This basically involves processing of the map read and extracting the uplink time, downlink time and the waiting period for a |
| 105 | subscriber. |
| 106 | |
| 107 | 3)'''Wait DL Burst''' : This is the waiting stage after which a SS can receive downlink bursts from the base station. |
| 108 | |
| 109 | 4) '''Rx DownLink''' : As the receive process is asynchronous, this invloves setting timer and receiving packets before timeout, |
| 110 | meant for that node from the BS. It simply fills up its queues or hands up to the application layer. |
| 111 | |
| 112 | 5) '''Contention Period''' : As of now this stage simple involves waiting for the desired time, but can be used to exchange messages with the |
| 113 | BS for increasing decreasing its slot size as per its demand. |
| 114 | |
| 115 | 6) '''Wait UL Burst''' : This is the waiting stage afer which a SS can transmit uplink downlink bursts from the base station. |
| 116 | |
| 117 | 7) '''Tx Uplink''' : The SS reads from it Tx Queue and transmits to the BS. Before starting to transmit it sets a timer which |
| 118 | would tell it when to stop transmitting. After transmitting it simply waits for another map. |
| 119 | |