This week was primarily spent on the network scheduling. I needed to create a structure from the topology provided to me that maps out which nodes would be receiving and transmitting at what time slot as well as which node will be getting the schedule in what order. This involved using some of the structures created by Arden and making my own data struct that had all these elements of the schedule. The way I approached it was walking through the topology using an algorithm similar to Breadth First Search, where each “level” of the tree was looked at separately. However, we look at the leaf nodes first and then move up to the higher-level nodes. I then kept track of the nodes that were being looked at and their parent node to determine what is transmitting and what is receiving. This was all added to two separate adjacent lists allocated to a buffer size of one less than the number of nodes. In terms of the receiving order, it works using the quasi-Breadth First Search method and sends it to all the nodes on higher levels. I tested this with a few different topologies to make sure it works: a line topology of four nodes, a tree of all nine nodes that we use in our design report, and a mesh topology of four nodes. The schedule is printed out to see the order. Working on the schedule exposed some bugs in the code, but those were quickly resolved. This is now being integrated into the rest of the protocol. Now, as more of the network is being resolved, I need to figure out how to build the backend of the web application and take input from the network.