Matt Raymond - MSc University of Michigan, Ann Arbor
The end goal of this project is to create a set of calculators for Chapman University's DataCom (CPSC 353) class to help students check their work while learning about various networking algorithms. This will be implemented with TypeScript and hosted on my personal website, where it will hopefully be a useful resource for anyone taking DataCom in the future.
My goal levels are as follows:
- Implement all the algorithms
- Implement in typescript
- Perform automated testing using Jest
- Host algorithms on my website
- Create basic user interface
- Make the interface pretty
- Change anything in the code that makes this step difficult
- Modify the code to give step-by-step explanations of how to come get the
correct answer
- This is the ideal, as with paper I often made small mistakes partway through computations, and solvers tend to be very helpful in distinguishing a copying mistake from a problem with comprehension.
These programs will be released under the GNU license, and people can use them for whatever they want, no questions asked. However, If you're doing something interesting with it, feel free to let me know.
Number | Name | Date Completed |
---|---|---|
0 | 05/30/2020 | |
1 | 05/31/2020 | |
2 | 06/02/2020 | |
3 | 06/02/2020 | |
4 | 06/02/2020 | |
5 | 06/05/2020 | |
6 | 06/05/2020 | |
7 | 06/05/2020 | |
8 | 06/20/2020 | |
9 | 06/20/2020 | |
10 | RTO | |
11 | RTT_S | 06/20/2020 |
12 | RTT_D | |
13 | Fragmentation | |
14 | Cider Address | |
15 | Longest prefix matching | |
16 | Forwarding table | |
17 | Dijkstra's algorithm | |
18 | Distance Vector | |
19 | Collision Detection | |
20 | CSMA/CD Minimum Frame Size | |
21 | 802.11 Address Fields |
As a general note, the testing for TCP Tahoe and Reno would be really complicated to set up, so I'm going to do it manually once I get the graphing set up.