Structured Fields: HTTP-Header bekommen feste Struktur
Die Internet Engineering Task Force (IETF) hat den RFC 8941 als Standard veröffentlicht(öffnet im neuen Fenster). Darin festgelegt werden sogenannte Structured Fields, also etwa strukturierte Felder, die den bisherigen Umgang mit den omnipräsenten HTTP-Headern deutlich vereinfachen sollen. Denn mit dem Standard wird eine klar definierte Syntax für HTTP-Header festgeschrieben, die deutlich restriktiver ist als die bisherigen eher freien Regeln für den Aufbau von HTTP-Headern.
Maßgeblich an den Arbeiten an der Technik beteiligt war der Covorsitzende der HTTP-Arbeitsgruppe innerhalb der IETF, Mark Nottingham. In einem sehr ausführlichen Blogeintrag für seinen Arbeitgeber Fastly(öffnet im neuen Fenster) hatte Nottingham bereits im vergangenen Sommer die Notwendigkeit für die neuen Structured Fields der HTTP-Header dargelegt. Demnach sorge das bisherige Vorgehen der eher freien Syntax bei HTTP-Headern für "Interoperabilitätsprobleme, Entwicklungsschmerzen und sogar Sicherheitslücken". Der neue Standard soll dies zunächst für neue HTTP-Header lösen. Langfristig könnten die neuen Regeln auch auf alte Header übertragen werden.
Für die nun standardisierten Structured Fields, die neben Headern auch sogenannte Trailer sein können, haben die Beteiligten Techniken aus Programmiersprachen entlehnt und Datentypen definiert. Dazu zählen Integer, Dezimalwerte, Strings, Token, Byte-Sequenzen und boolesche Werte. Hinzu kommen Listen und Dictionaries, also eine Sammlung von Schlüssel-Wert-Paaren. Darüber hinaus legt der Standard fest, wie diese serialisiert und geparst werden.
Einfachere HTTP-Header werden bereits genutzt
Dieser klar definierte Neuaufbau soll dafür sorgen, dass sich HTTP-Felder künftig deutlich leichter und vor allem ohne zahlreiche Fehler oder Ausnahmeregeln parsen lassen. Die Serialisierung sollte außerdem die Latenz und Skalierbarkeit von Internetinfrastruktur verbessern, die die Felder verarbeiten muss, da dies künftig schlicht einfacher geht. Ebenso könnte sich die Header-Kompression effizienter gestalten lassen, was insbesondere für CDNs oder ähnliche Netze gilt, die oft vielfach gleichartige Header von zahlreichen Clients an den eigentlichen Zielserver weiterleiten.
Die Structured Fields werden bereits in den Browsern Chrome und Firefox für einige neuere Sicherheitsfunktionen genutzt. Deren Implementierungen in C++ und Rust können ebenso weiterverwendet werden, wie eine Vielzahl weiterer Umsetzungen in verschiedenen Programmiersprachen(öffnet im neuen Fenster). Die HTTP-Arbeitsgruppe hat außerdem eine Testsuite für eigene Implementierungen(öffnet im neuen Fenster) bereitgestellt.
- Anzeige Hier geht es zu den konfigurierbaren Golem-PCs bei Systemtreff Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.



