Zum Hauptinhalt springen

2.3. Proxy Error Types & 2.4. Defining New Types (Proxy-Fehlertypen und Definition neuer Typen)

2.3. Proxy Error Types (Proxy-Fehlertypen)

Dieser Abschnitt listet die in diesem Dokument definierten Proxy-Fehlertypen auf. Einzelne Einträge in dieser Liste können die folgenden Felder haben:

  • Name: Der registrierte Name des Fehlertyps
  • Beschreibung: Eine Definition des Fehlertyps
  • Zusätzliche Parameter: Null oder mehr zusätzliche Parameter, die mit dem Fehlertyp verwendet werden können
  • Empfohlener HTTP-Statuscode: Der HTTP-Statuscode, der für diesen Fehler am besten geeignet ist
  • Antwort nur von Intermediären generiert: Ob dieser Fehler nur in Antworten auftreten kann, die vom Intermediär generiert werden (true), oder in Antworten auftreten kann, die weitergeleitet werden (false)
  • Referenz: Dieses Dokument

2.3.1. DNS Timeout (DNS-Zeitüberschreitung)

Name: dns_timeout

Beschreibung: Der Intermediär ist bei dem Versuch, die IP-Adresse für den Hostnamen des nächsten Hops nachzuschlagen, auf eine Zeitüberschreitung gestoßen.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 504

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.2. DNS Error (DNS-Fehler)

Name: dns_error

Beschreibung: Der Intermediär ist bei dem Versuch, die IP-Adresse für den Hostnamen des nächsten Hops nachzuschlagen, auf einen DNS-Fehler gestoßen.

Zusätzliche Parameter:

  • rcode: Ein String, der den DNS-RCODE übermittelt, der den Fehlertyp anzeigt. Siehe [RFC8499] Abschnitt 3.
  • info-code: Eine Ganzzahl (Integer), die den erweiterten DNS-Fehlercode [RFC8914] übermittelt, der den Fehlertyp anzeigt.
  • ttl: Eine Ganzzahl (Integer), die den von der Auflösung verwendeten DNS-TTL in Sekunden angibt.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.3. Destination Not Found (Ziel nicht gefunden)

Name: destination_not_found

Beschreibung: Der Intermediär kann den geeigneten nächsten Hop für diese Anfrage nicht bestimmen; beispielsweise kann er nicht konfiguriert sein. Beachten Sie, dass dieser Fehler spezifisch für Gateways ist, die normalerweise eine spezifische Konfiguration benötigen, um "Backend"-Server zu identifizieren; Forward-Proxys verwenden in-flight_request_error, wenn sie den nächsten Hop nicht mit den Informationen in der Anfrage lokalisieren können.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 500

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.4. Destination Unavailable (Ziel nicht verfügbar)

Name: destination_unavailable

Beschreibung: Der Intermediär betrachtet den nächsten Hop als nicht verfügbar; beispielsweise können kürzliche Kommunikationsversuche fehlgeschlagen sein oder ein Gesundheitscheck kann anzeigen, dass er ausgefallen ist.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 503

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.5. Destination IP Prohibited (Ziel-IP verboten)

Name: destination_ip_prohibited

Beschreibung: Der Intermediär ist so konfiguriert, dass Verbindungen zur IP-Adresse des nächsten Hops verboten sind.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.6. Destination IP Unroutable (Ziel-IP nicht routbar)

Name: destination_ip_unroutable

Beschreibung: Der Intermediär kann keine Route zur IP-Adresse des nächsten Hops finden.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.7. Connection Refused (Verbindung verweigert)

Name: connection_refused

Beschreibung: Die Verbindung des Intermediärs zum nächsten Hop wurde verweigert.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.8. Connection Terminated (Verbindung beendet)

Name: connection_terminated

Beschreibung: Die Verbindung des Intermediärs zum nächsten Hop wurde geschlossen, bevor ein Teil der Antwort empfangen wurde.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.9. Connection Timeout (Verbindungszeitüberschreitung)

Name: connection_timeout

Beschreibung: Der Versuch des Intermediärs, eine Verbindung zum nächsten Hop zu öffnen, hat eine Zeitüberschreitung erreicht.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 504

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.10. Connection Read Timeout (Verbindungslesezeitüberschreitung)

Name: connection_read_timeout

Beschreibung: Der Intermediär erwartete, Daten auf der Verbindung zu empfangen (z. B. einen Teil der Antwort), hat jedoch innerhalb des konfigurierten Zeitlimits keine neuen Daten erhalten.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 504

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.11. Connection Write Timeout (Verbindungsschreibzeitüberschreitung)

Name: connection_write_timeout

Beschreibung: Der Intermediär versuchte, Daten auf die Verbindung zu schreiben, konnte dies jedoch nicht (z. B. weil sein Puffer voll war).

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 504

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.12. Connection Limit Reached (Verbindungslimit erreicht)

Name: connection_limit_reached

Beschreibung: Der Intermediär ist so konfiguriert, dass die Anzahl seiner Verbindungen zum nächsten Hop begrenzt ist und dieses Limit überschritten hat.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 503

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.13. TLS Protocol Error (TLS-Protokollfehler)

Name: tls_protocol_error

Beschreibung: Der Intermediär ist bei der Kommunikation mit dem nächsten Hop auf einen TLS-Fehler gestoßen, entweder während des Handshakes oder danach.

Zusätzliche Parameter:

  • alert-message: Ein Token, das das zutreffende Beschreibungs-Unterfeld der TLS-Warnmeldung [TLS] Abschnitt 6 darstellt; z. B. "handshake_failure" oder "certificate_expired".

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.14. TLS Certificate Error (TLS-Zertifikatsfehler)

Name: tls_certificate_error

Beschreibung: Der Intermediär ist bei der Überprüfung des vom nächsten Hop vorgelegten Zertifikats auf einen Fehler gestoßen.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.15. TLS Alert Received (TLS-Warnung empfangen)

Name: tls_alert_received

Beschreibung: Der Intermediär hat eine TLS-Warnung vom nächsten Hop erhalten.

Zusätzliche Parameter:

  • alert-id: Eine Ganzzahl (Integer), die das zutreffende Feld der TLS-Warnmeldung [TLS] Abschnitt 6 enthält.
  • alert-message: Ein Token, das das zutreffende Beschreibungs-Unterfeld der TLS-Warnmeldung [TLS] Abschnitt 6 darstellt; z. B. "handshake_failure" oder "certificate_expired".

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.16. HTTP Request Error (HTTP-Anforderungsfehler)

Name: http_request_error

Beschreibung: Der Intermediär generiert eine Client-Antwort (4xx) im Namen des Ursprungsservers. Die anwendbaren Statuscodes umfassen (sind aber nicht beschränkt auf) 400, 403, 405, 406, 408, 411, 413, 414, 415, 416, 417 und 429.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: Anwendbarer 4xx-Statuscode

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.17. HTTP Request Denied (HTTP-Anforderung verweigert)

Name: http_request_denied

Beschreibung: Der Intermediär hat die HTTP-Anforderung basierend auf seiner Konfiguration und/oder Richtlinieneinstellungen verweigert. Die Anforderung wurde nicht an den nächsten Hop weitergeleitet.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 400

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.18. HTTP Incomplete Response (HTTP-unvollständige Antwort)

Name: http_response_incomplete

Beschreibung: Der Intermediär hat eine unvollständige Antwort vom nächsten Hop erhalten.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.19. HTTP Response Header Section Too Large (HTTP-Antwortheader-Abschnitt zu groß)

Name: http_response_header_section_size

Beschreibung: Der Intermediär hat eine Antwort auf die Anforderung erhalten, deren Header-Abschnitt als zu groß angesehen wird.

Zusätzliche Parameter:

  • header-section-size: Eine Ganzzahl (Integer), die die Größe des empfangenen Headers angibt.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.20. HTTP Response Header Field Line Too Large (HTTP-Antwortheader-Feldzeile zu groß)

Name: http_response_header_size

Beschreibung: Der Intermediär hat eine Antwort auf die Anforderung erhalten, die eine Header-Feldzeile enthält, die als zu groß angesehen wird.

Zusätzliche Parameter:

  • header-name: Ein String, der den Namen des Header-Feldes angibt, das den Fehler ausgelöst hat.
  • header-size: Eine Ganzzahl (Integer), die die Größe des Header-Feldes angibt, das den Fehler ausgelöst hat.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.21. HTTP Response Body Too Large (HTTP-Antwortkörper zu groß)

Name: http_response_body_size

Beschreibung: Der Intermediär hat eine Antwort auf die Anforderung erhalten, deren Körper als zu groß angesehen wird.

Zusätzliche Parameter:

  • body-size: Eine Ganzzahl (Integer), die die Größe des empfangenen Körpers angibt.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.22. HTTP Response Trailer Section Too Large (HTTP-Antwort-Trailer-Abschnitt zu groß)

Name: http_response_trailer_section_size

Beschreibung: Der Intermediär hat eine Antwort auf die Anforderung erhalten, deren Trailer-Abschnitt als zu groß angesehen wird.

Zusätzliche Parameter:

  • trailer-section-size: Eine Ganzzahl (Integer), die die Größe des empfangenen Trailers angibt.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.23. HTTP Response Trailer Field Line Too Large (HTTP-Antwort-Trailer-Feldzeile zu groß)

Name: http_response_trailer_size

Beschreibung: Der Intermediär hat eine Antwort auf die Anforderung erhalten, die eine Trailer-Feldzeile enthält, die als zu groß angesehen wird.

Zusätzliche Parameter:

  • trailer-name: Ein String, der den Namen des Trailer-Feldes angibt, das den Fehler ausgelöst hat.
  • trailer-size: Eine Ganzzahl (Integer), die die Größe des Trailer-Feldes angibt, das den Fehler ausgelöst hat.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.24. HTTP Response Transfer-Coding Error (HTTP-Antwortübertragungscodierungsfehler)

Name: http_response_transfer_coding

Beschreibung: Der Intermediär ist beim Decodieren der Übertragungscodierung der Antwort auf einen Fehler gestoßen.

Zusätzliche Parameter:

  • coding: Ein Token, das die spezifische Codierung enthält (aus dem "HTTP Transfer Coding Registry"), die den Fehler verursacht hat.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.25. HTTP Response Content-Coding Error (HTTP-Antwortinhaltscodierungsfehler)

Name: http_response_content_coding

Beschreibung: Der Intermediär ist beim Decodieren der Inhaltscodierung der Antwort auf einen Fehler gestoßen.

Zusätzliche Parameter:

  • coding: Ein Token, das die spezifische Codierung enthält (aus dem "HTTP Content Coding Registry"), die den Fehler verursacht hat.

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.26. HTTP Response Timeout (HTTP-Antwortzeitüberschreitung)

Name: http_response_timeout

Beschreibung: Der Intermediär hat beim Warten auf eine vollständige Antwort eine konfigurierte Zeitgrenze erreicht.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 504

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.27. HTTP Upgrade Failed (HTTP-Upgrade fehlgeschlagen)

Name: http_upgrade_failed

Beschreibung: Der Prozess der Aushandlung eines HTTP-Versions-Upgrades zwischen dem Intermediär und dem nächsten Hop ist fehlgeschlagen.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.28. HTTP Protocol Error (HTTP-Protokollfehler)

Name: http_protocol_error

Beschreibung: Der Intermediär ist bei der Kommunikation mit dem nächsten Hop auf einen HTTP-Protokollfehler gestoßen. Dieser Fehler sollte nur verwendet werden, wenn kein spezifischerer definiert ist.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: false

Referenz: RFC 9209

2.3.29. Proxy Internal Response (Proxy-interne Antwort)

Name: proxy_internal_response

Beschreibung: Der Intermediär hat die Antwort selbst generiert, ohne zu versuchen, sich mit dem nächsten Hop zu verbinden.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: Am besten geeigneter Statuscode für die Antwort

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.30. Proxy Internal Error (Proxy-interner Fehler)

Name: proxy_internal_error

Beschreibung: Der Intermediär ist auf einen internen Fehler gestoßen, der nicht mit dem Ursprungsserver zusammenhängt.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 500

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.31. Proxy Configuration Error (Proxy-Konfigurationsfehler)

Name: proxy_configuration_error

Beschreibung: Der Intermediär ist auf einen Fehler in Bezug auf seine Konfiguration gestoßen.

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 500

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.3.32. Proxy Loop Detected (Proxy-Schleife erkannt)

Name: proxy_loop_detected

Beschreibung: Der Intermediär hat versucht, die Anforderung an sich selbst weiterzuleiten, oder eine Schleife wurde mit einer anderen Methode erkannt (z. B. [RFC8586]).

Zusätzliche Parameter: Keine

Empfohlener HTTP-Statuscode: 502

Antwort nur von Intermediären generiert: true

Referenz: RFC 9209

2.4. Defining New Proxy Error Types (Definition neuer Proxy-Fehlertypen)

Neue Proxy-Fehlertypen können durch Registrierung im "HTTP Proxy Error Types" Register definiert werden.

Registrierungsanfragen werden durch Expertenprüfung gemäß Abschnitt 4.5 von [RFC8126] überprüft und genehmigt. Ein Spezifikationsdokument wird geschätzt, ist aber nicht erforderlich.

Die Experten sollten bei der Bewertung von Anfragen folgende Faktoren berücksichtigen:

  • Feedback aus der Community
  • Ob der Wert ausreichend klar definiert ist
  • Generische Typen werden gegenüber anbieter-, anwendungs- oder bereitstellungsspezifischen Werten bevorzugt. Wenn die Community keinen Konsens über einen generischen Wert erreichen kann, sollte der Name des Typs entsprechend spezifisch sein (z. B. mit einem Präfix versehen, das den Anbieter, die Anwendung oder die Bereitstellung identifiziert).
  • Zusätzliche Parameter sollten nicht mit registrierten Proxy-Status-Parametern in Konflikt stehen.

Registrierungsanfragen sollten die folgende Vorlage verwenden:

Name: [Name des Proxy-Fehlertyps, vom Typ Token]

Beschreibung: [Beschreibung der Bedingungen, die den Proxy-Fehlertyp erzeugen]

Zusätzliche Parameter: [Null oder mehr optionale Parameter und deren zulässige strukturierte Typen]

Empfohlener HTTP-Statuscode: [Geeigneter HTTP-Statuscode für diesen Eintrag]

Antwort nur von Intermediären generiert: ['true' oder 'false']

Referenz: [Verweis auf die Spezifikation, die diesen Fehlertyp definiert; optional]

Bemerkungen: [Optional]

Wenn der Proxy-Fehlertyp in einer Antwort auftreten kann, die nicht vom Intermediär generiert wurde -- z. B. wenn ein Fehler erkannt wird, während eine Antwort von einer Weiterleitungsverbindung gestreamt wird, was zum Hinzufügen eines Proxy-Status-Trailer-Feldes führt -- sollte 'Antwort nur von Intermediären generiert' 'false' sein. Wenn der Proxy-Fehlertyp nur in vom Intermediär generierten Antworten auftritt, sollte er 'true' sein.

Details zum Senden einer Registrierungsanfrage finden Sie im Register unter https://www.iana.org/assignments/http-proxy-status.