way of decoupling the TCP stack, and storing it
persistently to safeguard the TCP connections when the
load balancing instances fail.
Duet, Rubik: data-center load balancing
commodity data-center switches (instead of servers) to
load balance the traffic that reduces the load balancer
cost by 12-25x and improves latency.
Dionysus: Dynamic scheduling of the network
A system for fast and consistent network
updates in SDN that improves the update speed by 53-88%.
Pikachu: large-scale data processing
statically partitions the data (to reducer) based on the
number of slots. This design choice leads to imbalance in
the amount of data (especially on heterogeneous clusters),
that elongates job completion time. In Pikachu, we
articulate a run-time mechanism that dynamically adjusts
the data to different reducer nodes in proportion to their
processing speed. Various design choices in Pikachu
improve the job-completion time by 25-42% compared to
Mercury: in-memory key-value store
Most scalable version of Memcached! We re-designed
Memcached internals to remove/reduce all bottlenecks in
the memory sub-system of Memcached. Mercury achieves near
linear speedup with number of cores on any
work-load. Compared to Memcached 1.4.13, Mercury processes
4-12x more queries/sec.
Wireless (Percy) and cognitive radio (DCH)
Percy, we improved the video streaming by using layered
videos (MDC/MRC), coupled with the network coding. Percy
improves video quality by up to 5 PSNR. In DCH, we deviced
two algorithms that achieve rendezvous faster by 80%.