
Yoann Desmouceaux, PhD
Affiliated researcher, Cisco Research Engineer, PhD student (graduated)
After his studies at École Polytechnique (X11) where he followed the Network/Security track, Yoann Desmouceaux completed his MSc in Advanced Computing at Imperial College London. His Master’s research focused on bringing zero-copy deserialization capabilities to a userland TCP stack
Dr. Desmouceaux obtained his PhD at Ecole Polytechnique, under supervision by Thomas Clausen, in collaboration with Cisco France, on the topic high-performance networking, IPv6-centric protocols and protocol verification.
He successfully defended his PhD on April 10, 2019, before a jury presided by professor Marceau Coupechoux, and composed from dr. Walid Dabbous (rapporteur), professor Olivier Bonaventure (rapporteur), dr Pascale Minet, dr. Sonia Vanier, and mr. Mark Townsley.
Latest Posts, Mentioning Yoann
All inked up, and ready to review first draft of my PhD students’ thesis
Three different shades of red, so ready for three different levels of frustration 😀 No, but seriously, all-inclusive, I am looking forward to reading these 213 pages of densely packed science.
Last before lunch: Yoann Desmouceaux talking “Cloud Native Datacenters” at our IoT and Cybersecurity mini-symposium at Ecole Polytechnique
Reviewing state-of-the-art, and introducing our students to some of his own work on application-agnostic, stateless, load-aware load balancing using IPv6 Segment Routing.
If only Slashdot used 6LB …
During my lunch break today, I tried to glean what “news for nerds – stuff that matters” had happened lately — but, when trying to access slashdot.org, I was met with this: While I, admittedly, do not know what infrastructure…
Read more
Yoann’s Publications
2021
Yao, Zhiyuan; Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas Heide
Towards Intelligent Load Balancing in Data Centers Inproceedings Forthcoming
In: Machine Learning for Systems at 35th Conference on Neural Information Processing Systems (NeurIPS 2021), Dec 2021, Sydney, Australia, Forthcoming.
@inproceedings{yao2021intelligent,
title = {Towards Intelligent Load Balancing in Data Centers},
author = {Zhiyuan Yao and Yoann Desmouceaux and Mark Townsley and Thomas Heide Clausen},
url = {https://www.thomasclausen.net/wp-content/uploads/2021/11/2110.15788.pdf},
year = {2021},
date = {2021-12-01},
urldate = {2021-12-01},
booktitle = {Machine Learning for Systems at 35th Conference on Neural Information Processing Systems (NeurIPS 2021), Dec 2021, Sydney, Australia},
abstract = {Network load balancers are important components in data centers to provide scalable services. Workload distribution algorithms are based on heuristics, e.g., Equal-Cost Multi-Path (ECMP), Weighted-Cost Multi-Path (WCMP) or naive machine learning (ML) algorithms, e.g., ridge regression. Advanced ML-based approaches help achieve performance gain in different networking and system problems. However, it is challenging to apply ML algorithms on networking problems in real-life systems. It requires domain knowledge to collect features from low-latency, high-throughput, and scalable networking systems, which are dynamic and heterogenous. This paper proposes Aquarius to bridge the gap between ML and networking systems and demonstrates its usage in the context of network load balancers. This paper demonstrates its ability of conducting both offline data analysis and online model deployment in realistic systems. The results show that the ML model trained and deployed using Aquarius improves load balancing performance yet they also reveals more challenges to be resolved to apply ML for networking systems.},
keywords = {},
pubstate = {forthcoming},
tppubtype = {inproceedings}
}
Rizzi, Carmine; Yao, Zhiyuan; Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas Heide
Charon: Load-Aware Load-Balancing in P4 Inproceedings
In: 1st Joint International Workshop on Network Programmability & Automation (NetPA) at 17th International Conference on Network and Service Management (CNSM 2021),, 2021.
@inproceedings{rizzi2021charon,
title = {Charon: Load-Aware Load-Balancing in P4},
author = {Carmine Rizzi and Zhiyuan Yao and Yoann Desmouceaux and Mark Townsley and Thomas Heide Clausen},
url = {https://www.thomasclausen.net/wp-content/uploads/2021/11/2110.14389.pdf},
year = {2021},
date = {2021-10-01},
urldate = {2021-01-01},
booktitle = {1st Joint International Workshop on Network Programmability & Automation (NetPA) at 17th International Conference on Network and Service Management (CNSM 2021),},
abstract = {Load-Balancers play an important role in data centers as they distribute network flows across application servers and guarantee per-connection consistency. It is hard however to make fair load balancing decisions so that all resources are efficiently occupied yet not overloaded. Tracking connection states allows to infer server load states and make informed decisions, but at the cost of additional memory space consumption. This makes it hard to implement on programmable hardware, which has constrained memory but offers line-rate performance. This paper presents Charon, a stateless load-aware load balancer that has line-rate performance implemented in P4-NetFPGA. Charon passively collects load states from application servers and employs the power-of-2-choices scheme to make data-driven load balancing decisions and improve resource utilization. Perconnection consistency is preserved statelessly by encoding server ID in a covert channel. The prototype design and implementation details are described in this paper. Simulation results show performance gains in terms of load distribution fairness, quality of service, throughput and processing latency.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
2020
Desmouceaux, Yoann; Enguehard, Marcel; Clausen, Thomas
Joint Monitorless Load-Balancing and Autoscaling for Zero-Wait-Time in Data Centers Journal Article Forthcoming
In: IEEE Transactions on Network and Service Management, Forthcoming.
@article{Desmouceaux2020,
title = {Joint Monitorless Load-Balancing and Autoscaling for Zero-Wait-Time in Data Centers},
author = {Yoann Desmouceaux and Marcel Enguehard and Thomas Clausen},
url = {https://www.epizeuxis.net/wp-content/uploads/2020/12/Joint-Monitorless-Load-Balancing-and-Autoscaling-for-Zero-Wait-Time-in-Data-Centers.pdf},
doi = {10.1109/TNSM.2020.3045059},
year = {2020},
date = {2020-12-31},
journal = {IEEE Transactions on Network and Service Management},
abstract = {Cloud architectures achieve scaling through two main functions: (i) load-balancers, which dispatch queries among replicated virtualized application instances, and (ii) autoscalers, which automatically adjust the number of replicated instances to accommodate variations in load patterns. These functions are often provided through centralized load monitoring, incurring operational complexity. This paper introduces a unified and centralized-monitoring-free architecture achieving both autoscal- ing and load-balancing, reducing operational overhead while increasing response time performance. Application instances are virtually ordered in a chain, and new queries are forwarded along this chain until an instance, based on its local load, accepts the query. Autoscaling is triggered by the last application instance, which inspects its average load and infers if its chain is under- or over-provisioned. An analytical model of the system is derived, and proves that the proposed technique can achieve asymptotic zero-wait time with high (and controlable) probability. This result is confirmed by extensive simulations, which highlight close-to- ideal performance in terms of both response time and resource costs.},
keywords = {},
pubstate = {forthcoming},
tppubtype = {article}
}
2019
Desmouceaux, Yoann; Cordero, Juan Antonio; Clausen, Thomas
Reliable B.I.E.R. with Peer Caching Journal Article
In: IEEE Transactions on Network and Service Management, 2019, ISSN: 1932-4537.
@article{Desmouceaux2019,
title = {Reliable B.I.E.R. with Peer Caching},
author = {Yoann Desmouceaux and Juan Antonio Cordero and Thomas Clausen},
url = {https://www.thomasclausen.net/wp-content/uploads/2019/11/Reliable-B.I.E.R.-with-Peer-Caching.pdf},
doi = {10.1109/TNSM.2019.2950158},
issn = {1932-4537},
year = {2019},
date = {2019-11-01},
journal = {IEEE Transactions on Network and Service Management},
abstract = {Multicast protocols usually require building multicast trees and maintaining state in intermediate routers, incurring operation complexity. B.I.E.R. (Bit-Indexed Explicit Replication) ambitions to alleviate this complexity by allowing for source-driven selection of destinations and state-less packet forwarding. B.I.E.R. can also be used to achieve reliable delivery of content, by retransmitting packet to the exact set of destinations which have missed it. While B.I.E.R.- based reliable multicast exhibits attractive performance attributes, repair of a lost packet is achieved through source retransmissions, which may be costly and even unnecessary if close peers are able to provide a copy of the packet.
Thus, this paper extends the use of reliable B.I.E.R. multicast to allow recoveries from peers, using Segment Routing (SR) to steer retransmission requests through potential candidates. A framework is introduced, which can accommodate different policies for the selection of candidate peers for retransmissions. Simple (both static and adaptive) policies are introduced and analyzed, both (i) theoretically and (ii) by way of simulations in data-center-like and real-world topologies. Results indicate that local peer recovery is able to substantially reduce the overall retransmission traffic, and that this can be achieved through simple policies, where no signaling is required to build a set of candidate peers.},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
Thus, this paper extends the use of reliable B.I.E.R. multicast to allow recoveries from peers, using Segment Routing (SR) to steer retransmission requests through potential candidates. A framework is introduced, which can accommodate different policies for the selection of candidate peers for retransmissions. Simple (both static and adaptive) policies are introduced and analyzed, both (i) theoretically and (ii) by way of simulations in data-center-like and real-world topologies. Results indicate that local peer recovery is able to substantially reduce the overall retransmission traffic, and that this can be achieved through simple policies, where no signaling is required to build a set of candidate peers.
2018
Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas
Zero-Loss Virtual Machine Migration with IPv6 Segment Routing Inproceedings
In: Proceedings 1st SR+SFC Workshop at IEEE CNSM, 2018.
@inproceedings{Desmouceaux2018e,
title = {Zero-Loss Virtual Machine Migration with IPv6 Segment Routing},
author = {Yoann Desmouceaux and Mark Townsley and Thomas Clausen},
url = {https://www.thomasclausen.net/wp-content/uploads/2019/11/Zero-Loss-Virtual-Machine-Migration-with-Segment-Routing.pdf},
year = {2018},
date = {2018-11-01},
booktitle = {Proceedings 1st SR+SFC Workshop at IEEE CNSM},
abstract = {With the development of large-scale data centers, Virtual Machine (VM) migration is a key component for resource optimization, cost reduction, and maintenance. From a network perspective, traditional VM migration mechanisms rely on the hypervisor running at the destination host advertising the new location of the VM once migration is complete. However, this creates a period of time during which the VM is not reachable, yielding packet loss.
This paper introduces a method to perform zero-loss VM migration by using IPv6 Segment Routing (SR). Rather than letting the hypervisor update a locator mapping after VM migration is complete, a logical path consisting of the source and destination hosts is pre-provisioned. Packets destined to the migrating VM are sent through this path using SR, shortly before, during, and shortly after migration – the virtual router on the source host being in charge of forwarding packets locally if the VM migration has not completed yet, or to the destination host otherwise. The proposed mechanism is implemented as a VPP plugin, and feasibility of zero-loss VM migration is demonstrated with various workloads. Evaluation shows that this yields benefits in terms of session opening latency and TCP throughput.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
This paper introduces a method to perform zero-loss VM migration by using IPv6 Segment Routing (SR). Rather than letting the hypervisor update a locator mapping after VM migration is complete, a logical path consisting of the source and destination hosts is pre-provisioned. Packets destined to the migrating VM are sent through this path using SR, shortly before, during, and shortly after migration – the virtual router on the source host being in charge of forwarding packets locally if the VM migration has not completed yet, or to the destination host otherwise. The proposed mechanism is implemented as a VPP plugin, and feasibility of zero-loss VM migration is demonstrated with various workloads. Evaluation shows that this yields benefits in terms of session opening latency and TCP throughput.
Pit--Claudel, Benoit; Desmouceaux, Yoann; Pfister, Pierre; Townsley, Mark; Clausen, Thomas
Stateless Load-Aware Load Balancing in P4 Inproceedings
In: 1st P4 European Workshop (P4EU), 2018.
@inproceedings{Pit--Claudel2018,
title = {Stateless Load-Aware Load Balancing in P4},
author = {Benoit Pit--Claudel and Yoann Desmouceaux and Pierre Pfister and Mark Townsley and Thomas Clausen},
url = {http://www.thomasclausen.net/en/p4eu-2018/},
year = {2018},
date = {2018-09-24},
publisher = {1st P4 European Workshop (P4EU)},
abstract = {Leveraging the performance opportunities offered by programmable hardware, stateless load-balancing architectures allowing line-rate processing are appealing. Moreover, it has been demonstrated that significantly fairer load-balancing can be achieved by an architecture that considers the actual load of application instances when dispatching connection requests. Architectures which maintain per-connection state for resiliency and/or track application load state for fairness are, however, at odds with hardware-imposed memory constraints. Thus, a desirable load-balancer for programmable hardware would be both stateless and able to dispatch queries to application instances according to their current load.
This paper presents SHELL, a stateless application-aware load-balancer combining (i) a power-of-choices scheme using IPv6 Segment Routing to dispatch new flows to a suitable application instance from among multiple candidates, and (ii) the use of a covert channel to record/report which flow was assigned to which candidate in a stateless fashion. In addition, consistent hashing versioning is used to ensure that connections are maintained to the correct application instance, using Segment Routing to “browse” through the history when needed. The stateless design of SHELL makes it suitable for hardware implementation, and this paper describes the implementation of a P4-NetFPGA prototype. A performance evaluation of this SHELL implementation demonstrates throughput and latency characteristics comparable to other stateless load-balancing implementations, while enabling application instance-load-aware dispatching and significantly increasing per-connection consistency resiliency.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
This paper presents SHELL, a stateless application-aware load-balancer combining (i) a power-of-choices scheme using IPv6 Segment Routing to dispatch new flows to a suitable application instance from among multiple candidates, and (ii) the use of a covert channel to record/report which flow was assigned to which candidate in a stateless fashion. In addition, consistent hashing versioning is used to ensure that connections are maintained to the correct application instance, using Segment Routing to “browse” through the history when needed. The stateless design of SHELL makes it suitable for hardware implementation, and this paper describes the implementation of a P4-NetFPGA prototype. A performance evaluation of this SHELL implementation demonstrates throughput and latency characteristics comparable to other stateless load-balancing implementations, while enabling application instance-load-aware dispatching and significantly increasing per-connection consistency resiliency.
Desmouceaux, Yoann; Toubaline, Sonia; Clausen, Thomas
Flow-Aware Workload Migration in Data Centers Journal Article
In: Springer - Journal of Network and Systems Management (JONS), 2018.
@article{Desmouceaux2018a,
title = {Flow-Aware Workload Migration in Data Centers},
author = {Yoann Desmouceaux and Sonia Toubaline and Thomas Clausen},
url = {https://link.springer.com/epdf/10.1007/s10922-018-9452-5?author_access_token=qm_40d91CsNLlZ_vZ0tZFPe4RwlQNchNByi7wbcMAY4xSrvbLplDMLQ3AN9vWEoUIxtZAIdnOGAzJH5W3YOrbGteOLvaEXsEE1xFv66lVxTKlL40BAS25fsaLf8w1RJAvY69owHWqhJkTmAZpvdCkQ%3D%3D
https://www.epizeuxis.net/wp-content/uploads/2018/03/jons-2018.pdf},
doi = {10.1007/s10922-018-9452-5},
year = {2018},
date = {2018-03-10},
journal = {Springer - Journal of Network and Systems Management (JONS)},
abstract = {In data centers, subject to workloads with heterogeneous (and sometimes short) lifetimes, workload migration is a way of attaining a more efficient utilization of the underlying physical machines.
To not introduce performance degradation, such workload migration must take into account not only machine resources, and per-task resource requirements, but also application dependencies in terms of network communication.
This articleformat presents a workload migration model capturing all of these constraints.
A linear programming framework is developed allowing accurate representation of per-task resources requirements and inter-task network demands. Using this, a multi-objective problem is formulated to compute a re-allocation of tasks that (i) maximizes the total inter-task throughput, while (ii) minimizing the cost incurred by migration and (iii) allocating the maximum number of new tasks.
A baseline algorithm, solving this multi-objective problem using the $epsilon$-constraint method is proposed, in order to generate the set of Pareto-optimal solutions. As this algorithm is compute-intensive for large topologies, a heuristic, which computes an approximation of the Pareto front, is then developed, and evaluated on different topologies and with different machine load factors. These evaluations show that the heuristic can provide close-to-optimal solutions, while reducing the solving time by one to two order of magnitudes.
},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
To not introduce performance degradation, such workload migration must take into account not only machine resources, and per-task resource requirements, but also application dependencies in terms of network communication.
This articleformat presents a workload migration model capturing all of these constraints.
A linear programming framework is developed allowing accurate representation of per-task resources requirements and inter-task network demands. Using this, a multi-objective problem is formulated to compute a re-allocation of tasks that (i) maximizes the total inter-task throughput, while (ii) minimizing the cost incurred by migration and (iii) allocating the maximum number of new tasks.
A baseline algorithm, solving this multi-objective problem using the $epsilon$-constraint method is proposed, in order to generate the set of Pareto-optimal solutions. As this algorithm is compute-intensive for large topologies, a heuristic, which computes an approximation of the Pareto front, is then developed, and evaluated on different topologies and with different machine load factors. These evaluations show that the heuristic can provide close-to-optimal solutions, while reducing the solving time by one to two order of magnitudes.
Desmouceaux, Yoann; Clausen, Thomas; Cordero, Juan Antonio; Townsley, W. Mark
Reliable Multicast with B.I.E.R. Journal Article
In: IEEE/KICS Journal of Communications and Networks (JCN), 20 (2), pp. 182-197, 2018.
@article{Desmouceaux0000,
title = {Reliable Multicast with B.I.E.R.},
author = {Yoann Desmouceaux and Thomas Clausen and Juan Antonio Cordero and W. Mark Townsley },
url = {http://www.thomasclausen.net/wp-content/uploads/2018/03/jcn-2018.pdf},
year = {2018},
date = {2018-02-28},
journal = {IEEE/KICS Journal of Communications and Networks (JCN)},
volume = {20},
number = {2},
pages = {182-197},
abstract = {Inter-network multicast protocols, which build and maintain multicast trees, incur both explicit protocol signalling, and maintenance of state in intermediate routers in the network. B.I.E.R. (Bit-Indexed Explicit Replication) is a technique which can provide a multicast service yet removes such complexities: in- termediate routers are unencumbered by group management, and no per-group state is to be maintained.
This paper explores the use of B.I.E.R. as a basis for develop- ing an efficient and reliable multicast mechanism, where redun- dant traffic is avoided, essential traffic is forwarded along shortest paths, and no per-flow state is required in intermediate routers. Evaluated by way of both an analytical model and network sim- ulation both in generic and in real network topologies with vary- ing background traffic loads, the proposed B.I.E.R.-based reliable multicast mechanism exhibits attractive performance attributes: it attains delivery success rates as high as any other reliable multicast service, but with significantly better link utilisation and no per-flow or per-group state in intermediate routers of the network.},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
This paper explores the use of B.I.E.R. as a basis for develop- ing an efficient and reliable multicast mechanism, where redun- dant traffic is avoided, essential traffic is forwarded along shortest paths, and no per-flow state is required in intermediate routers. Evaluated by way of both an analytical model and network sim- ulation both in generic and in real network topologies with vary- ing background traffic loads, the proposed B.I.E.R.-based reliable multicast mechanism exhibits attractive performance attributes: it attains delivery success rates as high as any other reliable multicast service, but with significantly better link utilisation and no per-flow or per-group state in intermediate routers of the network.
Desmouceaux, Yoann; Pfister, Pierre; Tollet, Jérôme; Townsley, W. Mark; Clausen, Thomas
6LB: Scalable and Application-Aware Load Balancing with Segment Routing Journal Article
In: IEEE/ACM Transactions on Networking, 26 (2), pp. 819-834, 2018, ISSN: 1063-6692.
@article{Desmouceaux2018,
title = {6LB: Scalable and Application-Aware Load Balancing with Segment Routing},
author = {Yoann Desmouceaux and Pierre Pfister and Jérôme Tollet and W. Mark Townsley and Thomas Clausen},
url = {http://www.thomasclausen.net/wp-content/uploads/2018/02/2018-IEEE-Transactions-on-Networking-6LB-Scalable-and-Application-Aware-Load-Balancing-with-Segment-Routing.pdf},
doi = {10.1109/TNET.2018.2799242},
issn = {1063-6692},
year = {2018},
date = {2018-02-15},
journal = {IEEE/ACM Transactions on Networking},
volume = {26},
number = {2},
pages = {819-834},
abstract = {Network load-balancers generally either do not take application state into account, or do so at the cost of a central- ized monitoring system. This paper introduces a load-balancer running exclusively within the IP forwarding plane, i.e. in an application protocol agnostic fashion – yet which still provides application-awareness and makes real-time, decentralized deci- sions. To that end, IPv6 Segment Routing is used to direct data packets from a new flow through a chain of candidate servers, until one decides to accept the connection, based solely on its local state. This way, applications themselves naturally decide on how to fairly share incoming connections, while incurring minimal network overhead, and no out-of-band signaling. A consistent hashing algorithm, as well as an in-band stickiness protocol, allow for the proposed solution to be able to be reliably distributed across a large number of instances.
Performance evaluation by means of an analytical model and actual tests on different workloads (including a Wikipedia replay as a realistic workload) show significant performance benefits in terms of shorter response times, when compared to a traditional random load-balancer. In addition, this paper introduces and compares kernel bypass high-performance implementations of both 6LB and a state-of-the-art load-balancer, showing that the significant system-level benefits of 6LB are achievable with a negligible data-path CPU overhead.},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
Performance evaluation by means of an analytical model and actual tests on different workloads (including a Wikipedia replay as a realistic workload) show significant performance benefits in terms of shorter response times, when compared to a traditional random load-balancer. In addition, this paper introduces and compares kernel bypass high-performance implementations of both 6LB and a state-of-the-art load-balancer, showing that the significant system-level benefits of 6LB are achievable with a negligible data-path CPU overhead.
2017
Desmouceaux, Yoann; Pfister, Pierre; Tollet, Jerome; Townsley, W. Mark; Clausen, Thomas
SRLB: The Power of Choices in Load Balancing with Segment Routing Inproceedings
In: In Proceedings of the 37th IEEE International Conference on Distributed Computing Systems (ICDCS), 2017.
@inproceedings{Desmouceaux2017b,
title = {SRLB: The Power of Choices in Load Balancing with Segment Routing},
author = {Yoann Desmouceaux and Pierre Pfister and Jerome Tollet and W. Mark Townsley and Thomas Clausen},
url = {http://www.thomasclausen.net/wp-content/uploads/2017/05/camera-ready-ieeepdfexpress.pdf},
year = {2017},
date = {2017-06-05},
booktitle = {In Proceedings of the 37th IEEE International Conference on Distributed Computing Systems (ICDCS)},
abstract = {Network load-balancers generally either do not take application state into account, or do so at the cost of a central- ized monitoring system. This paper introduces a load-balancer running exclusively within the IP forwarding plane, i.e. in an application protocol agnostic fashion – yet which still provides application-awareness and makes real-time, decentralized deci- sions. To that end, IPv6 Segment Routing is used to direct data packets from a new flow through a chain of candidate servers, until one decides to accept the connection, based on its local state. This way, applications themselves naturally decide on how to share incoming connections, while incurring minimal network overhead, and no out-of-band signaling.
Tests on different workloads – including realistic workloads such as replaying actual Wikipedia access traffic towards a set of replica Wikipedia instances – show significant performance benefits, in terms of shorter response times, when compared to a traditional random load-balancer.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
Tests on different workloads – including realistic workloads such as replaying actual Wikipedia access traffic towards a set of replica Wikipedia instances – show significant performance benefits, in terms of shorter response times, when compared to a traditional random load-balancer.