Learning Center
Plans & pricing Sign in
Sign Out



									 Comparison of the
Application- and the
             Media Communication
   Target environments
     – Streaming (on-demand) videos to many clients
         » Distance learning, media center, corporate streaming, …
   Current approaches
     – Unicast
         » Centralized (e.g.: simple client-server web communication)
         » Proxy-based (e.g.: web proxy, also acting as firewall)
         » CDN (third-party, used for decreasing the bandwidth load at the
           original server)
     – Multicast
         » Network layer (IP-multicast)
         » Application layer (Application-level Multicast, ALM)

   Unicast:
    – Point to Point delivery
    – One Host to One Client

   Multicast:
    – Deliver to multiple destinations
    – One Host to Many Clients
                    About Multicast
   Multicasting is defined as the distribution of content to
    more than one host

   Steve Deering proposed the IP Multicast architecture,
    where the multicast functionality was added to the IP layer

   IP Multicast is the most efficient way to perform group data
    distribution, as it is able to reduce packet replication on the
    wide-area network
       Streaming Approaches
   Distributed caches
     – Deploy caches all over the place
     – Yes, increases the scalability
          » Shifts the bottleneck from the server to caches!
     – But, it also multiplies cost
     – What to cache? And where to put caches?
   Multicast
     – Mainly for live media broadcast
     – Application level [Narada, NICE, Scattercast, Zigzag, … ]
     – IP level
          » Widely deployed?
    IP vs. Application-Level Multicast

   IP multicast
    – Implemented at Internetworking layer
        » Routers and switches

   End System multicast
    – Implemented in the hosts and clients
                       Unicast Streaming

                   Centralized       Good performance
   Easy to deploy, administer       Suitable for web pages with moderate-
   Limited scalability               size objects
   Reliability concerns             Co$t: CDN charges for every megabyte
   Load on the backbone              served!
   High deployment cost $$$….$      For one-hour streamed to 1,000 clients,
                                      content provider pays $264 to CDN (at
                                      0.5 cents/MByte)
                                                              Receiver host
                       Receiver host
                        Router                                host

                                 Internet            Router

Sender host
                              Router        Router               Receiver host

   Large stress (packet multiplication) !!!                      Receiver host
Examples – naive Unicast
                Multicast Streaming

        Patch stream

       Network layer (IP-Multicast)                 Application layer (ALM)
   Efficient!                               Deployable
   Asynchronous client: Patching,           E.g., Narada, NICE, …
    skyscraper, …
                                             Assume end systems can support
   Tune to multiple channels  Require
    inbound bandwidth 2R+                     (outbound bandwidth) multiple folds
                                              of the streaming rate
   Scalability of routers
   Not widely deployed!!
          Network Layer (IP) Multicast
                                                                    Receiver host
                           Receiver host
                                                                    Receiver host

                                       Internet            Router
Sender host
                                  Router          Router               Receiver host

       Data transmission: spanning tree
                                                                       Receiver host
       Multiplication nodes: routers
      Key Concerns with IP Multicast
   Scalability with number of groups
    – Routers maintain per-group state
    – Analogous to per-flow state for QoS guarantees
    – Aggregation of multicast addresses is complicated
   Supporting higher level functionality is difficult
    – IP Multicast: best-effort multi-point delivery service
    – End systems responsible for handling higher level functionality
    – Reliability and congestion control for IP Multicast complicated
   Inter-domain routing is hard.
   No management of flat address space.
   Deployment is difficult and slow
    – ISP’s reluctant to turn on IP Multicast
       IP Multicast

Examples – IP Multicast
             IP Multicast Problems

   Not easily deployed  changing all routers
    – Especially in wide-area
   Business  not economic
   Business  confusing in charging method
    Application Layer Multicast (ALM)

   Another approach of to multicast is ALM
   The idea is that hosts in the multicast group connect to each
    other to form a virtual network
   The hosts use the virtual network to route multicast data and
    does not require support from Multicast Routers
   Transmission Redundancy of Data
    – Unicast: many copies per link
    – IP Multicast: one copy per link
    – Application-Level Multicast (ALM):
       » slightly more inefficient than IP Multicast
   Delay
    – Unicast same as IP Multicast
    – ALM incurs penalty
                       IP Multicast

   Pros
    – Possibly large performance benefits

   Cons
    – Needs to maintain “group state”
    – Infrastructure level changes are slow to deploy

   Pros
    – Can be implemented now
       » Hosts (Peer-to-Peer)
       » Proxy

   Cons
    – Performance degradation
Application Layer Multicast (ALM)
   Basically, end-hosts form an overlay network

   The goal of ALM is to construct and maintain an efficient
    overlay for data transmission

   ALM may send data multiple times over the same link 
    less efficient than IP Multicast

   The disadvantages of ALM are that it requires a bootstrap
    process to join the group. It may not scale well beyond few
    hundred users. But still Multicast could be easily deployed
    with ALM
   ALM is suitable for video conferencing, network games, and
    Application-Layer Multicast (ALM)
                                                                     Receiver host
                           Receiver host
                                                                     Receiver host

                                        Internet            Router
Sender host
                                    Router         Router
              Router                                                    Receiver host

                                                                        Receiver host
 Data transmission: spanning tree
 Multiplication nodes: hosts
Examples – Application-Level Multicast
   Application Layer Multicast

Advantages of the ALM
                  Potential Benefits
   Scalability (number of sessions in the network)
    – Routers do not maintain per-group state
    – End systems do, but they participate in very few groups
   Easier to deploy
   Potentially simplifies support for higher level functionality
    – Leverage computation and storage of end systems
    – For example, for buffering packets, transcoding, ACK aggregation
    – Leverage solutions for unicast congestion control and reliability
                ALM Problems

   Different performances in every end-host
    - different processor
    - different bandwidth (some people use ADSL and
    some people use dial-up connection)
     although one user depends on other user(s)

   End-host handles the duplicating packets, overlay
    topology(s), playing/running the application, etc
      end-system’s performance will be very slow
              ALM Problems (cont.)

   Suffering with delay

              ALM Problems (cont.)

   Packet is duplicated in end-host
     Security problem
            I. Suffering With Delay

   In IP Multicast
                    2                                    4
                        R1                          R2
                2                                            4

          H2                                                     H4

                             H2 suffers: 4 delay
                             H3 suffers: 31 delay
                             H4 suffers: 31 delay
     I. Suffering With Delay (cont.)

   In ALM
                  2                                    4
                      R1                          R2
              2                                            4

         H2                                                    H4

                           H2 suffers: 4 delay
                           H3 suffers: 31 delay
                           H4 suffers: 39 delay
    I. Suffering With Delay (cont.)

                IP Multicast             ALM
       H2           4                      4
       H3           31                    31
       H4           31                    39

   ALM routing algorithm currently doesn’t provide real-time
    services (video conference, digital TV broadcasting, etc)
    with LARGE members.
Another example

A                          C
    1                  1

        R1        R2
    2                  1
B                          D
                  IP Multicast
A                           C
    1                   1

        R1         R2
    2                   1
B                           D

                        A                          C
                            1                  1

                                R1        R2
                            2                  1
                        B                          D
                  Naive Unicast
A                               C
    1                   1

        R1         R2
    2                   1
B                               D

                                               27              C
                                                     28        2

                            B               28                 D
                                Complete Virtual Graph (CVG)
         Naive Unicast (cont.)
             27           C

3       27

    B                     D

                  A                              C
                      1                      1

                              R1        R2
                      2                      1
                  B                              D
    Application Level Multicast
           27            C
                28       2

B         28             D

                             27   C


                     B            D
A better routed virtual tree for

      A                          C
          1                  1

              R1        R2
          2                  1
      B                          D

Resource Usage = Σ Li=1 di * si

  L = number of link active in data
  di = delay of link
  si = stress in the link
               Parameters (cont.)
   Resource Usage in Naive Unicast

           A                               C
               1                    1

                    R1        R2
                2                  1
           B                               D

= (1x3) + (2x1) + (25x2) + (1x1) + (1x1)
= 3 + 2 + 50 + 1 + 1 = 57
                Parameters (cont.)
   Resource Usage in Application Layer Multicast

            A                              C
                 1                   1

                     R1        R2
                 2                  1
            B                              D

= (1x2) + (2x1) + (25x1) + (1x2) + (1x1)
= 2 + 2 + 25 + 2 + 1 = 32
                Parameters (cont.)

   While the smart ALM improves link stress and resource
    usage as compared to naive unicast transmission, it
    increases delay from the source to some of the recipients.

   The delay from A to D has increased from 27 to 29
                       II. Fragile

   In ALM, if one “important” member leave the group or
    suddenly failed, then many other members will suffer with
    packet loss.

                                      E                    K

      A                      D                      H

                         Failed !!!
               C                                I

                     III. Opinions
   We somehow must solve this problems if we would like
    to implement the end-system multicast in the Internet.

   Peer-to-peer applications (such as Kazaa, LimeWare,
    etc) with tremendously large member (about hundred
    thousand) cannot use end-system multicast routing

   If we don’t solve this problem, then it means it’s still hard
    to deploy multicast in the Internet.
             Virtual Overlay
   Virtual Network will often refer as GRAPH.
   Hosts in the virtual network will often refer as
       Protocol Design Goals
   Packets. Transport layer may be stream-based or
    datagram-based. Packets maybe lost, duplicated or
   Distributed. Protocol must be distributed and not uses
    a centralized server
   Dynamic Membership. Hosts must be able to join and
    leave the group at any time
   Self Correcting and Self Optimizing. The protocol
    must allow hosts to dynamically modify the graph to
    optimize and to repair graph partitions
                   Topology Design
   Routing. When a node receives a packet, it must decide
    which neighbor(s) to to forward packet to. Ideally, packet will
    reach host once and only once.
   Optimization. Nodes can modify their connectivity
    performances by considering metrics: Cost, Latency and
   Partitions. Graph that is not connected is said to have one
    or more partitions.
   Meshes and Trees. Tree is natural choice for end-host
    multicast delivery network because it has the optimal cost
    and latency. To route a packet, a node only needs to know
    who its neighbors are.
              Other Design Issues

   Denial of Service. It is necessary to prevent the ALM system
    from attacks against multicast group like flooding the group
    with packets, sending invalid data, etc.
   Bootstrap. To join an EM group, the node must connect to
    the graph. To connect to the graph, the host must learn of
    some nodes in the graph that it can connect to.
        Metrics of Goodness in ALM

   Quality of the data path:

    a. Stress  number of identical packets
               sent by the protocol over that

    b. Stretch  ratio of the path length along
                 the overlay from the source it
                 the member to the length of
                 the direct unicast path
     Metrics of Goodness in ALM (cont)

   Control Overheads: each member on the overlay exchanges
    refresh messages with all its peers

   Control Overheads are an important metric to consider from
    the scalability standpoint
Metrics of Goodness in ALM (cont)

To top