ISO/OSI Model

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.

OSI Model
Logical Communication

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.

Control Plane

Request from A to B
Response from B to A

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

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.

Onion model

TCP/IP Architecture

Application paradigms

Client-Server

  • Client (active entity): It generates the request

  • Server (passive entity): It's waiting for client requests and when it receives it, it only replies to it.

Peer-to-Peer (P2P)

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.

Publish/Subscribe/Notify

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.

Types of packets

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).

Last updated