Uday R. Naik

Research Areas

Authored Publications
Sort By
  • Title
  • Title, descending
  • Year
  • Year, descending
    Andromeda: Performance, Isolation, and Velocity at Scale in Cloud Network Virtualization
    Mike Dalton
    David Schultz
    Ahsan Arefin
    Alex Docauer
    Anshuman Gupta
    Brian Matthew Fahs
    Dima Rubinstein
    Enrique Cauich Zermeno
    Erik Rubow
    Jake Adriaens
    Jesse L Alpert
    Jing Ai
    Jon Olson
    Kevin P. DeCabooter
    Nan Hua
    Nathan Lewis
    Nikhil Kasinadhuni
    Riccardo Crepaldi
    Srinivas Krishnan
    Subbaiah Venkata
    Yossi Richter
    15th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2018
    Preview abstract This paper presents our design and experience with Andromeda, Google Cloud Platform’s network virtualization stack. Our production deployment poses several challenging requirements, including performance isolation among customer virtual networks, scalability, rapid provisioning of large numbers of virtual hosts, bandwidth and latency largely indistinguishable from the underlying hardware, and high feature velocity combined with high availability. Andromeda is designed around a flexible hierarchy of flow processing paths. Flows are mapped to a programming path dynamically based on feature and performance requirements. We introduce the Hoverboard programming model, which uses gateways for the long tail of low bandwidth flows, and enables the control plane to program network connectivity for tens of thousands of VMs in seconds. The on-host dataplane is based around a high-performance OS bypass software packet processing path. CPU-intensive per packet operations with higher latency targets are executed on coprocessor threads. This architecture allows Andromeda to decouple feature growth from fast path performance, as many features can be implemented solely on the coprocessor path. We demonstrate that the Andromeda datapath achieves performance that is competitive with hardware while maintaining the flexibility and velocity of a software-based architecture. View details
    BwE: Flexible, Hierarchical Bandwidth Allocation for WAN Distributed Computing
    Sushant Jain
    Nikhil Kasinadhuni
    Enrique Cauich Zermeno
    C. Stephen Gunn
    Jing Ai
    Björn Carlin
    Mathieu Robin
    Amin Vahdat
    Sigcomm '15, Google Inc (2015)
    Preview abstract WAN bandwidth remains a constrained resource that is economically infeasible to substantially overprovision. Hence, it is important to allocate capacity according to service priority and based on the incremental value of additional allocation. For example, it may be the highest priority for one service to receive 10Gb/s of bandwidth but upon reaching such an allocation, incremental priority may drop sharply favoring allocation to other services. Motivated by the observation that individual flows with fixed priority may not be the ideal basis for bandwidth allocation, we present the design and implementation of Bandwidth Enforcer (BwE), a global, hierarchical bandwidth allocation infrastructure. BwE supports: i) service-level bandwidth allocation following prioritized bandwidth functions where a service can represent an arbitrary collection of flows, ii) independent allocation and delegation policies according to user-defined hierarchy, all accounting for a global view of bandwidth and failure conditions, iii) multi-path forwarding common in traffic-engineered networks, and iv) a central administrative point to override (perhaps faulty) policy during exceptional conditions. BwE has delivered more service-efficient bandwidth utilization and simpler management in production for multiple years. View details
    BwE: Flexible, Hierarchical Bandwidth Allocation for WAN Distributed Computing
    Björn Carlin
    C. Stephen Gunn
    Enrique Cauich Zermeno
    Jing Ai
    Mathieu Robin
    Nikhil Kasinadhuni
    Sushant Jain
    ACM SIGCOMM 2015 (to appear)
    Preview abstract WAN bandwidth remains a constrained resource that is economically infeasible to substantially overprovision. Hence,it is important to allocate capacity according to service priority and based on the incremental value of additional allocation in particular bandwidth regions. For example, it may be highest priority for one service to receive 10Gb/s of bandwidth but upon reaching such an allocation, incremental priority may drop sharply favoring allocation to other services. Motivated by the observation that individual flows with fixed priority may not be the ideal basis for bandwidth allocation, we present the design and implementation of Bandwidth Enforcer (BwE), a global, hierarchical bandwidth allocation infrastructure. BwE supports: i) service-level bandwidth allocation following prioritized bandwidth functions where a service can represent an arbitrary collection of ows, ii) independent allocation and delegation policies according to user-defined hierarchy, all accounting for a global view of bandwidth and failure conditions, iii) multi-path forwarding common in traffic-engineered networks, and iv) a central administrative point to override (perhaps faulty) policy during exceptional conditions. BwE has delivered more service-efficient bandwidth utilization and simpler management in production for multiple years. View details