This paper presents FatTire, a new language for writing fault-tolerant network programs. The central feature of this language is a new programming construct based on regular expressions that allows developers to specify the set of paths that packets may take through the network as well as the degree of fault tolerance required. This construct is implemented by a compiler that targets the in-network fast-failover mechanisms provided in recent versions of the OpenFlow standard, and facilitates simple reasoning about network programs even in the presence of failures. We describe the design of FatTire, present algorithms for compil- ing programs to OpenFlow switch configurations, describe our prototype FatTire implementation, and demonstrate its use on simple examples.
@inproceedings{reitblatt:fattire, author = "Mark Reitblatt and Marco Canini and Arjun Guha and Nate Foster", title = "{FatTire}: Declarative Fault Tolerance for {S}oftware-{D}efined Networks", year = 2013, booktitle = "ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking (HotSDN)" }