Introduction à HDDS
HDDS (High-performance DDS) est une implémentation moderne et open-source du standard Data Distribution Service (DDS), écrite entièrement en Rust. Elle fournit un middleware publish-subscribe permettant l'échange de données en temps réel, scalable et fiable entre applications distribuees.
Caractéristiques principales
Implémentation en Rust pur
HDDS est écrit de zéro en Rust, offrant :
- Sûreté mémoire sans ramasse-miettes
- Thread safety garanti à la compilation
- Abstractions à coût zéro pour des performances maximales
- Aucun comportement indéfini par conception
Conforme aux standards
HDDS implémente les standards OMG suivants :
- DDS 1.4 - Spécification Data Distribution Service
- RTPS 2.5 - Protocole Real-Time Publish Subscribe
- XTypes 1.3 - Types extensibles pour le support de types dynamiques
- DDS Security 1.1 - Authentification, chiffrement et contrôle d'accès
Haute performance
Conçu pour les applications temps réel exigeantes :
- Latence sub-microseconde avec des chemins de données zéro-copy
- Millions de messages par seconde en débit
- Structures de données lock-free pour des performances prévisibles
- Allocation mémoire NUMA-aware pour les systèmes multi-socket
Interopérabilité
HDDS peut communiquer avec d'autres implémentations DDS :
- FastDDS (eProsima)
- RTI Connext DDS
- CycloneDDS (Eclipse)
- OpenDDS
Consultez notre guide d'interopérabilité pour des instructions détaillées.
Cas d'usage
HDDS est idéal pour :
| Domaine | Cas d'usage |
|---|---|
| Robotique | Middleware ROS2, coordination d'essaim, fusion de capteurs |
| Vehicules autonomes | Communication V2X, distribution de données capteurs |
| IoT industriel | Automatisation d'usine, maintenance predictive |
| Aerospatial et Defense | Systèmes critiques, télémétrie temps réel |
| Services financiers | Données de marche basse latence, routage d'ordres |
| Simulation | Simulation distribuée, jumeaux numériques |
Architecture
HDDS suit une architecture en couches :
+---------------------------------------------------------+
| Couche Application |
| (Votre code, ROS2, apps custom) |
+---------------------------------------------------------+
| Couche DCPS |
| (DomainParticipant, Publisher, Subscriber, Topic, QoS) |
+---------------------------------------------------------+
| Couche RTPS |
| (Discovery, Writers, Readers, History Cache) |
+---------------------------------------------------------+
| Couche Transport |
| (UDP, TCP, Shared Memory) |
+---------------------------------------------------------+
Pour démarrer
Prêt à vous lancer ? Voici votre parcours :
- Qu'est-ce que DDS ? - Apprendre les fondamentaux
- Installation - Installer HDDS sur votre système
- Hello World C++ - Tutoriel pub/sub C++
- Hello World Rust - Tutoriel pub/sub Rust
Licence
HDDS est distribué sous licence Apache License 2.0, ce qui le rend adapté aux projets commerciaux comme open-source.
Support
- Issues : git.hdds.io/hdds/hdds/issues
- Contact : contact@hdds.io
- Documentation : Vous y etes deja !