Emu: Rapid Prototyping of Networking Services. Sultana, N., Galea, S., Greaves, D., Wojcik, M., Shipton, J., Clegg, R., Mai, L., Bressana, P., Soule, R., Mortier, R., & others In 2017 USENIX Annual Technical Conference (USENIX ATC ’17), pages 459–471, Jan, 2017. USENIX Association. abstract bibtex © USENIX Annual Technical Conference, USENIX ATC 2017. All rights reserved. Due to their performance and flexibility, FPGAs are an attractive platform for the execution of network functions. It has been a challenge for a long time though to make FPGA programming accessible to a large audience of developers. An appealing solution is to compile code from a general-purpose language to hardware using high-level synthesis. Unfortunately, current approaches to implement rich network functionality are insufficient because they lack: (i) libraries with abstractions for common network operations and data structures, (ii) bindings to the underlying “substrate” on the FPGA, and (iii) debugging and profiling support. This paper describes Emu, a new standard library for an FPGA hardware compiler that enables developers to rapidly create and deploy network functionality. Emu allows for high-performance designs without being bound to particular packet processing paradigms. Furthermore, it supports running the same programs on CPUs, in Mininet, and on FPGAs, providing a better development environment that includes advanced debugging capabilities. We demonstrate that network functions implemented using Emu have only negligible resource and performance overheads compared with natively-written hardware versions.
@InProceedings{Sultana2017Emu,
author = {Sultana, Nik and Galea, Salvator and Greaves, David and Wojcik, Marcin and Shipton, Jonny and Clegg, Richard and Mai, Luo and Bressana, Pietro and Soule, Robert and Mortier, Richard and others},
booktitle = {2017 USENIX Annual Technical Conference (USENIX ATC ’17)},
title = {{Emu: Rapid Prototyping of Networking Services}},
year = {2017},
month = {Jan},
organization = {USENIX Association},
pages = {459--471},
abstract = {© USENIX Annual Technical Conference, USENIX ATC 2017. All rights reserved. Due to their performance and flexibility, FPGAs are an attractive platform for the execution of network functions. It has been a challenge for a long time though to make FPGA programming accessible to a large audience of developers. An appealing solution is to compile code from a general-purpose language to hardware using high-level synthesis. Unfortunately, current approaches to implement rich network functionality are insufficient because they lack: (i) libraries with abstractions for common network operations and data structures, (ii) bindings to the underlying “substrate” on the FPGA, and (iii) debugging and profiling support. This paper describes Emu, a new standard library for an FPGA hardware compiler that enables developers to rapidly create and deploy network functionality. Emu allows for high-performance designs without being bound to particular packet processing paradigms. Furthermore, it supports running the same programs on CPUs, in Mininet, and on FPGAs, providing a better development environment that includes advanced debugging capabilities. We demonstrate that network functions implemented using Emu have only negligible resource and performance overheads compared with natively-written hardware versions.},
day = {1},
isbn = {9781931971386},
journal = {Proceedings of the 2017 USENIX Annual Technical Conference, USENIX ATC 2017},
publicationstatus = {published},
}
Downloads: 0
{"_id":"sLoFBNMjt3nr5w8AQ","bibbaseid":"sultana-galea-greaves-wojcik-shipton-clegg-mai-bressana-etal-emurapidprototypingofnetworkingservices-2017","authorIDs":["23FvDKJM79risFbvk","2WRdLjsYbtmJQGXTj","3TdN7rFeMEefY9Hk7","3rTL65wF3DnHKjPrH","4D4M2oJhgoxJWmkcN","5e5b8cd399fee0df0100052f","5e5e61c85f9e7bee010001b2","5e63cd1278da4fdf01000009","5e66782c152d6bde010000ad","5e66bc684b4a62de01000140","5e671b0e0355fddf0100001a","5e67421e4d24a6df0100009a","5e680874c1fce0de01000287","5e6902b38457bade0100024c","5e69eebe3aab3cdf0100027c","5e6b02dd69285ede010000d4","6dtSpmYM2v5HiJ9ko","7PYozaA4XxD8TMSWu","7v67D8gAyyrYcYL8n","8FAeKWJrSQzGoH9xE","92btiJpxxLrqAXgMn","9RzNnQ6CDTvwDBvLk","9xFPbGnxzbTckjz9c","AKtnLn9iXuKfsKnvb","BFbxJdJp2sdQE6jab","C42bg96aJPxALZDMj","DtNfHaeJrKpfNoJ6Y","EjCF3Z7mromd37b46","FAdZj59doyPG95Ft6","FS3CaSTZahuktxKRK","FSHFxTSeaaMHc8JFN","FjBPfgDjAs9qKbrk5","FsZDw63cXDZGCg8cM","FyuCzEsmg5eZwps34","G7Zffx7BGjho2AJZF","GWQKt32StcKocqn5B","GkmLPhgRgdfPyWMpr","GuCyBeEq4CLqBYY4e","HEsiueufKRKp7GbNg","HeDJuNtADqRvbfrNq","HjfA3eJtFSPtgMBym","Jqijff5rjodf97X53","KtL6LDN8YAwLxHa65","Mkn8H8agB7ogrFqWN","NzXzmqRTuu45HnK2v","PrcWsJASY7LaFZhBB","PwRjbkKnSWC6H3n5k","R7kWfTSiqEYweDNJJ","RnYAzvE3YT6XCvYbL","RzmZwHWjFC9KDceD6","S2grxY7kvZtXmkWaz","SFyHCv2aSe3LSrsig","T24gLu9jAvzXQKDdi","TetaaoYbFZFGavtxb","TrJkGmeXPf45TAc2W","WtXExMgBkc2WjYBJt","XA7WBWWEgKAXwNJCd","Xx5DKm38fz55YJDuS","YAHhHms8w9X3eEygF","YkX9xP5ow83tk9puf","YxYksTSKXdNyMqJsi","ZL6Dbz49T8BDz5vKk","aFMaT3CuDYnbfTuK2","aYh8WXnpTgutjdTMd","appbKSaMFf3DMDdyh","bPre4gjTqMby95fE9","bwBtZ44dECqBAqL6B","byXTwmgkSDjBepE6s","dQHw4Zt3JvgfJe4LH","fRHmMjA45atDn2XE2","fswYidNG7RDWyDvav","gGhwKTHH8tmmv276q","h2nvFJ6oT6Ts8LGw8","iWm4sAET4pyRiymhf","ij4rWKxtaweP2mmoQ","j399RSNqBHhuysXLG","jBsGo5nSsKF9Aswd7","jE5oX3AQSLtsnWFq5","jQhrZRo2jakTNZXE2","jXnTqkWvn2uys2LvQ","jYoTKtmcqmnjxyeYG","nCcpY7DvabFtejfsb","nmJWcKmR9YysKb2rn","pDgAmdf6bhwdtM7xi","pmYukAPu4EpuZAnZm","qGrsAHNkXL2yfxqju","qsecNeipc9bA8BJCt","r9c22nKBKGFJSB2La","srLPnyAzJWoRtHW8E","tN3iZEGhSw5dfH6Xz","tkFNTSf2DZXQJ2S68","uhtv8BNREAX7LsJYP","uokAikkyvYZZBbmbj","v2nSToyinuWzoQD4m","vhEMZTdeqfxeNkLCx","vve5WiBtmQqb2NB9Z","vwrt7tPuWdGZn9rfW","wbMcKHXZfdcWNjsvh","xBPtJ8k7YjPfQvS3C","xnzKrBDzkkPg97c7S","y8abYWAnJv92KiDwR","ycjRe3yAeg8atdvL6","ycyAerqYNXsBXxcPX","ykErHr8DwXQjFCSFG","zyNiT5NQSkPSNGs43"],"author_short":["Sultana, N.","Galea, S.","Greaves, D.","Wojcik, M.","Shipton, J.","Clegg, R.","Mai, L.","Bressana, P.","Soule, R.","Mortier, R.","others"],"bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"propositions":[],"lastnames":["Sultana"],"firstnames":["Nik"],"suffixes":[]},{"propositions":[],"lastnames":["Galea"],"firstnames":["Salvator"],"suffixes":[]},{"propositions":[],"lastnames":["Greaves"],"firstnames":["David"],"suffixes":[]},{"propositions":[],"lastnames":["Wojcik"],"firstnames":["Marcin"],"suffixes":[]},{"propositions":[],"lastnames":["Shipton"],"firstnames":["Jonny"],"suffixes":[]},{"propositions":[],"lastnames":["Clegg"],"firstnames":["Richard"],"suffixes":[]},{"propositions":[],"lastnames":["Mai"],"firstnames":["Luo"],"suffixes":[]},{"propositions":[],"lastnames":["Bressana"],"firstnames":["Pietro"],"suffixes":[]},{"propositions":[],"lastnames":["Soule"],"firstnames":["Robert"],"suffixes":[]},{"propositions":[],"lastnames":["Mortier"],"firstnames":["Richard"],"suffixes":[]},{"firstnames":[],"propositions":[],"lastnames":["others"],"suffixes":[]}],"booktitle":"2017 USENIX Annual Technical Conference (USENIX ATC ’17)","title":"Emu: Rapid Prototyping of Networking Services","year":"2017","month":"Jan","organization":"USENIX Association","pages":"459–471","abstract":"© USENIX Annual Technical Conference, USENIX ATC 2017. All rights reserved. Due to their performance and flexibility, FPGAs are an attractive platform for the execution of network functions. It has been a challenge for a long time though to make FPGA programming accessible to a large audience of developers. An appealing solution is to compile code from a general-purpose language to hardware using high-level synthesis. Unfortunately, current approaches to implement rich network functionality are insufficient because they lack: (i) libraries with abstractions for common network operations and data structures, (ii) bindings to the underlying “substrate” on the FPGA, and (iii) debugging and profiling support. This paper describes Emu, a new standard library for an FPGA hardware compiler that enables developers to rapidly create and deploy network functionality. Emu allows for high-performance designs without being bound to particular packet processing paradigms. Furthermore, it supports running the same programs on CPUs, in Mininet, and on FPGAs, providing a better development environment that includes advanced debugging capabilities. We demonstrate that network functions implemented using Emu have only negligible resource and performance overheads compared with natively-written hardware versions.","day":"1","isbn":"9781931971386","journal":"Proceedings of the 2017 USENIX Annual Technical Conference, USENIX ATC 2017","publicationstatus":"published","bibtex":"@InProceedings{Sultana2017Emu,\n author = {Sultana, Nik and Galea, Salvator and Greaves, David and Wojcik, Marcin and Shipton, Jonny and Clegg, Richard and Mai, Luo and Bressana, Pietro and Soule, Robert and Mortier, Richard and others},\n booktitle = {2017 USENIX Annual Technical Conference (USENIX ATC ’17)},\n title = {{Emu: Rapid Prototyping of Networking Services}},\n year = {2017},\n month = {Jan},\n organization = {USENIX Association},\n pages = {459--471},\n abstract = {© USENIX Annual Technical Conference, USENIX ATC 2017. All rights reserved. Due to their performance and flexibility, FPGAs are an attractive platform for the execution of network functions. It has been a challenge for a long time though to make FPGA programming accessible to a large audience of developers. An appealing solution is to compile code from a general-purpose language to hardware using high-level synthesis. Unfortunately, current approaches to implement rich network functionality are insufficient because they lack: (i) libraries with abstractions for common network operations and data structures, (ii) bindings to the underlying “substrate” on the FPGA, and (iii) debugging and profiling support. This paper describes Emu, a new standard library for an FPGA hardware compiler that enables developers to rapidly create and deploy network functionality. Emu allows for high-performance designs without being bound to particular packet processing paradigms. Furthermore, it supports running the same programs on CPUs, in Mininet, and on FPGAs, providing a better development environment that includes advanced debugging capabilities. We demonstrate that network functions implemented using Emu have only negligible resource and performance overheads compared with natively-written hardware versions.},\n day = {1},\n isbn = {9781931971386},\n journal = {Proceedings of the 2017 USENIX Annual Technical Conference, USENIX ATC 2017},\n publicationstatus = {published},\n}\n\n","author_short":["Sultana, N.","Galea, S.","Greaves, D.","Wojcik, M.","Shipton, J.","Clegg, R.","Mai, L.","Bressana, P.","Soule, R.","Mortier, R.","others"],"key":"Sultana2017Emu","id":"Sultana2017Emu","bibbaseid":"sultana-galea-greaves-wojcik-shipton-clegg-mai-bressana-etal-emurapidprototypingofnetworkingservices-2017","role":"author","urls":{},"metadata":{"authorlinks":{"moore, a":"https://www.cl.cam.ac.uk/~awm22/publications/index.html"}},"downloads":0,"html":""},"bibtype":"inproceedings","biburl":"www.cl.cam.ac.uk/~awm22/tmp/jabref-master.bib","creationDate":"2020-03-01T10:22:11.850Z","downloads":0,"keywords":[],"search_terms":["emu","rapid","prototyping","networking","services","sultana","galea","greaves","wojcik","shipton","clegg","mai","bressana","soule","mortier","others"],"title":"Emu: Rapid Prototyping of Networking Services","year":2017,"dataSources":["P4oCWtW2FaLzS5ueC","Z2XGYjE5q4GTmpP4E","LoreFsEEN9tXGMfht"]}