SRM: Work in Progress

Steve McCanne

UC Berkeley

Matters Mbone Workshop

SIGCOMM '96

August 1996

Overhead 1: Motivation

UCB Activities

use SRM as building block (control protocol, data distribution)


Overhead 2: Scalable Reliable Multicast (SRM)

Joint work with Floyd, Jacobson, Zhang, Liu

Receiver reliable protocol:

<figure showing ACK implosion problem>

Overhead 3: SRM Continued

Solution: multicast everything including repair request!

On average, only one or two session members downstream of a loss will generate a repair request. And in response, only one or two members generate reply

More details in SIGCOMM '95 paper

Overhead 4: Chronology

But haven't actually worked out details of this "framework" where we can distill into specific instances of application protocols

Overhead 5: SRM Skeleton

(described in SIGCOMM95 paper)

Goal: share common protocol piece across multiple application instances and allow application semantics to be reflected back into SRM

We claim layering won't work:



Slide 6: SRM Skeleton




Slide 7: Data Naming

Example of an open problem

want to give application flexibility to ask for specific pieces of data and ignore others

Slide 8: Example: wb

Data name is as hoc: 3-level field:

owner id, page id, drawop #

can grow data in any of 3 dimensions (can't do this with 1-D sequential space)

Slide 9: generalized SRM data naming

What if we wanted a more general wb page hierarchy, e.g.,

srcA/year/month/day/page#/op#

(imagine infinitely long SRM sessions)

Observation: we have

  1. objects (each with a 1-D sequence space
  2. object hierarchy

Unix file system analogy

can map this directly onto disk (nice for archiving)

Slide 10: Example: wb



Problems:

  1. how to distribute hierarchy (i.e., "state announcement") recursive application of SRM to disseminate "directory entries"
  2. how to encode path name efficiently?


Slide 11: summary

Think we're at the point where we can start thinking about experimental protocol specifications.

But many open problems: