Messaging - University of Windsor

Download Report

Transcript Messaging - University of Windsor

Delivery
Categories of Messaging
Messaging Categories
Unicast: Messages are sent to a single,
specific recipient
Multicast: Messages are sent to a group of
recipients

Broadcast: Messages are sent to all recipients
on the network
Anycast: Messages are sent to any member
of a group of recipients
Unicast
This is the normal, most common form of
messaging
Unicast messages are addressed using a
specific address of a recipient node
Network routers choose the best path (one
path) for the message to travel
Eventually, the routers direct the message to
the correct node
Anycast
Anycast messages also involve groups
Anycast groups are groups of nodes where any
node in the group can receive any of the messages
intended for that group
Anycast (rarely) is useful in situations such as
sending a message to a router, which typically has
several addresses


You don’t care which network port is used to receive
the message by the router, as long as the router gets the
message
Normally, the message is delivered to the node that has
the shortest path from the sender
Broadcast
Broadcasting can be considered a specific example
of multicasting


All nodes on a network are the members of the
multicast group
The big differences are that these nodes to not explicitly
join the broadcast group, nor can they leave it
Broadcasting is often implemented in hardware in
LANs, which means broadcast messages use
approximately the same bandwidth as a unicast
message

In fact, most LANs use broadcast technology to
implement multicasting also
LAN Broadcasting
Most LANs use broadcast technology





All nodes on the network read all messages, and
determine (by examining the address) if the message is
intended for that node or not
Broadcasting uses a specific address to indicate that the
node should keep the message
Broadcast-enabled NICs read messages addressed for
the NIC (specifically) as well as messages addressed to
the broadcast address
The only concern that must be taken, is that the
message should be placed back onto the network after it
has been read
Some LANs remove the message from the network
medium when it has been received
LAN Broadcasting
Broadcast LANs support broadcast delivery by
transmitting a single packet


This packet is received by all nodes
e.g. Ethernet, Token Bus, Token Ring
Daisy chain LANs send broadcast messages across
the network sequentially



The sender transmits a broadcast packet, which is
received by the next node
The next node transmits the broadcast packet again, and
it is received by the next sequential node
e.g. FDDI
LAN Broadcasting: Physical
This is the messaging pattern in LANs that use broadcast
technology
Transmit
M
M
M
M
M
M
M
M
LAN Broadcast Addresses
Most networks that use MAC addresses, use
FF:FF:FF:FF:FF:FF for a broadcast address
IP-based networks use 255.255.255.255 for
a broadcast address
LAN Broadcasting Efficiency
LANs that use broadcast technology
The time to send a broadcast message is identical to the
time to send a unicast message
E = O(1)

LANs that use daisy-chaining
The time to send a broadcast message is more than (or
equal to) the time to send a unicast message
 The time to send a broadcast message is less than (or
equal to) the time to send a unicast message to each
node on the network
O(1) ≤ E ≤ O(N)

WAN Broadcasting
In WANs such as the Internet, a broadcast message
would be received by millions of machines



This is inefficient
This is somewhat of an invasion of privacy
This has no practical purpose
Other WANs may choose to implement broadcast
by sending a unicast or multicast message to all
nodes on the network

Even this is highly unlikely, but possible
Multicast
Multicast messages are intended for a group of
recipients
Multicast messages are not addressed to each
recipient, but addressed to the group of recipients
Multicast groups are associated with specific
addresses, called multicast addresses

In IP networks, these are Class D addresses
Multicast Groups
Messages sent to multicast group addresses
are received by all members of the multicast
group

Therefore, in order to receive multicast group
messages, a node must join the multicast group
Messages can be sent to a multicast group
without being a member

The message is simply addressed to the
multicast group’s address
LAN Multicasting
LAN multicasting is often implemented in hardware
Multicasting can be entirely implemented in the nodes




Each node’s NIC can be configured to accept packets addressed to
a multicast address
Each multicast group is assigned a specific address (MAC, IP,
etc…)
Since all nodes normally receive (in broadcast LANs) all
messages, the nodes which are configured for a particular multicast
address will accept packets sent to that address
Messages can be sent to a multicast group by addressing them with
the multicast address for that group
LAN Multicasting
In LANs that use broadcast technology, all
messages are received by all nodes on a network

For multicast delivery to occur, the message must
simply be addressed so that the multicast group
members accept the packets and non-members reject
them
In LANs that do not use broadcast, messages are
transmitted onto the network


The first multicast group member accepts the packet
The group member then retransmits the packet, where it
is received by the next group member
LAN Multicast Addresses
In networks that use MAC addresses,
multicast packets are addressed with:

MAC addresses with the 8th bit set to 1


e.g. 01.5E.00.00.00.01
Unicast addresses have the 8th bit set to 0
In IP-based networks, multicast packets are
addressed with Class D addresses:

224.0.0.0 – 239.255.255.255

e.g. 229.201.35.82
LAN Multicast Efficiency
In LANs that use broadcast technology:
The time to transmit a multicast message is the same as
the time to transmit a unicast message
E = O(1)

In LANs that do not use broadcast:
The time to transmit a multicast message is more than
(or equal to) the time to transmit a unicast message
 The time to transmit a multicast message is less than (or
equal to) the time to transmit a unicast message to each
multicast group member
O(1) ≤ E ≤ O(N)

LAN Multicasting: Physical
This is the messaging pattern in LANs that use broadcast
technology
Transmit
M
M
M
M
Multicast Group A
M
WAN Multicasting
WAN multicast cannot be implemented entirely at
node-level (as LAN multicast can)


This is because routers must forward the multicast
messages to other LANs
Some LANs a router can access will not contain any
multicast group members


It would be inefficient to send the multicast message to LANs
such as these
Routers must know where (on which of its ports) there are
members of each multicast group
Multicast Tunneling
Some WANs do not support multicast
When a multicast message is sent across a network
that does not support multicast, it must tunnel
through that network


Multicast datagrams are encapsulated into a larger
datagram which is transmitted (using unicast) from one
part of the network, to another
Assumedly, the second part of the network is connected
to another network which supports multicast or else a
network that should also use multicast tunneling
WAN Multicast Efficiency
LAN multicast is often identical (in
efficiency) to LAN unicast
WAN multicast, however, is typically less
efficient

The total number of messages present on the
network is typically more than one for WAN
multicast