2015-03-25 9 views
5

vielleicht habe ich eine dumme Frage, aber ich versuche REST API zwischen OSI-Schichten zu klassifizieren. (Interview Frage) Es muss zwischen 5 und 7 Schicht sein, Der Interviewer sagt: Es ist in 5-Schicht, weil es ähnlich wie RPC ist.In mit OSI-Schicht kann REST api sein

Aber meiner Meinung nach kann es nicht auf 5 Sitzungsschicht sein, weil wahre REST api Stateless im Gegensatz zu Sitzung (http Sitzung), so meiner Meinung nach könnte es als Protokoll von 7 Anwendungsschicht platziert werden, weil es wie http ist (aber warum nicht in 6?).

Ich suche einige Ressourcen im Internet, aber ich habe keine klare Antwort gefunden. (Ich weiß, dass platzierte Protokolle in OSI nicht klar ist) Aber vielleicht haben Sie eine gute Meinung dazu?

+2

Alle REST-Services, die ich gefunden habe, werden über einen HTTP-Server weitergeleitet. Sofern Sie nicht Ihren eigenen Socket-Server erstellen und selbst ein Protokoll für den Restful-Service implementieren, befinden Sie sich auf oder über der OSI-Ebene, auf der der http-Server, den Sie ausführen, als kategorisiert ist. –

+2

REST ist nur ein architektonischer Stil und eine API, die streng den REST-Prinzipien folgt, heißt RESTful API. Allerdings können Sie nur APIs "Anwendungsschicht" mit REST-Prinzipien schreiben (das Schreiben von APIs/Protokollen der verbleibenden Schichten mit REST macht für mich keinen Sinn), daher befinden sich REST-APIs auf der Anwendungsschicht. – geekprogrammer

Antwort

2

REST-Architektur ist zustandslos in dem Sinne, dass der Server den Status des Clients nicht speichert, sondern dass der Status der Objekte hin und her übertragen wird. Immerhin steht REST für Representational State Transfer. Also würde ich denken, REST gehört zu Schicht 5 - Sitzungsschicht, die allgemein als die Schicht beschrieben wird, auf der kontinuierlicher Informationsaustausch in Form von mehreren Hin-und-Her-Übertragungen zwischen zwei Knoten stattfindet.

Es ist schwer zu sehen, wie REST-API zu Layer 6 oder Layer 7 des OSI-Modells gehören könnte. Die Präsentationsschicht ermöglicht die Aushandlung der Darstellungsform oder Syntax der Daten, die übertragen werden. Normalerweise sind Mechanismen wie Zeichencodierung (UTF, ASCII), Datenverschlüsselung und -entschlüsselung Teil der Präsentationsebene. Anwendungsschicht bietet anwendungsspezifische Dienste wie FTP, HTTP, Telnet, die Endbenutzerprozesse unterstützen.

+0

Diese Antwort macht keinen Sinn, bitte lesen Sie die Kommentare in der Frage ... – gustavodidomenico

0

Ich stimme mit Gowthamnvv. Die REST-API befindet sich im Fall des OSI-Modells zwischen der Anwendungsschicht und der Transportschicht. Bei dem TCP/IP-Modell liegt es jedoch in der Anwendungsschicht, da die ersten drei Schichten des OSI-Modells mit Ausnahme einiger Sitzungsfunktionen mehr in die Anwendungsschicht des TCP/IP-Modells integriert sind von der Transportschicht im Fall von TCP/IP.

0

Lassen Sie sich nicht vom Titel "Session" von Layer 5 verwirren. REST ist quadratisch Layer 7. Was ist unter der Anwendung? Das Betriebssystem. Ist die Sorge um REST? Sehen wir uns die Chrome> Developer Tools> Netzwerk> Header für diese Seite an (in einem Inkognito-Fenster, weil ich Ihnen nicht vertraue). Screenshot of Developer Tools Was machen diese REST vollständig in den HTTP-Header, die Sie hier sehen. Trifft das Betriebssystem etwas anderes, als es an Chrome auszuliefern? Nein, tut es nicht. REST ist ein Protokoll in der Anwendungsschicht.

1

REST ist kein Protokoll für die Kommunikation zweier Systeme. REST ist ein Architekturstil. Es ist meist über HTTP, die Anwendungsschicht.

+0

Diese Frage sollte Markt als die richtige sein. – gustavodidomenico