Netzüberlastung
Netzüberlastung in Datennetzwerk und Warteschlangenentheorie ist der reduzierte Servicequalität Dies geschieht, wenn ein Netzwerkknoten oder eine Verbindung mehr Daten trägt, als er verarbeiten kann. Typische Effekte sind Warteschlangenverzögerung, Paketverlust oder der Blockierung von neuen Verbindungen. Eine Folge der Überlastung ist, dass ein inkrementeller Anstieg der Last angeboten führt entweder nur zu einem kleinen Anstieg oder sogar zu einem Rückgang des Netzwerks Durchsatz.[1]
Netzwerkprotokolle das benutzt aggressiv Wiederholungen Um den Paketverlust aufgrund von Überlastungen zu kompensieren, kann die Stauung erhöht werden, selbst nachdem die anfängliche Belastung auf ein Niveau reduziert wurde, das normalerweise keine Netzwerkstaus induziert hätte. Solche Netzwerke zeigen zwei stabile Zustände unter dem gleichen Lastniveau. Der stabile Zustand mit niedrigem Durchsatz ist als bekannt als Zusammenbruch des Kongestiven.
Netzwerke verwenden Überlastungskontrolle und Überlastungsvermeidung Techniken, um zu versuchen, einen Zusammenbruch zu vermeiden. Diese beinhalten: Exponentielle Backoff in Protokollen wie z. CSMA/ca in 802.11 und das ähnliche CSMA/CD im Original Ethernet, Fenster Reduzierung von TCP, und faire Warteschlange in Geräten wie z. Router und Netzwerkschalter. Weitere Techniken, die überlastet Zugangskontrolle.
Netzwerkkapazität
Netzwerkressourcen sind begrenzt, einschließlich Router Verarbeitungszeit und Link Durchsatz. Ressourcenkonkurrenz kann unter mehreren gemeinsamen Umständen in Netzwerken auftreten. EIN WLAN wird leicht von einem einzelnen PC gefüllt.[2] Sogar in schnellen Computernetzwerken die Rückgrat kann leicht von einigen Servern und Client -PCs überlastet werden. Denial-of-Service-Angriffe durch Botnets sind in der Lage, selbst die größten zu füllen Internet -Rückgrat Netzwerkverbindungen, generieren groß angelegte Netzwerkstaus. In Telefonnetzwerken a Massenanrufereignis Kann digitale Telefonkreise überwältigen.
Zusammenbruch des Kongestiven
Der Zusammenbruch des Kongestiven (oder ein Überlastungskollaps) ist die Erkrankung, in der die Überlastung nützliche Kommunikation verhindert oder begrenzt. Der Zusammenbruch der Überlastung erfolgt im Allgemeinen an Choke -Punkten im Netzwerk, wo der eingehende Verkehr die ausgehende Bandbreite übersteigt. Verbindungspunkte zwischen a lokales Netzwerk und ein Weitgebietsnetzwerk sind übliche Choke -Punkte. Wenn sich ein Netzwerk in diesem Zustand befindet, wird es in einem stabilen Zustand festgelegt, in dem die Verkehrsnachfrage ein hoher, aber wenig nützlicher Durchsatz ist Paketverzögerung und Verlust treten auf und Servicequalität ist extrem arm.
Der Zusammenbruch des Kongestiven wurde bis 1984 als mögliches Problem identifiziert.[3] Es wurde erstmals im frühen Internet im Oktober 1986 beobachtet.[4] wenn der Nsfnet Phase-I-Rückgrat hat drei Größenordnungen von seiner Kapazität von 32 kbit/s auf 40 Bit/s gesenkt, was bis zur Implementierung der Endknoten fortgesetzt wurde Van Jacobson und Sally Floyd's Stauungskontrolle zwischen 1987 und 1988.[5] Wenn mehr Pakete wurden gesendet als von Zwischenroutern behandelt werden, und die Zwischenrouter haben viele Pakete verworfen und erwarteten, dass die Endpunkte des Netzwerks die Informationen übertragen. Frühe TCP -Implementierungen hatten jedoch ein schlechtes Verhalten von Neuvermittlungen. Bei diesem Paketverlust schickten die Endpunkte zusätzliche Pakete, die die verlorenen Informationen wiederholten und die eingehende Rate verdoppelten.
Überlastungskontrolle
Die Überlastungskontrolle moduliert den Verkehrseintritt in ein Telekommunikationsnetz, um zu vermeiden, dass ein Zusammenbruch der Übersteuerung aufgrund der Übernahme von Überstörungen entsteht. Dies wird in der Regel durch Reduzierung der Paketrate erreicht. Während die Überlastungskontrolle verhindern, dass die Absender das überwältigen Netzwerk, Ablaufsteuerung verhindert, dass der Absender das überwältigt Empfänger.
Theorie der Überlastungskontrolle
Die Theorie der Überlastungskontrolle wurde von Pionierarbeit von Pionierarbeit Frank Kelly, der sich beantragte Mikroökonomische Theorie und konvexe Optimierung Theorie, um zu beschreiben, wie Personen, die ihre eigenen Raten kontrollieren, interagieren können, um eine zu erreichen optimal netzwerkweite Ratenzuweisung. Beispiele von optimal Rate Allocation sind MAX-MIN Fairallocation und Kellys Vorschlag von proportional fair Allokation, obwohl viele andere möglich sind.
Lassen die Flussrate sein , Sei die Kapazität der Verbindung , und 1 wenn fließen Verwendet Link und 0 sonst. Lassen , und Seien Sie die entsprechenden Vektoren und Matrix. Lassen streng streng sein konkave Funktion, genannt Dienstprogramm, was misst, wie viel Nutzen ein Benutzer durch Übertragung mit Geschwindigkeit erhält . Die optimale Ratenzuweisung erfüllt dann
- so dass
Das Lagrange Dual von diesem Problem entkoppelt so, dass jeder Durchfluss seine eigene Rate festlegt, die nur auf a basiert Preis vom Netzwerk signalisiert. Jede Verbindungskapazität führt zu einer Einschränkung, die zu a führt Lagrange -Multiplikator, . Die Summe dieser Multiplikatoren, ist der Preis, auf den der Fluss reagiert.
Die Überlastungskontrolle wird dann zu einem verteilten Optimierungsalgorithmus. In diesem Rahmen können viele aktuelle Algorithmen zur Überlastungsregelung modelliert werden, mit entweder die Verlustwahrscheinlichkeit oder die Warteschlangenverzögerung bei Link sind . Eine große Schwäche besteht Burstiness Dies bewirkt, dass unterschiedliche Ströme unterschiedlicher Verlust oder Verzögerung bei einem bestimmten Link beobachten.
Klassifizierung von Überlastungskontrollalgorithmen
Zu den Möglichkeiten zur Klassifizierung von Stauungskontrollalgorithmen zählen:
- Nach Typ und Menge an Feedback, die aus dem Netzwerk erhalten werden: Verlust; Verzögerung; Explizite Einzelbit- oder Multi-Bit-Signale
- Durch inkrementelle Bereitstellung: Nur der Absender muss geändert werden. Absender und Empfänger müssen geändert werden. Nur Router muss geändert werden. Absender, Empfänger und Router müssen geändert werden.
- Nach Performance Aspekt: Produktnetzwerke mit hoher Bandbreite-Delay; Verluste Links; Gerechtigkeit; Vorteil für kurze Flüsse; Links mit variabler Rate
- Nach Fairness Criterion: max-min-Fairness; proportional fair; kontrollierte Verzögerung
Minderung
Es wurden Mechanismen erfunden, um die Netzwerküberlastung zu verhindern oder mit einem Netzwerkkollaps umzugehen:
- Netzwerkplaner- - Aktive Warteschlangenverwaltung welche Netzwerkpakete in Anwesenheit von Überlastungen leistet oder selektiv abgewiesen werden
- Explizite Überlastungsbenachrichtigung- Eine Erweiterung der IP- und TCP -Kommunikationsprotokolle, die einen Durchflussregelmechanismus hinzufügt
- TCP -Überlastungskontrolle- Verschiedene Implementierungen von Bemühungen, sich mit Netzwerküberlastung zu befassen
Das korrekte Endpunktverhalten besteht in der Regel darin, fallengelassene Informationen zu wiederholen, aber die Wiederholungsrate schrittweise verlangsamen. Vorausgesetzt, alle Endpunkte tun dies, die Überlastung und das Netzwerk setzt das normale Verhalten wieder. Andere Strategien wie z. langsamer Start Stellen Sie sicher, dass neue Verbindungen den Router nicht überwältigen, bevor die Überlastungserkennung eingeleitet wird.
Zu den allgemeinen Überlastungsmechanismen zur Vermeidung von Router gehören faire Warteschlange und andere Planungsalgorithmen, und zufällige frühe Erkennung (Rot), bei denen Pakete zufällig fallen gelassen werden, wenn eine Überlastung erkannt wird. Dies löst die Endpunkte proaktiv auf die langsame Übertragung aus, bevor der Verstärker zusammenkommt.
Einige End-to-End-Protokolle sind unter überlasteten Bedingungen gut ausgelegt. TCP ist ein bekanntes Beispiel. Die ersten TCP -Implementierungen für die Überlastung wurden 1984 beschrieben.[6] Aber Van Jacobsons Einbeziehung einer Open -Source -Lösung in die Berkeley Standard Distribution Unix ("BSD") 1988 bot erstmals gutes Benehmen.
UDP kontrolliert keine Überlastung. Auf UDP gebaute Protokolle müssen unabhängig von Überlastungen umgehen. Protokolle, die unabhängig von der Überlastung mit fester Geschwindigkeit übertragen, können problematisch sein. Echtzeit-Streaming-Protokolle, darunter viele Voice over IP Protokolle, haben diese Eigenschaft. Daher müssen spezielle Maßnahmen wie die Servicequalität ergriffen werden, um zu verhindern, dass Pakete in Anwesenheit von Staus fallen gelassen werden.
Praktische Vermeidung von Netzwerkstaus
Verbindungsorientierte Protokolle, wie die weit verbreiteten TCP Protokollwache für Paketverlust, oder Warteschlangenverzögerung um ihre Übertragungsrate anzupassen. Verschiedene Prozesse zur Vermeidung von Netzwerken übernehmen verschiedene Kompromisse.[7]
TCP/IP -Überlastung Vermeidung
Das TCP -Überlastungsvermeidungsalgorithmus ist die Hauptbasis für die Überlastungskontrolle im Internet.[8][9][10][11][12]
Probleme treten auf, wenn gleichzeitig TCP -Ströme erfahren Heckdrops, besonders wenn Pufferbloat ist anwesend. Dieser verzögerte Paketverlust beeinträchtigt die automatische Überlastung von TCP. Alle Flüsse, die diesen Paketverlust erleben TCP Globale Synchronisation.
Aktive Warteschlangenverwaltung
Aktive Warteschlangenverwaltung (AQM) ist das Neubestehen oder Absetzen von Netzwerkpaketen in einem Senderpuffer, der mit a zugeordnet ist Netzwerkschnittstellencontroller (Nic). Diese Aufgabe wird von der ausgeführt Netzwerkplaner.
Zufällige frühe Erkennung
Eine Lösung ist zu verwenden zufällige frühe Erkennung (Rot) in der Egress -Warteschlange des Netzwerkausrüstung.[13][14] An Networking -Hardware Ports mit mehr als einer Ausstiegswarteschlange, gewichtete zufällige frühe Erkennung (WRED) kann verwendet werden.
Der rote indirekt signalisiert den TCP -Absender und den Empfänger durch Ablegen einiger Pakete, z. Wenn die durchschnittliche Warteschlangenlänge mehr als ein Schwellenwert (z. B. 50%) beträgt und löscht linear oder kubisch Weitere Pakete,[15] bis z. 100%, wie sich die Warteschlange weiter füllt.
Robuste zufällige frühe Erkennung
Das robuste zufällige frühe Erkennung (RRRED) Algorithmus wurde vorgeschlagen, um den TCP-Durchsatz gegen Denial-of-Service-Angriffe (DOS), insbesondere die LDOS-Angriffe mit niedriger Rate, zu verbessern. Experimente bestätigten, dass rotähnliche Algorithmen unter LDOS-Angriffen aufgrund der durch die Angriffe verursachten oszillierenden TCP-Warteschlangengröße anfällig waren.[16]
Flow-basierter WRED
Einige Netzwerkgeräte sind mit Ports ausgestattet, die jeden Fluss befolgen und messen können und dadurch in der Lage sind, einen zu großen Bandbreitenfluss gemäß einer gewissen Qualität der Service -Richtlinien zu signalisieren. Eine Politik könnte dann die Bandbreite unter allen Strömen durch einige Kriterien teilen.[17]
Explizite Überlastungsbenachrichtigung
Ein anderer Ansatz ist die Verwendung Explizite Überlastungsbenachrichtigung (ECN).[18] ECN wird nur verwendet, wenn zwei Hosts signalisieren, dass sie es verwenden möchten. Mit dieser Methode wird ein Protokollbit verwendet, um eine explizite Stauung zu signalisieren. Dies ist besser als die indirekte Überlastungsbenachrichtigung, die durch den Paketverlust durch die roten/gedrückten Algorithmen signalisiert wird, erfordert jedoch Unterstützung durch beide Wirte.[19][13]
Wenn ein Router ein als ECN-fähig gekennzeichnetes Paket erhält und der Router überlastet, setzt er das ECN-Flag, wodurch der Absender über Staus informiert wird. Der Absender sollte reagieren, indem er seine Übertragungsbandbreite verringert, z. B. durch die Verringerung der Sendungsrate durch Reduzierung der TCP -Fenstergröße oder auf andere Weise.
TCP -Fensterformung
Die Vermeidung von Überlastungen kann effizient erreicht werden, indem der Verkehr reduziert wird. Wenn eine Anwendung eine große Datei, eine Grafik oder eine Webseite anfordert, wirbt sie normalerweise für a Fenster von 32k und 64k. Dies führt dazu, dass der Server ein vollständiges Datenfenster sendet (vorausgesetzt, die Datei ist größer als das Fenster). Wenn viele Anwendungen gleichzeitig Downloads anfordern, können diese Daten einen Überlastungspunkt bei einem Upstream -Anbieter erstellen. Durch die Reduzierung der Fensterwerbung senden die Remote -Server weniger Daten, wodurch die Stauung verringert wird.[20][21]
Rückwärts ECN
Rückwärts ECN (BECN) ist ein weiterer vorgeschlagener Mechanismus zur Benachrichtigung von Staus. Es verwendet ICMP -Quellenlöschung Nachrichten als IP -Signalisierungsmechanismus zur Implementierung eines grundlegenden ECN -Mechanismus für IP -Netzwerke, bei der Überlastungsbenachrichtigungen auf IP -Ebene aufbewahrt und keine Verhandlungen zwischen Netzwerkendpunkten erforderlich sind. Effektive Überlastungsbenachrichtigungen können für die entsprechenden Anpassungen in die Transportschichtprotokolle wie TCP und UDP ausgebildet werden.[22]
Nebenwirkungen der Vermeidung des Zusammenbruchs der Kollaps
Radio -Links
Die Protokolle, die den Kollaps von Congestiven vermeiden, gehen im Allgemeinen davon aus, dass der Datenverlust durch Staus verursacht wird. In kabelgebundenen Netzwerken sind Fehler während der Übertragung selten. W-lan, 3g und andere Netzwerke mit einer Funkschicht sind aufgrund von Störungen anfällig für Datenverlust und können in einigen Fällen einen schlechten Durchsatz haben. Die TCP-Verbindungen, die über eine Funkbasis laufen Physische Schicht Sehen Sie den Datenverlust und neigen dazu, fälschlicherweise zu glauben, dass eine Überlastung auftritt.
Kurzlebige Verbindungen
Das Slow-Start-Protokoll funktioniert für kurze Verbindungen schlecht. Älter Internetbrowser Erstellte viele kurzlebige Verbindungen und öffnete und schloss die Verbindung für jede Datei. Dies hielt die meisten Verbindungen im langsamen Startmodus. Die anfängliche Leistung kann schlecht sein, und viele Verbindungen kommen nie aus dem langsamen Regime, was die Latenz erheblich erhöht. Um dieses Problem zu vermeiden, öffnen moderne Browser entweder mehrere Verbindungen gleichzeitig oder eine Verbindung wiederverwenden für alle von einem bestimmten Server angeforderten Dateien.
Zugangskontrolle
Zugangskontrolle ist jedes System, das vor dem Aufbau neuer Netzwerkverbindungen die Geräte erhalten muss. Wenn die neue Verbindung besteht, kann die Erlaubnis abgelehnt werden. Beispiele hier G.hn Standard für das Networking der Legacy -Verkabelung zu Hause, Ressourcenreservierungsprotokoll für IP -Netzwerke und Stream Reservierungsprotokoll zum Ethernet.
Siehe auch
- Bandbreitenmanagement- Kapazitätskontrolle in einem Kommunikationsnetzwerk
- Kaskadierfehler- systemisches Ausfallrisiko
- Choke -Austausch- Telefonaustausch für viele gleichzeitige Anrufversuche
- Erlang (Einheit)- Lastmaßnahme in der Telekommunikation
- Zauberer -Lehrling -Syndrom- Netzwerkprotokollfehler in den ursprünglichen Versionen von TFTP
- Teletaffic Engineering- Anwendung der Verkehrstechnik auf Telekommunikation
- Prügel- Ständiger Austausch zwischen Speicher und Speicher
- Verkehrsformung- Bandbreitenmanagementtechnik
- Zuverlässigkeit (Computernetzwerk)
Verweise
- ^ (Al-Bahadili, 2012, S. 282) Al-Bahadili, H. (2012). Simulation im Design und Modellieren des Computernetzwerks: Verwendung und Analyse. Hershey, PA: Igi Global.
- ^ Den Hartog, F., Raschella, A., Bouhafs, F., Kempker, P., Boltjes, B. & Seyedebrahimi, M. (2017, November). Ein Weg zur Lösung der Wi-Fi-Tragödie der Commons in Wohnblöcken. Im Jahr 2017 27. Internationale Telekommunikationsnetzwerke und Anwendungskonferenz (ITNAC) (S. 1-6). IEEE.
- ^ RFC 896
- ^ Herbst, K. R.; Stevens, W. R. (2011). TCP/IP illustriert, Volumen 1: Die Protokolle (2 ed.). Pearson Ausbildung. p. 739. ISBN 9780132808187.
- ^ Hafner, Katie (4. September 2019). "Sally Floyd, der die Dinge reibungslos online half, stirbt bei 69". New York Times. Abgerufen 5. September 2019.
- ^ Vinton G. Cerf; Robert E. Kahn (Mai 1974). "Ein Protokoll für das Paketnetzwerk Interkommunikation" (PDF). IEEE -Transaktionen zur Kommunikation. 22 (5): 637–648. doi:10.1109/tcom.1974.1092259. Archiviert von das Original (PDF) am 4. März 2016.
- ^ Lee, B.P.; Balan, R.K.; Jacob, L.; Seah, W.K.G.; Ananda, A. L. (2000), "TCP -Tunnel: Verknüpfung von Überlastungsstörungen", Proceedings 25. jährliche IEEE -Konferenz über lokale Computernetzwerke. LCN 2000, S. 408–417, doi:10.1109/lcn.2000.891077, ISBN 0-7695-0912-6, S2CID 34447400
- ^ Van Jacobson, Michael J. Karels. Vermeidung und Kontrolle der Stauung (1988). Verfahren des Sigcomm '88 Symposiums, Vol.18 (4): S. 314–329. Stanford, CA. August 1988. Dieses Papier stammt aus vielen der in TCP/IP verwendeten Stauungsvermeidungsalgorithmen.
- ^ RFC 2001 - TCP langsamer Start, Überlastungsvermeidung, schnelle Wiederherstellung und schnelle Wiederherstellungsalgorithmen
- ^ RFC 2581 - TCP -Überlastungskontrolle
- ^ RFC 3390 - TCP Erhöht das erste Fenster von TCP
- ^ TCP -Überlastungsvermeidung durch ein Sequenzdiagramm erklärt
- ^ a b Sally Floyd: Rot (zufällige frühe Erkennung) Warteschlangenmanagement
- ^ Sally Floyd, Van Jacobson. Zufällige frühe Erkennungs -Gateways zur Vermeidung von Staus (1993). IEEE/ACM -Transaktionen zur Vernetzung, Vol.1 (4): S. 397–413. Erfand zufällige frühe Erkennung (rot) Gateways.
- ^ Ein analytisches Red -Funktionsdesign, das ein stabiles Systemverhalten garantiert, Citeseerx 10.1.1.105.5995,
... Der Vorteil dieser Funktion liegt nicht nur darin, schwere Schwingungen zu vermeiden, sondern auch bei der Vermeidung von Verknüpfungen bei niedrigen Lasten. Die Anwendbarkeit der abgeleiteten Funktion ist unabhängig vom Lastbereich, keine Parameter sind einzustellen. Im Vergleich zur ursprünglichen linearen Tropfenfunktion wird die Anwendbarkeit bei weitem erweitert ... unser Beispiel mit realistischen Systemparametern ergibt eine Approximationsfunktion des Kubikums der Warteschlangengröße ...
- ^ Zhang, Changwang; Yin, Jianping; Cai, Zhiping; Chen, Weifeng (2010). "Rred: Robuster roter Algorithmus, um Angriffe mit niedriger Rate zu entgegenzuwirken." (PDF). IEEE -Kommunikationsbriefe. IEEE. 14 (5): 489–491. doi:10.1109/lcomm.2010.05.091407. S2CID 1121461.
- ^ "Überblick über die Vermeidung von Überlastungen". Cisco -Systeme. Abgerufen 2020-08-07.
- ^ RFC 3168 - Die Zugabe einer expliziten Überlastungsbenachrichtigung (ECN) zu IP
- ^ Vergleichende Studie zur Kontrolle Red, ECN und TCP (1999)
- ^ Verallgemeinerte Fensterwerbung für TCP -Überlastungcontrol (PDF), abgerufen 2020-11-13
- ^ Pop, O.; Moldova, ich.; Simon, CS.; Bíró, J.; Koike, A.; Ishii, H. (2000), "beworbene Fensterbasis TCP-Flusssteuerung in Routern", Telekommunikationsnetzwerk Intelligence, S. 197–218, doi:10.1007/978-0-387-35522-1_12, ISBN 978-1-4757-6693-6
- ^ Ein Vorschlag für die Rückwärts -ECN für das Internet -Protokoll
- John Evans; Clarence Filsfils (2007). Bereitstellung von IP- und MPLS -QoS für Multiservice -Netzwerke: Theorie und Praxis. Morgan Kaufmann. ISBN 978-0-12-370549-5.
- Sally Floyd (September 2000). Überlastungskontrollprinzipien. RFC 2914.
- John Nagle (6. Januar 1984). Überlastungsregelung in IP/TCP. RFC 896.
- Van Jacobson; Michael J. Karels (November 1988). "Überlastungsvermeidung und Kontrolle" (PDF).
Externe Links
- Floyd, S. und K. Fall, Förderung der Nutzung der Überlastung der End-to-End-Überlastung im Internet (IEEE/ACM -Transaktionen zum Networking, August 1999)
- Sally Floyd, Über die Entwicklung der End-to-End-Überlastungskontrolle im Internet: Eine eigenwillige Ansicht (IMA -Workshop zur Skalierung von Phänomenen in Kommunikationsnetzwerken, Oktober 1999) (PDF Format)
- Verknüpfungsbegriff: Warteschlange Archiviert 2003-03-08 am Wayback -Maschine
- Pierre-Francois Quet, Sriram Chellappan, Arjan Durresi, Mukundan Sridharan, Hitay Ozbay, Raj Jain, "Richtlinien für die Optimierung von ECN mit flüssigem Fluss basierendem TCP-Modell"
- Sally Floyd, Ratul Mahajan, David Wetherall: Rot-PD: Rot mit bevorzugter Abfallen Archiviert 2003-04-02 im Wayback -Maschine
- Ein generischer einfacher roter Simulator für Bildungszwecke von Mehmet Suzen
- Ansätze zur Überlastungskontrolle in Paketnetzwerken
- Papiere in der Überlastungskontrolle
- Zufällige Früherkennungs -Homepage
- Explizite Homepage für Überlastungsbenachrichtigungen
- TFRC Homepage
- AIMD-FC Homepage
- Jüngste Veröffentlichungen bei DOS-Angriffen (Denial-of-Service-Denial-of-Service)