Network coding describes a technique to perform coding operations on packet contents throughout the network, increasing the information density of a single transmission and therefore increasing network throughput.
This book describes the portation of an application of network coding onto an embedded linux. It therefore describes the software COPE, which is a network coding implementation based on the modular software router CLICK. This router is also introduced.
Then the book explains the embedded Linux system OpenWRT and the portation of a software onto that system as well as the compilation and deployment of a new firmware image.
Then the experiment and its results are explained.
The work then introduces novel schemes of network coding based on the idea behind COPE. These schemes are based on the improvement of resience rather than throughput.
Inhaltsverzeichnis
1. Introduction
1.1. Network Coding
1.1.1. Principle
1.1.2. Linear Coding
1.1.3. Deterministic Coding
1.1.4. Decentralized network coding
1.1.5. Random Coding
1.2. Peer-to-Peer Swarming
1.2.1. Microsoft Avalanche
1.2.2. Codetorrent
1.3. Haggle
1.4. COPE
1.4.1. Opportunistic Listening
1.4.2. Opportunistic Coding
1.4.3. Opportunistic Routing
1.4.4. Pseudo Broadcast
1.4.5. Realization of the Cope principle
1.4.6. Performance Bottlenecks for TCP
2. Implementations
2.1. MIT Reference Implementation
2.1.1. CLICK
2.1.2. Roofnet
2.1.3. Madwifi-stripped
2.1.4. COPE elements
2.2. OpenWRT
2.2.1. Stable Branch / White Russian
2.2.2. “Bleeding Edge” / Kamikaze
2.2.3. Buildroot Environment
2.2.4. Packages
2.2.5. Image Deploying / Flashing
3. Measurements
3.1. Layout of the experiments
3.1.1. Retransmissions
3.1.2. Bandwidth
3.1.3. Memory leak
3.2. Measurement results
3.2.1. Throughput without coding
3.2.2. Throughput with coding
3.2.3. Analysis
3.3. Conclusion of the experiments
4. Resilience through redundancy
4.1. Zaib Quality of Service
4.1.1. Problems Addressed
4.1.2. Improvements
4.1.3. Complete solution
4.1.4. Example
4.1.5. Simulation / Analysis
4.2. Adaptive Preventive Redundancy
4.2.1. Problems addressed
4.2.2. Improvements
4.2.3. Complete solution
4.2.4. Example
4.2.5. Advantages against Reed-Solomon Coding
4.3. Outlook
Zielsetzung & Themen
Die vorliegende Master-Thesis untersucht die praktische Anwendung von Network Coding in drahtlosen Netzwerken, um den Durchsatz zu erhöhen und die Ausfallsicherheit durch redundante Übertragungen zu verbessern. Das primäre Ziel ist die Implementierung des COPE-Verfahrens auf einem SOHO-Router unter Verwendung von OpenWRT, um die theoretischen Leistungsvorteile in einer realen Umgebung zu validieren.
- Grundlagen und Prinzipien von Network Coding und linearen Codes
- Analyse des COPE-Protokolls und dessen Implementierung in drahtlosen Mesh-Netzwerken
- Experimentelle Evaluierung der Durchsatzsteigerung durch Network Coding
- Entwicklung von Ansätzen zur Erhöhung der Ausfallsicherheit (Zaib Quality of Service und Adaptive Preventive Redundancy)
- Herausforderungen bei der Implementierung von Netzwerk-Software auf eingebetteten Linux-Systemen (OpenWRT)
Auszug aus dem Buch
1.1.1. Principle
Instead of transmitting one packet after the other, like traffic on roads, network coding exploits the fact that instead of simply forwarding the transmitted data can be used for calculations that improve the information density per packet.
Therefore data for multiple packets for different destinations can be combined (encoded) and sent in one broadcast to all destinations. The premise is that each destination receives enough data to reconstruct the original information. Thus each relaying node (routers or mesh nodes) can combine several input packets in one or more output packets that will be sent "downstream".
A receiver only has to receive enough linear combinations of the packets it is looking for in order to reconstruct the data.
Zusammenfassung der Kapitel
1. Introduction: Dieses Kapitel erläutert die theoretischen Grundlagen von Network Coding, verschiedene Kodierungsansätze sowie Anwendungen in P2P-Netzwerken und Protokollen wie COPE und Haggle.
2. Implementations: Hier werden die praktischen Schritte zur Implementierung von COPE auf einem OpenWRT-basierten Linux-Router beschrieben, inklusive der Nutzung von Click-Software-Routern.
3. Measurements: Dieses Kapitel dokumentiert den experimentellen Versuchsaufbau zur Evaluierung des COPE-Verfahrens sowie die Analyse der erzielten Durchsatzsteigerungen.
4. Resilience through redundancy: Der Autor stellt neue Konzepte vor, bei denen Network Coding nicht zur Durchsatzmaximierung, sondern zur Steigerung der Ausfallsicherheit und Redundanz in drahtlosen Verbindungen eingesetzt wird.
Schlüsselwörter
Network Coding, Wireless Networks, COPE, Durchsatz, Ausfallsicherheit, Mesh-Netzwerke, OpenWRT, Click Router, Redundanz, Pakete, Routing, Latenz, Linux, Paketverlust, Quality of Service
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit beschäftigt sich mit der praktischen Umsetzung und Evaluierung von Network Coding in drahtlosen Netzwerken, um Durchsatz und Zuverlässigkeit zu verbessern.
Was sind die zentralen Themenfelder?
Die Schwerpunkte liegen auf der Funktionsweise von Network Coding, der Portierung des COPE-Protokolls auf eingebettete Router-Systeme und der Entwicklung neuer Mechanismen für redundante Datenübertragung.
Was ist das primäre Ziel oder die Forschungsfrage?
Ziel ist es, den Durchsatzvorteil von Network Coding in einem realen Testaufbau zu messen und zusätzlich Konzepte zu entwickeln, wie Netzwerk-Kodierung die Ausfallsicherheit in unzuverlässigen drahtlosen Umgebungen erhöhen kann.
Welche wissenschaftliche Methode wird verwendet?
Der Autor kombiniert theoretische Analysen mit einem experimentellen Ansatz, bei dem ein Testnetzwerk (Alice und Bob) mit und ohne Network Coding aufgebaut und mittels Messungen (iperf) quantitativ ausgewertet wurde.
Was wird im Hauptteil behandelt?
Der Hauptteil gliedert sich in die theoretische Einführung, die Beschreibung der Software-Implementierung (Click/OpenWRT), die Darstellung der Messergebnisse sowie theoretische Vorschläge für eine verbesserte Ausfallsicherheit durch redundante Paket-Kodierung.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die zentralen Begriffe sind Network Coding, COPE, OpenWRT, Mesh-Netzwerke und Redundanz durch Kodierung.
Welche spezifischen Probleme gab es bei der Implementierung auf den Routern?
Die größte Hürde war die Abhängigkeit des COPE-Protokolls von veralteten, speziellen WLAN-Treibern (madwifi-old), was die Portierung auf moderne Broadcom-basierte Hardware und das OpenWRT-System massiv erschwerte.
Warum zeigt sich ein Gewinn bei der Ausfallsicherheit als vielversprechend?
Da Network Coding in realen Szenarien oft durch hohe Paketverlustraten limitiert ist, schlägt der Autor vor, Kodierung primär zur Fehlertoleranz zu nutzen, anstatt nur auf reinen Durchsatz zu zielen.
- Citar trabajo
- Dipl.-Inf. (FH), M. Sc. Johannes Hund (Autor), 2007, Applied Network Coding in Wireless Networks, Múnich, GRIN Verlag, https://www.grin.com/document/148477