Summary cache: a scalable wide-area web cache sharing protocol
IEEE/ACM Transactions on Networking (TON)
Implementing a distributed firewall
Proceedings of the 7th ACM conference on Computer and communications security
ACM Transactions on Computer Systems (TOCS)
Longest prefix matching using bloom filters
Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications
Measuring ISP topologies with rocketfuel
IEEE/ACM Transactions on Networking (TON)
The Bloomier filter: an efficient data structure for static support lookup tables
SODA '04 Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithms
Data Center Fundamentals
Fast hash table lookup using extended bloom filter: an aid to network processing
Proceedings of the 2005 conference on Applications, technologies, architectures, and protocols for computer communications
Proceedings of the 2006 conference on Applications, technologies, architectures, and protocols for computer communications
Proceedings of the 2006 conference on Applications, technologies, architectures, and protocols for computer communications
A first look at modern enterprise traffic
IMC '05 Proceedings of the 5th ACM SIGCOMM conference on Internet Measurement
Achieving convergence-free routing using failure-carrying packets
Proceedings of the 2007 conference on Applications, technologies, architectures, and protocols for computer communications
Floodless in seattle: a scalable ethernet architecture for large enterprises
Proceedings of the ACM SIGCOMM 2008 conference on Data communication
Accountable internet protocol (aip)
Proceedings of the ACM SIGCOMM 2008 conference on Data communication
Towards systematic design of enterprise networks
CoNEXT '08 Proceedings of the 2008 ACM CoNEXT Conference
Towards a new generation of information-oriented internetworking architectures
CoNEXT '08 Proceedings of the 2008 ACM CoNEXT Conference
LIPSIN: line speed publish/subscribe inter-networking
Proceedings of the ACM SIGCOMM 2009 conference on Data communication
Hash, don't cache: fast packet forwarding for enterprise edge routers
Proceedings of the 1st ACM workshop on Research on enterprise networking
Fast dynamic multiple-set membership testing using combinatorial bloom filters
IEEE/ACM Transactions on Networking (TON)
XIA: efficient support for evolvable internetworking
NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
ESM: efficient and scalable data center multicast routing
IEEE/ACM Transactions on Networking (TON)
When cycles are cheap, some tables can be huge
HotOS'13 Proceedings of the 14th USENIX conference on Hot Topics in Operating Systems
Scalable, high performance ethernet forwarding with CuckooSwitch
Proceedings of the ninth ACM conference on Emerging networking experiments and technologies
Hi-index | 0.00 |
In enterprise and data center networks, the scalability of the data plane becomes increasingly challenging as forwarding tables and link speeds grow. Simply building switches with larger amounts of faster memory is not appealing, since high-speed memory is both expensive and power hungry. Implementing hash tables in SRAM is not appealing either because it requires significant overprovisioning to ensure that all forwarding table entries fit. Instead, we propose the BUFFALO architecture, which uses a small SRAM to store one Bloom filter of the addresses associated with each outgoing link. We provide a practical switch design leveraging flat addresses and shortest-path routing. BUFFALO gracefully handles false positives without reducing the packet-forwarding rate, while guaranteeing that packets reach their destinations with bounded stretch with high probability. We tune the sizes of Bloom filters to minimize false positives for a given memory size. We also handle routing changes and dynamically adjust Bloom filter sizes using counting Bloom filters in slow memory. Our extensive analysis, simulation, and prototype implementation in kernel-level Click show that BUFFALO significantly reduces memory cost, increases the scalability of the data plane, and improves packet-forwarding performance.