Choreography-Defined Networks: A Case Study on DoS Mitigation
Saverio Giallorenzo, Jacopo Mauro, Andrea Melis 0001, Fabrizio Montesi, Marco Peressotti, Marco Prandini
[2024].
In proceedings of ICSOC (2) 2024, pp. 243-259.
Software-defined networking and network function virtualization have brought unparalleled flexibility in defining and managing network architectures. With the widespread diffusion of cloud platforms, more resources are available to execute virtual network functions concurrently, but the current approach to defining networks in the cloud development is held back by the lack of tools to manage the composition of more complex flows than simple sequential invocations.
In this paper, we advocate for the usage of choreographic programming for defining the multiparty workflows of a network. When applied to the composition of virtual network functions, this approach yields multiple advantages: a single program expresses the behavior of all components, in a way that is easier to understand and check; a compiler can produce the executable code for each component, guaranteeing correctness properties of their interactions such as deadlock freedom; and the bottleneck of a central orchestrator is removed. We describe the proposed approach and show its feasibility via a case study where different functions cooperatively solve a security monitoring task.
@inproceedings{DBLP:conf/icsoc/GiallorenzoMMMPP24, author = {Saverio Giallorenzo and Jacopo Mauro and Andrea Melis and Fabrizio Montesi and Marco Peressotti and Marco Prandini}, editor = {Walid Gaaloul and Michael Sheng and Qi Yu and Sami Yangui}, title = {Choreography-Defined Networks: {A} Case Study on DoS Mitigation}, booktitle = {Service-Oriented Computing - 22nd International Conference, {ICSOC} 2024, Tunis, Tunisia, December 3-6, 2024, Proceedings, Part {II}}, series = {Lecture Notes in Computer Science}, volume = {15405}, pages = {243--259}, publisher = {Springer}, year = {2024}, url = {https://doi.org/10.1007/978-981-96-0808-9\_18}, doi = {10.1007/978-981-96-0808-9\_18}, timestamp = {Wed, 08 Jan 2025 21:12:50 +0100}, biburl = {https://dblp.org/rec/conf/icsoc/GiallorenzoMMMPP24.bib}, bibsource = {dblp computer science bibliography, https://dblp.org} }
A PDF is available (possibly a preprint):