top | item 14801649

(no title)

valas | 8 years ago

Disclaimer: I worked on this technology.

I agree, article could be improved.

In a nutshell, Espresso system allows (logically) centralized, fine-grained control of how bits leave Google's network. Specifically, each server has a tailored (for that server) routing table that allows the server to select a specific port on a specific peering router for a given packet to exit to. The routing tables are updated very often and fast (e.g. to remove references to links that went down).

This makes it very easy to move bits around. You want to shift 42.2% of link X traffic to link Y? Just update some routing tables in end hosts. It also allows for different applications to the same destination to use different exit links (e.g. low latency - exit somewhere close, high bandwidth - exit where we have bandwidth). Bonus benefit: router can be simpler, it doesn't need to do any routing anymore, it just needs to follow instructions on each packet on which port to forward the packet to.

Does it make it more clear? Ask me anything.

discuss

order

No comments yet.