Das OSI-Modell, das Kommunikationsprotokolle in aufeinanderfolgende Schichten unterteilt, ist genau das: ein Modell . Es ist ein Versuch, eine physische Realität in ordentlich definierte, beschriftete Kästchen zu schieben. Niemand hat jemals garantiert, dass es funktioniert ...
Historisch gesehen wurde dieses Modell erstellt und veröffentlicht, als die ISO auf die Einführung eigener Netzwerkprotokolle drängte. Sie verloren. Die ganze Welt zog es vor, das viel einfachere TCP / IP zu verwenden. Das "Modell" überlebte den Tod seines ursprünglichen Ökosystems, und viele Menschen haben versucht, es auf TCP / IP anzuwenden. Es wird sogar allgemein so gelehrt. Das Modell passt jedoch nicht gut zu TCP / IP. Einige Dinge passen nicht in die Ebenen, und SSL / TLS ist eine davon.
Wenn Sie sich die Protokolldetails ansehen:
- SSL / TLS verwendet ein zugrunde liegendes Transportmedium, das einen bidirektionalen Bytestrom bereitstellt. Das würde es irgendwo über Schicht 4 platzieren.
- SSL / TLS organisiert Daten als Datensätze, die insbesondere Handshake-Nachrichten enthalten können. Handshake-Nachrichten sehen aus wie Schicht 5. Dies würde SSL / TLS auf Schicht 6 oder 7 setzen.
- Was SSL / TLS jedoch übermittelt, sind "Anwendungsdaten", bei denen es sich tatsächlich um einen bidirektionalen Strom von Bytes handelt . Anwendungen, die SSL / TLS verwenden, verwenden es wirklich als Transport -Protokoll. Sie verwenden dann ihre eigene Datendarstellung sowie Nachrichten und Semantik innerhalb dieser "Anwendungsdaten". Daher kann SSL / TLS im OSI-Modell nicht über Schicht 4 hinausgehen.
Daher muss sich SSL / TLS im OSI-Modell in Schicht 6 oder 7 befinden und gleichzeitig in Schicht 4 oder darunter. Die Schlussfolgerung ist unausweichlich: Das OSI-Modell funktioniert nicht mit SSL / TLS. TLS befindet sich in keiner Ebene.
(Dies hindert einige Personen nicht daran, TLS willkürlich in eine Ebene zu verschieben. Da dies keine praktischen Auswirkungen hat - dies ist nur ein Modell - können Sie dieses TLS konzeptionell deklarieren ist Schicht 2, 5 oder 17; es wird nicht als falsch erwiesen.)