uTorrent führt dazu, dass DNS gelegentlich nicht mehr funktioniert

uTorrent führt dazu, dass DNS gelegentlich nicht mehr funktioniert

Während der Verwendung von uTorrent reagiert DNS regelmäßig nicht mehr.

Das Problem scheint nicht mit einer zu hohen Bandbreitennutzung (vom Router zum Computer gesehen) zusammenzuhängen, sondern könnte mit einer Art Überflutungsschutz durch den Router zusammenhängen (mehr eingehende Verbindungen zum Router, als Windows akzeptiert).

Wie bringe ich das Netzwerk dazu, ordnungsgemäß zu funktionieren (und kann dabei natürlich weiterhin uTorrent verwenden)?

Antwort1

BitTorrent-Kundenaggressiv mit Gleichaltrigen verbinden... und einige Router interpretieren dies als SYN-Flood.


Offene Verbindungen

Wenn uTorrent geladen ist und Uploads/Downloads angehalten (nicht gestoppt) werden, bleiben die Verbindungen zu Ihren Peers bestehen. In der Zwischenzeit werden weiterhin Legionen von Internet-Peers versuchen, eine Verbindung zu Ihnen herzustellen, um herauszufinden, ob Sie die gewünschten Bits haben.

Irgendwann erreichen Sie das von Ihrem Betriebssystem vorgegebene Limit für offene Verbindungen (unter Windows 7 sind es 10 Verbindungen) und Verbindungen von neuen Clients werden in die Warteschlange Ihres Routers gestellt.

In der Warteschlange befindliche Clients prüfen aggressiv, ob eine Verbindung frei ist. Dieses aggressive Polling kann vom Router als Syn-Flood-Angriff interpretiert werden.

Lösungen

  • Senken Sie das Limit für halboffene Verbindungen in Ihrer BitTorrent-Software unter das von Ihrem Betriebssystem vorgegebene Verbindungslimit.
  • Deaktivieren Sie den IP-Flood-Schutz an Ihrem Router/Modem.

Bandbreitensättigung

Darüber hinaus wird bei einer uneingeschränkten uTorrent-Verbindung (oder einer beliebigen anderen Verbindung mit Massendatenverkehr) die Upload- (und möglicherweise auch Download-)Leitung voll ausgelastet, wodurch ein Teil des „Wartungsverkehrs“ in den Hintergrund gerät und die Nützlichkeit des Netzwerks abnimmt.

Hier ist ein Beispiel:

  1. Durch Hochgeschwindigkeitsdownloads (Torrents oder andere Downloads) wird der Downstream-Link überlastet.
  2. Der Benutzer versucht, eine Site aufzurufen, die er nicht kürzlich besucht hat. Der Computer generiert eine Anfrage nach DNS-Informationen für die gewünschte Site. Das Hochladen der Anfrage zum DNS-Server ist erfolgreich (keine Herausforderung für den Upstream-Pipe-Zugriff).
  3. Der DNS-Server antwortet (oder versucht es zumindest), aber die Antwort bleibt beim Versuch hängen, die Maschine des Benutzers zu erreichen, weil die Download-Pipe mit Download-Inhalten gesättigt ist. Da etwas gelöscht werden muss und der Download aggressiv darauf aus ist, die Geschwindigkeit aufrechtzuerhalten, wird die DNS-Antwort gelöscht (irgendwann, bevor sie den lokalen Router erreicht).

Dasselbe kann passieren, wenn der Upload nicht eingeschränkt ist. Wenn der Upload gesättigt ist, bleiben Pakete, die als TCP-ACK bezeichnet werden (die als Antworten vom Typ „Hey, ich habe Paket xyz erfolgreich erhalten“), hängen, wodurch Downloads zum Stillstand kommen und das Surfen im Internet sehr lückenhaft wird.

Lösungen

  • Finden Sie heraus, wie hoch die maximale Leistungsfähigkeit Ihrer Verbindung ist (hoch und runter, einzeln), und stellen Sie die maximale Geschwindigkeit Ihrer Massenübertragungsclients so ein, dass sie nicht mehr als etwa 80 % dieser Geschwindigkeit nutzen. Dadurch bleibt „Spielraum“ für Dinge wie DNS- und TCP-ACK-Pakete, um den Massenverkehr zu umgehen und schnell verarbeitet zu werden.
  • Verwenden Sie einen Router, der Traffic Shaping so handhaben kann, dass bestimmter Datenverkehr (DNS, IMCP Ping, TCP-ACK) gegenüber anderen Datenverkehrsarten priorisiert und einige Datenverkehrsarten (insbesondere Torrents) herabgestuft werden können. Dies ist meine bevorzugte Methode. Dies kann den zusätzlichen Vorteil bieten, dass die gesamte Up- und Downpipe für Torrent-Datenverkehr verwendet werden kann, wenn dieser durch Datenverkehr mit höherer Priorität nicht infrage gestellt wird.
  • Verwenden Sie eine Kombination aus 1 und 2, um „fehlverhaltenden“ Verkehr einzuschränken.

Wenn Sie an weiteren Informationen über Traffic Shaping für Linux/BSD-Distributionen interessiert sind,MonoWallUndIPCopbeide haben einige gute Informationen.

Antwort2

Wenn ich so etwas habe,Wiresharkist mein bester Freund.

Doch zunächst ist es gut, sich diese drei Dinge klarzumachen:

  • Die Tatsache, dass der Ping funktioniert, bedeutet nicht, dass der DNS (oder ein anderer Dienst) funktioniert und umgekehrt.

    Das liegt daran, dass Ping ein völlig anderes Protokoll verwendet (ICMP, während DNS IP und eine Kombination aus UDP und TCP verwendet), auf einer völlig anderen Ebene des Netzwerkmodells. Alles auf dem Weg, von Ihrer persönlichen Firewall über die Anzahl der Router bis hin zum eigentlichen Host, auf dem der Dienst ausgeführt wird, kann möglicherweise so konfiguriert werden, dass eines davon verworfen wird, das andere jedoch nicht (sei es die Paranoia des Administrators oder ein Fehlerfall), obwohl dies normalerweise eher bei ICMP als bei anderen passiert.

  • Generell ist es auch gut, klarzustellen, ob es Ihre (DNS-)Anfragen oder die Antworten sind, die verloren gehen.

    Nun, das jeweilige Programm, das Sie verwenden, sollte Ihnen dies verdeutlichen, aber in der Regel ist es einfacher, es selbst in der Wireshark-GUI zu sehen :)

  • Wie ich bereits erwähnt habe, verwendet DNS normalerweise UDP, um die Inhalte von Anfragen und Antworten zu übermitteln.

    Im Gegensatz zu seinem Bruder TCP ist UDP so definiert, dass eskeine Garantie dass das Paket überhaupt zugestellt wird, und es gibt nichts, was ein Router tun muss (oder kann), um Sie über einen Fehler zu informieren. (Dies ist ein Opfer für eine weitere Funktion von UDP: Es ist unglaublich schnell. Router müssen keine Informationen über den Absender oder die Reihenfolge der Pakete speichern, sie geben sie einfach schnell weiter und vergessen sie. Sie können ihnen sogar ganz sicher eine höhere Priorität als TCP zuweisen.)

Normalerweise würde ich als Erstes Folgendes tun:

  1. Starten Sie Wireshark
  2. Klicken Sie auf Aufnahmeoptionen
  3. Stellen Sie für den Erfassungsfilter ein, host 1.2.3.4dass Sie nur den Verkehr zwischen Ihnen und 1.2.3.4 erfassen.
  4. Aufnahme starten
  5. Sobald Sie alle auf diese Weise gestartet haben, versuchen Sie Ihre Befehle

Basierend auf Ihrem letzten Update: Ich kenne diese Software nicht, aber ich würde definitiv den uTorrent-Client verdächtigen. Es ist möglich, dass eine Anwendung zu viele UDP-Pakete sendet, sodass beispielsweise ein bestimmtes Limit auf Ihrem Heimrouter erreicht wird und er beginnt, UDP-Pakete wegzuwerfen.

Antwort3

Ich würde versuchen,DNS-Benchmark-Tool von GRC. Es testet die DNS-Server, die Sie verwenden möchten, sowie viele andere DNS-Server. Es testet nicht nur ihre Geschwindigkeit, sondern auch ihre Zuverlässigkeit. Es ist kostenlos und muss nicht installiert werden (es ist jedoch nur für Windows verfügbar). Auf diesen Seiten finden Sie auch viele gute Informationen zu DNS.

Antwort4

Ich habe eine Lösung gefunden, auch wenn ich sie nicht ganz verstehe. Wenn es jemand richtig erklären kann, posten Sie sie bitte als Antwort und ich werde ihm eine Belohnung zukommen lassen, weil die anderen Antworten nicht geholfen haben.

Wie ich im Anhang der Frage erwähnt habe, war uTorrent mit dem Problem verbunden, da das Schließen von uTorrent das Problem löste. Ich beschloss herauszufinden, wie ich es beheben konnte, ohne uTorrent schließen zu müssen. Indieser ThreadUndDieses hier(das war sehr relevant, weil die Leute dort den gleichen ISP und Router haben) Ich habe Vorschläge gefunden, die ich deaktivieren sollteIP-Hochwasserschutzauf meinem Router und es hat funktioniert! Das Problem und die Lösung waren exotisch, möglicherweise spezifisch für den Router Cisco EPC3925 oder sogar für einen bestimmten ISP (in Europa weit verbreitet, deshalb war es schwierig, etwas auf Englisch zu googeln).

verwandte Informationen