Featured post

Why should I learn Go?

Image
What is unique about GO language? Here are some of the advantages of GO programming language:           Code runs fast           Garbage collection           Simpler objects           Efficient concurrency Code runs faster: Before understanding why GO runs faster, let us know the process of software translation. Basically, we have three broad categories of languages:             Machine level language ·        Machine level language is a low-level language where instructions are directly executed on the CPU. Machine level instructions are small steps which are straight forward and simple (Ex: ADD, SUBTRACT, MULTIPLY ) Assembly language ·        Assembly language is similar to machine level language but a bit more specific for humans to understand. For example, 1000...

COMPUTER NETWORKS : BASICS


COMPUTER NETWORKS : BASICS






A computer network is a number of computers connected by communication lines . Two computers connected to the  network can communicate with each other throuogh other nodes if they are not directly connected. These nodes may not be computers , they may be some other network devices such as routers to facilitate communication.

USES OF COMPUTER NETWORK .


  • ·        Exchange of information between different networks .
  • ·        Interconnected small computers in place of large computers .
  • ·        Communication tools like emails.
  • ·        Some applications and technologies are examples of distributed systems.



WWW was invented by TIM BERNERS- LEE .

Mode of communication :


Here we learn the different ways of the communication between different computers (nodes );

POINT TO POINT COMMUNICATION :




It means that one node is directly connected to another node .  For example , if node A is directly connected to node B then we say there is a point to point communication between the two nodes .
In case of point to point communication there exists a dedicated network . It may be :

SIMPLEX : In this mode only one way communication is possible . ie, for two nodes A and B , either A can send a message to B or B can send a message to A . Both cannot communicate with each other at the same time .
HALF-DUPLEX : Here both A and B can communicate with each other but not at the same time .
FULL DUPLEX: Here both A and B can communicate with each other simultaneously .

In Shared mode of communication A and B might not need to be connected directly . They may be connected through intermediate nodes called routers and switches . This type of sharing is known as multiplexing.


BROADCASTING:



In this case, there will be a sender and there will be many systems for receiving . For example , a satellite might send TV signals to all the devices in the network . The devices which want to receive the signals will grab the signal others just ignore them .


The broadcasting  is again dedicated and shared .


MULTICASTING :



Multicasting is about sharing your message among a particular group . For example , we have WHATS APP group chat where we can send a message to a particular group of people.

CLASSIFICATION OF NETWORKS :


LOCAL AREA NETWORK :

  • ·        Local Area Network is limited to a certain area . For example to a building or a group of buildings ( say computers connected in a university).
  • ·        LAN’s are privately owned .ie ,All the computers in a LAN have their own policies .





METROPOLITAN AREA NETWORK :


  • ·        It is somewhat bigger than LAN.
  • ·        The most important issue is how the connection is made between different nodes . This includes cost.

WIDE AREA NETWORK :

  • ·        It is distributed to much larger area compared to LAN and MAN .
  • ·        WAN is also known as “ NETWORK OF NETWORKS “ of “ INTERNETWORK “
  • ·        It is much costly





FORMAL FRAMEWORK : PROTOCOLS


What is a protocol ?
Protocols are the rules which specify what a particular should do within a network . As mentioned  earlier that in a shared network where nodes with more than one networks exist ,each of them has their own policies and protocols which specify what to do .  There are a number of protocols existing today .

·        Protocols are the building blocks of a network architecture .
·        Each protocol object has two different interfaces :
  • ·        SERVICE INTERFACE –defines operations on the protocol
  • ·        PEER-TO-PEER INTERFACE – defines messages exchanged between peers
  •  

PROTOCOL HIERARCHY :


  • ·        Most networks are organised as a series of layers.
  • ·        The task of each layer is to give some service to the upper layers.
  • ·        Any layer maintains a virtual connection with the corresponding layer in a peer.

·         

WHAT IS A VIRTUAL CONNECTION ?





The communication among peers is a virtual communication . For example, let us consider two peers A and B located at different places and with a  different network . Now let us assume that A wants to communicate with  node B . Since these two nodes are not connected directly , there cannot be a direct communication between the nodes . So in between these nodes there are some intermediate nodes and transmission devices such as routers and switches through which the communication takes place. The message travels all the way from node A through the intermediate nodes and reaches node B. But the node A feels that there is a direct communication between them and accesses the resources of node B ( such as a webpage from node B) . Thus we say virtual connection exists between node A and node B.
·        There is a peer-to-peer protocol running between any two corresponding and  communicating layers .
·        The interface between the layers in the same node is well defined.
·        The implementation of each layer in each node is transparent to other nodes .
·        The protocols between peer layers can  be changed if the peers agree. However it need not be referred to other layers .
·        The service definition tells us what the layer does and nothing else .
·        The interface tells the process above it how to access it . It specifies what the parameters are and what results to expect.

REFERENCE MODELS IN NETWORKING :


  • ·        ISO/OSI REFERENCE MODEL
  • ·        TCP/IP REFERENCE MODEL
  • ·        ATM REFERENCE MODEL

Other protocol stacks exist and new ones possible. However the extent to which a particular model is universally accepted is the key to success .

ISO/OSI reference model is a perfectly structured model with all the layers clearly defined . We will clearly discuss the ISO/OSI model in the post which we will cover in another post .

ISO/OSI REFERENCE MODEL :


The work which is required to make two nodes communicate is divided into modules and distributed evenly among the seven layers  in this model :

  • ·        APPLICATION LAYER
  • ·        PRESENTATION LAYER
  • ·        SESSION LAYER
  • ·        NETWORK LAYER
  • ·        DATALINK LAYER
  • ·        PHYSICAL LAYER






Let us know somemore about the PEER LEVEL COMMUNICATION :


·        Message sent from one application to another application on different hosts .
·        This message travels down the layers of the sending machine .
·        Each layer adds a header to be used by its corresponding peer level.
·        Bottom layer sends the message to the receiving machine .
·        Message received on the receiving side.
·        This message is passed up through each layer.
·        Each layer reads the corresponding header .

OSI MODEL : 7 PROTOCOL LAYERS


·        PHYSICAL LAYER – how to transfer bits
·        DATA LINK LAYER – how to transmit frames
·        NETWORK LAYER – how to route the packets to the node
·        TRANSPORT LAYER – how to send packets to the application
·        SESSION LAYER – manages communication
·        PRESENTATION LAYER – encode/decodes messages , security
·        APPLICATION LAYER – everything else !



This is an overview of the computer networks . In the next post we will be looking at the detailed illustration of the two main reference models . ie, TCP/IP and ISO OSI reference models .

Comments

Popular posts from this blog

what Is Big Data?

Introduction to Big Data and Hadoop

Fragments in Android - Introduction