Computing system is not about single hardware executions; it is about networking multiple hardware together into a pool and distribute the executions among them. This is known as distribution tool and it needs networking component. This section is all about networking in the computing world.
Network is being abstracted into multi-layers. Here is the OSI diagram of data flow from hardware to your application and vice versa:
As a architecture designer, you need to at least know how your system networking works both internally and externally. We will go through each layers before we move into distributions.
This layer is more of the network hardware. Speed and transmission reliability is solely dependent on the hardware channel design. Some example factors are:
This layer provides node-to-node data transfer. It holds the details and metadata for the physical network device. Normally, this layer has the following information:
This layer provides the lower-level networking operations like managing IP Address, routing, and traffic control. This includes:
This layer handles data flow control and protocol. These are the packet encoding and decoding layer for communicating via the network layers. The 2 common transports are:
This layer is your application. This is where the application process the incoming/outgoing packets provided by the network system. Application layer according to the latest OSI diagram can be split into 3 more layers. The order of these layers is solely depending on the application designer. They are:
This is more of the IP address you plan to use. To date (2019), there are 2 types of IP addresses:
255.255.255.255
fe80::d4a8:6435:d2d8:d9f3b11
Both uses port number from 0-65535 that are assigned conventionally. Example: 80
for web server.
Architecture based. Both has their specialties.
This is the application layer's network "presentation" layer. The application chooses which transport protocol to use depending on specification. Some examples are:
This is also not limited to inventing your own transport protocol.
This is the application layer's data types. It is the conventional files and format we use in the operating systems like HTML, JSON, XML, PDF, etc.
That's all about the basics of networking in computer and software. Feel free to explore the sub-topics for in-depth study and learning.