In today’s networks, non-administrative users have little interaction with a network’s control-plane. Such users can send probe trac to develop inferences about the network’s present state, yet they cannot directly contact the control-plane for answers because of security or privacy concerns. In addition to reading the controlplane’s state, modern applications have increasing need to write conguration state as well. ese applications, running in home, campus, and datacenter networks, know what they need from the network, yet cannot convey such intentions to the control-plane. is dissertation introduces participatory networking, a novel platform for delegating read and write authority from a network’s administrators to end users, or applications and devices acting on their behalf. Users can then work with the network, rather than around it, to achieve better performance, security, or predictable behavior. Our platform’s design addresses the two key challenges: how to safely decompose control and visibility of the network, and how to resolve conicts between untrusted users and across requests, while maintaining baseline levels of fairness and security. We present a prototype implementation of participatory networking, structured as an API and controller for OpenFlow-based soware-dened networks (SDNs). We call our controller PANE, and demonstrate its usefulness by experiments with four real applications (Ekiga, SSHGuard, ZooKeeper, and Hadoop), and its practicality through microbenchmarks. Furthermore, we develop a mechanical proof for a key portion of PANE, the rst for an SDN controller. Unfortunately, network administrators interested in using SDN controllers such as PANE to manage the network face the herculean challenge of migrating existing policy to the new platform. To lessen this challenge, this dissertation introduces Exodus, the rst tool for directly translating existing network congurations in languages such as Cisco IOS and Linux iptables to SDN controller soware. ese controllers are written in Flowlog, a novel, rule-based, tierless language for SDNs we signicantly enhance for Exodus. Automatic migration of existing congurations into SDN controllers has exposed several limitations in both today’s languages for SDN programming, and OpenFlow itself. is dissertation explores these limits, and provides guidance on SDN migration and necessary switch features.