Realisierung des Content-Centric Networking-Ansatzes in der Netlet-based Node Architecture
- Forschungsthema:Future Internet
- Typ:Bachelorarbeit
- Betreuung:
- Bearbeitung:Isabel Funke
-
Beschreibung
Neben evolutionären Ansätzen, die darauf abzielen, das existierende Internet schrittweise zu verbessern, gibt es auch eine Vielzahl interessanter radikaler Ansätze, die komplett neue Kommunikationsparadigmen definieren. Ein vielversprechender Ansatz ist Content-Centric Networking (CCN): Hier werden nicht mehr die Rechner, die den Inhalt bereitstellen, adressiert, sondern der Inhalt selbst. Ein größeres Projekt, das einen solchen Ansatz verfolgt, ist das CCN Projekt des PARC (www.ccnx.org). Treibende Kraft dahinter ist u.a. Van Jacobson, einer der Väter von TCP. Die CCN Architektur behandelt Daten (content) als hauptsächlichstes Architekturelement und trennt deren Speicherort von deren Identität und Integrität.
Aufgabenstellung
Die Netlet-based Node Architecture (NENA) ermöglicht es, verschiedene Netzwerkarchitekturen gleichzeitig zu betreiben. Dabei werden Netzwerkprotokolle in sogenannten Netlets gekapselt. An Anwendungen wird eine vereinfachte Schnittstelle für die Kommunikation über das Netzwerk bereitgestellt, die keinerlei netzwerkspezifisches Wissen voraussetzt. NENA wählt für eine bestimmte Kommunikationsaufgabe, transparent für die Anwendung, automatisch das passende Netlet aus. Da Netlets transparent geändert, hinzugefügt oder entfernt werden können, ermöglicht NENA das einfache Ausbringen neuer Netzwerkarchitekturen und fördert damit Innovationen im Internet.
Für die vorhandene NENA-Prototypimplementierung wurde bisher nur eine einfache Netzwerkarchitektur implementiert, die der herkömmlichen IP-Protokollfamilie ähnelt. Um zu zeigen, dass NENA auch neuartige Netzwerkarchitekturen unterstützt, wurde in dieser Arbeit die "Content- Centric Networking"-Netzwerkarchitektur für NENA implementiert.
Arbeitsumgebung
Klimatisierter Rechner-Pool, GLUCK-System (Kaffee und andere Getränke), zahlreiche Testbett-Rechner
Voraussetzung
Grundlegende Programmierkenntnisse, Kenntnisse in C/C++ hilfreich