contiki:6lowpan_frames
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
contiki:6lowpan_frames [2012/05/13 11:06] – angelegt admin | contiki:6lowpan_frames [2017/01/24 18:49] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== 6LoWPAN Retransmissions ====== | ====== 6LoWPAN Retransmissions ====== | ||
+ | |||
+ | ====== Implementierung ====== | ||
+ | |||
+ | **Fragmentierung: | ||
+ | |||
+ | Process a received 6lowpan packet: | ||
+ | static void input(const struct mac_driver *r) | ||
+ | |||
+ | |||
+ | Take an IP packet and format it to be sent on an 802.15.4: | ||
+ | static u8_t output(uip_lladdr_t *localdest) | ||
+ | | ||
+ | **Fragmentierung ein/ | ||
+ | /** | ||
+ | * Do we support 6lowpan fragmentation | ||
+ | */ | ||
+ | #ifndef SICSLOWPAN_CONF_FRAG | ||
+ | #define SICSLOWPAN_CONF_FRAG | ||
+ | #endif | ||
+ | |||
+ | **Frame-Acknowledge Contiki 2.4** | ||
+ | |||
+ | mac/mac.h \\ | ||
+ | mac/csma.c | ||
+ | csma_init() setzt den mac_driver (mac) - Welcher wird verwendet? | ||
+ | |||
+ | '' | ||
+ | |||
+ | send_packet() | ||
+ | ret=mac-> | ||
+ | MAC_TX_NOACK | ||
+ | |||
+ | Was bedeutet folgendes Attribut (siehe auch Link zu Contiki 2.5)? | ||
+ | '' | ||
+ | |||
+ | |||
+ | **Frame-Acknowledge Contiki 2.5** | ||
+ | |||
+ | http:// | ||
+ | |||
+ | |||
+ | **IPv6-Routing** | ||
+ | |||
+ | http:// | ||
====== Testplan ====== | ====== Testplan ====== | ||
- | **Idee:** Erstellung eines zuverlässigen und nachvollziehbaren Tests für die Überprüfung der Entwicklung (Erstellung einer Baseline für Verbesserungen/ | + | **Idee:** Erstellung eines zuverlässigen und nachvollziehbaren Tests für die Überprüfung der Entwicklung (Erstellung einer Baseline für Verbesserungen/ |
+ | bzw. für den Vergleich zwischen verschiedenen Contiki-Versionen. | ||
**Vorgehensweise: | **Vorgehensweise: | ||
- | Die Tests werden in unterschiedlichen Entfernungen (1m, 3m, 5m, 8m, 10m, 15m) durchgeführt. | + | - Die Tests werden in unterschiedlichen Entfernungen (1m, 3m, 5m, 8m, 10m, 15m) durchgeführt. Aus den Entfernungen ergeben sich unterschiedliche RF Charakteristiken, |
- | Aus den Entfernungen ergeben sich unterschiedliche RF Charakteristiken, | + | - Contiki (2.4-only?) soll angeblich Re-Transmissions (Acknowledge) auf 6LoWPAN-Ebene nutzen. Ist das Ausschaltbar? |
- | dass 6LoWPAN Frames verloren gehen. Um Störeinflüsse aus der Umgebung auszuschließen (zu mitteln) sollten die Tests | + | - Jeder Test sollte |
- | jeweils 100 mal wiederholt werden. | + | |
**Ansätze: | **Ansätze: | ||
Zeile 22: | Zeile 66: | ||
====== Zu Beachten ====== | ====== Zu Beachten ====== | ||
=== Ausgabe der 6LoWPAN-Frames ermitteln === | === Ausgabe der 6LoWPAN-Frames ermitteln === | ||
- | Bei Contiki 2.4 sieht man die 6-LoWPAN-Fragmente im Wireshark.\\ | + | Bei Contiki 2.4 sieht man die 6-LoWPAN-Fragmente im Wireshark. Ist das bei 2.5 immer noch so? Wenn nicht, was müsste ggf. angepasst werden, bzw. könnten wir eine eigene |
- | Ist das bei 2.5 immer noch so? Wenn nicht, was müsste ggf. angepasst werden, bzw. könnten wir eine eigene | + | Ausgabe bei Fehlern in den Code einbauen **TODO!** |
- | Ausgabe bei Fehlern in den Code einbauen **(TODO!)** | + | |
+ | Mir ist dabei nirgends aufgefallen, | ||
+ | |||
+ | '' | ||
+ | void mac_LowpanToEthernet(void) | ||
+ | |||
+ | ruft auf: | ||
+ | |||
+ | '' | ||
+ | parsed_frame_t | ||
+ | |||
+ | |||
+ | Unklar ist mir derzeit noch, wie der normale Contiki TCP-Stack die Pakete aus dem 6LoWPAN holt und ggf. die | ||
+ | Prüfsumme überprüft. | ||
+ | |||
+ | Hilfreich für die Codeanalyse ist http:// | ||
=== Ggf. RSS ermitteln und mit printf über Debug ausgeben === | === Ggf. RSS ermitteln und mit printf über Debug ausgeben === |
contiki/6lowpan_frames.1336907216.txt.gz · Zuletzt geändert: 2017/01/24 18:49 (Externe Bearbeitung)