6 ways to build SDNs without OpenFlow