Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP,...

19
Beispielbild MPTCP – Multipath TCP Dominik Weidemann Fachbereich Informatik und Mathematik Institut für Informatik Freie Universität Berlin

Transcript of Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP,...

Page 1: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

Beispielbild

MPTCP – Multipath TCP

Dominik Weidemann

Fachbereich Informatik und Mathematik

Institut für Informatik

Freie Universität Berlin

Page 2: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

2Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Gliederung

●Motivation

●Probleme● TCP und Multipath● Staukontrolle

●MPTCP● Funktionsweise● Staukontrolle● Probleme bei der Einführung von MPTCP

●Zusammenfassung und Ausblick

●Q & A

Page 3: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

3Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Motivation – Warum brauchen wir 'Mehrwege'?

●Mobilfunkschnittstelle ist langsam und teuer

●WLAN ist schnell, aber nicht überall verfügbar

➢ Motivation: störungsfreier Wechsel➢ Motivation: Erhöhung der

Verbindungsgeschwindigkeit

●Eine Netzwerk-Schnittstelle ist Single-Point-of-Failure

➢ Motivation: Redundanz

Page 4: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

4Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Idee: Ressource Pooling Principle (RPP)

➔Mehrere Ressourcen sollen sich wie eine kombinierte Ressource verhalten

Quelle: Damon Wischik, Mark Handley, and Marcelo Bagnulo Braun. The resource pooling principle. ACM CCR, 2008

Wie kann das Ressource Pooling Principle eingesetzt werden, um die motivierten Ziele für die Mehrwege-Kommunikation zu erreichen?

Page 5: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

5Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

RPP und OSI-Modell

RPP auf der Sicherungsschicht- Redundanz- Durchsatz-Erhöhung

Nachteil: lokale Maßnahme

RPP auf Vermittlungsschicht- Es werden immer mehrere Adressen benötigt- Zuordnung von Paketen zu Anwendungen ist schwierig

RPP auf Transportschicht- Ermöglicht Ende-zu-Ende-Kommuntikation trotz verschiedener

darunterliegender Protokolle (störungsfreier Wechsel)- Redundanz und Geschwindigkeit durch mehrere (disjunkte) Wege - Transparent für Anwendungen- Verbesserte Staukontrolle

Page 6: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

6Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

RPP und Staukontrolle

Quelle: Damon Wischik, Mark Handley, and Marcelo Bagnulo Braun. The resource pooling principle. ACM CCR, 2008

„Ein Netzwerk wird aus Sicht des Benutzers als verstopft (congested) angesehen, wenn es eine spürbare Qualitätsminderung des Dienstes aufgrund erhöhter Netzwerklast gibt.”

Quelle: Michael Welzl. Network Congestion Control: Managing Internet Traffic

RPP löst auch Probleme der Staukontrolle und bringt damit Geschwindigkeitsvorteile

Page 7: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

7Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Anforderungen an Transportschicht-Lösung

●Interoperabilität und Transparenz ● Hilft der Integration in bestehende Hard- und Software-Systeme

●Abwärtskompatibilität zu TCP● Inkrementelle Inbetriebnahme möglich

●Strikte Modularisierung● Ermöglicht einfache Erweiterbarkeit● Zukunftsorientiert

●Fairness gegenüber TCP● Darf normale TCP-Verbindungen nicht stören

Page 8: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

8Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Grundlagen von Multipath TCP (MPTCP)

Ziel●Mehrwegeunterstützung durch TCP-Erweiterung

Kerneigenschaften●Bietet gleiche API wie TCP

● Keine Veränderungen der Anwendung nötig für Basisfunktion● Zusatzfunktionen über separate API Calls

●Bietet Fallback auf TCP● Gliedert sich in vorhandene Infrastruktur ein

●Konzept Subflow (bei mehreren Pfaden)● Ein Subflow entspricht einer TCP-Verbindung● Subflows werden zu logischer Verbindung zusammengefasst

●Verschiedene Sequenznummern auf Subflow- und Daten-Ebene

Page 9: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

9Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

MPTCP - Verbindungsaufbau

●3-Wege-Handschlag

●MP_CAPABLE Option um MPTCP-Kompatibilität anzuzeigen

●Austausch von Schlüsseln ●dienen der Verbindungs-Identifikation

●Wie werden die Schlüssel benutzt?

Page 10: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

10Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

MPTCP – Neuer Subflow

●Austausch von Adressen über TCP-Segmente mit der Option ADD_ADDRESS

●MAC-A = MAC(Key=(Key-A+Key-B), Msg=(R-A+R-B))

●MAC-B = MAC(Key=(Key-B+Key-A), Msg=(R-B+R-A))

●Verfahren ermöglicht Identifizierung einer Verbindung ohne 'Listen' auf dem Zielport

Page 11: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

11Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

MPTCP - Datenaustausch

Quelle: https://scm.info.ucl.ac.be/trac/ mptcp/rawattachment/wiki/files/mtcp_impl_arch.2.png

●Eine Sende-Queue beliefert alle Subflows ●Daten werden auf Subflow-Ebene wie bei TCP bestätigt

●Sequenznummern auf Verbindungsebene●Bestätigen Daten auf logischer Ebene●Empfänger kann Reihenfolge der Daten wiederherstellen

●Send- und Recv-Fenster sind für Verbindung global

Page 12: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

12Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Einschub: Stau-Kontrolle mit TCP (1)

4 Maßnahmen:

●Slow Start●Exponentielle Erhöhung des Sendefensters bis Schwellwert überschritten wird

●Congestion Avoidance●Lineare Erhöhung nach Schwellwert-Überschreitung

Page 13: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

13Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Einschub: Stau-Kontrolle mit TCP (2)

●Fast Retransmit ● Duplizierte ACKs ermöglichen

erneutes Versenden vor dem Timeout● Danach slow start (Staufenster = 1

Paket)

●Fast Recovery● Fast Retransmit kombiniert mit

Congestion Avoidance● Reduziert das Staufenster auf

Schwellwert

Quelle: http://www.isi.edu/nsnam/DIRECTED_RESEARCH/DR_WANIDA/DR/images/fast-retransmit-1.gif

Page 14: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

14Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

MPTCP - Staukontrolle

Die Staukontrolle übertragen auf MPTCP ist unfair gegenüber TCP- Öffnet MPTCP z.B. 9 Subflows, die sich mit einem TCP-Stream ein

Bottleneck teilen, würde es 90% der Bandbreite bekommen

Zwei Fairness-Ziele:1. Der Datendurchsatz von MPTCP sollte mindestens genauso groß sein, wie von TCP auf dem besten von MPTCP benutzen Pfad.2. MPTCP sollte sich fair verhalten, wenn es sich mit anderen TCP-Verbindungen ein gemeinsames Bottleneck teilt. Gibt es kein Bottleneck, so darf es mehr Bandbreite beanspruchen.

MPTCP erreicht diese Ziele durch:

- „Probing“ von verstopften Pfaden - dem hauptsächlichen Benutzen der freien Pfade

Page 15: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

15Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Probleme bei der Einführung von MPTCP

●Wirtschaft● Kosten für Nutzer (zweiter Internet-Anschluss)● Auswirkungen von MPTCP auf bestehende Trafic-Engineering-

Politiken von ISPs

●Implementierung● Linux-Restriktionen bzgl. Gleitkomma-Arithmetik● Wahl der Empfangs-Puffer-Größe

●Inbetriebnahme● Um die Interoperabilität zu gewährleisten, muss MPTCP bei jedem

Ausnahmefall auf TCP zurückfallen (Problem mit Middleboxes)

Page 16: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

16Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Zusammenfassung

MPTCP ermöglicht:

●Mehrere Verbindungen zu einer logischen zu bündeln● Damit auch transparente Wechsel der Netzwerk-Schnittstellen

●Die Übertragungsgeschwindigkeit zu erhöhen durch paralleles Benutzen mehrerer Subflows

●Ohne Änderung an bestehenden Strukturen eingeführt zu werden

Page 17: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

17Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Ausblick

MPTCP wird Teil von SKIMS (Schichtenübergreifendes kooperatives Immunsystem für mobile, mehrseitige Sicherheit)

●Kontinuierliche Überwachung und Bewertung der Kanäle unter Berücksichtigung diverser Sicherheitsaspekte

●Steigerung von Sicherheit und Übertragungsgeschwindigkeit durch Benutzung aller sicheren Pfade

●Entwicklung eigener Pfadwahl-Komponente, die Entscheidungen trifft aufgrund von Netzverkehr-Beobachtungen

Page 18: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

18Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Q & A

Fragen?

Page 19: Beispielbild - mi.fu-berlin.de · Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011 6 RPP und Staukontrolle Quelle: Damon Wischik, Mark Handley, and Marcelo

19Fachbereich Mathematik und Informatik, Dominik Weidemann, MPTCP, 17.06.2011

Danke!