-
Die vorliegende Erfindung betrifft ein Verfahren zum Herstellen einer Datenverbindung in einem Computernetzwerk. Die Erfindung betrifft ferner ein Computerprogrammprodukt zum Herstellen einer Datenverbindung in einem Computernetzwerk sowie ein Speichermittel, auf dem ein solches Computerprogrammprodukt gespeichert ist.
-
Im Stand der Technik sind verschiedene Verfahren zum Übertragen von Daten in Computernetzwerken bekannt. Abhängig von den Umgebungsbedingungen und verschiedenen Anforderungen an die Übertragungsgeschwindigkeit und/oder Übertragungssicherheit werden verschiedene Protokolle verwendet. Ein klassisches Protokoll zur Datenübertragung in Computernetzwerken ist das TCP (Transmission Control Protocol) bzw. TCP-Protokoll. Das TCP-Protokoll ist ein Netzwerkprotokoll, das definiert, auf welche Art und Weise Daten zwischen Netzwerkkomponenten, beispielsweise zwischen einem User und einem Server, ausgetauscht werden können. Das TCP-Protokoll ist Teil der Internetprotokollfamilie, der Grundlage des Internets. Um die Übertragungsgeschwindigkeit sowie die Übertragungssicherheit zu erhöhen, wurden weitere Protokolle entwickelt. Zur Erhöhung der Übertragungs- bzw. Datensicherheit wurde beispielsweise das TLS-(Transport Layer Security)-Protokoll entwickelt, mit welchem auf Basis eines TCP-Protokolls insbesondere in Computernetzwerken wie dem Internet eine verschlüsselte und entsprechend sichere Datenübertragung erzielt werden kann. Neben der Datenverschlüsselung kann durch das TLS-Protokoll ferner eine Datenauthentifizierung und eine Datenintegrität erreicht werden. Hierzu stellt ein Server für jede TLS-Verbindung eine Sitzung her. Zum Erstellen der Sitzung müssen zusätzliche Daten wie digitale Zertifikate und kryptographische Schlüssel ausgetauscht werden. Erst dann können die eigentlichen Daten übertragen werden. Der Aufbau einer Sitzung wie einer TLS-Sitzung wird als Handshake bezeichnet.
-
Abhängig von der TLS Version kann der Aufbau einer neuen TLS-Verbindung bis zu zwei Roundtrips zwischen Client und Server benötigen. TLS unterstützt die Wiederherstellung vorab bzw. initial aufgebauter Verbindungen, bei welchen anschließend eine verkürzte Verbindungsaufbauprozedur bzw. ein verkürzter Handshade durchgeführt werden kann. Dieses Verfahren wird als TLS Session Resumption bezeichnet. Hierzu können Wiedererkennungsmittel wie sogenannte Sitzungserkennungen und/oder Sitzungstickets verwendet werden. Eine Weiterentwicklung des TLS-Protokolls ist das TLS 1.3 Protokoll, bei welchem Sitzungskennungen und -tickets durch das Konzept der Sitzungswiederaufnahme über Pre-Shared Keys (PSK) ersetzt werden. Hierbei sendet der Server nach dem ersten Handshake eine PSK-Identität an den Client. Der Client speichert diese PSK-Identität zusammen mit seinen eigenen Sitzungsschlüsseln. Bei einem erneuten Handshake kann der Client in einer ClientHello-Nachricht dem Server diese PSK-Identität übermitteln. Anhand dieser PSK-Identität kann der Server entweder ein Ticket entschlüsseln und enthaltene Sitzungsschlüssel und Verbindungszustände verwenden, um die Sitzung fortzusetzen, oder er verwendet einen in der PSK-Identität enthaltenen Nachschlagschlüssel, um Sitzungsschlüssel und Verbindungszustände in seiner eigenen Datenbank zu finden.
-
Mittels des TLS 1.3 Protokolls kann die initiale Datenverbindung bzw. Datenübertragung demnach mit nur einem Roundtrip ermöglicht werden. Bei TLS 1.3 kann eine erneute Verbindung sogar in einem sogenannten Zero-Roundtrip-Verfahren (0-RTT-Verfahren) durchgeführt werden, indem der Verbindungsschlüssel aus dem Schlüssel der vorherigen Verbindung berechnet wird.
-
Zum Aufbau und zur Wiederherstellung von TLS Verbindungen wird typischerweise eine TCP-Verbindung benötigt. Eine im Stand der Technik bekannte Möglichkeit zum Beschleunigen eines TCP-Verbindungsaufbaus ist mit der Erweiterung TCP Fast Open (TCP-TFO-Protokoll) gegeben. Mittels des TCP-TFO-Protokolls kann der Austausch von Daten mittels TCP vorzeitig ohne Verwendung des sogenannten 3-Way-Handshakes erfolgen. Das heißt, bei dem ersten initialen TCP-TFO Verbindungsaufbau wird auf der Seite des Clients ein TFO-Cookie gespeichert, das korrespondierend zu den TFO-Erkennungsdaten des Servers bei weiteren Anfragen zur Berechtigung für den verkürzten Verbindungsaufbau dient. Damit kann die Reaktionsgeschwindigkeit von Webservices erheblich verbessert werden.
-
Die vorstehend beschriebenen Verfahren und Protokolle sind insbesondere auf erneute Datenverbindungen zwischen dem Client und dem Server ausgelegt. Das TCP-TFO-Protokoll sowie TLS 1.3 einschließlich Pre-Shared-Keys können ihr volles Potential zur Beschleunigung der Datenverbindung erst bei einem erneuten Verbindungsaufbau zwischen Client und Server entfalten, also nach einem initialen Verbindungsaufbau, durch welchen die erforderlichen Wiedererkennungsmittel wie die TFO- oder PSK-Daten zur Verfügung gestellt wurden. Es besteht deshalb der Wunsch, Verbindungsaufbauten zwischen Clients und Servern bereits während des Herstellens der initialen Datenverbindung noch weiter zu beschleunigen.
-
Aufgabe der vorliegenden Erfindung ist es, der voranstehend beschriebenen Problematik zumindest teilweise Rechnung zu tragen. Insbesondere ist es Aufgabe der vorliegenden Erfindung, Datenverbindungen bzw. das Herstellen der Datenverbindungen zwischen Clients und Servern zu verkürzen.
-
Die voranstehende Aufgabe wird durch die Patentansprüche gelöst. Insbesondere wird die voranstehende Aufgabe durch das Verfahren gemäß Anspruch 1, das Computerprogrammprodukt gemäß Anspruch 7 sowie das Speichermittel gemäß Anspruch 8 gelöst. Weitere Vorteile der Erfindung ergeben sich aus den Unteransprüchen, der Beschreibung und den Figuren. Dabei gelten Merkmale, die im Zusammenhang mit dem Verfahren beschrieben sind, selbstverständlich auch im Zusammenhang mit dem erfindungsgemäßen Computerprogrammprodukt, dem Speichermittel und jeweils umgekehrt, sodass bezüglich der Offenbarung zu den einzelnen Erfindungsaspekten stets wechselseitig Bezug genommen wird und/oder werden kann.
-
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Herstellen einer Datenverbindung in einem Computernetzwerk vorgeschlagen. Das Verfahren weist die folgenden Schritte auf:
- - Senden einer Verbindungsanfrage von einem Client zu einem ersten Server unter Verwendung eines TCP-Protokolls zum Durchführen eines initialen Verbindungsaufbaus zwischen dem Client und dem ersten Server,
- - Bereitstellen eines Wiedererkennungsmittels für den ersten Server und/oder den Client zum Ermöglichen eines beschleunigten erneuten Verbindungsaufbaus zwischen dem Client und dem ersten Server,
- - Speichern von wenigstens einem Teil des Wiedererkennungsmittels in einem Speichersystem,
- - Senden einer Verbindungsanfrage vom Client zu einem weiteren Server unter Verwendung eines TCP-Protokolls zum Durchführen eines initialen Verbindungsaufbaus zwischen dem Client und dem weiteren Server,
- - Bereitstellen des wenigstens einen Teils des Wiedererkennungsmittels aus dem Speichersystem für den weiteren Server, und
- - Durchführen eines initialen Verbindungsaufbaus zwischen dem Client und dem weiteren Server unter Verwendung des wenigstens einen Teils des Wiedererkennungsmittels aus dem Speichersystem.
-
Im Rahmen der vorliegenden Erfindung wurde erkannt, dass gattungsgemäße Wiedererkennungsmittel zum beschleunigten Verbindungsaufbau zwischen Client und Server nicht nur für erneute Verbindungsaufbauten zwischen dem Client und dem einen Server, sondern auch für initiale Verbindungsaufbauten zwischen dem Client und wenigstens einem weiteren Server verwendet werden können. Damit ist es möglich, bereits den initialen Verbindungsaufbau zwischen dem Client und dem wenigstens einen weiteren Server mit reduzierten Roundtrips oder mit vollständigem Verzicht auf Roundtrips durchzuführen. Erfindungsgemäß wird das im initialen Verbindungsaufbau zwischen dem Client und dem ersten Server bereitgestellte und/oder erzeugte Wiedererkennungsmittel über das Speichersystem auch für weitere Server zur Verfügung gestellt. Demnach kann für den initialen Verbindungsaufbau zwischen dem Client und dem wenigstens einen weiteren Server auch auf Seiten des wenigstens einen weiteren Servers das Wiedererkennungsmittel verwendet werden, das zuvor zunächst nur für den ersten Server bereitgestellt und/oder erzeugt wurde.
-
Unter dem Wiedererkennungsmittel können gattungsgemäße Daten, Informationen, Protokolle und/oder Programme verstanden werden, die bislang für einen beschleunigten erneuten Verbindungsaufbau zwischen einem Client und einem Server, zwischen welchen bereits wenigstens ein Handshake durchgeführt wurde, verwendet und/oder erstellt wurden.
-
Das Bereitstellen des Wiedererkennungsmittels kann als Erzeugen und/oder Erstellen des Wiedererkennungsmittels bzw. der entsprechenden Daten und/oder Informationen verstanden werden. Das Wiedererkennungsmittel wird, zum Beschleunigen von zukünftigen und/oder erneuten Verbindungsaufbauten, vorzugsweise sowohl für den Client als auch für den ersten Server bereitgestellt.
-
Der wenigstens eine Teil des Wiedererkennungsmittels wird vorzugsweise während und/oder nach dem Erstellen des wenigstens einen Teils des Wiedererkennungsmittels im Speichersystem gespeichert. So wird das Wiederherstellungsmittel beispielsweise im Server-Speicher, insbesondere in einem Memory des ersten Servers, gespeichert. Gleichzeitig und/oder anschließend wird das Wiederherstellungsmittel im separaten Speichersystem gespeichert, auf welches auch der wenigstens eine weitere Server Zugriff hat. So kann der weitere Server, im Rahmen des initialen Verbindungsaufbaus mit dem Client, auf das Speichersystem und folglich auf den wenigstens einen Teil des Wiederherstellungsmittels zugreifen. Bevorzugt prüft der weitere Server, ob im zweiten Server selbst bereits ein geeignetes Wiedererkennungsmittel vorliegt und/oder gespeichert ist. Ist dies der Fall, kann der initiale Verbindungsaufbau mit dem Client direkt mit diesem Wiedererkennungsmittel durchgeführt werden. Liegt im weiteren Server kein geeignetes Wiedererkennungsmittel vor bzw. ist dort (noch) kein geeignetes Wiedererkennungsmittel gespeichert, kann auf das Speichersystem zugegriffen werden, um dort ein geeignetes Wiedererkennungsmittel für den initialen Verbindungsaufbau zu erlangen. Wurde zwischen dem Client und dem ersten bzw. einem ersten Server bereits ein Verbindungsaufbau durchgeführt, im Rahmen von welchem ein geeignetes Wiedererkennungsmittel im Speichersystem hinterlegt bzw. gespeichert wurde, kann dieses bzw. der wenigstens eine Teil des Wiedererkennungsmittels nun auch für den initialen Verbindungsaufbau zwischen dem Client und den weiteren Server verwendet werden.
-
Für das vorstehend beschriebene Verfahren kann es von Vorteil sein, wenn ein Antwortmittel bereitgestellt wird, durch welches dem weiteren Speicher bei einer Anfrage nach dem möglicherweise vorhandenen und geeigneten Wiederherstellungsmittel, auf möglichst schnelle Weise, eine Antwort generiert wird, ob das gewünschte Wiederherstellungsmittel bzw. der wenigstens eine Teil des gewünschten Wiederherstellungsmittel im Speichersystem vorhanden ist oder nicht. Damit kann der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server in einem Fall, in welchem das gewünschte Wiedererkennungsmittel im Speichersystem nicht vorliegt, beschleunigt werden. Mit anderen Worten, lange Lade- und/oder Wartezeiten können verhindert werden.
-
Der wenigstens eine Teil des Wiedererkennungsmittels wird bevorzugt durch den ersten Server im Speichersystem gespeichert. Das heißt, der erste Server ist vorzugsweise zum aktiven Hinterlegen bzw. Speichern des Wiedererkennungsmittels im Speichersystem konfiguriert.
-
Das vorgeschlagene Verfahren kann zum Herstellen von Datenverbindungen im Computernetzwerk zwischen dem Client und mehreren unterschiedlichen Servern durchgeführt werden. Der weitere bzw. wenigstens eine weitere Server kann einen zweiten, dritten, vierten oder noch weitere Server bzw. eine Vielzahl von Servern umfassen. Der erste Server kann mithin als Referenz-Server verstanden werden, mit welchem der Client eine Referenz-Datenverbindung zum Erzeugen von Referenzdaten für die Datenverbindungen mit den weiteren Servern herstellt.
-
Gemäß einer weiteren Ausführungsform der vorliegenden Erfindung ist es möglich, dass bei einem Verfahren die folgenden Schritte durchgeführt werden:
- - die Verbindungsanfrage vom Client zum ersten Server wird unter Verwendung eines TCP-TFO-Protokolls gesendet,
- - das Wiedererkennungsmittel weist wenigstens ein TFO-Cookie für den Client und zugehörige TFO-Erkennungsdaten für den ersten Server auf,
- - die TFO-Erkennungsdaten werden im Speichersystem gespeichert,
- - die Verbindungsanfrage vom Client zum weiteren Server wird unter Verwendung eines TCP-TFO-Protokolls zum Durchführen des initialen Verbindungsaufbaus zwischen dem Client und dem weiteren Server gesendet,
- - die TFO-Erkennungsdaten werden aus dem Speichersystem für den weiteren Server bereitgestellt, und
- - der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server wird, unter Verwendung der TFO-Erkennungsdaten aus dem Speichersystem für den weiteren Server, durchgeführt.
-
Das heißt, unter dem wenigstens einen Teil des Wiedererkennungsmittels sind insbesondere wenigstens ein TFO-Cookie für den Client und zugehörige TFO-Erkennungsdaten zum Erkennen des TFO-Cookies des Clients zu verstehen. So kann der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server im Rahmen eines TCP-TFO-Prozesses durchgeführt werden, ohne dass zwischen dem Client und dem weiteren Server zuvor TFO-Verbindungsdaten ausgetauscht wurden bzw. dort erstellt wurden.
-
Weiterhin ist es bei einem erfindungsgemäßen Verfahren möglich, dass die folgenden Schritte durchgeführt werden:
- - die Verbindungsanfrage vom Client zum ersten Server wird unter Verwendung eines TLS 1.3 Protokolls gesendet,
- - das Wiedererkennungsmittel zum Durchführen eines anschließend möglichen 0-RTT-Verfahrens weist wenigstens eine PSK-Identität für den Client und den ersten Server auf,
- - die wenigstens eine PSK-Identität wird im Speichersystem gespeichert,
- - die Verbindungsanfrage vom Client zum weiteren Server unter Verwendung eines TLS 1.3 Protokolls wird zum Durchführen des initialen Verbindungsaufbaus zwischen dem Client und dem weiteren Server gesendet,
- - die PSK-Identität aus dem Speichersystem wird für den weiteren Server bereitgestellt, und
- - der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server im Rahmen eines 0-RTT-Verfahrens wird, unter Verwendung der PSK-Identität aus dem Speichersystem für den weiteren Server, durchgeführt.
-
In diesem Fall umfasst der wenigstens eine Teil des Wiedererkennungsmittels insbesondere wenigstens eine PSK-Identität für den Client und den ersten Server bzw. gattungsgemäße PSK-Daten für den Client und den ersten Server. So kann der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server mittels TLS 1.3 Protokoll im Rahmen eines 0-RTT-Verfahrens durchgeführt werden, ohne dass zwischen dem Client und dem weiteren Server zuvor PSK-Daten ausgetauscht wurden bzw. dort erstellt wurden.
-
Bei einer weiteren Ausführungsvariante eines erfindungsgemäßen Verfahrens ist es möglich, dass:
- - die Verbindungsanfrage vom Client zum ersten Server unter Verwendung eines TLS 1.3 Protokolls in Verbindung mit einem TCP-TFO-Protokolls gesendet wird,
- - das Wiedererkennungsmittel zum Durchführen eines anschließend möglichen 0-RTT-Verfahrens wenigstens eine PSK-Identität für den Client und den ersten Server sowie wenigstens ein TFO-Cookie für den Client und zugehörige TFO-Erkennungsdaten für den ersten Server aufweist,
- - die wenigstens eine PSK-Identität sowie die TFO-Erkennungsdaten im Speichersystem gespeichert werden,
- - die Verbindungsanfrage vom Client zum weiteren Server unter Verwendung eines TLS 1.3 Protokolls in Verbindung mit einem TCP-TFO-Protokolls zum Durchführen des initialen Verbindungsaufbaus zwischen dem Client und dem weiteren Server gesendet wird,
- - die PSK-Identität sowie die TFO-Erkennungsdaten aus dem Speichersystem für den weiteren Server bereitgestellt werden, und
- - der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server im Rahmen eines 0-RTT-Verfahrens, unter Verwendung der PSK-Identität und/oder der TFO-Erkennungsdaten aus dem Speichersystem für den weiteren Server, durchgeführt wird.
-
Gemäß der vorstehend beschriebenen Variante wird die Verwendung des TCP-TFO-Protokolls in Verbindung mit dem TLS 1.3 Protokoll und einer hieraus bereitgestellten PSK-Identität verwendet. Durch diese Variante kann der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server nicht nur besonders schnell, sondern auch noch besonders sicher durchgeführt werden.
-
Von besonderem Vorteil kann es sein, wenn bei einem erfindungsgemäßen Verfahren der initiale Verbindungsaufbau zwischen dem Client und dem weiteren Server, unter Verwendung der PSK-Identität zeitlich vor der optionalen Verwendung der TFO-Erkennungsdaten aus dem Speichersystem für den weiteren Server, durchgeführt wird. Das heißt, vorzugsweise wird zunächst die PSK-Identität geprüft, bevor, optional, die TFO-Erkennungsdaten verwendet bzw. geprüft werden. Damit kann das Verfahren mit hoher Datensicherheit effizient und schnell durchgeführt werden. Bei gattungsfremden Verfahren des Standes der Technik, bei welchen ein TCP-TFO-Protokoll in Verbindung mit einem TLS 1.3 Protokoll verwendet wird, wird das TFO-Cookie bislang prioritär und/oder obligatorisch verwendet.
-
Das Speichersystem ist bei einem erfindungsgemäßen Verfahren bevorzugt als vom Client, vom ersten Server sowie vom zweiten Server separates Speichersystem bereitgestellt. Das heißt, das Speichersystem wird insbesondere als externes und/oder dezentrales Speichersystem, insbesondere in Form eines nichtflüchtigen Speichersystems mit einem oder mehreren Speichermitteln, ausgestaltet. Damit kann eine erhöhte Betriebssicherheit erreicht werden. Kann der erste Server beispielsweise nicht mehr erreicht werden, kann durch den weiteren Server weiterhin auf die Daten im Speichersystem zugegriffen werden.
-
Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein Computerprogrammprodukt zur Verfügung gestellt, das Befehle umfasst, die bei der Ausführung des Computerprogrammprodukts durch einen Computer diesen veranlassen, das vorstehend im Detail beschriebene Verfahren auszuführen. Darüber hinaus betrifft ein Aspekt der Erfindung ein computerlesbares Speichermittel, auf welchem ein solches Computerprogrammprodukt gespeichert ist. Das Speichermittel ist vorzugsweise in Form eines nichtflüchtigen Speichermittels bereitgestellt. Damit bringen das erfindungsgemäße Computerprogrammprodukt sowie das erfindungsgemäße Speichermittel die gleichen Vorteile mit sich, wie sie ausführlich mit Bezug auf das erfindungsgemäße Verfahren beschrieben worden sind.
-
Das Computerprogrammprodukt kann als computerlesbarer Anweisungscode in jeder geeigneten Programmiersprache und/oder Maschinensprache wie beispielsweise in JAVA, C++, C# und/oder Python implementiert sein. Das Computerprogrammprodukt kann auf einem computerlesbaren Speichermittel wie einer Datendisk, einem Wechsellaufwerk, einem flüchtigen oder nichtflüchtigen Speichermittel, oder einem eingebauten Speicher/Prozessor abgespeichert sein. Der Anweisungscode kann einen Computer oder andere programmierbare Geräte wie ein Steuergerät derart programmieren, dass die gewünschten Funktionen ausgeführt werden. Ferner kann das Computerprogrammprodukt in einem Netzwerk wie beispielsweise dem Internet bereitgestellt werden und/oder sein, von dem es bei Bedarf von einem Nutzer heruntergeladen werden kann. Das Computerprogrammprodukt kann sowohl mittels einer Software, als auch mittels einer oder mehrerer spezieller elektronischer Schaltungen, das heißt in Hardware oder in beliebig hybrider Form, d.h. mittels Software-Komponenten und Hardware-Komponenten, realisiert werden und/oder sein.
-
Weitere, die Erfindung verbessernde Maßnahmen ergeben sich aus der nachfolgenden Beschreibung zu verschiedenen Ausführungsbeispielen der Erfindung, welche in den Figuren schematisch dargestellt sind. Sämtliche aus den Ansprüchen, der Beschreibung oder den Figuren hervorgehende Merkmale und/oder Vorteile, einschließlich konstruktiver Einzelheiten und räumlicher Anordnungen können sowohl für sich als auch in den verschiedenen Kombinationen erfindungswesentlich sein.
-
Es zeigen jeweils schematisch:
- 1 ein Flussdiagramm zum Erläutern eines Verfahrens gemäß einer erfindungsgemäßen Ausführungsform,
- 2 ein Blockschaltbild eines Computernetzwerkes zum Durchführen eines erfindungsgemäßen Verfahrens,
- 3a ein Ablaufdiagramm zum Erläutern der erfindungsgemäßen Ausführungsform in weiterem Detail,
- 3b eine Fortführung des Ablaufdiagramms zum Erläutern der erfindungsgemäßen Ausführungsform in weiterem Detail und
- 4 ein Speichermittel mit einem darauf gespeicherten Computerprogrammprodukt gemäß einer erfindungsgemäßen Ausführungsform.
-
Elemente mit gleicher Funktion und Wirkungsweise sind in den Figuren jeweils mit den gleichen Bezugszeichen versehen.
-
1 zeigt ein Flussdiagramm zum Erläutern eines Verfahrens zum Herstellen von Datenverbindungen in einem in 2 gezeigten Computernetzwerk zwischen einem Client 10 eines Computers 60 und unterschiedlichen Servern 20, 30. Auf dem Computer 60 ist ein Computerprogrammprodukt 50 installiert, das zum Ausführen des Verfahrens verwendet wird. Ferner sind der Computer 60, das Computerprogrammprodukt 50, der Client 10, die Server 20, 30 und ein separates Speichersystem 40 zum Durchführen den anschließend beschriebenen Verfahrens konfiguriert und ausgestaltet. In 2 ist der Client 10 als Teil des Computers 60 dargestellt. In einer alternativen Ausführungsform kann der Client 10 auch als eigenständiger Computer 60 betrachtet werden.
-
In einem ersten Schritt S1 wird zunächst eine Verbindungsanfrage vom Client 10 zu einem ersten Server 20 unter Verwendung eines TLS 1.3 Protokolls in Verbindung mit einem TCP-TFO-Protokolls zum Durchführen eines initialen Verbindungsaufbaus zwischen dem Client 10 und dem ersten Server 20 gesendet. Im Rahmen des Verbindungsaufbaus wird ein gattungsgemäßes Wiedererkennungsmittel bzw. werden gattungsgemäße Wiedererkennungsdaten für den ersten Server 20 und den Client 10 zum Ermöglichen eines beschleunigten erneuten Verbindungsaufbaus zwischen dem Client 10 und dem ersten Server 20 erstellt bzw. bereitgestellt. Im vorliegenden Fall wird, zum Durchführen eines anschließend möglichen 0-RTT-Verfahrens, eine PSK-Identität für den Client 10 und den ersten Server 20 sowie ein TFO-Cookie für den Client 10 und zugehörige TFO-Erkennungsdaten für den ersten Server 20 bereitgestellt. Das TFO-Cookie wird im Client 10 zum Client 10 zugehörig gespeichert. In einem zweiten Schritt S2 werden die PSK-Identität sowie die TFO-Erkennungsdaten in einem separaten bzw. dezentralen Speichersystem 40 gespeichert. Die Schritte S1 und S2 können zumindest teilweise parallel durchgeführt werden. Mit anderen Worten, der Schritt S2 kann bereits beginnen, wenn Schritt S1 noch nicht vollständig durchgeführt wurde.
-
In einem dritten Schritt S3 wird vom Client 10 eine Verbindungsanfrage zum weiteren bzw. zweiten Server 30 unter Verwendung eines TLS 1.3 Protokolls in Verbindung mit einem TCP-TFO-Protokolls zum Durchführen des initialen Verbindungsaufbaus zwischen dem Client 10 und dem weiteren Server 30 gesendet. Im Rahmen der Verbindungsanfrage wird im weiteren Server 30 geprüft, ob dieser bereits geeignete und/oder vordefinierte Wiedererkennungsdaten wie eine PSK-Identität und/oder TFO-Erkennungsdaten aufweist. Ist dies der Fall kann das Verfahren gemäß Schritt S4a voranschreiten und direkt ein 0-RTT-Verfahren durchführen. Weist der weitere Server 30 keine geeigneten Wiedererkennungsdaten auf, werden diese am Speichersystem 40 angefragt. Der weitere Server 30 und das Speichersystem 40 sind hierzu entsprechend konfiguriert. Liegen dort noch keine geeigneten Wiedererkennungsdaten vor, schreitet das Verfahren gemäß Schritt S4b bzw. in weiteren Schritten gemäß der einleitend beschriebenen Vorgehensweise beim initialen Verbindungsaufbau zwischen dem Client 10 und dem ersten Server 20 voran. Sind im Speichersystem 40 hingegen geeignete Wiedererkennungsdaten wie die PSK-Identität sowie die TFO-Erkennungsdaten vorhanden, können diese direkt für den initialen Verbindungsaufbau bzw. für die Datenverbindung zwischen dem Client 10 und dem weiteren Server 30 verwendet bzw. bereitgestellt werden. Der initiale Verbindungsaufbau zwischen dem Client 10 und dem weiteren Server 30 wird in diesem Fall im Rahmen eines 0-RTT-Verfahrens, unter Verwendung der in Schritt S1 erstellten PSK-Identität und TFO-Erkennungsdaten, in Schritt S4c durchgeführt. Für den gewünschten Verbindungsaufbau wird die PSK-Identität hierbei zeitlich vor der Verwendung der TFO-Erkennungsdaten durchgeführt.
-
Auf die Verwendung der im Speichersystem 40 gespeicherten TFO-Erkennungsdaten zum Herstellen des initialen Verbindungsaufbaus zwischen dem Client 10 und dem weiteren Server 30 kann bei einer alternativen Vorgehensweise auch verzichtet werden. Das vorstehend beschriebene Verfahren wird auf analoge Weise durchgeführt, wenn anstelle der PSK-Identität und der TFO-Erkennungsdaten sowie des TFO-Cookies nur die PSK-Identität oder nur die TFO-Erkennungsdaten und das TFO-Cookie vorliegen und/oder verwendet werden. Auf eine separate Beschreibung diesbezüglich wird deshalb verzichtet. In den 3a und 3b ist das mit Bezug auf die 1 und 2 beispielhaft beschriebene Verfahren gemäß eines gattungsgemäßen Ablaufplans in weiterem Detail dargestellt und beschrieben. Die Systemsprache für gattungsgemäße Verfahren ist Englisch, weshalb die Erläuterungen in den Figuren zur Beibehaltung der Verständlichkeit nicht eingedeutscht wurden.
-
4 zeigt ein computerlesbares und nichtflüchtiges Speichermittel 70, auf welchem ein Computerprogrammprodukt 50 zum Ausführen des vorstehend beschrieben Verfahrens gespeichert ist.
-
Die Erfindung lässt neben den dargestellten Ausführungsformen weitere Gestaltungsgrundsätze zu. Das heißt, die Erfindung soll nicht auf die mit Bezug auf die Figuren erläuterten Ausführungsbeispiele beschränkt betrachtet werden.
-
Bezugszeichenliste
-
- 10
- Client
- 20
- erster Server
- 30
- weiterer Server
- 40
- Speichersystem
- 50
- Computerprogrammprodukt
- 60
- Computer
- 70
- Speichermittel