DOC PREVIEW
Berkeley COMPSCI 268 - Internet Indirection Infrastructure

This preview shows page 1-2-3-26-27-28 out of 28 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Internet Indirection Infrastructure (i3)MotivationsSlide 3SolutionSlide 5Slide 6Service ModelMobilityMulticastAnycastUsing i3Service Composition: Sender InitiatedService Composition: Receiver InitiatedLarge Scale MulticastImplementation OverviewPropertiesExampleSlide 18Optimization: Path LengthOptimization: Location-aware TriggersSecuritySome AttacksSolutionsExperimental ResultsFirst Packet LatencyEnd-to-end LatencyConclusionsStatusInternet Indirection Infrastructure (i3)Ion Stoica, Daniel Adkins, Shelley Zhuang,Scott Shenker, Sonesh SuranaUC BerkeleySIGCOMM 2002Motivations•Today’s Internet is built around a unicast point-to-point communication abstraction:–Send packet “p” from host “A” to host “B”•Point-to-point communication–Implicitly assumes there is one sender and one receiver, and that they are placed at fixed and well-known locations–Example: a host identified by the IP address 128.111.xxx.xxx is located in UCSBMotivations•This abstraction allows Internet to be highly scalable and efficient, but…•… not appropriate for applications that require other communications primitives:–Multicast–Anycast–Mobility–…•Key Observation: Virtually all previous proposals use indirection–Physical indirection point  mobile IP–Logical indirection point IP multicastSolution•Use an overlay network to implement this layer–Incrementally deployable; don’t need to change IPSolutionAn indirection layer based on overlay network(decouples sending and receiving)Multicast Anycast MobilityServiceCompositionIP LayerDHTInternet Indirection Infrastructure (i3)•Each packet is associated an identifier id•To receive a packet with identifier id, receiver R maintains a trigger(id, R) into the overlay networkSender Receiver (R)id RtriggerService Model•API–sendPacket(p);–insertTrigger(t);–removeTrigger(t) // optional•Best-effort service model (like IP)•Triggers periodically refreshed by end-hosts•ID length: 256 bitsMobility•Host just needs to update its trigger as it moves from one subnet to anotherSenderReceiver(R1)Receiver(R2)id R1id R2Multicast•Receivers insert triggers with same identifier•Can dynamically switch between multicast and unicastSender Receiver (R1)Receiver (R2)triggerid R2triggerid R1Anycast•Use longest prefix matching instead of exact matching–Prefix p: anycast group identifier–Suffix si: encode application semantics, e.g., locationUsing i3•Service Composition–Server initiated–Receiver initiated•Large Scale MulticastService Composition: Sender Initiated•Use a stack of IDs to encode sequence of operations to be performed on data pathSender(MPEG)Receiver R(JPEG)ID_MPEG/JPEGS_MPEG/JPEGIDRsend((ID_MPEG/JPEG,ID), data)S_MPEG/JPEGsend(ID, data)send(R, data)Service Composition: Receiver Initiated•Receiver can also specify the operations to be performed on dataSender(MPEG)Receiver R(JPEG)ID_MPEG/JPEGS_MPEG/JPEGIDID_MPEG/JPEG, Rsend(ID, data)S_MPEG/JPEGsend((ID_MPEG/JPEG,R), data)send(R, data)Large Scale Multicast•Can create a multicast tree for scalabilityR2R1R4R3g R2g R1gxx R4x R3(g, data)Implementation Overview•ID space is partitioned across infrastructure nodes–Each node responsible for a region of ID space•Each trigger (id, R) is stored at the node responsible for id•Use Chord to route triggers and packets to nodes responsible for their IDs–O(log N) hopsProperties•Robustness, Efficiency, Scalability, Stability–Robustness: refresh triggers , trigger replication, back-up triggers–Efficiency: Routing optimizations•Incremental deployment possible•Legacy applications can be supported by proxy which inserts triggers on behalf of clientExample•ID space [0..63] partitioned across five i3 nodes •Each host knows one i3 node•R inserts trigger (37, R); S sends packet (37, data)Example•ID space [0..63] partitioned across five i3 nodes •Each host knows one i3 node•R inserts trigger (37, R); S sends packet (37, data)Optimization: Path Length•Sender/receiver caches i3 node mapping a specific ID•Subsequent packets are sent via one i3 nodeOptimization: Location-aware Triggers•Well-known (public) trigger for initial rendezvous•Exchange a pair of (private) triggers well-located•Use private triggers to send data trafficPrivate Triggers:- S can insert a trigger [1,S] that is stored at server 3- R can chose a trigger [30,R] that is stored at server 35Security•i3 end-points also store routing information–New opportunities for malicious users •Goal: make i3 not worse than today’s InternetSome AttacksSolutions•Eavesdropping: Use private triggers, periodically change them, multiple private triggers•DoS Attacks: Challenges, Fair Queueing for resource allocation, loop detection•Dead-End: Use push-backExperimental Results•Simulation over two topologies–Power-law random graph topology–Transit-stub topology•Latency Stretch = (i3 latency)/(IP latency)•First Packet Latency, End-to-end LatencyFirst Packet Latency90th percentile latency stretch vs. no of i3 servers for Transit-stub topology Heuristics• Closest Finger Replica: Store r successors of each finger• Closest Finger Set: Use base b < 2 to find fingers, but consider only log2N closest fingers when routingEnd-to-end Latency90th percentile latency stretch vs. no of samples (16384 i3 servers)i3 latency = (sender to i3 server)+(i3 server to receiver)Conclusions•Indirection – key technique to implement basic communication abstractions–Multicast, Anycast, Mobility, …•This research–Advocates for building an efficient Indirection Layer on top of IP–Explores the implications of changing the communication abstractionStatus•http://i3.cs.berkeley.edu/•i3 is available as a service on Planetlab•Support for legacy applications in Linux and Windows XP•Applications–Mobility–Transparent access to machines behind NATs–Secure and transparent access to services behind


View Full Document

Berkeley COMPSCI 268 - Internet Indirection Infrastructure

Documents in this Course
Lecture 8

Lecture 8

33 pages

L-17 P2P

L-17 P2P

50 pages

Multicast

Multicast

54 pages

Load more
Download Internet Indirection Infrastructure
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Internet Indirection Infrastructure and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Internet Indirection Infrastructure 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?