HTTP 502- und 504-Gateway-Timeout-PCAP-Analyse: Proxy, Load Balancer, Upstream oder Netzwerk?
So diagnostizieren Sie HTTP 502 Bad Gateway und 504 Gateway Timeout mit Paketerfassungen, einschließlich Proxy-zu-Upstream-TCP, TLS, Anforderungs-Timing, Backend-Resets und blockierten Antworten.
HTTP-Fehler „502 Bad Gateway“ und „504 Gateway Timeout“ sind Symptome der Proxy-Ebene. Ein Browser oder API-Client sieht die Antwort des Proxys, aber das eigentliche Problem kann zwischen dem Proxy und dem Upstream-Server, innerhalb der Upstream-Anwendung, bei der TLS-Aushandlung, bei der TCP-Erreichbarkeit oder in der Timeout-Richtlinie liegen. Benutzer suchen nach „502 pcap-Analyse“, „504 Gateway-Timeout-Paketerfassung“, „Proxy-Upstream-Reset“, „Load-Balancer-Timeout Wireshark“ und „Fehlerbehebung bei fehlerhaftem Gateway-Netzwerk“, wenn die Protokolle nicht ausreichen.
Die PCAP-Chirurgie ist nützlich, da Proxy-Ausfälle die Paketgeschichte möglichst auf beiden Seiten benötigen: Client-zu-Proxy und Proxy-zu-Upstream.
Was 502 normalerweise bedeutet
„502 Bad Gateway“ bedeutet normalerweise, dass der Proxy eine ungültige, unvollständige oder fehlgeschlagene Antwort vom Upstream erhalten hat. Zu den Ursachen gehören:
- Upstream-TCP-Reset.
- Upstream-TLS-Handshake-Fehler.
- Upstream-Verbindung vorzeitig geschlossen.
- Proxy mit falschem Port verbunden.
- Das Backend hat fehlerhaftes HTTP zurückgegeben.
- Der Load Balancer hatte keinen fehlerfreien Upstream.
- Protokollkonflikt, z. B. HTTPS erwartet, aber HTTP gesendet.
Der Client sieht nur den 502 des Proxys. Der Paket-Trace kann zeigen, was im Upstream passiert ist.
Was 504 normalerweise bedeutet
„504 Gateway Timeout“ bedeutet normalerweise, dass der Proxy die Anfrage weitergeleitet hat, aber vor Ablauf des Timeouts keine vollständige Upstream-Antwort erhalten hat.
Zu den Ursachen gehören:
- Upstream-Anwendung langsam.
- TCP-Verbindung zu Upstream-Ständen.
- Der Server akzeptiert die Verbindung, antwortet jedoch nie.
- Große Antwort durch MTU oder Paketverlust blockiert.
- Datenbank- oder Abhängigkeitsverzögerung hinter dem Upstream.
- Proxy-Timeout zu kurz.
- Firewall- oder NAT-Leerlauf-Timeout.
Der wichtigste Beweis ist das Timing: wann der Proxy die Upstream-Anfrage gesendet hat und wann er aufgegeben hat.
Platzierung erfassen
Die besten Beweise stammen von:
- Client-Seite: siehe final 502/504.
- Proxy-seitige Schnittstelle für den Client.
- Proxy-seitige Upstream-Schnittstelle.
- Upstream-Serverseite.
Wenn Sie nur auf dem Client erfassen, können Sie nachweisen, dass der Proxy 502/504 zurückgegeben hat, aber nicht, warum. Wenn Sie am Proxy erfassen, können Sie das Upstream-Verhalten überprüfen.
TCP und TLS vor HTTP
Überprüfen Sie vor der Diagnose von HTTP Folgendes:
- Hat der Proxy TCP zum Upstream eingerichtet?
- Wurde der TLS-Handshake abgeschlossen?
- Entsprach SNI den Upstream-Erwartungen?
- Wurde der Upstream zurückgesetzt?
- Wurden Pakete erneut übertragen?
Wenn TCP oder TLS ausfällt, ist der HTTP-Status möglicherweise nur die Übersetzung eines Fehlers auf niedrigerer Ebene durch den Proxy.
Anfrage gesendet, keine Antwort
Suchen Sie für 504 nach:
Proxy -> Upstream: HTTP request
No upstream response for timeout interval
Proxy -> Client: HTTP/1.1 504 Gateway Timeout
If upstream later responds after the proxy timeout, the application is slow or timeout is too short. If upstream never sees the request, routing or proxy-to-upstream path is suspect.
Checklist
Use this workflow:
- Identify client, proxy, and upstream.
- Capture both sides of proxy if possible.
- Confirm final status returned to client.
- Inspect proxy-to-upstream TCP handshake.
- Inspect TLS handshake if HTTPS upstream.
- Check whether upstream request was sent.
- Check whether upstream sent any response.
- Look for RST, FIN, retransmission, zero window, or idle timeout.
- Measure time from upstream request to proxy error.
- Preserve packet timing when trimming.
Final diagnosis
HTTP 502 and 504 are not root causes. They are proxy reports. Packet evidence can distinguish upstream reset, TLS failure, no healthy backend, slow upstream, network stall, MTU issue, or timeout policy.
PCAP Surgery helps isolate the exact proxy/upstream conversation so the status code can be tied to packet-level behavior.
<!-- pcap-localized-evidence-foundation-v1:start -->Paketbasierte Antwort für „HTTP 502- und 504-Gateway-Timeout-PCAP-Analyse: Proxy, Load Balancer, Upstream oder Netzwerk?“
Die direkte Antwort lautet: Ein Analyzer-Label oder eine Anwendungsmeldung bestimmt die Ursache nicht. Beginnen Sie mit Capture-Punkt und Flussrichtung, belegen Sie die letzte erfolgreiche Protokollgrenze und die erste fehlgeschlagene Grenze. Bei „HTTP 502- und 504-Gateway-Timeout-PCAP-Analyse: Proxy, Load Balancer, Upstream oder Netzwerk?“ muss ein zweiter Prüfer das Paket, die Lücke oder das Intervall finden können, das eine Aussage trägt, und wissen, welcher Beleg sie widerlegen würde.
Capture auf der Pfadkarte einordnen
Dokumentieren Sie Client, Server sowie Proxy, Load Balancer, NAT oder Firewall dazwischen. Nennen Sie Interface, Ort, Uhr, Betriebssystem und sichtbare Richtungen. Ein Client-Capture beweist, was am Client ankommt, aber nicht, dass der Server nichts gesendet hat. Ein Server-Capture beweist den Ausgang an dieser Stelle, nicht den ganzen Pfad. Vor dem Zeitvergleich zweier Messpunkte korrigieren Sie Clock Offset und gleichen Flow-Tuple, TCP Sequence oder Transaktions-ID ab.
Prüfen Sie Messqualität: Snap Length, Dropped Packets, Offload, Capture Filter, Ring-Buffer-Grenzen und Startzeit. Ein falscher Checksum-Wert auf dem Host kann Offload Artifact sein. Ein großes Segment kann GRO/TSO darstellen und muss nicht so auf dem Draht existieren. Ein Packet, das in einer begrenzten Datei fehlt, ist erst dann Network Loss, wenn der Messpunkt es hätte sehen müssen.
Grenzen der Reihe nach lesen
| Grenze | Erfolgsbeleg | Nützlicher Fehlerbeleg |
|---|---|---|
| Link und IP | Richtung, Adressen, Route passen | ARP/NDP fehlt, ICMP, MTU, Asymmetrie |
| TCP | SYN, SYN-ACK, ACK und Sequence stimmen | Retransmission, RST, Zero Window, Timeout |
| TLS | ClientHello, ServerHello, Handshake-Fortschritt | Alert oder SNI/ALPN/Certificate-Grenze |
| Anwendung | vollständiger Request und zugehörige Antwort | Status, Gap oder Close vor Antwort |
| Nutzung | Response Time oder Failure Window | Stall an belegter Grenze |
Stoppen Sie an der ersten Grenze ohne Erfolgsnachweis. Ohne vollständiges TCP wird HTTP nicht zuerst diagnostiziert. Erreicht ein Request den Proxy, aber nicht den Upstream, liegt die Grenze im Proxy oder seinem Pfad. Erreicht er den Upstream ohne Antwort vor dem Policy Timeout, trennen ACK- und Byte-Fortschritt Application Delay von Network Loss.
Beobachtung und Hypothese trennen
Eine Beobachtung ist referenzierbar: „Der Client sendete bis zu einer Sequence, danach wiederholte der Sender ein Segment dreimal und am Messpunkt erschien kein fortschreitendes ACK.“ Die Hypothese lautet: „Der Pfad verlor das Segment.“ Ein anderer Capture-Punkt oder verlorene Capture Records können sie widerlegen. Notieren Sie pro Hypothese einen bestätigenden und einen widerlegenden Beleg.
Retransmission und Duplicate ACK bestimmen keinen Eigentümer. Reordering, Loss, Capture Artifact und Receiver Delay können ähnliche Labels erzeugen. Verbinden Sie Richtung, Sequence, ACK, SACK, RTT, Window und Anwendungstiming. Bei DNS oder DHCP ordnen Sie Transaction ID, Adressen und Versuche zu; bei HTTP Request und Response; bei TLS die Handshake-Richtung statt einer Paketfarbe.
Original vor Bearbeitung bewahren
Berechnen Sie den Checksum des Originals und halten Sie es in der Fallakte unverändert. Filterung, Trimming und Redaction erfolgen in einer Working Copy. Pro Operation werden Input, Transformation, Zeit, Packet Count vorher/nachher, Ergebnis-Checksum und Begründung protokolliert. Nach Timestamp Rewrite oder Packet-Löschung ist die Kopie für bestimmte Timing- oder Sequenzaussagen nicht mehr geeignet.
Pseudonymisieren Sie Adressen und Identifikatoren konsistent, damit derselbe Endpoint verfolgbar bleibt. Entfernen Sie Ports, Richtungen und Längen nicht, wenn sie das Urteil tragen. Die geheime Zuordnung bleibt getrennt. Prüfen Sie Capture- und Exportgrenzen und nutzen Sie den PCAP-Surgery-Ablauf für eine nachvollziehbare Ableitung.
QA vor der Veröffentlichung
Behandeln Titel und Antwort denselben Flow? Nennt jede Zeitangabe Uhr und Messpunkt? Ist die erste Fehlergrenze bestimmt? Gibt es eine Alternative? Kann ein Test mit einer Änderung wiederholt werden? Bleibt das Original erhalten? Eine belastbare Antwort nennt auch ihre Grenze: „Die Datei belegt das Verhalten am Client in diesem Intervall, nicht die interne Serverausführung.“
Semrush-Begriffe werden nicht automatisch verteilt. Der validierte Oberbegriff PCAP analyzer gehört allein dem Produktpfad; diese Seite bleibt bei ihrer technischen Frage und erfindet weder Volume noch KD.
<!-- pcap-localized-evidence-foundation-v1:end --><!-- pcap-localized-flow-verdicts-v1:start -->Flow-Ledger und Ausschlusstest
Erstellen Sie für „HTTP 502- und 504-Gateway-Timeout-PCAP-Analyse: Proxy, Load Balancer, Upstream oder Netzwerk?“ je Richtung eine Zeile: pseudonymisierte Endpoints, erstes/letztes Packet, gesendete und bestätigte Bytes, Resets, Retransmissions sowie Application Requests und Antworten. Verwechseln Sie Verbindungen nicht wegen desselben Hostnamens; Source Port, Startzeit und TCP Initial Sequence trennen Sessions. Bei NAT oder Proxy dokumentieren Sie die Beziehung der Flows, ohne gleiche Sequence oder Ports zu erwarten.
TCP rechnen statt Labels zählen
Verfolgen Sie die Next Expected Sequence des Empfängers. Payload verschiebt Sequence um seine Länge; SYN und FIN verbrauchen ebenfalls eine Nummer. Ein stabiler Duplicate ACK nach höheren Segmenten unterstützt Loss oder Reordering. SACK Blocks zeigen angekommene Bereiche, nicht den Ort des Verlusts. Ist eine Retransmission am Sender sichtbar und am Empfänger nicht, prüfen Sie den Zwischenpfad; fehlt schon das Original am Sender-Capture, prüfen Sie Capture Loss oder Offload.
Trennen Sie Fast Retransmit nach Duplicate ACKs von RTO nach Stille. Vergleichen Sie RTT vor dem Ereignis, Advertised Window, Zero-Window Probes, Burst und Transfergröße. Nicht jedes Analyzer-Label ist ein unabhängiger Verlust: Overlap, Spurious Retransmission oder ein Capture mitten im Flow verändern die Klassifikation.
Zeit mit Grenzen messen
Nutzen Sie vier Zeitpunkte: Request First Byte, Request Complete, Response First Byte, Response Complete. TTFB ist nicht automatisch Serverzeit. Retransmission vor der Antwort kann Network Delay hinzufügen; vollständig bestätigter Request mit langer Stille stützt eher Application Wait. Nennen Sie Wert, Einheit, Uhr und Messpunkt.
Bei zwei Punkten gleichen Sie ein markantes Packet in beiden Richtungen ab, schätzen Offset und verwenden danach Intervalle innerhalb jeder Datei. Bei unbekannter Clock-Genauigkeit nennen Sie einen Bereich statt falscher Präzision. Vergleichen Sie gleich lange erfolgreiche und fehlerhafte Fenster unter ähnlicher Last.
Protokollfragen
DNS: Stimmen ID, Name und Typ in Query/Response, und wechselt ein Retry Resolver oder Source Port? DHCP: Gehören Discover, Offer, Request und ACK zum selben Client Identifier? TLS: Was ist die letzte Handshake Message je Richtung, ist ein Alert sichtbar oder verschlüsselt? HTTP: Wer erzeugt 4xx/5xx und geht ein Upstream Flow voraus? TCP Close: Wer sendet FIN/RST und welche Bytes bleiben unbestätigt?
Entscheidender Test und Übergabe
Wählen Sie zwei konkurrierende Hypothesen und einen trennenden Test. Ein Capture am anderen Ende trennt Network Loss von Measurement Loss; deaktiviertes Offload im Test prüft Artifact; identischer Request auf fixem Pfad prüft Intermittency; Upstream-Logzeit gegen Packet Boundary prüft Application Delay. Schreiben Sie vorher die erwarteten Ergebnisse.
Abnahme bedeutet: Ein Reviewer kann die Rechnung aus Packet Metadata wiederholen, dieselbe Grenze finden und die Einschränkung nennen. Übergeben Sie Original- und Derived-Checksum, Filter, Packet Ranges und alle Trim-/Redaction-Schritte. Schließen Sie mit Owner, nächster Aktion und messbarer Bedingung.
<!-- pcap-localized-flow-verdicts-v1:end -->