1 / 27

Testbeds Breakout

Explore the essential requirements, services, challenges, and goals of a modern testbed ecosystem supporting virtualization, federation, and user programmability.

lrubinstein
Download Presentation

Testbeds Breakout

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tom Anderson Jeff Chase Doug Comer Brett Fleisch Frans Kaashoek Jay Lepreau Hank Levy Larry Peterson Mothy Roscoe Mehul Shah Ion Stoica Joe Touch Amin Vahdat Testbeds Breakout

  2. GENI Requirements • Virtualizable • So users can share infrastructure • Programmable • So users can provide arbitrary functionality • Supports painless user opt-in and opt-out • So we can get real workload • Federation • So new devices, clusters, edge networks can be plugged in • Software development support • So we can make our stuff real and available to each other • So we can build on each other's work; this includes (especially) management software

  3. Questions • What do we need? • How can we contribute to substrate? • What basic services can we provide?

  4. What do we need? (1) • Significant storage and computation infrastructure  make it possible to deploy Google and Yahoo like services • 20-30 clusters • > 256 node per cluster • > 256 TB per site • Many smaller clusters with heterogeneous connectivity  make it possible to deploy Akamai like services • Others: 1000s of hosts, sensor nodes, mobile devices, embedded devices

  5. What do we need? (2) • Allow users to easily opt-in and opt-out with their resources to/from the testbed • Enable testbed to organically grow to include • Wireless networks • Sensor networks • Community Networks • …

  6. How can we contribute to substrate? (1) • Provide a “virtual network system” abstraction: • Virtualize all resources: CPU. Memory, storage, network • Virtualization within constraints (e.g., 20 ms delay, 2 Mbps links) • Challenge: Map virtual system networks onto physical resources while meeting time and resource constraints

  7. How can we contribute to substrate? (2) • Resource management & allocation • How to allocate resources (virtual network systems) when testbed is oversubscribed? • Challenge: Develop flexible policies and mechanisms • E.g., reservation in both time and space, market-based allocation, …

  8. How can we contribute to substrate? (3) • Support for auditing, debugging • How to discover users with malicious intend, misconfigurations, bugs? • Challenges: • Efficient and scalable infrastructure that at limit would allow all nodes to log all messages, virtual machine checkpoints, etc • Extensible monitoring infrastructure; provide hooks for users to add their own monitoring or logging code

  9. What services can we provide? (1) • PKI infrastructure • Certification authority • Auditing services • Name server (DNS++) • Resource location and discovery

  10. What service can we provide? (2) • Citeseer • Source forge • Usenet news • arXiv.org • Conference submission • Fastlane • Data distribution service • Spam filters • Distributed firewalls • Open search engine (Open Google?)

  11. Goals • Flexibility/Control • Isolation • Realism • Fairness • Security • Support for tracing, replaying

  12. What should a Testbed Include? • PlanetLab++ • Large number of node (1000s), heterogeneous connectivity • Optical networks • Sensor nodes • Mobile hosts (PDAs, Phones, etc) • Data centers (Google, Yahoo, part of the Internet fabric)

  13. Soft-radios • Four classes of wireless • All things for all people is difficult • Configurable testbeds • Heterogeneous separate testbed • What’s it at this site? • Storage to do management • Contribute with software, maintain and support • Operational and manage this

  14. What we need? • Sensornodes • Open environment • Organically evolve testbeds • Distribution, heterogeneity, scale

  15. What else we need (Software)? • Databases

  16. How can we contribute? • Management?

  17. Flexibility • Need to be have complete control on infrastructure node • Run various OSes • Port numbers • Real-time • Root privileges

  18. Isolation • One user shouldn’t be able to interfere with the experiments of other users • At multiple levels • CPU • Memory • Disk • Bandwidth (both outgoing and ingoing)

  19. Realism • Real users, real applications • Negotiate with ISPs to send traffic across testbed • How to guarantee that ISPs traffic won’t be screwed • Recreate catastrophic failures, attacks

  20. Security • Prevent using testbed to initiate attacks • Malicious users • Misconfigurations • Challenge: minimal impact on flexibility, performance

  21. Management • How to allocate resources to users in a fair and easy to understand (predictable?) way • Flexible polices and mechanisms • Reservation in both time and space • Biding, trading resources • Economic-based allocation

  22. Support for tracing, replaying • Ideally, log everything: • Traffic • Virtual machine checkpoints • Enable replaying, forensic • Hard

  23. Virtualized testbeds • Network and edge devices network • Virtual machine and virtual network • Virtualization within constraints (20ms) • Abstract away heterogeneous software • Specify requirements  map on real resources

  24. Auditing/logging • Flexible monitoring • Secure hooks for monitoring

  25. Extensible testbeds • Flexible routing infrastructure • Integrate everything • Community networks • Useful control system

  26. Resource allocation • Model for incentives • Incentives to X add resources • PKI infrastructure • Certified authority • Auditing services • Name servers • Resource location and discovery

More Related