Development Projects
Development Project 1: Multi-threaded Simulation of 802.11 CSMA/CA Distributed Wireless MAC Protocol
Assignment and due dates: see the schedule.
Related Internet resources
Online Linux Threads Tutorial
IEEE 802.11, 1999 Edition, Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications.
IEEE 802.11b-1999 Supplement to 802.11-1999,Wireless LAN MAC and PHY specifications: Higher speed Physical Layer (PHY) extension in the 2.4 GHz band.
Clarifications about the project:
You should not use the real time of the computer to wait for some event to occur in your threads. You should simulate the time (expressed in microseconds) and use that in your simulator for various activities, for example for waiting a random amount time. For example, if a station has to wait 300 microseconds for some event to occur according to the protocol, you should wait a simulated time equal to 300 microseconds. Time can be simulated using a counter that is shared by all threads. The goal in implementing the project as a multi-threaded process is not having a simulation that is using the computer resources more efficiently. With the use of threads, modeling of concurrent activities of multiple stations can be easier if you are not expert in writing discrete-event simulations.
You can assume that the sender of a frame will timeout after "SIFS+ACK-time" amount of time after finishing sending the data frame.
Development Project 2: Ad Hoc Wireless Network Routing Protocol Simulation
Assignment and due dates: see the schedule.