Whitefield bietet eine Simulationsumgebung für Sensornetzwerke, indem realistische PHY/MAC-Simulation mit der Verwendung beliebter IoT-Stapel/Osen wie Contiki/Riot/Openthread/Zephyr/Freiertos/OT-RTOS kombiniert wird. Daher kann man die vorhandene Stapelimplementierung so verwenden und sie über die realistische HF -Simulation testen.
Whitefield verwendet die PHY/MAC-Schicht, die von beliebten Simulatoren (wie NS3-LRWPAN/PLC) bereitgestellt wird und sie locker mit den eingeschränkten Netzwerkstapeln, die von populären IoT-Osen unterstützt werden, gelockt und somit das Beste aus beiden Welten bereitstellen. Es bietet gemeinsame Visualisierungs- und OAM -Tools (Protokolle, PCAP, Shell), die die Überwachung und Fehlerbehebung vereinfachen.
Typische Anwendungsfälle von Whitefield:

Terminologie :
Fluggesellschaft: Die Fluggesellschaft bezieht sich auf die PHY/MAC/RDC-Implementierung, die von Simulatoren von Drittanbietern wie NS3/Castalia-Omnet ++ bereitgestellt wird. Bietet Konfigurationsmanagement- und OAM-Tools, die über alle Simulatoren von Drittanbietern arbeiten. Es wird mit COMPLAIN übernommen, um Nachrichten an/von Stackline zu senden/recv.
Commline: Nachrichtenwarteschlange und entsprechende Schnittstellen, die Fluggesellschaften und Stackline entkoppeln. Alle Nachrichten, sei es die Netzwerknutzlasten oder OAM -Nachrichten werden mit Commline transportiert.
Stackline: 6Lowpan/Netzwerkschicht und über dem Protokollstapel, der von IoT-Osen von Drittanbietern wie Contiki/Riot bereitgestellt wird. In solchen Osen wird eine neue Plattform hinzugefügt, um sie mit Whitefield zu verbinden. Der Protokollstapel mit Anwendung wird aus diesen OSS verwendet.
git clone https://github.com/whitefield-framework/whitefield
cd whitefield
./scripts/setup.sh #This may take a while...
make
git clone https://github.com/whitefield-framework/whitefield
cd whitefield
vagrant up # <- step takes time
vagrant ssh
git clone https://github.com/whitefield-framework/whitefield
cd whitefield
IMG=focal64 vagrant up # <- step takes time
IMG=focal64 vagrant ssh
Anweisungen ausführen :
$ cd whitefield
#Start Whitefield
$ ./invoke_whitefield.sh config/wf.cfg
#Monitor whitefield status
$ ./scripts/monitor.sh
#View live network toplogy open http://localhost:8080/ in a browser
$ ./canvas/canvas.py
#Whitefield shell
$ ./scripts/wfshell help
#Stop whitefield
$ ./scripts/wfshell stop_whitefield