W. Mark Townsley
Professeur Charge de Cours, Cisco Fellow & Vice President
Mark joined Cisco in 1997 as a software engineer, focused on remote access and tunneling protocols in Cisco’s IOS, as well as scaling of the core IOS virtual interface system to support the rapid growth of dial-up and broadband connectivity in the 1990s and early 2000s. Mark is well-known in the Internet Protocol community as well, twice-nominated for terms as IETF Internet Area Director (2005-2009), Layer 2 Tunneling Protocol (L2TP) Working Group Chair (1999-2005), Internet Engineering Steering Group (IESG) Liaison to the Internet Architecture Board (IAB), IETF Pseudowire Working Group Technical Advisor, and is currently co-Chair of the IETF Home Networking Working Group (Homenet). On faculty at Ecole Polytechnique in Paris, Mark also serves as “Professeur chargé de cours”, teaching and mentoring some of the brightest undergraduate and graduate engineering students in France. Before Joining Cisco, Mark held engineering and research positions at IBM, the Institute for Systems Research (ISR) and the Center for Satellite and Hybrid Communications Networks at the University of Maryland.
Mark holds a Bachelor of Science (summa cum laude) degree in Electrical Engineering from Auburn University and a Master’s degree in Computer Science (magna cum laude) from the Johns Hopkins University Applied Physics Laboratory.
2022
Yao, Zhiyuan; Desmouceaux, Yoann; Cordero, Juan Antonio; Townsley, Mark; Clausen, Thomas Heide
Aquarius-Enable Fast, Scalable, Data-Driven Service Management in the Cloud Journal Article
In: IEEE Transactions on Network and Service Management, 2022, ISSN: 1932-4537.
@article{nokeyi,
title = {Aquarius-Enable Fast, Scalable, Data-Driven Service Management in the Cloud},
author = {Zhiyuan Yao and Yoann Desmouceaux and Juan Antonio Cordero and Mark Townsley and Thomas Heide Clausen},
url = {https://ieeexplore.ieee.org/abstract/document/9852806},
doi = {10.1109/TNSM.2022.3197130},
issn = {1932-4537},
year = {2022},
date = {2022-12-01},
urldate = {2022-12-01},
journal = {IEEE Transactions on Network and Service Management},
abstract = {In order to dynamically manage and update networking policies in cloud data centers, Virtual Network Functions (VNFs) use, and therefore actively collect, networking state information -and in the process, incur additional control signaling and management overhead, especially in larger data centers. In the meantime, VNFs in production prefer distributed and straightforward heuristics over advanced learning algorithms to avoid intractable additional processing latency under high-performance and low-latency networking constraints. This paper identifies the challenges of deploying learning algorithms in the context of cloud data centers, and proposes Aquarius to bridge the application of machine learning (ML) techniques on distributed systems and service management. Aquarius passively yet efficiently gathers reliable observations, and enables the use of ML techniques to collect, infer, and supply accurate networking state information -without incurring additional signaling and management overhead. It offers fine-grained and programmable visibility to distributed VNFs, and enables both open-and close-loop control over networking systems. This paper illustrates the use of Aquarius with a traffic classifier, an auto-scaling system, and a load balancer -and demonstrates the use of three different ML paradigms -unsupervised, supervised, and reinforcement learning, within Aquarius, for network state inference and service management. Testbed evaluations show that Aquarius suitably improves network state visibility and brings notable performance gains for various scenarios with low overhead.},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
Yao, Zhiyuan; Desmouceaux, Yoann; Cordero, Juan Antonio; Townsley, Mark; Clausen, Thomas Heide
Efficient Data-Driven Network Functions Proceedings Article
In: 30th International Symposium on the Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS 2022), 2022.
@inproceedings{nokeyg,
title = {Efficient Data-Driven Network Functions},
author = {Zhiyuan Yao and Yoann Desmouceaux and Juan Antonio Cordero and Mark Townsley and Thomas Heide Clausen},
url = {https://arxiv.org/pdf/2208.11385},
year = {2022},
date = {2022-10-18},
urldate = {2022-10-18},
booktitle = {30th International Symposium on the Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS 2022)},
abstract = {Cloud environments require dynamic and adaptive networking policies. It is preferred to use heuristics over advanced learning algorithms in Virtual Network Functions (VNFs) in production becuase of high-performance constraints. This paper proposes Aquarius to passively yet efficiently gather observations and enable the use of machine learning to collect, infer, and supply accurate networking state information-without incurring additional signalling and management overhead. This paper illustrates the use of Aquarius with a traffic classifier, an autoscaling system, and a load balancer-and demonstrates the use of three different machine learning paradigms-unsupervised, supervised, and reinforcement learning, within Aquarius, for inferring network state. Testbed evaluations show that Aquarius increases network state visibility and brings notable performance gains with low overhead.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
2021
Yao, Zhiyuan; Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas Heide
Towards Intelligent Load Balancing in Data Centers Proceedings Article
In: Machine Learning for Systems at 35th Conference on Neural Information Processing Systems (NeurIPS 2021), Dec 2021, Sydney, Australia, 2021.
@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 = {published},
tppubtype = {inproceedings}
}
Rizzi, Carmine; Yao, Zhiyuan; Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas Heide
Charon: Load-Aware Load-Balancing in P4 Proceedings Article
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}
}
2018
Desmouceaux, Yoann; Townsley, Mark; Clausen, Thomas
Zero-Loss Virtual Machine Migration with IPv6 Segment Routing Proceedings Article
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 Proceedings Article
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; 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), vol. 20, no. 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, vol. 26, no. 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},
urldate = {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 Proceedings Article
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.
2016
Augustin, Aloys; Yi, Jiazi; Clausen, Thomas; Townsley, Mark
A Study of LoRa: Long Range & Low Power Networks for the Internet of Things Journal Article
In: MDPI Sensors, vol. 16, no. 9, pp. 1466, 2016, ISSN: 1424-8220, ((5 yr Impact Factor: 2.437)).
@article{Augustin2016,
title = {A Study of LoRa: Long Range & Low Power Networks for the Internet of Things},
author = {Aloys Augustin and Jiazi Yi and Thomas Clausen and Mark Townsley},
url = {http://www.thomasclausen.net/2016-a-study-of-lora-long-range-low-power-networks-for-the-internet-of-things/},
doi = {10.3390/s16091466},
issn = {1424-8220},
year = {2016},
date = {2016-09-09},
journal = {MDPI Sensors},
volume = {16},
number = {9},
pages = {1466},
abstract = {LoRa is a long-range, low-power, low-bitrate, wireless telecommunications system, promoted as an infrastructure solution for the Internet of Things: end-devices use LoRa across a single wireless hop to communicate to gateway(s), connected to the Internet and which act as transparent bridges and relay messages between these end-devices and a central network server. This paper provides an overview of LoRa and an in-depth analysis of its functional components. The physical and data link layer performance is evaluated by field tests and simulations. Based on the analysis and evaluations, some possible solutions for performance enhancements are proposed.},
note = {(5 yr Impact Factor: 2.437)},
keywords = {},
pubstate = {published},
tppubtype = {article}
}