Leveraging IPv6 in the Facebook backbone
William Collier-Byrd started off a trifecta of talks from the Facebook team about the history and rollout of IPv6 into the Facebook internal network. Facebook first started adopting IPv6 on its edge and backbone around the time of World IPv6 Day back in 2011; we realized an IPv4 renumbering would be painful and temporary, so the team went with IPv6 adoption — still challenging, but at least a long-term solution. Will covered the IPv6-ready IGP choice (not OSPF, so went with IS-IS), and then covered all the operational issues that the team ran into (primarily around management and visibility around IPv6). Implementations were inconsistent in how they interpreted IPv6 addresses, which led to bounced BGP sessions; show commands, MIBs, and other debug utilities were also woefully lacking. NetFlow, one of the fundamental tools for flow visibility, had significant bugs that made it so unstable and unreliable that Facebook had to develop its own host-based flow monitoring as a workaround. The overall lessons here are (1) if you haven’t already, just get started, and (2) think about your addressing plan and architecture, but then make sure you do it quickly, as you’ll learn so much more in the actual doing (see No. 1).