Ist die Windows-API (WinSock) technisch Teil der Präsentationsschicht im OSI-Modell?

463
Variable Solutions

Von "Windows API" auf Wikipedia: https://en.wikipedia.org/wiki/Windows_API

Die [Windows] -API kann von jedem Compiler oder Assembler einer Programmiersprache verwendet werden, der in der Lage ist, die (genau definierten) Datenstrukturen niedriger Ebene zusammen mit den vorgeschriebenen Aufrufkonventionen für Aufrufe und Rückrufe zu verarbeiten.

Von "Presentation Layer" auf Wikipedia: https://en.wikipedia.org/wiki/Presentation_layer

Die Präsentationsschicht ist die unterste Schicht, auf der Anwendungsprogrammierer Datenstruktur und -darstellung berücksichtigen, anstatt Daten einfach in Form von Datagrammen oder Paketen zwischen Hosts zu senden. Die Anwendungsschicht soll auf die zu verschiebenden Daten zeigen können und die Präsentationsebene wird sich um den Rest kümmern.

Ist die Windows-API (speziell die WinSock-Komponente) technisch Teil der Präsentationsschicht im OSI-Modell oder ist die Präsentationsschicht eine niedrigere Stufe als die Windows-API? Danke für jeden, der das für mich klären kann.

-2
Die Definitionen, die Sie zitieren, sind so breit, dass Sie alles hineinpassen können. Ja, technisch kann sich eine ultra-weite Definition mit einer anderen überschneiden. harrymc vor 6 Jahren 0

2 Antworten auf die Frage

1
Tonny

Es gibt keine "Windows-API", daher ist es nicht möglich, Ihre Frage direkt zu beantworten.

Was im Allgemeinen als "Windows-API" bezeichnet wird, ist die Gesamtheit aller von Microsoft in einer bestimmten Windows-Version bereitgestellten APIs.
Einige dieser APIs sind sehr allgemein und in fast jeder Windows-Version vorhanden, andere nur in bestimmten Versionen.
Was genau "die Windows-API" ausmacht, ist daher nicht wirklich klar. Es ist ein sehr vager Begriff.

Um sich weiter auf Ihre Frage bezüglich der Interaktion mit dem OSI-Modell zu konzentrieren. Die Windows-Vernetzung konzentriert sich hauptsächlich auf das TCP / IP-Modell und folgt (grob) dem vereinfachten OSI-Modell (4 Schichten).
Die Schichten des 7-Schichten-Modells können in einer Windows-Umgebung nicht eindeutig isoliert werden, und verschiedene Windows-Untersysteme und APIs überschreiten an vielen Stellen die Grenzen zwischen den OSI-Schichten.
In Windows gibt es beispielsweise API-Schnittstellen, um mit den NIC-Treibern auf der Ebene einzelner Ethernet-Pakete zu kommunizieren. Das bedeutet nicht, dass alle Windows-APIs in der Netzwerkschicht leben.

Dies gilt in der Tat für die meisten modernen Betriebssysteme. Die strikte Einhaltung der OSI-Schichten ist in einem echten Betriebssystem SEHR schwierig, insbesondere wenn Sie gleichzeitig eine gute Netzwerkleistung erzielen möchten.

Wie andere bereits in den Kommentaren erwähnt haben: Ihre Frage ist zu weit gefasst. Wenn Sie an einer bestimmten API unter Windows interessiert sind, kann dies wahrscheinlich beantwortet werden.

0
Variable Solutions

Die Windows-API kann sich auf mehrere Ebenen des OSI-Modells erstrecken, je nachdem, wie Sie es betrachten. Es kann jedoch mit Sicherheit gesagt werden, dass der gesamte Umfang der Windows-API im Allgemeinen zu allgemein ist, um in diesem Zusammenhang erörtert zu werden. In einigen Aspekten ist es auf die Sitzungsebene ausgerichtet und betrachtet die API selbst und nicht etwas tieferes.

Im ISO / OSI-Modell (International Organization for Standardization Open Systems Interconnection) arbeitet Winsock an der Schnittstelle der Sitzungsschicht zur Transportschicht. Winsock ist eine Schnittstelle zwischen Anwendungen und dem Transportprotokoll und dient als Kanal für Daten-E / A. Die folgende Abbildung zeigt Winsock in Bezug auf andere Windows CE-Kommunikationsprotokolle im Kontext des ISO / OSI-Modells. 1

https://msdn.microsoft.com/de-de/library/ms882974.aspx