Software-defined and programmable networking is a key enabling technology to support 6G in achieving their promises of increased scalability and flexibility at a lower cost. Deep network programmability, that is the ability to program the network fabric both vertically (control and data plane) and horizontally (end to end), is expected to characterize the new generation of mobile networks (6G), currently under development, towards supporting extreme performance requirements and service-specific operations.
The objective of the PhD project is to develop a framework consisting of a set of programming language methodologies and tools for the specification, verification and generation of software and configurations for programmable data planes. Making data-planes programmable (e.g., using the P4 language) enables unprecedented network flexibility, often at the cost of robustness and security.
These challenges require domain-specific, formally verified, and empirically tested solutions that curtail the underlying complexity through the introduction of layers of abstraction. The candidate will contribute to the design and evolution of domain-specific languages, software verification techniques and programming environments that enable network operators to deploy verified programs with CI/CD pipelines for programmable data planes. To achieve this, the candidate will study, develop and apply programming language techniques such as static and runtime verification, formal specification, and language design, translation and implementation.
The research is conducted within the scope of the Future Network Services (FNS -
https://futurenetworkservices.nl/): the 6G flagship project for the Netherlands where 60 leading ICT businesses, mobile operators, semiconductor manufacturers and research institutions, have united to spearhead the development of specific aspects of 6G: Software antennas, AI-driven network software, and groundbreaking 6G applications.
You will be embedded in the MNS group. The group focuses its research on the fundamental architectural problems that arise from the interconnection of systems and of data flows. We look at the emerging architectures that can support the operations of the future Internet. More information can be found at:
https://mns-research.nl/.
You will be collaborating closely with the CCI research group. The CCI group focuses on the complexity of man-made systems on all scales. The challenges of such systems are addressed by research into distributed data processing, programmable networks, policy reasoning and normative control, hardware and cryptographic security, and programming languages and software language engineering. More information can be found at:
https://cci-research.nl/Tasks and responsibilities: - Evaluate and further develop of domain-specific languages for programmable data planes (such as P4) and formal verification techniques for network configurations, software and protocols;
- develop and evaluate CI/CD environments and pipelines for deeply programmable networks, generating fast, correct, secure and debug-able network software;
- empirically validate the proposed approaches by developing and demonstrating proof of concepts;
- access a unique state-of-the-art testbed to also put theory to practice and be at the forefront of the Dutch 6G national ecosystem.;
- become active in the research community and collaborate with other institutes and/or companies that are part of the project;
- publish and present work regularly at international conferences, workshops, and journals;
- assist in teaching activities (labs) and in supervising bachelor and master students.