LCC version 1.0 Alpha release

(Basic implementation for Linux OS)

 

Overview

Papers

Implementation

Installation

Contact

        

go to planete project

Overview

This is the alpha implementation of LCC : a two-level clustered overlay multicast architecture (LCC) to provide scalable, efficient and robust multicast distribution service to end users. LCC provides library to handle different useful application-layer functions. However, it is first designed to address topology-aware construction, so focus is set on two major processes : Locating and Clustering.

  • Locating process: aims to direct newcomers to the “nearest” cluster before they receive data on the delivery tree. A newcomer initiates the locating process by sending a 'Localization Request' to a randomly selected cluster leader (boot node). According to its location-information knowledge, the boot node selects a few cluster leaders (the queried nodes) that it considers to be close to the newcomer. It asks them to probe the newcomer, and gets each queried node's answer. Then, it suggests to the newcomer the possible closest nodes. By iteratively sending 'Localization Request' messages to the closest nodes (the requested nodes), the newcomer is able to gradually locate nodes that are close by. Each requested node uses a selection criterion to limit the number of nodes probing the newcomer, hence minimizing the locating overhead. The locating process ends by proposing one or more nearby cluster leaders
  • Clustering process: The clustering process is initiated by every node once the locating process terminates. On the basis of their locating result, nodes are partitioned into clusters of nodes. A maximum distance, Rmax, defines the interval in which other nodes are considered “nearby”. This interval is called the cluster leader's scope, and defines the clustering criterion. During the clustering process, a node decides at which level it will join the overlay. If it creates its own cluster, it joins the “top-level” topology and starts an inter-cluster mesh construction. Otherwise, it becomes a cluster member and joins an intra-cluster mesh in order to derive its delivery tree.

image 1

Papers

  • Mohamed Ali Kaafar, Thierry Turletti, walid Dabbous,  “A Locating-First Approach for Scalable Overlay multicast “, in Proceedings of IEEE IWQoS, New Haven,CT, USA, June 2006. download

  • Mohamed Ali Kaafar, Thierry Turletti, "Scalable Overlay Scheme for Application multicast", in Proceedings of IEEE INFOCOM st. Workshop, Barcelona, April 2006.

Implementation

    The LCC implementation is divided in 4 major components + a few minors. The Ctrl, DataTree, InterCluster and LccFunc modules are the major parts of the library.

    • LccFunc: Entry point of the LCC process. Bootstrap the service (RP). Initial node is considered as the RP. Next joins are simple members.
    • Ctrl: Control message implementation exchanged by LCC nodes, both during the locating process and distribution time.
    • DataTree: Delivery time, implements socket and buffer functionnalities. The MeshTree protocol is here.
    • InterCluster: Defines the role of each node in the LCC topology.

    release 1.0

    Browse complete source codes (for your reference)

Installation

The code has been tested under Linux Os, Other extensions are under developpement and test. A Windows distribution will be available later. Check out this page!

A config file is already proposed. Type "make" to install.

In the LCC distribution, some test scripts are provided. Theses tools are wrappers of common MBone conferencing applications : vic and rat, vlc (Vlc is still under test).

You need to get these original tools installed before you run different scripts in the test dir. Once you choose your favorite tool, run its corrspondant wrapper as: p2px RP/session_name:port. This intiates the RP service. Newcomers should run the same process. If nodes are on a local multicast-enabled network, the p2p service will not run, only the specified multicast address would be used in this case.

 

 

Contact

If you encounter any problems or you have some comments, please mail to the author
  • Mohamed Ali Kaafar (mohamed.kaafar@sophia.inria.fr)