{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:16:17Z","timestamp":1763468177031,"version":"3.41.0"},"reference-count":29,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2014,4,8]],"date-time":"2014-04-08T00:00:00Z","timestamp":1396915200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGCOMM Comput. Commun. Rev."],"published-print":{"date-parts":[[2014,4,8]]},"abstract":"<jats:p>In spite of the standardization of the OpenFlow API, it is very difficult to write an SDN controller application that is portable (i.e., guarantees correct packet processing over a wide range of switches) and achieves good performance (i.e., fully leverages switch capabilities). This is because the switch landscape is fundamentally diverse in performance, feature set and supported APIs. We propose to address this challenge via a lightweight portability layer that acts as a rendezvous point between the requirements of controller application and the vendor knowledge of switch implementations. Above, applications specify rules in virtual flow tables annotated with semantic intents and expectations. Below, vendor specific drivers map them to optimized switch-specific rule sets. NOSIX represents a first step towards achieving both portability and good performance across a diverse set of switches.<\/jats:p>","DOI":"10.1145\/2602204.2602209","type":"journal-article","created":{"date-parts":[[2014,4,8]],"date-time":"2014-04-08T12:24:20Z","timestamp":1396959860000},"page":"28-35","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":31,"title":["NOSIX"],"prefix":"10.1145","volume":"44","author":[{"given":"Minlan","family":"Yu","sequence":"first","affiliation":[{"name":"University of Southern California, Los Angeles, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Andreas","family":"Wundsam","sequence":"additional","affiliation":[{"name":"Big Switch Networks, Mountain View, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Muruganantham","family":"Raju","sequence":"additional","affiliation":[{"name":"University of Southern California, Los Angeles, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2014,4,8]]},"reference":[{"unstructured":"http:\/\/noviflow.com\/products\/noviswitch\/.  http:\/\/noviflow.com\/products\/noviswitch\/.","key":"e_1_2_1_1_1"},{"unstructured":"www.opendaylight.org.  www.opendaylight.org.","key":"e_1_2_1_2_1"},{"unstructured":"Cisco Nexus 1000V. http:\/\/www.cisco.com\/en\/US\/products\/ps9902\/index.html.  Cisco Nexus 1000V. http:\/\/www.cisco.com\/en\/US\/products\/ps9902\/index.html.","key":"e_1_2_1_3_1"},{"unstructured":"The complexity of hardware openflow switches. http:\/\/www.youtube.com\/watch?v=RRiOcjAvIsg.  The complexity of hardware openflow switches. http:\/\/www.youtube.com\/watch?v=RRiOcjAvIsg.","key":"e_1_2_1_4_1"},{"unstructured":"IBM System Networking RackSwitch G8264. http:\/\/www-03.ibm.com\/systems\/networking\/switches\/rack\/g8264\/.  IBM System Networking RackSwitch G8264. http:\/\/www-03.ibm.com\/systems\/networking\/switches\/rack\/g8264\/.","key":"e_1_2_1_5_1"},{"unstructured":"Intel SDN switch specification. http:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/white-papers\/ethernet-switch-fm6000-sdn-paper.pdf.  Intel SDN switch specification. http:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/white-papers\/ethernet-switch-fm6000-sdn-paper.pdf.","key":"e_1_2_1_6_1"},{"unstructured":"NEC ProgrammableFlow PF5240 Switch. http:\/\/www.necam.com\/SDN\/doc.cfm?t=PFlowPF5240Switch.  NEC ProgrammableFlow PF5240 Switch. http:\/\/www.necam.com\/SDN\/doc.cfm?t=PFlowPF5240Switch.","key":"e_1_2_1_7_1"},{"unstructured":"Open networking foundation product directory. http:\/\/sdndirectory.opennetworking.org\/products.  Open networking foundation product directory. http:\/\/sdndirectory.opennetworking.org\/products.","key":"e_1_2_1_8_1"},{"unstructured":"OpenFlow management and configuration protocol. https:\/\/www.opennetworking.org\/images\/stories\/downloads\/sdn-resources\/onf-specifications\/openflow-config\/of-config-1.1.pdf.  OpenFlow management and configuration protocol. https:\/\/www.opennetworking.org\/images\/stories\/downloads\/sdn-resources\/onf-specifications\/openflow-config\/of-config-1.1.pdf.","key":"e_1_2_1_9_1"},{"unstructured":"OpenVSwitch. http:\/\/openvswitch.org\/.  OpenVSwitch. http:\/\/openvswitch.org\/.","key":"e_1_2_1_10_1"},{"unstructured":"P. Bosshart D. Daly M. Izzard N. McKeown J. Rexford D. Talayco A. Vahdat G. Varghese and D. Walker. Programming protocol-independent packet processors. In arkiv 2013.  P. Bosshart D. Daly M. Izzard N. McKeown J. Rexford D. Talayco A. Vahdat G. Varghese and D. Walker. Programming protocol-independent packet processors. In arkiv 2013.","key":"e_1_2_1_11_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_12_1","DOI":"10.1145\/2486001.2486011"},{"doi-asserted-by":"publisher","key":"e_1_2_1_13_1","DOI":"10.1145\/2491185.2491200"},{"doi-asserted-by":"publisher","key":"e_1_2_1_14_1","DOI":"10.1145\/2043164.2018466"},{"doi-asserted-by":"publisher","key":"e_1_2_1_15_1","DOI":"10.1145\/1544012.1544032"},{"doi-asserted-by":"publisher","key":"e_1_2_1_16_1","DOI":"10.1145\/2034773.2034812"},{"unstructured":"U. H\u00f6lzle. OpenFlow at Google. Open Network Summit Keynote. http:\/\/www.youtube.com\/watch?v=VLHJUfgxEO4 2012.  U. H\u00f6lzle. OpenFlow at Google. Open Network Summit Keynote. http:\/\/www.youtube.com\/watch?v=VLHJUfgxEO4 2012.","key":"e_1_2_1_17_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_18_1","DOI":"10.1145\/2491185.2491188"},{"doi-asserted-by":"publisher","key":"e_1_2_1_19_1","DOI":"10.1145\/2486001.2486019"},{"volume-title":"USENIX OSDI","year":"2010","author":"Koponen T.","key":"e_1_2_1_20_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_21_1","DOI":"10.1145\/1921168.1921180"},{"volume-title":"NSDI","year":"2013","author":"Liu J.","key":"e_1_2_1_22_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_23_1","DOI":"10.1145\/2535771.2535789"},{"volume-title":"NSDI","year":"2013","author":"Moshref M.","key":"e_1_2_1_24_1"},{"unstructured":"OpenFlow Wiki: NEC Univerge PF5820. http:\/\/www.openflow.org\/wp\/switch-nec\/.  OpenFlow Wiki: NEC Univerge PF5820. http:\/\/www.openflow.org\/wp\/switch-nec\/.","key":"e_1_2_1_25_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_26_1","DOI":"10.1145\/2491185.2491209"},{"doi-asserted-by":"publisher","key":"e_1_2_1_27_1","DOI":"10.1145\/2070562.2070569"},{"doi-asserted-by":"publisher","key":"e_1_2_1_28_1","DOI":"10.1007\/978-3-642-28537-0_9"},{"doi-asserted-by":"publisher","key":"e_1_2_1_29_1","DOI":"10.5555\/1946313.1946339"}],"container-title":["ACM SIGCOMM Computer Communication Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2602204.2602209","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2602204.2602209","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T07:00:47Z","timestamp":1750230047000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2602204.2602209"}},"subtitle":["a lightweight portability layer for the SDN OS"],"short-title":[],"issued":{"date-parts":[[2014,4,8]]},"references-count":29,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2014,4,8]]}},"alternative-id":["10.1145\/2602204.2602209"],"URL":"https:\/\/doi.org\/10.1145\/2602204.2602209","relation":{},"ISSN":["0146-4833"],"issn-type":[{"type":"print","value":"0146-4833"}],"subject":[],"published":{"date-parts":[[2014,4,8]]},"assertion":[{"value":"2014-04-08","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}