Download Network Multicast

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

TCP congestion control wikipedia , lookup

RapidIO wikipedia , lookup

Internet protocol suite wikipedia , lookup

Computer network wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Deep packet inspection wikipedia , lookup

Spanning Tree Protocol wikipedia , lookup

Airborne Networking wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

IEEE 1355 wikipedia , lookup

UniPro protocol stack wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Transcript
Network Multicast
Prakash Linga
Last Class
COReL: Algorithm for totally-ordered
multicast in an asynchronous environment, in
face of network partitions and process
failures.
Motivation
Why Multicast?

Reduce network and host overhead for multidestination delivery
Interesting applications

Conferencing etc
Ideal Multicast Protocol
Scalable
Reliable
Low join and data propagation latency
Easy to join and leave groups
Robust unknown destination delivery
Multicast Protocols for a
LAN
LANs like Ethernet support


Efficient broadcast delivery
Large space of multicast addresses
Extended LANs pose interesting problems
like



Additional routing and traffic costs may limit Scalability
Low delay, delivery with high probability etc difficult to achieve
Extension to routing to support multi-destination delivery
Multicast routing Protocols
for WANs
Extending some unicast routing
protocols ?
Single spanning tree routing (of extended LAN
bridges)
 Distance vector routing (used in internetworks)
 Link state routing (used in internetworks)

Single-Spanning-Tree multicast
routing
Bridges restrict all traffic to a spanning
tree by
forbidding loops in the physical topology
 Or running a distributed algorithm among the
bridges to compute a spanning tree

If groups members periodically issue
membership packets then the bridges
could learn the branches leading to the
group members
SSTM(2)
Bridges maintain a table. Table entry:
(Address, (outgoing_branch, age), … )
SSTM (3)
If a packet arrives with a
Multicast source address(?): record the arrival branch
and an associated age of zero in a table entry for that
multicast address
 Multicast destination address: Forward a copy of the
packet out every out-going branch (except the arrival
branch) recorded in the corresponding table entry (if
absent discard the packet).

SSTM(3)
Periodically increment the age fields of
all multicast table entries.
If an age field reaches an expiry
threshold Texpire delete the associated
outgoing-branch from the table entry.
If no outgoing-branches remain, delete
the entire entry.
Multicast Protocols for
WANs
IP multicast
SRM (Scalable Reliable Multicast)
RMTP (Reliable Multicast Transport
Protocol)
PGM (Pragmatic General Multicast)
Bimodal multicast (Next class)
IP Multicast
Transmission of IP datagram to a host
group
Best-effort delivery (neither the delivery
nor the order is guaranteed)
Membership of a host group is dynamic.
Host group may be permanent or
transient
IP Multicast(2)
Multicast routers handle forwarding of IP
multicast datagrams.
Host transmits an IP multicast datagram as a
local network multicast
If TTL > 1 then multicast router(s) forward it to
other networks that have members of the
destination group.
Attached multicast router completes delivery
of the datagram as a local multicast.
SRM
ALF (Application Level Framing) + LWS
(Light-Weight Sessions)
ALF: includes application semantics in the
design of that application’s protocol.
Assumptions made in wb’s reliable multicast
design




Data names unique and persistent
Source-ID’s are persistent
There is no distinction between senders and receivers
IP multicast datagram delivery is available
SRM(2)
No requirement for ordered delivery
Most operators are idempotent except
some like delete.
A receiver uses timestamps on the
drawing operations to determine the
rendering order
This captures temporal causality at a
level appropriate for the application.
SRM(3)
Each member sends periodic session
messages. These are required to:
Advertise sequence number of active page
for active sources
 Determine current participants of the
session
 Detect losses
 Estimate one-way distance between nodes

SRM(4)
When Host A detects a loss it schedules a
repair request at a random time in future.
When request timer expires A sends a
request for missing data and doubles the
request timer to wait for the data
When Host B receives a request, makes a
randomized wait and multicasts the repair
data unless it receives the repair during this
period.
SRM(5)
Wait periods are randomly chosen from a
uniform distribution on an interval.
Interval length is dependent on one-way
delay and some parameters
These parameters could be chosen based on
topology and n/w conditions
Partitioning and normal departure are
indistinguishable.
No ordering guaranteed.
SRM(6): Extreme Topologies
Deterministic suppression:
•exactly one NACK;
•exactly one repair.
Probabilistic suppression:
•at most g-1 requests
•as the length of the interval
is increased expected no. of
requests decreases but expected
delay increases.
SRM(7)
Performance much better if local recovery is
possible (no need to multicast to everybody).
Solutions:
•TTL-based scoping
•Separate multicast group for recovery
•Administrative scoping
RMTP
Uses DRs to avoid
ACK implosion.
DR caches received
data, processes and
emits ACKs.
DRs statically
chosen for a given
multicast session.
RMTP(2)
After initial setup sender starts transmitting
data.
On receiving a data packet receiver starts
emitting ACKs at Tack interval.
Connection termination is timer based
Retransmission is either unicast or multicast
based on the number of errors
Lagging receivers can catch up by sending
immediate transmission requests
RMTP(3)
Window-based flow
control mechanism
Ws <= Wr
Senders window
advance is determined
by the slowest receiver
To avoid redundant
transmission ACKs
should not be sent
frequently. Solution:
Measure RTT to AP
dynamically.
RMTP(4)
Receivers can join any time. Need to buffer
entire file during the session. A two-level
cache mechanism is used
Experiencing congestion: Decreases
congestion window size (to 1 in the worst
case). Later increases it linearly.
Receiver dynamically chooses a DR as its AP
(least upstream in the multicast tree).
RMTP(5)
Session Manager
Detects network partitioning and node crashes and
takes necessary actions
 Sets the maximum transmission rate
 Provides sender and receiver with the required
connection parameters
 Chooses DRs

RMTP(6)
Scalable because
State information at each node is independent of
number of nodes.
 Receiver driven approach.
 Uses DRs to distribute responsibilities of process
ACKs and performing retransmissions.

Reliable delivery not guaranteed when
nodes voluntarily or involuntarily leave a
multicast group.
PGM
Workable solution for multicast applications
with basic reliability requirements!
Receiver either receives all data packets from
transmissions and repairs, or is able to detect
unrecoverable data packet loss.
No notion of group membership. Members
may join and leave anytime.
Use NACKs for repair and reliability. But
dispense with PACK and use alternate buffer
management strategies (like timeouts).
PGM(2)
Runs over a datagram multicast protocol like
IP multicast
Source multicasts sequenced data packets
and receivers unicast selective NACKs
(repeats until it receives a NCF).
N/W elements forward NAKs hop-by-hop
to the source and confirm each hop by
multicasting a NCF.
Repairs provided by the source or
Designated Local Repairer in response to
a NAK.
PGM(3)
Source path messages (SPMs) are used by a
source to establish source path state in n/w
elements.
This ensures that NAKs returns from a
receiver to a source on the reverse of the
distribution path.
Only one NACK per (receiver, packet) is
propagated upwards.
Sender or DLR sends RDATA in response to
a NACK. RDATA retraces the path of NACKs.
PGM(4)
“Repeated Retransmission”
Next Class
Probabilistic approach (Ex: Bimodal
Multicast)