Internet Indirection Infrastructure (i3)The PurposeIntroducing i3i3 OverviewService ModelRendezvous-Based Communicationi3’s APIRendezvous-Based Communication (Basic)Rendezvous-Based Communication (Generalized)DesignCommunication Primitives by i3Slide 12Slide 13Stack of Identifiersi3_recv() & i3_forward() Pseudocodei3 Service Compositioni3 Heterogeneous Multicasti3 Server Selectioni3 Large Scale MulticastDesign & Performance IssuesChord Lookup ProtocolOther IssuesSlide 23Implementation & ExperimentsImplementation & Experiments (Testbed)PerformanceData Packet Forwardingi3 RoutingThroughputFuture Work10/31/200710/31/2007cs622cs62211Internet Indirection Infrastructure Internet Indirection Infrastructure ((i3i3))Paper By Paper By Ion Stoica, Daniel Adkins, Shelley Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker,Zhuang, Scott Shenker, Sonesh SharmaSonesh SharmaPresented ByPresented ByKunal BeleKunal Bele10/31/200710/31/2007cs622cs62222The PurposeThe PurposePoint-to-Point communications easy to Point-to-Point communications easy to handle in original Internet communication.handle in original Internet communication.For more beneficial & general applications For more beneficial & general applications involving Multicast, Anycast & Host involving Multicast, Anycast & Host Mobility rely on layer of Mobility rely on layer of indirection.indirection.Difficult to implement scalably & poses Difficult to implement scalably & poses technical problems and major deployment technical problems and major deployment barriers at IP layer.barriers at IP layer.Hence, turned to application layer Hence, turned to application layer solutions.solutions.10/31/200710/31/2007cs622cs62233Introducing Introducing i3i3 Associates packets with an identifier which is Associates packets with an identifier which is used by receiver for delivery of packets.used by receiver for delivery of packets.i3 offers powerful and flexible rendezvous i3 offers powerful and flexible rendezvous based communication.based communication.This approach provides general overlay service This approach provides general overlay service that avoids both the technical problems & that avoids both the technical problems & deployment challenges inherent in IP layer. deployment challenges inherent in IP layer. Combines generality of IP-layer solutions with Combines generality of IP-layer solutions with the deployment of overlay solutions.the deployment of overlay solutions.10/31/200710/31/2007cs622cs62244i3i3 OverviewOverview-Service Model (provides indirection)Service Model (provides indirection)-Rendezvous-Based Communication Rendezvous-Based Communication (communicates using identifiers & (communicates using identifiers & triggers)triggers)-DesignDesign-Communication PrimitivesCommunication Primitives-Stack of IdentifiersStack of Identifiers10/31/200710/31/2007cs622cs62255Service ModelService Model-Sources send packets to a logical identifier.Sources send packets to a logical identifier.-Receivers express interest in packets sent to an Receivers express interest in packets sent to an identifier.identifier.-i3i3 equivalent of IP multicast join more flexible & equivalent of IP multicast join more flexible & advantageous than IP multicast join. advantageous than IP multicast join. -By inserting a trigger, the operation is more By inserting a trigger, the operation is more flexible than an IP multicast join as it allows flexible than an IP multicast join as it allows receivers to control the routing the packet.receivers to control the routing the packet.-Advantageous wrt that it allows end-hosts Advantageous wrt that it allows end-hosts to create different services at application to create different services at application level out of this basic service model.level out of this basic service model.10/31/200710/31/2007cs622cs62266Rendezvous-Based Rendezvous-Based Communication Communication Senders send packets which are Senders send packets which are (id,data) (id,data) pairpair-id id is m-bit identifieris m-bit identifier-data data is payloadis payload (IP packet payload) (IP packet payload)Receivers use Receivers use triggerstriggers which are which are (id,addr) (id,addr) pairpair-id id is trigger identifieris trigger identifier-addr addr is node’s address (IP & Port no)is node’s address (IP & Port no)Trigger Trigger (id,addr) (id,addr) indicates all packets with an indicates all packets with an identifier identifier idid should be forwarded (by should be forwarded (by i3i3) to the ) to the node identified by addr.node identified by addr.10/31/200710/31/2007cs622cs62277i3’i3’s API s API 3 Basic Primitives exported by RBC3 Basic Primitives exported by RBCp – (id, data) , t – (id,addr)p – (id, data) , t – (id,addr)10/31/200710/31/2007cs622cs62288Rendezvous-Based Rendezvous-Based Communication (Basic)Communication (Basic)Communication between two nodesCommunication between two nodes10/31/200710/31/2007cs622cs62299Rendezvous-Based Rendezvous-Based Communication (Generalized)Communication (Generalized)There is There is exact-match threshold k exact-match threshold k with with k<m.k<m.- identifiers being m-bit long(256 in experiment)- identifiers being m-bit long(256 in experiment)id id Matching in Matching in i3i3 : : Identifier Identifier ididtt in a trigger matches identifier in a trigger matches identifier id id in a in a packet packet iff -iff - - id - id && id idt t have a prefix match of at least have a prefix match of at least kk bits. bits. - - there is no trigger with an identifier that has a there is no trigger with an identifier that has a longer prefix match with longer prefix match with idid..10/31/200710/31/2007cs622cs6221010DesignDesigni3i3 is an overlay network consisting of set of is an overlay network consisting of set of servers.servers.These servers store the triggers & forward the These servers store the triggers & forward the packets between packets between i3i3 nodes & end-hosts.nodes & end-hosts.Matching of identifiers in packets to those in Matching of identifiers in packets to those in triggers is done by mapping each identifier to a triggers is done by mapping each identifier to a unique unique i3i3 node.node.At a given time, only one server (At a given time, only one server (i3i3 node) is node) is responsible for given responsible for given id.id. Packets are not stored in Packets are not
View Full Document