2013-01-03 36 views
11

Ich frage mich, ob es Schicht 7 für Websocket ist, da die Anwendung tatsächlich der Browser ist.Auf welcher OSI-Schicht liegt das WebSocket-Protokoll?

+2

Das OSI-Modell funktioniert nicht wirklich über # 4. Es geht eher darum, welche Protokolle zusammengelegt werden können und welche Protokolle was bieten. Beachten Sie, dass Osi # 6 (Zeichensatzkodierung, Datenkodierung ...) normalerweise auf HTTP aufgebaut ist (normalerweise als zu OSI # 7 gehörend.) –

+0

Die Web-Sockets und HTTP sollten wirklich OSI # 4 (Transportschicht) in meinem sein Meinung, aber es beruht auf einem Transport-Layer-Protokoll (TCP) selbst. –

+0

OSI # 6 (Präsentationsschicht) sollte für die Datenverschlüsselung verantwortlich sein, aber wikipedia wirft SSL/TLS in OSI # 5 (Sitzungsschicht), weil eine Sitzung was zu halten SSL _also_ tut das. –

Antwort

5

Websocket ist abhängig von TCP (OSI # 4) und nur die Handshake-Phase wird von HTTP (OSI # 7) 1 initialisiert. Obwohl es nur TCP-Port 80 verwendet.

Entsprechend dem Laufzeitverhalten muss WebSocket ein spezielles OSI # 7 Protokoll sein. Dann können wir SSL/TLS in OSI # 6 (siehe Wikipedia) und die Implementierung im Browser in OSI # 5 einfügen.

2

Es ist besser, die Schicht mit dem TCP/IP-Modell als mit dem OSI-Modell zu verstehen. WebSocket-Layer über TCP, die im TCP/IP-Modell als Transportschicht betrachtet werden, und Layer Layer können über WebSocket auf dem Layer der Anwendungsschicht protokolliert werden.

1

HTTP, SSL, HTTPS, WebSockets usw. sind alle Protokolle der Anwendungsebene.

Aber der OSI-Protokollstapel gilt nicht für TCP/IP, das sein eigenes Schichtenmodell hat: gleiche Namen, verschiedene Funktionen. Es ist nicht hilfreich, den veralteten OSI-Stapel so zu verwenden, als ob er tatsächlich irgendeine Realität widerspiegeln würde. Es tut es nicht.

1

Nur der Handshake wird vom HTTPS-Server durch Upgrade-Anfrage interpretiert. Abgesehen davon ist Websocket ein unabhängiges TCP-basiertes Protokoll. Also ich würde Host-Ebene # 4 und # 7 sagen. https://tools.ietf.org/html/rfc6455#page-11