Unit VIII: Network Layer and Internet Layer - Data Communication and Computer Network - BCA Notes (Pokhara University)

Breaking

Tuesday, July 2, 2019

Unit VIII: Network Layer and Internet Layer - Data Communication and Computer Network

Introduction:

The network layer is concerned with getting packets from the source all the way to the destination with minimal coast. Unlike the Data Link Layer, which has the more modest goal of just moving frames from one end of a wire to the other. Network Layer is the lowest layer that deals with end-to-end transmission.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Network Layer Design Issues:


1. Store-and-Forward Packet Switching:


The major components of the system are the carrier's equipment (routers connected by transmission lines), shown inside the shaded oval, and the customers' equipment, shown outside the oval. Host H1 is directly connected to one of the carrier's routers, A, by a leased line. In contrast, H2 is on a LAN with a router, F, owned and operated by the customer. This router also has a leased line to the carrier's equipment. We have shown F as being outside the oval because it does not belong to the carrier, but in terms of construction, software, and protocols, it is probably no different from the carrier's routers. 

This equipment is used as follows. A host with a packet to send transmits it to the nearest router, either on its own LAN or over a point-to-point link to the carrier. The packet is stored there until it has fully arrived so the checksum can be verified. Then it is forwarded to the next router along the path until it reaches the destination host, where it is delivered. This mechanism is store-and-forward packet switching.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
Fig: The Environment of the Network Layer Protocols

2. Services Provided To The Transport Layer:

The network layer provides services to the transport layer at the network layer/transport layer interface. An important question is what kind of services the network layer provides to the transport layer. 

The network layer services have been designed with the following goals in mind. 
a. The services should be independent of the router technology.
b. The transport layer should be shielded from the number, type, and topology of the routers present.
c. The network addresses made available to the transport layer should use a uniform numbering plan, even across LANs and WANs.

Given these goals, the designers of the network layer have a lot of freedom in writing detailed specifications of the services to be offered to the transport layer. This freedom often degenerates into a raging battle between two warring factions. 

The another camp argues that the subnet should provide a reliable, connection-oriented service. They claim that 100 years of successful experience with the worldwide telephone system is an excellent guide. In this view, quality of service is the dominant factor, and without connections in the subnet, quality of service is very difficult to achieve, especially for real-time traffic such as voice and video. 

These two camps are best exemplified by the Internet and ATM. The Internet offers connectionless network-layer service; ATM networks offer connection-oriented network-layer service. However, it is interesting to note that as quality-of-service guarantees are becoming more and more important, the Internet is evolving.

3. Implementation of Connectionless Service:


Two different organizations are possible, depending on the type of service offered. If connectionless service is offered, packets are injected into the subnet individually and routed independently of each other. No advance setup is needed. 

In this context, the packets are frequently called datagrams (in analogy with telegrams) and the subnet is called a datagram subnet. If connection-oriented service is used, a path from the source router to the destination router must be established before any data packets can be sent. 

This connection is called a VC (virtual circuit), in analogy with the physical circuits set up by the telephone system, and the subnet is called a virtual-circuit subnet. In this section we will examine datagram subnets; in the next one, we will examine virtual-circuit subnets. 

Let us now see how a datagram subnetworks. Suppose that the process P1 in the figure below has a long message for P2. It hands the message to the transport layer with instructions to deliver it to process P2 on host H2. The transport layer code runs on H1, typically within the operating system. It prepends a transport header to the front of the message and hands the result to the network layer, probably just another procedure within the operating system.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Let us assume that the message is four times longer than the maximum packet size, so the network layer has to break it into four packets, 1, 2, 3, and 4 and sends each of them in turn to router A using some point-to-point protocol, for example, PPP.

At this point the carrier takes over. Every router has an internal table telling it where to send packets for each possible destination. Each table entry is a pair consisting of a destination and the outgoing line to use for that destination. 

Only directly-connected lines can be used. For example, in Figure above, A has only two outgoing lines to B and C so every incoming packet must be sent to one of these routers, even if the ultimate destination is some other router. A's initial routing table is shown in the figure under the label ''initially.'' 

However, something different happened to packet 4. When it got to A it was sent to router B, even though it is also destined for F. For some reason, A decided to send packet 4 via a different route than that of the first three.

Perhaps it learned of a traffic jam somewhere along the ACE path and updated its routing table, as shown under the label ''later.'' The algorithm that manages the tables and makes the routing decisions is called the routing algorithm.

4. Implementation of Connection-Oriented Service:

For connection-oriented service, we need a virtual-circuit subnet. The idea behind virtual circuits are to avoid having to choose a new route for every packet sent, as in Figure above.

Instead, when a connection is established, a route from the source machine to the destination machine is chosen as part of the connection setup and stored in tables inside the routers. That route is used for all traffic flowing over the connection, exactly the same way that the telephone system works.

When the connection is released, the virtual circuit is also terminated. With connection-oriented service, each packet carries an identifier telling which virtual circuit it belongs to. As an example, consider the situation of Figure below. Here, host H1 has established connection 1 with host H2. 

It is remembered as the first entry in each of the routing tables. The first line of A's table says that if a packet bearing connection identifier 1 comes in from H1, it is to be sent to router C and given connection identifier 1. Similarly, the first entry at C routes the packet to E, also with the connection identifier 1. 
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Now let us consider what happens if H3 also wants to establish a connection to H2. It chooses connection identifier 1 and tells the subnet to establish the virtual circuit. This leads to the second row in the tables.

Note that we have a conflict here because although A can easily distinguish connection 1 packets from H1 from connection 1 packets from H3, C cannot do this. For this reason, A assigns a different connection identifier to the outgoing traffic for the second connection. 

Avoiding conflicts of this kind are why routers need the ability to replace connection identifiers in outgoing packets. In some contexts, this is called label switching.

5. Comparison of Virtual-Circuit and Datagram Subnets:

Both virtual circuits and datagrams have their supporters and their detractors. We will now attempt to summarize the arguments both ways. The major issues are listed in the table below, although purists could probably find a counter-example for everything in the figure.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Inside the subnet, several trade-offs exist between virtual circuits and datagrams. One trade-off is between router memory space and bandwidth. Virtual circuits allow packets to contain circuit numbers instead of full destination addresses.

If the packets tend to be fairly short, a full destination address in every packet may represent a significant amount of overhead and hence, wasted bandwidth. The price paid for using virtual circuits internally is the table-space within the routers. 

Depending upon the relative cost of communication circuits versus router memory, one or the other may be cheaper. Another trade-off is setup time versus address parsing time. Using virtual circuits requires a setup phase, which takes time and consumes resources. 

However, figuring out what to do with a data packet in a virtual-circuit subnet is easy: the router just uses the circuit number to index into a table to find out where the packet goes. In a datagram subnet, a more complicated lookup procedure is required to locate the entry for the destination. 

For transaction processing systems (e.g., stores calling up to verify credit card purchases), the overhead required to set up and clear a virtual circuit may easily dwarf the use of the circuit. If the majority of the traffic is expected to be of this kind, the use of virtual circuits inside the subnet makes little sense. 

On the other hand, permanent virtual circuits, which are set up manually and last for months or years, maybe useful here. Virtual circuits also have a vulnerability problem. If a router crashes and loses its memory, even if it comes back up a second later, all the virtual circuits passing through it will have to be aborted. 

In contrast, if a datagram router goes down, only those users whose packets were queued in the router at the time will suffer, and maybe not even all those, depending upon whether they have already been acknowledged. 

The loss of a communication line is fatal to virtual circuits using it but can be easily compensated for if datagrams are used. Datagrams also allow the routers to balance the traffic throughout the subnet, since routes can be changed part way through a long sequence of packet transmissions.

Introduction of Routing Algorithms:

The main function of the network layer is routing packets from source to destination. The algorithms that choose the routes and the data structures that they use area major area of network layer design.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
The routing algorithm is that part of the network layer software responsible for deciding which output line an incoming packet should be transmitted on. If the subnet uses datagrams internally, this decision must be made anew for every arriving data packet since the best route may have changed since last time. In the subnet using virtual circuits such decision is made ones per session.

Routing algorithms can be grouped into two major classes: non-adaptive and adaptive:
1. Non-adaptive algorithms do not base their routing decisions on measurements or estimates of the current traffic and topology. Instead, the choice of the route to use to get from I to J is computed in advance, of-line, and downloaded to the routers when the network is booted. This procedure is sometimes called static routing.

2. Adaptive algorithms, in contrast, change their routing decisions to reflect changes in the topology, and usually the traffic as well. Adaptive algorithms differ in where they get their information when they change the routes, and what metric is used for optimization. They are also called dynamic.

Some Routing Algorithms:

1. Shortest Path Routing Algorithm:

The following technique is widely used in many forms because it is simple and easy to understand. The idea is to build a graph of the subnet, with each node of the graph representing a router and each arc representing a communication line (link).To choose a route between a given pair of routers, the algorithm just finds the shortest path between them on the graph. The shortest path concept includes a definition of the way of measuring path length. Deferent metrics like a number of hops, geographical distance, and the mean queuing and transmission delay of the router can be used. In the most general case, the labels on the arcs could be computed as a function of the distance, bandwidth, average traffic, communication cost, mean queue length, measured delay, and other factors.

There are several algorithms for computing the shortest path between two nodes of a graph. One of them is Dijkstra’s Algorithm.

Steps:
1. Start with a local node (router) i.e. the root of the tree.
2. Assign a cost ‘0’ to the node and make the first permanent node.
3. Examine each neighbour node of the node that was the last permanent node.
4. Assign a cumulative cost to each node and make them tentative.
5. Among the list of tentative nodes:
    a. Find the node with the smallest cumulative cost and make it permanent.
   b. If a node can be reached from more than one direction, then select the direction with a shortest cumulative cost.
6. Repeat step 3 to 5 until every node becomes permanent.

Example:
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

2. Flow-Based Routing:

Flow-based routing took topology as well as load into account for routing. In some networks, the mean data flow between each pair of nodes is relatively stable and predictable. Under conditions in which the average traffic from i to j is known in advance and to a reasonable approximation, constant in time, it is possible to analyze the flows mathematically to optimize the routing.

The idea behind the analysis is that for a given line if the capacity and average flow are known, it is possible to compute the mean packet delay on that line from queuing theory. From the mean delays on all the lines, it is straightforward to calculate a flow-weighted average to get the mean packet delay for the whole subnet. The routing problem then reduces to finding the routing algorithm that produces the minimum average delay for the subnet.

This technology demands certain information in advance. First, the subnet topology, second the traffic matrix, third the capacity matrix and finally a routing algorithm must be chosen.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

3. Distance Vector Routing:

Modern computer networks generally use dynamic routing algorithms rather than static ones described above. Two dynamic algorithms, in particular, distance vector & link-state routing are the most popular. In this section, we will look at the former algorithm. In the following one, we will study the later one.

Distance vector routing algorithms operate by having each router maintain a table giving the best-known distance to each destination and which line to use to get there. These tables are updated by exchanging information with the neighbours.

The distance vector routing algorithm is sometimes called by other names including Bellman-Ford or Ford-Fulkerson. It was the original ARPANET routing algorithm and was also used on the Internet under the name RIP and in early versions of DECnet and Novell’s IPX. AppleTalk & CISCO routers use improved distance vector protocols.

In that algorithm each router maintains a routing table indexed by and containing one entry for each router in the subnet. This entry contains two parts: the preferred outgoing line to use for that destination and an estimate of the time or distance to that destination. The metric used might be a number of hops, time delay in milliseconds, and the total number of packets queued along the path or something similar.

The router is assumed to know the “distance” to each of its neighbours. In the hops metric the distance is one hop, for queue length metrics the router examines each queue, for the delay metric the route can measure it directly with special ECHO packets that the receiver just timestamps and sends back as fast as it can.

Distance vector routing works in theory, but has a serious drawback in practice: although it converges to the correct answer, it may be done slowly. Good news propagates at a linear time through the subnet, while bad ones have the count-to-infinity problem: no router ever has a value more than one higher than the minimum of all its neighbours. Gradually, all the routers work their way up to infinity, but the number of exchanges required depends on the numerical value used for infinity. One of the solutions to this problem is the split horizon algorithm that defines the distance to the X router is reported as infinity on the line that packets for X are sent on. Under that behaviour, bad news propagate also at linear speed through the subnet.

Example:
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Network Devices:

1. Hub:

Hub is one of the basic icons of networking devices which works at the physical layer and hence connect networking devices physically together. Hubs are fundamentally used in networks that use twisted-pair cabling to connect devices. They are designed to transmit the packets to the other appended devices without altering any of the transmitted packets received. They act as pathways to direct electrical signals to travel along. They transmit the information regardless of the fact if the data packet is destined for the device connected or not.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Hub Falls Into Two Categories:

a. Active Hub:
They are smarter than passive hubs. They not only provide the path for the data signals in fact they regenerate, concentrate and strengthen the signals before sending them to their destinations. Active hubs are also termed as ‘repeaters’.

b. Passive Hub:
They are more like point contact for the wires to build in the physical network. They have nothing to do with modifying the signals.

2. Repeater:

A repeater is an electronic device that amplifies the signal it receives. In other terms, you can think of repeater as a device which receives a signal and retransmits it at a higher level or higher power so that the signal can cover longer distances.


Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
For example, inside the college campus, the hostels might be far away from the main college where the ISP line comes in. If the college authority wants to pull a wire in between the hostels and main campus, they will have to use repeaters if the distance is much because different types of cables have limitations in terms of the distances they can carry the data for.

When these network devices take a particular configurational shape on a network, their configuration gets a particular name and the whole formation is called Network topology. In certain circumstances when we add some more network devices to network topology, it’s called Daisy chaining.

3. Ethernet Hubs:

It is a device connecting multiple Ethernet devices together and makes them perform the functions as a single unit.  They vary in speed in terms of data transfer rate. Ether utilizes Carrier Sense Multiple Access with Collision Detect (CSMA/CD) to control Media access. Ethernet hub communicates in a half-duplex mode where the chances of data collision are inevitable at most of the times.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

4. Switches:

Switches are the linkage points of an Ethernet network. Just as in hub, devices in switches are connected to them through twisted-pair cabling. But the difference shows up in the manner both the devices; hub and a switch treat the data they receive. Hub works by sending the data to all the ports on the device whereas a switch transfers it only to that port which is connected to the destination device.  A switch does so by having in-built learning of the MAC address of the devices connected to it. 
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Since the transmission of data signals are well defined in a switch hence the network performance is consequently enhanced. Switches operate in a full-duplex mode where devices can send and receive data from the switch at the simultaneously unlike in half-duplex mode. The transmission speed in switches is double than in Ethernet hub transferring a 20Mbps connection into 30Mbps and a 200Mbps connection to become 300Mbps. Performance improvements are observed in networking with the extensive usage of switches in the modern days.

The following method will elucidate further how data transmission takes place via switches:

Cut-through Transmission:

It allows the packets to be forwarded as soon as they are received. The method is prompt and quick but the possibility of error checking gets overlooked in such kind of packet data transmission.

Store and Forward:

In this switching environment the entire packet is received and ‘checked’ before being forwarded ahead. The errors are thus eliminated before being propagated further. The downside of this process is that error checking takes relatively longer time consequently making it a bit slower in processing and delivering.

Fragment Free:

In a fragment-free switching environment, a greater part of the packet is examined so that the switch can determine whether the packet has been caught up in a collision. After the collision status is determined, the packet is forwarded. 

5. Bridges:

Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
A bridge is a computer networking device that builds the connection with the other bridge networks which use the same protocol. It works at the Data Link Layer of the OSI Model and connects the different networks together and develops communication between them. It connects two local-area networks; two physical LANs into larger logical LAN or two segments of the same LAN that use the same protocol.

Apart from building up to larger networks, bridges are also used to segment larger networks into smaller portions. The bridge does so by placing itself between the two portions of two physical networks and controlling the flow of the data between them. Bridges nominate to forward the data after inspecting into the MAC address of the devices connected to every segment. The forwarding of the data is dependent on the acknowledgement of the fact that the destination address resides on some other interface. It has the capacity to block the incoming flow of data as well. Today Learning bridges have been introduced that build a list of the MAC addresses on the interface by observing the traffic on the network. This is a leap in the development field of manually recording of MAC addresses.

Types Of Bridges:

There are mainly three types in which bridges can be characterized:

a. Transparent Bridge:
As the name signifies it appears to be transparent for the other devices on the network. The other devices are ignorant of its existence. It only blocks or forwards the data as per the MAC address.

b. Source Route Bridge:
It derives its name from the fact that the path which packet takes through the network is implanted within the packet. It is mainly used in Token ring networks.

c. Translational Bridge:
The process of conversion takes place via Translational Bridge. It converts the data format of one networking to another. For instance Token ring to Ethernet and vice versa. 

6. Switches Superseding Bridges:

Ethernet switches are seen to be gaining trend as compared to bridges. They are succeeding on the account of provision of logical divisions and segments in the networking field. In fact, switches are being referred to as multi-port bridges because of their advanced functionality

7. Routers:

Routers are network layer devices and are particularly identified as Layer - 3 devices of the OSI Model. The process logical addressing information in the Network header of a packet such as IP Addresses. The router is used to create larger complex networks by complex traffic routing. It has the ability to connect dissimilar LANs on the same protocol. It also has the ability to limit the flow of broadcasts. A router primarily comprises of a hardware device or a system of the computer which has more than one network interface and routing software.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Functionality:

When a router receives the data, it determines the destination address by reading the header of the packet. Once the address is determined, it searches in its routing table to get know how to reach the destination and then forwards the packet to the higher hop on the route. The hop could be the final destination or another router.

Routing tables play a very pivotal role in letting the router makes a decision. Thus a routing table is ought to be updated and complete. The two ways through which a router can receive information are:

a. Static Routing:

In static routing, the routing information is fed into the routing tables manually. It does not only become a time-taking task but gets prone to errors as well. The manual updating is also required in case of statically configured routers when the change in the topology of the network or in the layout takes place. Thus static routing is feasible for tinniest environments with a minimum of one or two routers. 

b. Dynamic Routing:

For larger environment dynamic routing proves to be the practical solution. The process involves the use of peculiar routing protocols to hold communication. The purpose of these protocols is to enable the other routers to transfer information about to other routers so that the other routers can build their own routing tables.

8. Brouters:

Brouters are the combination of both the bridge and routers. They take up the functionality of both networking devices serving as a bridge when forwarding data between networks and serving as a router when routing data to individual systems. Brouter functions as a filter that allows some data into the local network and redirects unknown data to the other network. Brouters are rare and their functionality is embedded into the routers functioned to act as a bridge as well.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

9. Gateways:

Gateway is a device which is used to connect multiple networks and passes packets from one packet to the other network. Acting as the ‘gateway’ between different networking systems or computer programs, a gateway is a device which forms a link between them. It allows the computer programs, either on the same computer or on different computers to share information across the network through protocols. A router is also a gateway since it interprets data from one network protocol to another.

Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
Others such as bridge converts the data into different forms between two networking systems. Then a software application converts the data from one format into another. Gateway is a viable tool to translate the data format, although the data itself remains unchanged. Gateway might be installed in some other device to add its functionality into another.

10. Network Card:

Network cards are also known as Network Interface Cards (NICs) are hardware devices that connect a computer with the network. They are installed on the motherboard. They are responsible for developing a physical connection between the network and the computer. Computer data is translated into electrical signals sent to the network via Network Interface Cards.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
They can also manage some important data-conversion function.  These days’ network cards are software configured unlike in olden days when drivers were needed to configure them. Even if the NIC doesn’t come up with the software then the latest drivers or the associated software can be downloaded from the internet as well.

11. Modems:

The modem is a device which converts the computer-generated digital signals of a computer into analogue signals to enable their travelling via phone lines. The ‘modulator-demodulator’ or modem can be used as a dial-up for LAN or to connect to an ISP. Modems can be both external, as in the device which connects to the USB or the serial port of a computer, or proprietary devices for handheld gadgets and other devices, as well as internal; in the form of add-in expansion cards for computers and PCMCIA cards for laptops.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
Configuration of a modem differs for both the external and internal modem. For internal modems, IRQ – Interrupt request is used to configure the modem along with I/O, which is a memory address. Typically before the installation of built-in modem, integrated serial interfaces are disabled, simultaneously assigning them the COM2 resources.

For external connection of a modem, the modem assigns and uses the resources itself. This is especially useful for the USB port and laptop users as the non-complex and simpler nature of the process renders it far much more beneficial for daily usage.

Upon installation, the second step to ensure the proper working of a modem is the installation of drivers. The modem working speed and processing is dependent on two factors:
a. Speed of UART – Universal Asynchronous Receiver or Transmitter chip (installed in the computer to which the modem connection is made)
b. Speed of the modem itself

Congestion Control:

Congestion is an important issue that can arise in a packet-switched network. Congestion is a situation in Communication Networks in which too many packets are present in a part of the subnet, performance degrades. Congestion in a network may occur when the load on the network (i.e. the number of packets sent to the network) is greater than the capacity of the network (i.e. the number of packets a network can handle.) In other words, when too much traffic is offered, congestion sets in and performance degrades sharply.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

Causing of Congestion:

The various causes of congestion in a subnet are: 
1. The input traffic rate exceeds the capacity of the output lines. If suddenly, a stream of packet start arriving on three or four input lines and all need the same output line. In this case, a queue will be built up. If there is insufficient memory to hold all the packets, the packet will be lost. Increasing the memory to unlimited size does not solve the problem. This is because by the time packets reach the front of the queue, they have already timed out (as they waited for the queue). When the timer goes off the source transmits a duplicate packet that is also added to the queue. Thus the same packets are added, again and again, increasing the load all the way to the destination.     
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

2. The routers are too slow to perform bookkeeping tasks (queuing buffers, updating tables, etc.).

3. The routers' buffer is too limited.

4. Congestion in a subnet can occur if the processors are slow. Slow speed CPU at routers will perform the routine tasks such as queuing buffers, updating table etc. slowly. As a result of this, queues are built up even though there is an excess line capacity.

5. Congestion is also caused by slow links. This problem will be solved when high-speed links are used. But it is not always the case. Sometimes increase in link bandwidth can further deteriorate the congestion problem as higher-speed links may make the network more unbalanced. Congestion can make itself worse. If a route!" does not have free buffers, it starts ignoring/discarding the newly arriving packets. When these packets are discarded, the sender may retransmit them after the timer goes off. Such packets are transmitted by the sender again and again until the source gets the acknowledgement of these packets. Therefore multiple transmissions of packets will force the congestion to take place at the sending end.

How to Correct the Congestion Problem:

Congestion Control refers to techniques and mechanisms that can either prevent congestion, before it happens, or remove congestion, after it has happened. Congestion control mechanisms are divided into two categories, one category prevents the congestion from happening and the other category removes congestion after it has taken place.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

These two categories are:

1. Open Loop Congestion Control:

In this method, policies are used to prevent the congestion before it happens. Congestion control is handled either by the source or by the destination. The various methods used for open-loop congestion control are:

a. Retransmission Policy:
i. The sender retransmits a packet if it feels that the packet it has sent is lost or corrupted.

ii. However, retransmission, in general, may increase the congestion in the network. But we need to implement good retransmission policy to prevent congestion.

iii. The retransmission policy and the retransmission timers need to be designed to optimize efficiency and at the same time prevent the congestion.

b. Window Policy:
i. To implement the window policy, the selective reject window method is used for congestion control.

ii. Selective Reject method is preferred over Go-back-n window as in Go-back-n method, when the timer for a packet time out, several packets are resent, although some may have arrived safely at the receiver. Thus, this duplication may make congestion worse.

iii. Selective rejects method sends only the specific lost or damaged packets.

c. Acknowledgement Policy:
i. The acknowledgement policy imposed by the receiver may also affect congestion.

ii. If the receiver does not acknowledge every packet it receives it may slow down the sender and help prevent congestion.

iii. Acknowledgements also add to the traffic load on the network. Thus, by sending fewer acknowledgements we can reduce the load on the network.

iv. To implements it, several approaches can be used:
      A receiver may send an acknowledgement only if it has a packet to be sent.
      A receiver may send an acknowledgement when a timer expires.
      A receiver may also decide to acknowledge only N packets at a time.

d. Discarding Policy:
i. A router may discard less sensitive packets when congestion is likely to happen.

ii. Such a discarding policy may prevent congestion and at the same time may not harm the integrity of the transmission.

e. Admission Policy:
i. An admission policy, which is a quality-of-service the mechanism can also prevent congestion in virtual circuit networks.

ii. Switches inflow first check the resource requirement of a flow before admitting it to the network.

iii. A router can deny establishing a virtual circuit connection if there is congestion in the "network or if there is a possibility of future congestion.

2. Closed Loop Congestion Control:

Closed loop congestion control mechanisms try to remove the congestion after it happens. The various methods used for closed-loop congestion control are:

a. Backpressure:
i. Backpressure is a node-to-node congestion control that starts with a node and propagates, in the opposite direction of data flow.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
ii. The backpressure technique can be applied only to virtual circuit networks. In such a virtual circuit, each node knows the upstream node from which data flow is coming.

iii. In this method of congestion control, the congested node stops receiving data from the immediate upstream node or nodes.

iv. This may cause the upstream node on nodes to become congested, and they, in turn, reject data from their upstream node or nodes.

v. As shown in figure node 3 is congested and it stops receiving packets and informs its upstream node 2 to slow down. Node 2 in turns may be congested and informs node 1 to slow down. Now node 1 may create congestion and informs the source node to slow down. In this way, congestion is alleviated. Thus, the pressure on node 3 is moved backwards to the source to remove the congestion.

b. Choke Packet:
i. In this method of congestion control, congested router or the node sends a special type of packet called choke packet to the source to inform it about the congestion.

ii. Here, the congested node does not inform its upstream node about the congestion as in backpressure method.

iii. In the choke packet method, the congested node sends a warning directly to the source station i.e. the intermediate nodes through which the packet has travelled are not warned.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
c. Implicit Signalling:
i. In implicit signalling, there is no communication between the congested node or nodes and the source.

ii. The source guesses that there is congestion somewhere in the network when it does not receive any acknowledgement. Therefore the delay in receiving an acknowledgement is interpreted as congestion in the network.

iii. On sensing this congestion, the source slows down.

iv. This type of congestion control policy is used by TCP.

d. Explicit Signalling:
i. In this method, the congested nodes explicitly send a signal to the source or destination to inform about the congestion.

ii. Explicit signalling is different from the choke packet method. In choke packed method, a separate packet is used for this purpose whereas, in explicit signalling method, the signal is included in the packets that carry data.

iii. Explicit signalling can occur in either the forward direction or the backward direction.

iv. In backward signalling, a bit is set in a packet moving in the direction opposite to the congestion. This bit warns the source about the congestion and informs the source to slow down.

v. In forward signalling, a bit is set in a packet moving in the direction of congestion. This bit warns the destination about the congestion. The receiver, in this case, uses policies such as slowing down the acknowledgements to remove the congestion.

Congestion Control Algorithms:

1. Leaky Bucket Algorithm:

It is a traffic shaping mechanism that controls the amount and the rate of the traffic sent to the network. A leaky bucket algorithm shapes bursty traffic into fixed-rate traffic by averaging the data rate. Imagine a bucket with a small hole at the bottom. The rate at which the water is poured into the bucket is not fixed and can vary but it leaks from the bucket at a constant rate. Thus (as long as the water is present in the bucket), the rate at which the water leaks do not depend on the rate at which the water is input to the bucket.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes
Also, when the bucket is full, any additional water that enters into the bucket spills over the sides and is lost. The same concept can be applied to packets in the network. Consider that data is coming from the source at variable speeds. Suppose that a source sends data at 12 Mbps for 4 seconds. Then there is no data for 3 seconds. The source again transmits data at a rate of 10 Mbps for 2 seconds. Thus, in a time span of 9 seconds, 68 Mb data has been transmitted. If a leaky bucket algorithm is used, the data flow will be 8 Mbps for 9 seconds. This constant flow is maintained.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

2. Token Bucket Algorithm:

The leaky bucket algorithm allows only an average (constant) rate of data flow. Its major problem is that it cannot deal with bursty data. A leaky bucket algorithm does not consider the idle time of the host. For example, if the host was idle for 10 seconds and now it is willing to send data at very high speed for another 10 seconds, the total data transmission will be divided into 20 seconds and average data rate will be maintained. The host is having no advantage of sitting idle for 10 seconds.

To overcome this problem, a token bucket algorithm is used. A token bucket algorithm allows bursty data transfers. A token bucket algorithm is a modification of leaky bucket in which leaky bucket contains tokens. In this algorithm, a token(s) are generated at every clock tick. For a packet to be transmitted, the system must remove token(s) from the bucket. Thus, a token bucket algorithm allows idle hosts to accumulate credit for the future in the form of tokens.

For example, if a system generates 100 tokens in one clock tick and the host is idle for 100 ticks. The bucket will contain 10,000 tokens. Now, if the host wants to send bursty data, it can consume all 10,000 tokens at once for sending 10,000 cells or bytes. Thus a host can send bursty data as long as the bucket is not empty.
Network layer and Internet Layer, Network layer and design Issues, Store-and-Forward Packet Switching, Services Provided to the Transport Layer, Implementation of Connectionless Service, Implementation of Connection-Oriented Service, Virtual Circuit and Data grams, Introduction of Routing Algorithms, Shortest Path Routing Algorithm, Flow Based Routing Algorithm, Distance Vector Routing Algorithm Congestion Control Algorithms,  Leaky Bucket Algorithms, Token Bucket Algorithm, Network Devices, Hub, Repeater, Ethernet Hubs, Switches, Bridges, Switches Superseding Bridges, Routers, Brouters, Gateways, Network Card, Modems,  Congestion Control,  Causing of Congestion, How to Correct the Congestion Problem, Open Loop Congestion Control,  Retransmission Policy,  Window Policy, Acknowledgement Policy,  Discarding Policy,  Admission Policy, Closed Loop Congestion Control, Backpressure, Choke Packet, Implicit Signalling, Explicit Signalling, BCA Notes, BCA 6 Semester Notes, Data Communication and Computer Network Notes, Computer Network Notes, Pokhara University, PU BCA Notes, PoU Notes, Nepal BCA Notes

No comments:

Post a Comment

If you have any doubt, then don't hesitate to drop comments.