160 likes | 258 Views
BREADCRUMB FORWARDING SERVICE. A synthesis of PGM and EXPRESS to improve and simplify global IP multicast Authors: Koichi Yano, Steven McCanne Presenter: Jitesh R. Nair. INTRODUCTION. Problems in Multicasting Viable interdomain multicast routing protocol yet to be developed
E N D
BREADCRUMB FORWARDING SERVICE A synthesis of PGM and EXPRESS to improve and simplify global IP multicast Authors: Koichi Yano, Steven McCanne Presenter: Jitesh R. Nair CS-590F - Jitesh R. Nair
INTRODUCTION • Problems in Multicasting • Viable interdomain multicast routing protocol yet to be developed • Dealing with packet drops – can impact indeterminate subsets of the reciever group CS-590F - Jitesh R. Nair
BreadCrumb Forwarding Service [BCFS] • A single source request based multicast service – advocates a model where a multicast tree is rooted at a single source and receivers explicitly indicate that source when subscribing to a multicast channel • Abandons the anonymity of the Class D group address CS-590F - Jitesh R. Nair
LABEL Uses an abstract “Label” to identify a particular request with respect to some source (Source, Label) identifies forwarding paths Label is generated by transport protocol LABEL Identifier of request CS-590F - Jitesh R. Nair
BASIC SETUP MECHANISM • REQUEST messages, issued for some piece of data. • Drops “breadcrumbs” along the path to the source. • The breadcrumbs in turn guide the REPLY message from the source back to all requesting receivers. • Each breadcrumb identified by (S,L) pair CS-590F - Jitesh R. Nair
TEARDOWN AND SUPPRESSION LEVEL A number that each breadcrumb carries. Also carried by REQUEST and REPLY messages. • Depending on LEVEL number • Messages sent to source are suppressed • Breadcrumb state at the router is torn down CS-590F - Jitesh R. Nair
SEQUENCE OF EVENTS REQUEST – A receiver sends a request packet with a label and a level SETUP – A router that receives a request message maintains state for forwarding links and the level associated with the label SUPPRESSION – The router forwards the request message toward the source if the label in the request message is new for that router or the level number is larger than the highest level being maintained. REPLY – A source in response to the request message, sends the requested data together with the label embedded in the request message and a level number to be torn down. FORWARDING – A router directs a reply message to the links that are associated with the label. TEARDOWN – The router removes the forwarding state of the link associated with the label, if the reply message includes a level number that is larger than the level maintained by the router. CS-590F - Jitesh R. Nair
ROUTER BEHAVIOUR • Maintain “breadcrumb state” tied to a particular label • Does not store copy of message • Stores level number • Stores directed link list – (link from which the REQUEST message came) CS-590F - Jitesh R. Nair
HOW DOES LABEL AND LEVEL FIT IN ? • A REQUEST packet arrives at the router from the receiver • If pair (S,L) is new for the router • Make a new entry for this pair • Note the link from which this REQUEST came • Couple the level number to the link • Forward the message upstream towards the source • If pair (S,L) is already present in the router • Explore the list of forwarding links • If link not present then add this to the directed link list with level number • If link present, then update the level number if the REQUEST had higher level number. • If level of the request message is greater than any level number stored, then forward the message towards the source, else suppress the message. CS-590F - Jitesh R. Nair
Level: Control Suppression From author’s website http://www.cs.berkeley.edu/~yano/pubs/retreat-sum99/sld009.htm CS-590F - Jitesh R. Nair
Level: Control Teardown From author’s website http://www.cs.berkeley.edu/~yano/pubs/retreat-sum99/sld010.htm CS-590F - Jitesh R. Nair
APPLICATIONS So far we have talked about “LABELS” and “LEVELS”. How exactly will they be used ? FEC based loss recovery LABEL – Block number LEVEL – Number of packets lost • Source can tell maximum lost number in a block • As many requested packets arrive at receivers for a Block CS-590F - Jitesh R. Nair
RAINBOW ON BCFS • RAINBOW – ReliAble multicast by INdividual Bandwidth adaptation using windOW • TCP friendly congestion control on top of BCFS • Source need not manage state on a per-receiver basis • Concept of Digital Fountain – [ A digital fountain approach to reliable distribution of bulk data – Byers et al. ] CS-590F - Jitesh R. Nair
RAINBOW • Individual TCP-like window control • Data transmission triggered by arrival of breadcrumbs at sender • Transmission request by BCF messages • Receiver sends transmission request as a BCF REQUEST • LABELS – denote window size. • TRQ with same LABEL are aggregated • Can be considered akin to “ACK” in a TCP scheme • Simple request by Digital fountain source • Can respond to each TRQ by sending one packet after another, which includes the same label as TRQ CS-590F - Jitesh R. Nair
Simulation: Scenario 1 From author’s website http://www.cs.berkeley.edu/~yano/pubs/retreat-sum99/sld023.htm
Simulation: Scenario 2 From author’s website http://www.cs.berkeley.edu/~yano/pubs/retreat-sum99/sld026.htm CS-590F - Jitesh R. Nair