Unit II Lecture Notes
Unit II Lecture Notes
Lecture Topic CO PO
No
NETWORK LAYER:
This layer is responsible for the delivery of packets from source to destination. It determines
the best path to move data from source to the destination based on the network conditions, the
priority of service, and other factors.
The other responsibilities of this layer are
⮚ Logical addressing - If a packet passes the network boundary, we need another
addressing system for source and destination called logical address. This addressing is
used to identify the device on the internet.
⮚ Routing – Routing is the major component of the network layer, and it determines the
best optimal path out of the multiple paths from source to the destination.
Lecture Topic CO PO
No
IPV4 ADDRESSING:
• The identifier used in the IP layer of the TCP/IP protocol suite to identify the
connection of each device to the Internet is called the Internet address or IP address.
• Internet Protocol version 4 (IPv4) is the fourth version in the development of the
Internet Protocol (IP) and the first version of the protocol to be widely deployed.
• IPv4 is described in IETF publication in September 1981.
• The IP address is the address of the connection, not the host or the router. An IPv4
address is a 32-bit address that uniquely and universally defines the connection .
• If the device is moved to another network, the IP address may be changed.
• IPv4 addresses are unique in the sense that each address defines one, and only one,
connection to the Internet.
• If a device has two connections to the Internet, via two networks, it has two IPv4
addresses.
• Pv4 addresses are universal in the sense that the addressing system must be accepted
by any host that wants to be connected to the Internet.
IPV4 ADDRESS SPACE:
• IPv4 defines addresses has an address space.
• An address space is the total number of addresses used by the protocol.
• If a protocol uses b bits to define an address, the address space is 2 b because each bit
can have two different values (0 or 1).
• IPv4 uses 32-bit addresses, which means that the address space is 2 32 or 4,294,967,296
(more than four billion). 4 billion devices could be connected to the Internet
In binary notation, an IPv4 address is displayed as 32 bits. To make the address more
readable, one or more spaces are usually inserted between bytes (8 bits).
In dotted-decimal notation,IPv4 addresses are usually written in decimal form with a
decimal point (dot) separating the bytes. Each number in the dotted-decimal notation
is between 0 and 255.
In hexadecimal notation, each hexadecimal digit is equivalent to four bits. This means
that a 32-bit address has 8 hexadecimal digits. This notation is often used in network
programming.
• They are
⮚ Classful Addressing
⮚ Classless Addressing
CLASSFUL ADDRESSING
An IPv4 address is 32-bit long(4 bytes).
Class A
• In Class A, an IP address is assigned to those networks that contain a large number of
hosts.
• The network ID is 8 bits long.
• The host ID is 24 bits long.
• In Class A, the first bit in higher order bits of the first octet is always set to 0 and the
remaining 7 bits determine the network ID.
• The 24 bits determine the host ID in any network.
• The total number of networks in Class A = 27 = 128 network address
• The total number of hosts in Class A = 224 - 2 = 16,777,214 host address
Class B
• In Class B, an IP address is assigned to those networks that range from smallsized to
large-sized networks.
• The Network ID is 16 bits long.
• The Host ID is 16 bits long.
• In Class B, the higher order bits of the first octet is always set to 10, and the
remaining14 bits determine the network ID.
• The other 16 bits determine the Host ID.
• The total number of networks in Class B = 2 14 = 16384 network address The total
number of hosts in Class B = 216 - 2 = 65534 host address
Class C
• In Class C, an IP address is assigned to only small-sized networks.
• The Network ID is 24 bits long.
• The host ID is 8 bits long.
• In Class C, the higher order bits of the first octet is always set to 110, and the
remaining 21 bits determine the network ID.
The 8 bits of the host ID determine the host in a network
• The total number of networks = 221 = 2097152 network address The total number of
hosts = 28 - 2 = 254 host address
Class D
• In Class D, an IP address is reserved for multicast addresses.
• It does not possess subnetting.
The higher order bits of the first octet is always set to 1110, and the remaining bits
determines the host ID in any network.
Class E
• In Class E, an IP address is used for the future use or for the research and
development purposes.
• It does not possess any subnetting.
• The higher order bits of the first octet is always set to 1111, and the remaining bits
determines the host ID in any network.
Subnetting:
• In subnetting, a class A or class B block is divided into several subnets.
• Each subnet has a larger prefix length than the original network.
• For example, if a network in class A is divided into four subnets, each subnet has a
prefix of nsub = 10.
• At the same time, if all of the addresses in a network are not used, subnetting allows
the addresses to be divided among several organizations.
CLASSLESS ADDRESSING:
Address Aggregation:
• One of the advantages of the CIDR strategy is address aggregation (sometimes called
address summarization or route summarization).
• When blocks of addresses are combined to create a larger block, routing can be done
based on the prefix of the larger block.
• ICANN assigns a large block of addresses to an ISP.
• Each ISP in turn divides its assigned block into smaller subblocks and grants the
subblocks to its customers.
The only address in the block [Link]/32 is called the this-host address.
It is used whenever a host needs to send an IP datagram but it does not know its own
address to use as the source address.
Limited-broadcast Address. The only address in the block [Link]/32 is
called the limited broadcast address.
It is used whenever a router or a host needs to send a datagram to all devices in a
network.
The routers in the network, however, block the packet having this address as the
destination; the packet cannot travel outside the network.
Loopback Address:
Private Addresses:
Multicast Addresses:
There are five special addresses that are used for special purposes: this-host address,
limited-broadcast address, loopback address, private addresses, and multicast addresses.
Lecture Topic CO PO
No
⮚ The main protocol Internet Protocol is responsible for packetizing, forwarding, and
delivery of a packet at the network layer.
⮚ The Internet Control Message Protocol version 4 (ICMPv4) helps IPv4 to handle some
errors that may occur in the network-layer delivery.
IP - INTERNET PROTOCOL:
⮚ The Internet Protocol is the key tool used today to build scalable, heterogeneous
internetworks.
⮚ IP runs on all the nodes (both hosts and routers) in a collection of networks
IP defines the infrastructure that allows these nodes and networks to function as a
single logical internetwork.
IP SERVICE MODEL:
A key part of the IP service model is the type of packets that can be carried. The IP
datagram consists of a header followed by a number of bytes of data
FIELD DESCRIPTION
Version Specifies the version of IP. Two versions exists – IPv4 and IPv6.
HLen Specifies the length of the header
TOS An indication of the parameters of the quality of service desired such as
(Type of Service) Precedence, Delay, Throughput and Reliability.
Length Length of the entire datagram, including the header. The maximum size
of an IP datagram is 65,535(210 )bytes
Ident Uniquely identifies the packet sequence number. Used
(Identification) for fragmentation and re-assembly.
Flags Used to control whether routers are allowed to fragment a packet. If a
packet is fragmented , this flag value is [Link] not, flag value is 0.
Checksum Used to detect the processing errors introduced into the packet
Every network type has a maximum transmission unit (MTU), which is the largest IP
datagram that it can carry in a frame.
Fragmentation of a datagram will only be necessary if the path to the destination includes a
network with a smaller MTU.
⮚ When a host sends an IP datagram,it can choose any size that it wants.
⮚ Fragmentation typically occurs in a router when it receives a datagram that it wants to
forward over a network that has an MTU that is smaller than the received datagram.
⮚ Each fragment is itself a self-contained IP datagram that is transmitted over a
sequence of physical networks, independent of the other fragments.
⮚ Each IP datagram is re-encapsulated for each physical network over which it travels.
For example , if we consider an Ethernet network to accept packets up to 1500 bytes
long.
⮚ This leaves two choices for the IP service model:
• Make sure that all IP datagrams are small enough to fit inside one packet on
any network technology
• Provide a means by which packets can be fragmented and reassembled when
they are too big to go over a given network technology.
Fragmentation produces smaller, valid IP datagrams that can be readily reassembled into the
original datagram upon receipt, independent of the order of their arrival
Example:
⮚ The original packet starts at the client; the fragments are reassembled at the server.
The value of the identification field is the same in all fragments, as is the value of the
flags field with the more bit set for all fragments except the last.
⮚ Also, the value of the offset field for each fragment is shown.
⮚ Although the fragments arrived out of order at the destination, they can be correctly
reassembled.
⮚ The value of the offset field is always relative to the original datagram.
⮚ Even if each fragment follows a different path and arrives out of order, the final
destination host can reassemble the original datagram from the fragments received (if
none of them is lost) using the following strategy:
1) The first fragment has an offset field value of zero.
2) Divide the length of the first fragment by 8. The second fragment has an offset
value equal to that result.
3) Divide the total length of the first and second fragment by 8. The third
fragment has an offset value equal to that result.
4) Continue the process. The last fragment has its M bit set to 0.
5) Continue the process. The last fragment has a more bit value of 0.
Reassembly:
⮚ Reassembly is done at the receiving host and not at each router.
⮚ To enable these fragments to be reassembled at the receiving host, they all carry the
same identifier in the Ident field.
⮚ This identifier is chosen by the sending host and is intended to be unique among all
the datagrams that might arrive at the destination from this source over some
reasonable time period.
⮚ Since all fragments of the original datagram contain this identifier, the reassembling
host will be able to recognize those fragments that go together.
⮚ For example, if a single fragment is lost, the receiver will still attempt to reassemble
the datagram, and it will eventually give up and have to garbage collect the resources
that were used to perform the failed reassembly.
⮚ Hosts are now strongly encouraged to perform “path MTU discovery,” a process by
which fragmentation is avoided by sending packets that are small enough to traverse
the link with the smallest MTU in the path from sender to receiver.
IP SECURITY:
There are three security issues that are particularly applicable to the IP protocol:
(1) Packet Sniffing (2) Packet Modification and (3) IP Spoofing.
Packet Sniffing:
⮚ An intruder may intercept an IP packet and make a copy of it.
⮚ Packet sniffing is a passive attack, in which the attacker does not change the contents
of the packet.
⮚ This type of attack is very difficult to detect because the sender and the receiver may
never know that the packet has been copied.
⮚ Although packet sniffing cannot be stopped, encryption of the packet can make the
attacker’s effort useless.
⮚ The attacker may still sniff the packet, but the content is not detectable.
Packet Modification:
⮚ The second type of attack is to modify the packet.
⮚ The attacker intercepts the packet, changes its contents, and sends the new packet to
the receiver.
⮚ The receiver believes that the packet is coming from the original sender.
IP Spoofing:
⮚ An attacker can masquerade as somebody else and create an IP packet that carries the
source address of another computer.
⮚ An attacker can send an IP packet to a bank pretending that it is coming from one of
the customers.
⮚ This type of attack can be prevented using an origin authentication mechanism
IP Sec:
⮚ The IP packets today can be protected from the previously mentioned attacks using a
protocol called IPSec (IP Security).
⮚ This protocol is used in conjunction with the IP protocol.
⮚ IPSec protocol creates a connection-oriented service between two entities in which
they can exchange IP packets without worrying about the three attacks such as Packet
Sniffing, Packet Modification and IP Spoofing.
IP Packet Encryption :
The packets exchanged between two parties can be encrypted for privacy using one of
the encryption algorithms and a shared key agreed upon in the first step. This makes the
packet sniffing attack useless.
1) Data Integrity : Data integrity guarantees that the packet is not modified
during the transmission. If the received packet does not pass the data integrity
test, it is discarded. This prevents the second attack, packet modification.
2) Origin Authentication : IPSec can authenticate the origin of the packet to be
sure that the packet is not created by an imposter. This can prevent IP spoofing
attacks.
Lecture Topic CO PO
No
⮚ ICMP messages are divided into two broad categories: error-reporting messages and
query messages.
⮚ The error-reporting messages report problems that a router or a host (destination) may
encounter when it processes an IP packet.
⮚ The query messages help a host or a network manager get specific information from a
router or another host.
ICMP Error – Reporting Messages:
Ping:
Traceroute or Tracert:
⮚ The traceroute program in UNIX or tracert in Windows can be used to trace the path
of a packet from a source to the destination.
⮚ It can find the IP addresses of all the routers that are visited along the path.
⮚ The program is usually set to check for the maximum of 30 hops (routers) to be
visited.
⮚ The number of hops in the Internet is normally less than this.
$ traceroute [Link]
Lecture Topic CO PO
No
14 Unicast and Multicast Routing C211.2 1,2
UNICAST ROUTING :
Routing is the process of selecting best paths in a network. In unicast routing, a packet
is routed, hop by hop, from its source to its destination by the help of forwarding tables.
Routing a packet from its source to its destination means routing the packet from a source
router (the default router of the source host) to a destination router (the router connected to
the destination network).
• The source host needs no forwarding table because it delivers its packet to the default
router in its local network.
• The destination host needs no forwarding table either because it receives the packet
from its default router in its local network.
• Only the intermediate routers in the networks need forwarding tables.
NETWORK AS A GRAPH:
Initial State:
Periodic Update :
⮚ In this case, each node automatically sends an update message every so often, even
if nothing has changed.
⮚ The frequency of these periodic updates varies from protocol to protocol, but it is
typically on the order of several seconds to several minutes.
Triggered Update
⮚ In this case, whenever a node notices a link failure or receives an update from one of
its neighbors that causes it to change one of the routes in its routing table.
⮚ Whenever a node’s routing table changes, it sends an update to its neighbors, which
may lead to a change in their tables, causing them to send an update to their
neighbors.
Example:
• Routers advertise the cost of reaching networks. Cost of reaching each link is 1 hop.
For example, router C advertises to A that it can reach network 2, 3 at cost 0 (directly
connected), networks 5, 6 at cost 1 and network 4 at cost 2.
• Each router updates cost and next hop for each network number.
• Infinity is defined as 16, i.e., any route cannot have more than 15 hops.
Therefore RIP can be implemented on small-sized networks only.
Version - It indicates the RIP version number. For RIPv1, the value is 0x01.
Address Family Identifier - When the value is 2, it represents the IP protocol.
IP Address - It indicates the destination IP address of the route. It can be the addresses
of only the natural network segment.
Metric - It indicates the hop count of a route to its destination.
Reliable Flooding:
Each node sends its LSP out on each of its directly connected links.
When a node receives LSP of another node, checks if it has an LSP already for that
node.
If not, it stores and forwards the LSP on all other links except the incoming one.
Else if the received LSP has a bigger sequence number, then it is stored and
forwarded. Older LSP for that node is discarded.
Otherwise discard the received LSP, since it is not latest for that node.
Thus recent LSP of a node eventually reaches all nodes, i.e., reliable flooding.
PATH-VECTOR ROUTING
Path-vector routing is an asynchronous and distributed routing algorithm.
• The Path-vector routing is not based on least-cost routing.
• The best route is determined by the source using the policy it imposes on the route.
• In other words, the source can control the path.
• Path-vector routing is not actually used in an internet, and is mostly designed to route
a packet between ISPs.
Spanning Trees
In path-vector routing, the path from a source to all destinations is determined by the
best spanning tree.
The best spanning tree is not the least-cost tree.
It is the tree determined by the source when it imposes its own policy.
If there is more than one route to a destination, the source can choose the route that
meets its policy best.
A source may apply several policies at the same time.
One of the common policies uses the minimum number of nodes to be visited.
Another common policy is to avoid some nodes as the middle node in a route.
The spanning trees are made, gradually and asynchronously, by each node. When a
node is booted, it creates a path vector based on the information it can obtain about its
immediate neighbor.
A node sends greeting messages to its immediate neighbors to collect these pieces of
information
Each node, after the creation of the initial path vector, sends it to all its immediate
neighbors.
Each node, when it receives a path vector from a neighbor, updates its path vector
using the formula
Example:
The Figure below shows a small internet with only five nodes.
Each source has created its own spanning tree that meets its policy.
The policy imposed by all sources is to use the minimum number of nodes to reach a
destination.
The spanning tree selected by A and E is such that the communication does not pass
through D as a middle node.
INTERNET STRUCTURE:
Internet has a million networks. Routing table entries per router should be minimized.
Link state routing protocol is used to partition domain into areas.
An routing area is a set of routers configured to exchange link-state information.
Area introduces an additional level of hierarchy.
Thus domains can grow without burdening routing protocols.
Lecture Topic CO PO
No
Multicasting:
In multicasting, there is one source and a group of destinations.
Multicast supports efficient delivery to multiple destinations.
The relationship is one to many or many-to-many.
One-to-Many (Source Specific Multicast) o Radio station broadcast o Transmitting
news, stock-price o Software updates to multiple hosts
Many-to-Many (Any Source Multicast) o Multimedia teleconferencing o Online
multi-player games o Distributed simulations
In this type of communication, the source address is a unicast address, but the
destination address is a group address.
The group address defines the members of the group.
In multicasting, a multicast router may have to send out copies of the same datagram
through more than one interface.
A host can be in multiple groups
A host can join and leave groups
A host signals its desire to join or leave a multicast group by communicating with its
local router using a special protocol.
In IPv4, the protocol is Internet Group Management Protocol (IGMP) In IPv6, the
protocol is Multicast Listener Discovery (MLD)
IGMP OR MLD PROTOCOL
Hosts communicate their desire to join / leave a multicast group to a router using
Internet Group Message Protocol (IGMP) in IPv4 or Multicast Listener Discovery
(MLD) in IPv6.
Provides multicast routers with information about the membership status of hosts
connected to the network.
Enables a multicast router to create and update list of loyal members for each group.
MULTICAST ADDRESSING
Multicast address is associated with a group, whose members are dynamic.
Each group has its own IP multicast address.
IP addresses reserved for multicasting are Class D in IPv4 (Class D [Link] to
[Link]), 1111 1111 prefix in IPv6.
o
Hosts that are members of a group receive copy of the packet sent when destination
contains group address.
MULTICASTING VERSUS MULTIPLE UNICASTING
• Multicasting starts with a single packet from the source that is duplicated by the
routers. The destination address in each packet is the same for all duplicates.
Only a single copy of the packet travels between any two routers.
Using IP multicast
• Sending host does not send multiple copies of the packet
• A host sends a single copy of the packet addressed to the group’s multicast address
• The sending host does not need to know the individual unicast IP address of each
member.
TYPES OF MULTICASTING
• Source-Specific Multicast - In source-specific multicast (one-to-many model),
receiver specifies multicast group and sender from which it is interested to receive
packets. Example: Internet radio broadcasts.
MULTICAST APPLICATIONS
• Access to Distributed Databases
Information Dissemination
Teleconferencing.
• Distance Learning
MULTICAST ROUTING
• To support multicast, a router must additionally have multicast forwarding tables
that indicate, based on multicast address, which links to use to forward the
multicast packet.
• Unicast forwarding tables collectively specify a set of paths.
• Multicast forwarding tables collectively specify a set of trees -Multicast
distribution trees.
• Multicast routing is the process by which multicast distribution trees are
determined.
• To support multicasting, routers additionally build multicast forwarding tables.
• Multicast forwarding table is a tree structure, known as multicast distribution
trees.
• Internet multicast is implemented on physical networks that support broadcasting
by extending forwarding functions.
There are two types of Multicast Distribution Trees used in multicast routing.
They are
⮚ Source-Based Tree: (DVMRP)
▪ For each combination of (source , group), there is a shortest
path spanning tree.
▪ Flood and prune
⮚ Send multicast traffic everywhere
⮚ Prune edges that are not actively subscribed to group
Link-state
⮚ Routers flood groups they would like to receive
⮚ Compute shortest-path trees on demand
⮚ Shared Tree (PIM)
Single distributed tree shared among all sources
Does not include its own topology discovery mechanism, but instead uses
routing information supplied by other routing protocols
Specify rendezvous point (RP) for group ▪ Senders send packets to RP, receivers join
at RP.
RP multicasts to receivers; Fix-up tree for optimization
Rendezvous-Point Tree: one router is the center of the group and
therefore the root of the tree.
Grafting:
Used after a branch has been pruned back
Sent by a router that has a host that joins a multicast group
Goes from router to router until a router active on the multicast group is reached
Sent for the following cases
A new host member joins a group
A new dependent router joins a pruned branch
A dependent router restarts on a pruned branch
Shared Tree
When a router sends Join message for group G to RP, it goes through a set of
routers.
Join message is wildcarded (*), i.e., it is applicable to all senders
Routers create an entry (*, G) in its forwarding table for the shared tree.
Interface on which the Join arrived is marked to forward packets for that group.
Forwards Join towards rendezvous router RP. Eventually, the message arrives at
RP. Thus a shared tree with RP as root is formed.
Example
Router R4 sends Join message for group G to rendezvous router RP.
Join message is received by router R2. It makes an entry (*, G) in its table and
forwards the message to RP
When R5 sends Join message for group G, R2 does not forwards the Join. It adds an
outgoing interface to the forwarding table created for that group.
As routers send Join message for a group, branches are added to the tree, i.e., shared.
Multicast packets sent from hosts are forwarded to designated router RP.
Suppose router R1, receives a message to group G.
R1 has no state for group G.
Encapsulates the multicast packet in a Register message.
Multicast packet is tunneled along the way to RP.
RP decapsulates the packet and sends multicast packet onto the shared tree, towards
R2.
R2 forwards the multicast packet to routers R4 and R5 that have members for group
G.
Source-Specific Tree
RP can force routers to know about group G, by sending Join message to the sending
host, so that tunneling can be avoided.
Intermediary routers create sender-specific entry (S, G) in their tables. Thus a source-
specific route from R1 to RP is formed.
If there is high rate of packets sent from a sender to a group G, then shared tree is
replaced by source-specific tree with sender as root.
Analysis of PIM:
Protocol independent because, tree is based on Join messages via shortest path.
Shared trees are more scalable than source-specific trees.
Source-specific trees enable efficient routing than shared trees.
INTRADOMAIN PROTOCOLS:
Routing Information Protocol (RIP):
The Routing Information Protocol (RIP) is one of the most widely used intradomain
routing protocols based on the distance-vector routing algorithm
RIP was started as part of the Xerox Network System (XNS), but it was the Berkeley
Software Distribution (BSD) version of UNIX.
A router in this protocol basically implements the distance-vector routing algorithm
First, since a router in an AS needs to know how to forward a packet to different
networks (subnets) in an AS, RIP routers advertise the cost of reaching different
networks instead of reaching other nodes in a theoretical graph.
Second, to make the implementation of the cost simpler, the cost is defined as the
number of hops, which means the number of networks (subnets) a packet needs to
travel through from the source router to the final destination host
Forwarding Tables
A forwarding table in RIP is a three-column table in which the first column is the
address of the destination network, the second column is the address of the next
router to which the packet should be forwarded, and the third column is the cost (the
number of hops) to reach the destination network.
RIP Implementation:
RIP is implemented as a process that uses the service of UDP on the well-known port
number 520.
RIP has gone through two versions: RIP-1 and RIP-2. The second version is backward
compatible with the first section; it allows the use of more information in the RIP
messages that were set to 0 in the first version.
RIP Messages:
Two RIP processes, a client and a server, like any other processes, need to exchange
Messages
RIP has two types of messages: request and response. A request message is sent by a
router that has just come up or by a router that has some time-out entries. A request
message can ask about specific entries or all entries.
A response (or update) message can be either solicited or unsolicited. A solicited
response message is sent only in answer to a request message. It contains information
about the destination specified in the corresponding request message.
RIP Algorithm:
RIP implements the same algorithm as the distance-vector routing algorithm. There
are
some changes added in that algorithm
Instead of sending only distance vectors, a router needs to send the whole contents of
its forwarding table in a response message.
The receiver adds one hop to each cost and changes the next router field to the
address of the sending router. We call each route in the modified forwarding table the
received route and each route in the old forwarding table the old route. The received
router selects the old routes as the new ones except in the following three cases:
1. If the received route does not exist in the old forwarding table, it should be
added to the route.
2. If the cost of the received route is lower than the cost of the old one, the
received route should be selected as the new one.
3. If the cost of the received route is higher than the cost of the old one, but the
value of the next router is the same in both routes, the received route should be
selected as the new one.
4. The new forwarding table needs to be sorted according to the destination route
Forwarding Tables
Each OSPF router can create a forwarding table after finding the shortest-path tree
between itself and the destination using Dijkstra’s algorithm
Compared with RIP, which is normally used in small ASs, OSPF was designed to be
able to handle routing in a small or large autonomous system.
However, the formation of shortest-path trees in OSPF requires that all routers flood
the whole.
AS with their LSPs to create the global LSDB.
Although this may not create a problem in a small AS, it may have created a huge
volume of traffic in a large AS.
To prevent this, the AS needs to be divided into small sections called areas. Each area
acts as a small independent domain for flooding LSPs. OSPF uses two level of
hierarchy in routing: the first level is the autonomous system, the second is the area.
The routers in the backbone area are responsible for passing the information collected by
each area to all other areas
OSPF is based on the link-state routing algorithm, which requires that a router advertise
the state of each link to all neighbors for the formation of the LSDB.
There are five types of link-state advertisements are there: router link, network link,
summary link to network, summary link to AS border router, and external link.
OSPF Messages:
OSPF is a very complex protocol; it uses five different types of messages.
The hello message (type 1) is used by a router to introduce itself to the neighbors and
announce all neighbors that it already knows.
The database description message (type 2) is normally sent in response to the hello
message to allow a newly joined router to acquire the full LSDB.
The linkstate request message (type 3) is sent by a router that needs information about
a specific LS.
The link-state update message (type 4) is the main OSPF message used for building the
LSDB.
Border Gateway Protocol Version 4 (BGP4):
The Border Gateway Protocol version 4 (BGP4) is the only interdomain routing
protocol used in the Internet today. BGP4 is based on the path-vector algorithm.
BGP, and in particular BGP4, is a complex protocol. AS2, AS3, and AS4 are stub
autonomous systems; AS1 is a transient one.
Each router in each AS knows how to reach a network that is in its own AS, but it
does not know how to reach a network in another AS.
However, there is a need for a logical TCP connection to be created over the physical
connection to make the exchange of information possible.
Each logical connection in BGP parlance is referred to as a session.
The iBGP protocol is similar to the eBGP protocol in that it uses the service of TCP
on the well-known port 179, but it creates a session between any possible pair of
routers inside an autonomous system. However, some points should be made clear.
First, if an AS has only one router, there cannot be an iBGP session. For example, we
cannot create an iBGP session inside AS2 or AS4 in our internet.
Second, if there are n routers in an autonomous system, there should be *n × (n − 1) /
2+ iBGP sessions in that autonomous system to prevent loops in the system.
Each router needs to advertise its own reachability to the peer in the session instead of
flooding what it receives from another peer in another session
IPv6 ADDRESSING:
The main reason for migration from IPv4 to IPv6 is the small size of the address
space in IPv4.
An IPv6 address is 128 bits or 16 bytes (octets) long, four times the address length in
IPv4
A computer normally stores the address in binary, but it is clear that 128 bits cannot
easily be handled by humans
Binary notation is used when the addresses are stored in a computer.
The colon hexadecimal notation (or colon hex for short) divides the address into eight
sections, each made of four hexadecimal digits separated by colons Abbreviation
Although an IPv6 address, even in hexadecimal format, is very long, many of the
digits are zeros.
The leading zeros of a section can be omitted. Using this form of abbreviation, 0074
can be written as 74, 000F as F, and 0000 as 0. Note that 3210 cannot be abbreviated.
Further abbreviation, often called zero compression, can be applied to colon hex
notation if there are consecutive sections consisting of zeros only. We can remove all
the zeros and replace them with a double semicolon.
IPv6 uses hierarchical addressing. The address space of IPv6 contains 2128 addresses.
This address space is 296 times the IPv4 address—definitely no address depletion
Address Types In IPv6, a destination address can belong to one of three categories:
unicast, anycast, and multicast.
Unicast Address:
A unicast address defines a single interface (computer or router). The packet sent to a
unicast address will be routed to the intended recipient.
Anycast Address:
An anycast address defines a group of computers that all share a single address.
A packet with an anycast address is delivered to only one member of the group, the
most reachable one. An anycast communication is used, for example, when there are
several servers that can respond to an inquiry.
The request is sent to the one that is most reachable. The hardware and software
generate only one copy of the request; the copy reaches only one of the servers.
IPv6 does not designate a block for any casting; the addresses are assigned from the
unicast block.
Multicast Address:
A multicast address also defines a group of computers. However, there is a difference
between any casting and multicasting.
In any casting, only one copy of the packet is sent to one of the members of the group;
in multicasting each member of the group receives a copy.
Global Unicast Addresses:
The block in the address space that is used for unicast (one-to-one) communication
between two hosts in the Internet is called the global unicast address block.
CIDR for the block is 2000::/3, which means that the three leftmost bits are the same
for all addresses in this block (001). The size of this block is 2125 bits, which is more
than enough for Internet expansion for many years to come.
An address in this block is divided into three parts: global routing prefix (n
bits),subnet identifier (m bits), and interface identifier (q bits)
Lecture Topic CO PO
No
IPv6 PROTOCOL:
The change of the IPv6 address size requires the change in the IPv4 packet format.
Better header format. IPv6 uses a new header format in which options are separated
from the base header and inserted, when needed, between the base header and the
data.
New options. IPv6 has new options to allow for additional functionalities.
Allowance for extension. IPv6 is designed to allow the extension of the protocol if
required by new technologies or applications.
Support for resource allocation. In IPv6, the type-of-service field has been removed,
but two new fields, traffic class and flow label, have been added to enable the source
to request special handling of the packet. This mechanism can be used to support
traffic such as real-time audio and video.
Support for more security. The encryption and authentication options in IPv6 provide
confidentiality and integrity of the packet.
Packet Format:
Each packet is composed of a base header followed by the payload. The base header
occupies 40 bytes, whereas payload can be up to 65,535 bytes of information.
Version. The 4-bit version field defines the version number of the IP. For IPv6, the
value is 6.
Traffic class. The 8-bit traffic class field is used to distinguish different payloads with
different delivery requirements. It replaces the type-of-service field in IPv4.
Flow label. The flow label is a 20-bit field that is designed to provide special
handling for a particular flow of data.
Payload length. The 2-byte payload length field defines the length of the IP
datagram excluding the header.
Next header. The next header is an 8-bit field defining the type of the first
extension header or the type of the data that follows the base header in the
datagram.
Hop limit. The 8-bit hop limit field serves the same purpose as the TTL field in IPv4.
Source and destination addresses. The source address field is a 16-byte (128-bit)
Internet address that identifies the original source of the datagram. The destination
address field is a 16-byte (128-bit) Internet address that identifies the destination of
the datagram.
Payload. The payload field in IPv6 differ from IPv4
Lecture Topic CO PO
No
Dual Stack:
It is recommended that all hosts, before migrating completely to version 6, have a
dual stack of protocols during the transition. In other words, a station must run IPv4
and IPv6 simultaneously until all the Internet uses IPv6
To determine which version to use when sending a packet to a destination, the source
host queries the DNS. If the DNS returns an IPv4 address, the source host sends an
IPv4 packet. If the DNS returns an IPv6 address, the source host sends an IPv6
packet.
Tunneling:
Tunneling is a strategy used when two computers using IPv6 want to communicate
with each other and the packet must pass through a region that uses IPv4.
To pass through this region, the packet must have an IPv4 address. So the IPv6 packet
is encapsulated in an IPv4 packet when it enters the region, and it leaves its capsule
when it exits the region. It seems as if the IPv6 packet enters a tunnel at one end and
emerges at the other end.
Header:
Translation Header translation is necessary when the majority of the Internet has
moved to IPv6 but some systems still use IPv4.
The sender wants to use IPv6, but the receiver does not understand IPv6. Tunneling
does not work in this situation because the packet must be in the IPv4 format to be
understood by the receiver.