[talks] Mina Tahmasbi Arashloo will present her General Exam on Wednesday, May 04, 2016 at 10am in CS 302.

Nicki Gotsis ngotsis at CS.Princeton.EDU
Wed Apr 27 16:20:16 EDT 2016

Mina Tahmasbi Arashloo will present her General Exam on Wednesday, May 04, 2016	at 10am in CS 302.	

The members of her committee are Jennifer Rexford (adviser), Nick Feamster, and Kyle Jamieson.

Everyone is invited to attend her talk, and those faculty wishing to remain for the oral exam following are welcome to do so.   Please find her abstract and reading list below.


SNAP : Stateful Network-Wide Abstractions for Packet Processing
Early programming languages for software-defined networking (SDN) were built on top of the simple match-action paradigm offered by OpenFlow 1.0. However, emerging hardware and software switches offer much more sophisticated support for persistent state in the data plane, without involving a central controller. Nevertheless, managing stateful, distributed systems efficiently and correctly is known to be one of the most challenging programming problems. To simplify this new SDN problem, we introduce SNAP.

SNAP offers a simpler “centralized” stateful programming model, by allowing programmers to develop programs on top of one big switch rather than many. These programs may contain reads and writes to global, persistent arrays, and as a result, programmers can implement a broad range of applications, from stateful firewalls to fine-grained traffic monitoring. The SNAP compiler relieves programmers of having to worry about how to distribute, place, and optimize access to these stateful arrays by doing it all for them. More specifically, the compiler translates one-big-switch programs into an efficient internal representation based on a novel variant of binary decision diagrams. This internal representation discovers read-write dependencies, and constructs a mixed-integer linear program, which jointly optimizes the placement of state and the routing of traffic across the underlying physical topology. We have implemented a prototype compiler and applied it to about 20 SNAP programs over various topologies to demonstrate our techniques’ scalability.

Reading list:
1) Computer Networks: A Systems Approach (5th edition)
2) End-to-End Argument in System Design
3) The Design Philosophy of the DARPA Internet Protocols
4) Development of Domain Name System
5) The Click Modular Router 
6) OpenFlow: Enabling Innovation in Campus Networks
7) A Compiler and Run-time System for Network Programming Languages
8) Kinetic: Verifiable Dynamic Network Control
9) Merlin: A Language for Provisioning Network Resources
10) OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch
11) Packet Transactions: High-level Programming for Line-Rate Switches
12) Buzz: Testing Context-Dependent Policies in Stateful Networks
13) Enforcing Network-Wide Policies in the Presence of Dynamic Middlebox Actions using FlowTags

More information about the talks mailing list