Skip to content

Commit

Permalink
uodate readme
Browse files Browse the repository at this point in the history
  • Loading branch information
nori210 committed Jun 26, 2024
1 parent 3da3df3 commit 440616e
Showing 1 changed file with 24 additions and 5 deletions.
29 changes: 24 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,32 @@
* **[Yunhao Jiang](https://github.com/yunhao-jiang)**
* **[Georgia Li](https://github.com/nori210)**

# Motivation
- The monitored environment has multile servers and several medical devices are connected to the public network. This project will focus on station monitoring that can provide insights on the performance and reliability.

# Monitored Environment
- The project is based on linux system (Linux Kernel 6.1.57). We used a Raspberry Pi as the development environment. Our current development environment cannot achieve high accuracy, which may lead to results that differ from the actual application.
# Usage
* Users should set the tested endpoint at the home page before they go to other tabs.
* Users should set the tested IP and port number at the home page before they go to other tabs.
* Network Ping Test
* We take average rtt as our data.
* Users can directly save the image to local.
![ping result](images/ping.png "sample result")
* "Clear All Data" button will clear up the database.

* WiFI Quality
* We use `iwlist` and `iw dev <interface> link` to scan the connected and nearby access point
* We use `wpa_cli` to monitor the conneted access point. Note that `iw` can't handle WPA.
* For the visualization, to show the chart functionality the logic is extracting the connected APs every specific interval (hardcoded in backend) since in current development environment only one access point is available. This should be changed. Ideally the user case should be the user can see the variance when roaming between different APs.
* Speed
* We integrated [Speed-Test](https://github.com/openspeedtest/Speed-Test) for this part.
* Ideally continuous tests are preferred. We didn't make change due to the
* DHCP lease and DHCP pool scan
* We use nmap to scan the ip.
* Users can set threshold of dhcp usage in `backend/config.py`.
* NTP Source
* We test connection to NTP servers.
![ntp result](images/ntp.png "sample ntp result")
* The changelog is suggested to be kept no more than 24 hours.
* DNS lookup
* Users can input hostname or ip address.

Expand All @@ -32,6 +44,10 @@ then
```sh
pip install -r requirements.txt
```
To start the backend, we use `sudo` to accomendate `wpa` and `iw` command, run
```sh
sudo python3 backend/app.py
```
To install all the dependency in the frontend, run
```sh
cd frontend
Expand All @@ -58,9 +74,12 @@ _The path of DHCP Lease may vary from systems to system._
_We left several potential features to be implemented._

For exisiting features:
* Build changelog for exisiting functionalities, such as NTP analysis.
* Build visualization for exisiting functionalities, such as NTP analysis.
* Change the current logic (such as for signal strength quality chart) to adapt to the user case
* Build changelog for exisiting functionalities, such as NTP analysis
* Build visualization for exisiting functionalities, such as NTP analysis

For features we have planned but didn't develop:
* Deep packet inspection (Intrusion Protection System)
* MTU path discovery
* MTU path discovery
# Credit
[Speed-Test](https://github.com/openspeedtest/Speed-Test)

0 comments on commit 440616e

Please sign in to comment.