ALMI An Application level multicast infrastructure - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

ALMI An Application level multicast infrastructure

Description:

IP routers maintains separate routing state for each multicast group. ... itself disconnected from the graph and send REJOIN message to the controller. ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 30
Provided by: drhoss
Category:

less

Transcript and Presenter's Notes

Title: ALMI An Application level multicast infrastructure


1
ALMIAn Application level multicast
infrastructure
2
General Problems in Multicast
  • Traditional IP Multicast requires control support
    from network devices (e.g. IP routers), in
    particular membership management (IGMP) and
    multicast routing protocols.
  • IP routers maintains separate routing state for
    each multicast group. This model is relatively
    less scalable with respect to the number of
    concurrently multicast group.

3
General Problems in Multicast (2)
  • Widespread deployment of IGMP and routing
    protocols requires substantial infrastructure
    modifications and complex modifications to IP
    Routers Software.
  • Some issues of IP Multicast (e.g. end-to-end
    reliability, flow and congestion control
    schemes), offer significant challenges but no
    clear solutions have emerged thus far.

4
Particular Problem
  • There are large number of applications that
    contain a small number of group members.E.g.
    video conferencing, multi-party games, private
    chat rooms, etc.
  • These groups are often created and destroyed
    relatively dynamically.
  • The number of such groups that active in the same
    time can be fairly large.

5
Particular Problem (2)
  • For a large number of such small and sparse
    groups, the benefits of IP Multicast in terms of
    bandwidth efficiency and scalability are quiet
    often outweighed by the control complexity (group
    set up and maintenance).
  • Due to the increasing number of such applications
    we need multicast protocol which can be supported
    without relying on the IP multicast
    infrastructure.

6
Solution
  • We need a solution for
  • Multi-sender multicast communication
  • Which scales for a large number of communication
    groups with small number of members
  • Does not depend on multicast support in the
    routers.
  • Then, Application Level Multicast Infrastructure
    (ALMI) addresses to these concerns

7
Overview ALMI
  • ALMI offers- accelerated deployment-
    simplified configuration- better access control
    at the cost of additional (even though small)
    traffic load in the network
  • ALMI is implemented in the user space, then its
    more flexible in customizing some aspects, e.g.
    data transcoding, error recovery, flow control,
    etc.

8
Overview ALMI (2)
  • Participants of a multicast session are connected
    via a virtual multicast tree.
  • The tree consists of unicast connections between
    end hosts.
  • The tree is formed as a Minimum Spanning Tree
    (MST).
  • The cost of each link is an application specific
    metric. (There is no such strict metric)

9
ALMI Architecture
  • ALMI session consists of1. session
    controller2. (multiple) session members
  • Session Controller and session members are
    program instances.

10
Session Controller
  • Session Controller is possibly located at- a
    place that easily accessible by all members.-
    co-located with one of the session members-
    special purpose server or a multicast proxy
    installed within corporate- an ISP network

11
Session Controller (2)
  • Session controller handles- member
    registration- maintains the multicast tree
  • Controller performs these 2 functions- ensures
    connectivity of the multicast tree when members
    join and/or leave the session and when network
    or host failures occur.

12
Session Controller (3)
  • - ensures the efficiency of the multicast tree
    by periodically calculating a minimum spanning
    tree based on the measurement updates received
    from all members.To collect measurements, the
    controller essentially instruct each member to
    monitor a set of other members.

13
Session Members
  • Session members are organized into a multicast
    tree
  • A link in the multicast tree represents a unicast
    connection between two members
  • Session data is disseminated along this multicast
    tree, while control messages are unicast between
    each member and the controller.

14
Session Members (2)
  • Multicast tree ? shared tree amongst member with
    bidirectional links.
  • Two members connected by link, receive a
    designation of parent and child.
  • This parent-child relation does not indicate
    direction of data flow

15
Session Members (3)
  • A session member forwards data to designated
    adjacent neighbors.
  • A session member also monitors the performance of
    unicast paths to and from a subset of other
    session members.
  • This is achieved by periodically sending probes
    to these members and measuring an application
    level performance metric.

16
Session Members (4)
  • The measurements are then reported to the
    controller and serve as a the costs used to
    calculate a Minimum Spanning Tree.

17
Fault Tolerance
  • Centralized controller architecture would
    constitute a single point of failure. Two points
    should be made in this respect
  • First, with multiple back-up controllers, which
    operates in stand-by mode.
  • The address of these back-up controllers must be
    known by all members.
  • Back-up controllers periodically receive state
    from the primary controller.

18
Fault Tolerance (2)
  • Second, even in the case that no control, the
    operation is possible.
  • The existing ALMI tree, and hence data path, will
    remain unaffected and will continue the operation
    until a membership change or a critical failure
    occurs.

19
Control Plane Operation
  • ALMI relies on a control protocol for
    communication between session controller and
    session members.
  • Control protocol handles tasks related to
    membership management, performance monitoring,
    and routing.
  • ALMI uses a common packet format to carry both
    data and control packets.

20
Control Plane Operation (2)
ALMI PACKET HEADER FORMAT
21
Control Plane Operation (3)
  • Session ID and Source ID are generated by
    controller and guaranteed to be collision free.
  • Flag field defines various type of operationsa.
    Registration Messages between host to
    controllerb. Connection Request between parent
    and child.C. Performance Monitoring reported
    from members to session controller

22
Control Plane Operation (4)
  • c. Distribution Tree Messages, generated by
    controller, used to inform members of their
    peering points.d. Neighboring Monitoring Update
    Message, sent by controller to members to
    inform them a new list of neighbors they need
    to monitor.e. Departure messages, sent from
    group members to the controller and their
    current parent and children.

23
Control Plane Operation (5)
  • Tree Incarnation field is to prevent loops and
    partitions in the multicast tree.
  • Tree Updates messages are disseminated
    independently to all members and there is
    possibility that some control messages might be
    lost.
  • On the other hand, members act on update messages
    in varying delay.

24
Control Plane Operation (6)
  • In order to prevent loop and partition,
    controller assigns a monotonically increasing
    version number to each newly generated multicast
    tree.
  • Source generates packets including its latest
    tree incarnation in the packet header.
  • Each ALMI member maintain a small cache of recent
    multicast incarnations.
  • When members receive packets with tree version
    not contained in the cache, packets will be
    discarded.

25
Control Plane Operation (7)
  • If a member receives a data packet with a newer
    tree version, it detects that its information is
    not up to date and therefore re-registers itself
    to the controller to receive new tree information.

26
Member Operation
  • Session member can allocate the session
    controllers address and port number through
    online or offline scheme (e.g. URL, directory
    service, email message, etc)
  • Host registers by sending JOIN message to session
    controller. Then, session controller will give
    member ID, and its parents ID and address.

27
Member Operation (2)
  • The new member sends GRAFT message to its parent,
    asking for data port which it sends and receives
    data
  • Data transfer between two adjacent members can be
    reliable or unreliable by deploying TCP or UDP.

28
Member Operation (3)
  • If child detects failure of the connection to its
    parent, it consider itself disconnected from the
    graph and send REJOIN message to the controller.
  • If parent detects failure of the connection to
    its child, it simply closes the connection

29
Member Operation (4)
  • If a member detects through the monitoring
    process that its parent is not responding or
    receives a LEAVE message from the parent, it then
    issues REJOIN message to the controller,
    repeating the steps as when joining an ALMI group.
Write a Comment
User Comments (0)
About PowerShow.com