- Task : Time Sensitive Routing for Industrial Automation and Robotics
- Preferred location : Lille (France), Plovdiv (Bulgaria)
- Other locations : Paris (France), Munich (Germany), Stuttgart (Germany)
- Type : Internship or Job
- Function : Developer
- Duration : 3-6 Months/Permanent
- Reference : Offer-2020-TSR
Nexedi is looking for a developer whose task is to extend Juliusz Chroboczek's babel routing protocol (RFC 6126) and try to create a new distance vector which guarantees latency and jitter between two selected IPv6 nodes of a routed network. One of our objectives is to exhibit pseudo-deterministic behaviour suitable for Industry 4.0 or radio networks based on top of generic, non-deterministic hardware (network adapters, switches, servers, etc.) and software (Linux kernel). We also include in our scope deterministic micro-controllers (ex. ESP32, STM32) that are used at the end-points.
The result will be integrated to re6st (Beaugnon, Muchembled et al. 2012) as Open Source / Free Software.
Current version of babel supports latency minimisation, with no guarantee.
Current approaches for Time Sensitive Networking (TSN) are often based on Layer-2 networks: 802.1 TSN for industrial automation and IEEE 1588 v2 for virtual radio access networks (4G/5G). Those approaches are however incompatible with a heterogeneous networks which combines multiple Layer-2 technologies (Ethernet, Wifi, NR, etc.).
We are thus looking for a TSN approach at Layer-3 which can guarantee latency over heterogeneous networks. One possible idea consists of modelling latency and jitter behaviour of each component of the network (adapter, switch, queues of Linux kernel, micro-controller, etc.) then rely on time division protocols to create virtual circuits between pairs of IPv6 addresses. We expect to exhibit a distributed algorithm based on an appropriate distance vector.
- Master IPv6
- Master Babel (RFC6126)
- Master Edge Computing based on SlapOS
- Master AccessTSN
- Master Olimex open source hardware
- Master Edge-core open networking switches
- Contribute to research in pseudo-deterministic networks
- Contribute to Edge Computing projects for industry-leading clients
- Contribute to open source projects such as Babel, re6st, AccessTSN, PREMTP_RT, etc.
- Contribute to research projects to build the future of our open source stack
- Passionate, self-driven.
- Willingness to contribute to an open source ecosystem and the Free Software community.
- Very good skills in GNU/Linux operating system.
- Very good programming skills in C.
- Good software development skills (version control, testing, debugging).
- Good command of English.
Nexedi has been developing free software since launching in 2001. We are maintaining software solutions (see our full stack with over 10 million lines of code including:
- ERP5 - ERP/CRM/DMS/e-business
- Slapos - Cloud Orchestration and deployment
- Wendelin - Big Data/Machine Learning
- Neo - Distributed Storage
- Resist - Resilient Mesh Network
- Renderjs - Promise based component framework
- jIO - Virtual File System and storage connector
- NayuOS - Private OS
- OfficeJs - Private, offline capable productivity AppStore
Besides participating in various research initivatives Nexedi provides customisation services for solutions with implementations being used by corporations such as Airbus, Sanef, Mitsubishi all around the world. We follow the principles of reflexive programming, enforce strict unit testing and emphasize using the latest web technologies.
Our economic model requires each developer to fulfill R&D objectives aiming at delivering short to medium sized solutions to customer requirements and progressing the evolution of our software stack. This way we try to be innovative and fund long term free software without the need for venture capital.
… or you can apply by emailing firstname.lastname@example.org.