ISO/OSI Model
Last updated
Last updated
The Open System Interconnection (OSI) is the basic standardization of concepts related to networks. It was made by Internet Standard Organization (ISO). Each computer, connected as a node in the network, needs to have all OSI functionalities.
Layer 1 is the only one in which the real connection is also the logic connection. Each layer is a module (black-box) that implements functionality.
In OSI model, the direct connection exists only between:
Upper and lower layers of the same device
Physical layers of different devices
There are two main types of function calls:
Regular function calls
library method invocations
system calls
HW enabled signals
Callback functions: the module of the upper layer is waken up by module of the lower one
OS signal handler: it asks library to call a function when something happens (EVENT-BASED PROGRAMMING)
Interrupt handlers
Blocking function calls: they start call but doesn't return if something doesn't happen
Data plane definnes which data are shared among the network. Calling a function, we need to pass parameters to them (Data buffer).
The PDU (Protocol Data Unit) of layer i+1 becomes the SDU (Service Data Unit), or payload, of lower Layer i. Merging this payload, with the header of layer i, we obtain the PDU of layer i. This procedure is called encpsulation. The reverse procedure that from the PDU of layer i-1 extracts the SDU of layer i-1 and formats it as PDU of layer i, is called decapsulation.
Client (active entity): It generates the request
Its diffusion started at first years of XXI century. It's used to share media. Each node in the network can be client (making requests) or server (replying to requests).
In the following example, USER1 doesn't know which is the user in the network that shared the content. Hence, he sends the request for the content to a node in the network and this one can reply with two possible responses:
C= content (media)
R= reference to another node (that has the required content or knows which node has the content)
Each node can also forward the request to some other node and so it becomes the intermediary of the communication.
The subscriber subscribes to the dispatcher (notifier) a set of messages that wants to be notified. The notifier usually filters the messages that it receives and, when there are new messages that respect the subscription of the user, notify them to the user. The messages comes asynchronously to the dispatcher. There is no Polling made periodically by the user (there isn't Busy Waiting). There are some applications, like Whatsapp, that work in this way but in the past, this app made by Facebook doesn't really work asynchronously. In fact there was a polling policy.
TCP connection works at Layer 4 but at upper layers, it seems to work as a stream. In TCP connection, it is usually specified the port number, that is the upper layer protocol specification (Layer 5).
Server (passive entity): It's waiting for client requests and when it receives it, it only replies to it.