Chapter 1,2,3 Notes
Chapter 1,2,3 Notes
Class A addresses only include IP starting from 1.x.x.x to 126.x.x.x only. The IP range
127.x.x.x is reserved for loopback IP addresses.
IP Address is divided in to Network Portion and Host Portion
Classless Addressing
There are three main problems with “classful” addressing, which are somewhat related to
each other (making them a bit harder to explain).
1 Lack of Internal Address Flexibility: Big organizations are assigned large, “monolithic”
blocks of addresses that don't match well the structure of their underlying internal networks.
2 Inefficient Use of Address Space: The existence of only three block sizes (classes A, B
and C) leads to waste of limited IP address space.
3 Proliferation of Router Table Entries: As the Internet grows, more and more entries are
required for routers to handle the routing of IP datagrams, which causes performance
problems for routers. Attempting to reduce inefficient address space allocation leads to even
more router table entries.
The Internet authorities announced a new architecture called classless addressing. In classless
addressing, variable-length blocks are used that belong to no classes.
In classful addressing the whole address space was divided into five classes. Although each
organization was granted one block in class A, B, or C, the size of the blocks was predefined;
the organization needed to choose one of the three block sizes. The only block in class D and
the only block in class E were reserved for a special purpose.
In classless addressing, the whole address space is divided into variable length blocks.
Theoretically, we can have a block of 20, 21, 22, . . . , 232 addresses. The only restriction is that
the number of addresses in a block needs to be a power of 2. An organization can be granted
one block of addresses. Figure shows the division of the whole address space into non
overlapping blocks.
IPv4 defines the format of a packet in which the data coming from the upper layer or other
protocols are encapsulated. Packets used by the IP are called datagrams. Figure shows the
IPv4 datagram format. A datagram is a variable-length packet consisting of two parts: header
and payload (data). The header is 20 to 60 bytes in length and contains information essential
to routing and delivery.
Version: The 4-bit version number (VER) field defines the version of Internet
Protocol. (e.g. IPv4).
HLEN: The 4-bit header length (HLEN) field defines the total length of the datagram
header in 4-byte words.
Service Type: The Service Type field is used to set priorities or precedence for data
transmission. The size of the field is 8 bits. This field is also used to determine the type
of service that is required for a particular application. The priority is set using the first
three bits and the service type is set using the next three bits. The last two bits are
reserved for future use. The Service Type field has two components, Precedence and
Types of Service.
Total Length: This 16-bit field defines the total length (header plus data) of the IP
datagram in bytes. A 16-bit number can define a total length of up to 65,535.
Total length of the datagram = Length of the header + Length of the data
Identification: If IP packet is fragmented during the transmission, all the fragments
contain same identification number. To identify original IP packet they belong to.
Flags: As required by the network resources, if IP Packet is too large to handle, these
‘flags’ tells if they can be fragmented or not. In this 3-bit flag, the MSB is always set to
‘0’.
Fragment Offset: This offset tells the exact position of the fragment in the original IP
Packet.
Time to Live: To avoid looping in the network, every packet is sent with some TTL
value set, which tells the network how many routers (hops) this packet can cross. At
each hop, its value is decremented by one and when the value reaches zero, the packet is
discarded.
Protocol: Tells the Network layer at the destination host, to which Protocol this packet
belongs to, i.e. the next level Protocol. For example protocol number of ICMP is 1, TCP
is 6 and UDP is 17.
Header Checksum: This field is used to keep checksum value of entire header which
is then used to check if the packet is received error-free.
Source Address: 32-bit address of the Sender (or source) of the packet.
Destination Address: 32-bit address of the Receiver (or destination) of the packet.
Options: A datagram header can have up to 40 bytes of options. Options can be used
for network testing and debugging. These options may contain values for options such as
Security, Record Route, Time Stamp, etc.
Fragmentation
IP fragmentation is an Internet Protocol (IP) process that breaks packets into smaller pieces
(fragments), so that the resulting pieces can pass through a link with a smaller MTU
(maximum transmission unit) than the original packet size. The fragments are reassembled by
the receiving host.
Maximum Transfer Unit (MTU)
Each data link layer protocol has its own frame format in most protocols. One of the
fields defined in the format is the maximum size of the data field. In other words, when
a datagram is encapsulated in a frame, the total size of the datagram must be less than
this maximum size, which is defined by the restrictions imposed by the hardware and
software used in the network (see Figure).
The value of the MTU differs from one physical network protocol to another.
Options.
Protocol MTU
Hyperchannel 65,535
Token Ring(16Mbps) 17,914
Token Ring(4Mbps) 4,464
FDDDI 4,352
Ethernet 1,500
X.25 576
PPP 296
Fields Related to Fragmentation
The fields that are related to fragmentation and reassembly of an IP datagram are the
identification, flags, and fragmentation offset fields.
Identification
i. This 16-bit field identifies a datagram originating from the source host. The combination of
the identification and source IP address must uniquely define a datagram as it leaves the
source host.
ii. To guarantee uniqueness, the IP protocol uses a counter to label the datagrams. The
counter is initialized to a positive number.
iii. When the IP protocol sends a datagram, it copies the current value of the counter to the
identification field and increments the counter by one.
iv. As long as the counter is kept in the main memory, uniqueness is guaranteed. When a
datagram is fragmented, the value in the identification field is copied into all fragments.
v. In other words, all fragments have the same identification number, which is also the same
as the original datagram.
vi. The identification number helps the destination in reassembling the datagram. It knows
that all fragments having the same identification value should be assembled into one
datagram.
Flags
i. This is a three-bit field. The first bit is reserved (not used). The second bit is called the do
not fragment bit.
ii. If its value is 1, the machine must not fragment the datagram. If it cannot pass the
datagram through any available physical network, it discards the datagram and sends an
ICMP error message to the source host. If its value is 0, the datagram can be fragmented if
necessary.
iii. The third bit is called the more fragment bit.
iv. If its value is 1, it means the datagram is not the last fragment; there are more fragments
after this one. If its value is 0, it means this is the last or only fragment.
Fragmentation offset
i. This 13-bit field shows the relative position of this fragment with respect to the whole
datagram.
ii. It is the offset of the data in the original datagram measured in units of 8 bytes. Figure
shows a datagram with a data size of 4000 bytes fragmented into three fragments. The bytes
in the original datagram are numbered 0 to 3999. The first fragment carries bytes 0 to 1399.
iii. The offset for this datagram is 0/8= 0. The second fragment carries bytes 1400 to 2799;
the offset value for this fragment is 1400/8= 175.
iv. Finally, the third fragment carries bytes 2800 to 3999. The offset value for this fragment is
2800/8= 350.
Options
The header of the IP datagram is made of two parts: a fixed part and a variable part. The
fixed part is 20 bytes long. The variable part comprises the options, which can be a maximum
of 40 bytes.
Options are not required for a datagram. They can be used for network testing and debugging.
Although options are not a required part of the IP header, option processing is required of the
IP software. This means that all implementations must be able to handle options if they are
present in the header.
Type
The type field is 8 bits long and contains three subfields: copy, class, and number.
❑ Copy. This 1-bit subfield controls the presence of the option in fragmentation.
When its value is 0, it means that the option must be copied only to the first fragment.
If its value is 1, it means the option must be copied to all fragments.
❑ Class. This 2-bit subfield defines the general purpose of the option. When its value
is 00, it means that the option is used for datagram control. When its value is 10, it
means that the option is used for debugging and management. The other two possible
values (01 and 11) have not yet been defined.
❑ Number. This 5-bit subfield defines the type of option. Although 5 bits can define
up to 32 different types, currently only 6 types are in use.
0 - Special case indicating the end of the option list, in this case the option field is just one
octet as no length or data fields are present.
1 - No Operation, again the option field is just one octet with no length or data fields.
3 - Loose Source Routing which is IP routing based on information supplied by the source
station where the routers can forward the datagram to any number of intermediate routers in
order to get to the destination.
4 - Internet Timestamp. A timestamp option is used to record the time of datagram processing
by a router.
7 - Record Route records the route that a datagram takes.
9 - Strict Source Routing which is IP routing based on information supplied by the source
station where the routers can only forward the datagram to a directly connected router in
order to get to the next hop indicated in the source route path.
Length
The length field defines the total length of the option including the type field and the length
field itself. This field is not present in all of the option types.
Value
The value field contains the data that specific options require. Like the length field, this
field is also not present in all option types.
ICMPv4:
ICMP (Internet Control Message Protocol) is an error-reporting protocol network devices like
routers use to generate error messages to the source IP address when network problems
prevent delivery of IP packets. ICMP creates and sends messages to the source IP address
indicating that a gateway to the Internet that a router, service or host cannot be reached for
packet delivery. Any IP network device has the capability to send, receive or process ICMP
messages.
The value of the protocol field in the IP datagram is 1 to indicate that the IP data is an ICMP
message.
Debugging Tools
There are several tools that can be used in the Internet for debugging. We can find if a host or
router is alive and running. We can trace the route of a packet. We introduce two tools that
use ICMP for debugging: ping and traceroute
Ping:
Ping is a computer network administration software utility used to test the reachability of a
host on an Internet Protocol (IP) network.
Ping operates by sending Internet Control Message Protocol (ICMP) echo request packets to
the target host and waiting for an ICMP echo reply. The program reports errors, packet loss,
and a statistical summary of the results, typically including the minimum, maximum, the
mean round-trip times, and standard deviation of the mean.
Traceroute:
The traceroute program in UNIX or tracert in Windows can be used to trace the route
of a packet from the source to the destination.
The traceroute command uses ICMP Time Exceeded messages to trace a network route. As
the Time to Live field is used in IP to avoid routing loops: every time a packet passes through
a router, the router decrements the TTL field. If the TTL reaches zero, the router drops the
packet and sends an ICMP Time Exceeded message to the original sender.
The client then sends a packet with a TTL of 2 to the server. Router A decrements the TTL to
1 and passes the packet to router B. Router B decrements the TTL to 0, drops it, and sends an
ICMP Time Exceeded message to the client. Router B is now identified. This process
continues until the server is reached, as shown in Figure, identifying all routers along the
route.
Figure: Traceroute
ICMP Checksum
The error detection method used by most TCP/IP protocols is called the checksum.
The checksum protects against the corruption that may occur during the transmission of a
packet. It is redundant information added to the packet.
The checksum is calculated at the sender and the value obtained is sent with the packet. The
receiver repeats the same calculation on the whole packet including the checksum. If the
result is satisfactory, the packet is accepted; otherwise, it is rejected.
In ICMP the checksum is calculated over the entire message (header and data).
Checksum Calculation
The sender follows these steps using one’s complement arithmetic:
1. The checksum field is set to zero.
2. The sum of all the 16-bit words (header and data) is calculated.
3. The sum is complemented to get the checksum.
4. The checksum is stored in the checksum field.
Checksum Testing
The receiver follows these steps using one’s complement arithmetic:
1. The sum of all words (header and data) is calculated.
2. The sum is complemented.
3. If the result obtained in step 2 is 16 0s, the message is accepted; otherwise, it is rejected.
Mobile IP:
A. Addressing
Mobile IP is a communication protocol (created by extending Internet Protocol, IP) that
allows the users to move from one network to another with the same IP address. It ensures
that the communication will continue without user’s sessions or connections being dropped.
a) Stationary Hosts
The original IP addressing was based on the assumption that a host is stationary, attached to
one specific network. A router uses an IP address to route an IP datagram.
b) Mobile Hosts
When a host moves from one network to another, the IP addressing structure needs to
be modified. Several solutions have been proposed.
i. Changing the Address
One simple solution is to let the mobile host change its address as it goes to the new
network. The host can use DHCP to obtain a new address to associate it with the new
network.
This approach has several drawbacks.
First, the configuration files would need to be changed.
Second, each time the computer moves from one network to another, it must be rebooted.
Third, the DNS tables need to be revised so that every other host in the Internet is aware of
the change.
Fourth, if the host roams from one network to another during a transmission, the data
exchange will be interrupted. This is because the ports and IP addresses of the client and the
server must remain constant for the duration of the connection.
ii. Two Addresses
The approach that is more feasible is the use of two addresses. The host has its original
address, called the home address, and a temporary address, called the care-of address.
The home address is permanent; it associates the host to its home network, the network
that is the permanent home of the host. The care-of address is temporary. When a host moves
from one network to another, the care-of address changes; it is associated with the foreign
network, the network to which the host moves. Figure shows the concept.
B. Agents,
To make the change of address transparent to the rest of the Internet requires a Home Agent
and a Foreign Agent.
Figure shows the position of a Home Agent relative to the Home Network and a Foreign
Agent relative to the Foreign Network.
Agent Advertisement
When a router advertises its presence on a network using an ICMP router advertisement, it
can append an agent advertisement to the packet if it acts as an agent.
Mobile IP does not use a new packet type for agent advertisement; it uses the router
advertisement packet of ICMP, and appends an agent advertisement message.
Agent Solicitation
When a mobile host has moved to a new network and has not received agent advertisements,
it can initiate an agent solicitation. It can use the ICMP solicitation message to inform an
agent that it needs assistance.
Mobile IP does not use a new packet type for agent solicitation; it uses the router solicitation
packet of ICMP.
b) Registration
Mobile node after discovering the foreign agent, sends registration request (RREQ) to the
foreign agent. Foreign agent in turn, sends the registration request to the home agent with the
care-of-address. Home agent sends registration reply (RREP) to the foreign agent. Then it
forwards the registration reply to the mobile node and completes the process of registration.
c) Data transfer
The Mobile Node sends packets using its home IP address, effectively maintaining the
appearance that it is always on its home network. Even while the Mobile Node is roaming on
foreign networks, its movements are transparent to correspondent nodes.
Data packets addressed to the Mobile Node are routed to its home network, where the Home
Agent now intercepts and tunnels them to the care-of address toward the Mobile Node.
Tunnelling has two primary functions: encapsulation of the data packet to reach the tunnel
endpoint, and decapsulation when the packet is delivered at that endpoint. The default tunnel
mode is IP Encapsulation within IP Encapsulation. Optionally, Generic Routing
Encapsulation (GRE) and minimal encapsulation within IP may be used.
Typically, the Mobile Node sends packets to the Foreign Agent, which routes them to their
final destination, the Correspondent Node, as shown in Figure.
Figure: - Data transfer
D. Inefficiency in Mobile IP
Communication involving mobile IP can be inefficient. The inefficiency can be severe
or moderate. The severe case is called double crossing or 2X. The moderate case is called
triangle routing or dog-leg routing.
Double Crossing
Double crossing occurs when a remote host communicates with a mobile host that has
moved to the same network (or site) as the remote host (see Figure).
Figure: - Mobile IP supports the ability of nodes to change their point of network attachment
and keep network connections operating. The mobile node’s home agent helps to forward
traffic for mobiles it serves and also plays a role in route optimization, which can
substantially improve routing performance by allowing mobile and correspondent nodes to
communicate directly.
Mobile Node (MN):
It is the hand-held communication device that the user caries e.g. Cell phone.
Home Network:
It is a network to which the mobile node originally belongs to as per its assigned IP address
(home address).
Home Agent (HA):
It is a router in home network to which the mobile node was originally connected
Home Address:
It is the permanent IP address assigned to the mobile node (within its home network).
Foreign Network:
It is the current network to which the mobile node is visiting (away from its home network).
Foreign Agent (FA):
It is a router in foreign network to which mobile node is currently connected. The packets
from the home agent are sent to the foreign agent which delivers it to the mobile node.
Correspondent Node (CN):
It is a device on the internet communicating to the mobile node.
Care of Address (COA):
It is the temporary address used by a mobile node while it is moving away from its home
network.
Unit– II Next Generation IP
2 PadN - PadN is similar in concept to Pad1. The difference is that PadN is used when 2 or
more bytes are needed for alignment. This option consists of 1 byte of option code, 1 byte of
the option length, and a variable number of zero padding bytes. The value of the option code
is 1 (action is 00, the change bit is 0, and type is 00001). The option length contains the
number of padding bytes. See Figure.
Figure: PadN
3 Jumbo payload- Recall that the length of the payload in the IP datagram can be a
maximum of 65,535 bytes. However, if for any reason a longer payload is required, we can
use the jumbo payload option to define this longer length. The jumbo payload option must
always start at a multiple of 4 bytes plus 2 from the beginning of the extension headers. The
jumbo payload option starts at the (4n+2) byte, where n is a small integer. See Figure.
Figure: Jumbo payload
Destination Option
The destination option is used when the source needs to pass information to the destination
only. Intermediate routers are not permitted access to this information. The format of the
destination option is the same as the hop-by-hop option. So far, only the Pad1 and PadN
options have been defined.
Source Routing
The source routing extension header combines the concepts of the strict source route and the
loose source route options of IPv4. The source routing header contains a minimum of seven
fields (see Figure). The first two fields, next header and header length, are identical to that of
the hop-by-hop extension header. The type field defines loose or strict routing. The addresses
left field indicates the number of hops still needed to reach the destination. The strict/loose
mask field determines the rigidity of routing. If set to strict, routing must follow exactly as
indicated by the source. If, instead, the mask is loose, other routers may be visited in addition
to those in the header.
Figure: Fragmentation
Authentication-
The authentication extension header has a dual purpose: it validates the message sender and
ensures the integrity of data. The former is needed so the receiver can be sure that a message
is from the genuine sender and not from an imposter. The latter is needed to check that the
data is not altered in transition by some hacker.
The format of the authentication extension header is shown in Figure 1. The security
parameter index field defines the algorithm used for authentication. The authentication data
field contains the actual data generated by the algorithm.
Many different algorithms can be used for authentication. Figure 2 outlines the method for
calculating the authentication data field. The sender passes a 128-bit security key, the entire
IP datagram, and the 128-bit security key again to the algorithm. Those fields in the datagram
with values that change during transmission (for example, hop count) are set to zero. The
datagram passed to the algorithm includes the authentication header extension, with the
authentication data field set to zero. The algorithm creates authentication data which is
inserted into the extension header prior to datagram transmission.
The receiver functions in a similar manner. It takes the secret key and the received datagram
(again, with changeable fields set to zero) and passes them to the authentication algorithm. If
the result matches that in the authentication data field, the IP datagram is authentic;
otherwise, the datagram is discarded.
Figure 1 Authentication
S.N
INTRADOMAIN ROUTING INTERDOMAIN ROUTING
O
It needs to know only about other It need to know only about other routers
2.
routers within their domain. within and between their domain.
In this Routing, routing takes place In this Routing, routing takes place
4.
within an autonomous network. between the autonomous networks.
The algorithm is based on the fact that if all neighbours of node i know the shortest distance
to node j, then the shortest distance between node i and j can be found by adding the distance
between node i and each neighbour to the neighbour’s shortest distance to node j and then
select the minimum, as shown in figure 2.
The figure shows a simple domain with five nodes. Each node uses the same topology to
create a routing table, but the routing table for each node is unique because the calculations
are based on different interpretations of the topology. This is similar to a city map. Two
persons in two different cities may have the same map, but each needs to take a different
route to reach his destination.
The topology must be dynamic, representing the latest situation of each node and each link. If
there are changes in any point in the network (a link is down, for example), the topology must
be updated for each node.
Building Routing Tables
In link state routing, four sets of actions are required to ensure that each node has the routing
table showing the least-cost node to every other node.
1. Creation of the states of the links by each node, called the link state packet or LSP.
2. Distribution of LSPs to every other router, called flooding, in an efficient and reliable way.
3. Formation of a shortest path tree for each node.
4. Calculation of a routing table based on the shortest path tree.
3.2.5 Path Vector Routing
Path vector routing is exterior routing protocol proved to be useful for interdomain
or inter-AS routing. In distance vector routing, a router has a list of networks that can be
reached in the same AS with the corresponding cost (number of hops). In path vector routing,
a router has a list of networks that can be reached with the path (list of ASs to pass) to reach
each one. In other words, the domain of operation of the distance vector routing is a single
AS; the domain of operation of the path vector routing is the whole Internet. The distance
vector routing tells us the distance to each network; the path vector routing tells us the path.
3.3 Unicast Routing Protocols:
3.3.1 Internet Structure
The Internet has changed from a tree-like structure, with a single back bone, to a multi-
backbone structure run by different private corporations today. Although it is difficult to give
a general view of the Internet today, the Internet structure similar as shown in Figure.
There are several backbones run by private communication companies that provide global
connectivity. These backbones are connected by some peering points that allow connectivity
between backbones. At a lower level, there are some provider networks that use the
backbones for global connectivity but provide services to Internet customers.
Timers in RIP
RIP uses three timers to support its operation. The periodic timer controls the sending of
messages, the expiration timer governs the validity of a route, and the garbage collection
timer advertises the failure of a route.
1 Periodic Timer
The periodic timer controls the advertising of regular update messages. Although the protocol
specifies that this timer must be set to 30 s, the working model uses a random number
between 25 and 35 s. This is to prevent any possible synchronization and therefore overload
on an internet if routers update simultaneously.
Each router has one periodic timer that is randomly set to a number between 25 and 35. It
counts down; when zero is reached, the update message is sent, and the timer is randomly set
once again.
2 Expiration Timer
The expiration timer governs the validity of a route. When a router receives update
information for a route, the expiration timer is set to 180 s for that particular route. Every
time a new update for the route is received, the timer is reset. In normal situations this occurs
every 30 s. However, if there is a problem on an internet and no update is received within the
allotted 180 s, the route is considered expired and the hop count of the route is set to 16,
which means the destination is unreachable. Every route has its own expiration timer.
3 Garbage Collection Timer
When the information about a route becomes invalid, the router does not immediately purge
that route from its table. Instead, it continues to advertise the route with a metric value of 16.
At the same time, a timer called the garbage collection timer is set to 120s for that route.
When the count reaches zero, the route is purged from the table. This timer allows neighbours
to become aware of the invalidity of a route prior to purging.
B Metric
The OSPF protocol allows the administrator to assign a cost, called the metric, to each route.
The metric can be based on a type of service (minimum delay, maximum throughput, and so
on). As a matter of fact, a router can have multiple routing tables, each based on a different
type of service.
C Types of Links
In OSPF terminology, a connection is called a link. Four types of links have been defined:
point-to-point, transient, stub, and virtual (see Figure).
1 Point-to-Point Link
A point-to-point link connects two routers without any other host or router in between. In
other words, the purpose of the link (network) is just to connect the two routers. An example
of this type of link is two routers connected by a telephone line or a T-line.
2 Transient Link
A transient link is a network with several routers attached to it. The data can enter
through any of the routers and leave through any router. All LANs and some WANs with
two or more routers are of this type.
3 Stub Link
A stub link is a network that is connected to only one router. The data packets enter the
network through this single router and leave the network through this same router. This is a
special case of the transient network.
4 Virtual Link
When the link between two routers is broken, the administration may create a virtual
link between them using a longer path that probably goes through several routers.
D OSPF Packets
OSPF uses five different types of packets: hello, database description, link state
request, link state update, and link state acknowledgment (see Figure). The link state update
has five different kinds.
Figure: Types of OSPF packets
Hello—Establishes and maintains neighbour relationships.
Database description—Describes the contents of the topological database. These messages
are exchanged when an adjacency is initialized.
Link-state request—Requests pieces of the topological database from neighbour routers.
These messages are exchanged after a router discovers (by examining database-description
packets) that parts of its topological database are outdated.
Link-state update—Responds to a link-state request packet. These messages also are used
for the regular dispersal of LSAs. Several LSAs can be included within a single link-state
update packet.
Link-state acknowledgment—Acknowledges link-state updates packets
E Common Header
All OSPF packets have the same common header. As shown in figure.
❑ Version. This 8-bit field defines the version of the OSPF protocol. It is currently version 2.
❑ Type. This 8-bit field defines the type of the packet. As we said before, we have five types,
with values 1 to 5 defining the types.
❑ Message length. This 16-bit field defines the length of the total message including the
header.
3.4 Introduction:
3.4.1 Unicast
In unicasting, there is one source and one destination network. The relationship between the
source and the destination network is one to one. Each router in the path of the datagram tries
to forward the packet to one and only one of its interfaces.
Figure shows a small internet in which a unicast packet needs to be delivered from a source
computer to a destination computer attached to N6. Router R1 is responsible for forwarding
the packet only through interface 3; router R4 is responsible for forwarding the packet only
through interface 2. When the packet arrives at N6, the delivery to the destination host is the
responsibility of the network; it is either broadcast to all hosts or the Ethernet switch delivers
it only to the destination host.
Figure: Unicasting
3.4.2 Multicast
In multicasting, there is one source and a group of destinations. The relationship is one to
many. In this type of communication, the source address is a unicast address, but the
destination address is a group address, a group of one or more destination networks in which
there is at least one member of the group that is interested in receiving the multicast
datagram. The group address defines the members of the group. Figure shows the same small
internet, but the unicast routers have been changed to multicast routers.
Figure: Multicasting
In multicasting, a multicast router may have to send out copies of the same datagram through
more than one interface. In Figure 21.2, router R1 needs to send out the datagram through
interfaces 2 and 3. Similarly, router R4 needs to send out the datagram through both its
interfaces. Router R3, however, knows that there is no member belonging to this group in the
area reached by interface 2; it only sends out the datagram through interface 1.
3.4.3 Broadcast.
In broadcast communication, the relationship between the source and the destination is one to
all. There is only one source, but all of the other hosts are the destinations. The Internet does
not explicitly support broadcasting because of the huge amount of traffic it would create and
because of the bandwidth it would need. Imagine the traffic generated in the Internet if one
person wanted to send a message to everyone else connected to the Internet.