Aller au contenu principal

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 :

DomaineCas d'usage
RobotiqueMiddleware ROS2, coordination d'essaim, fusion de capteurs
Vehicules autonomesCommunication V2X, distribution de données capteurs
IoT industrielAutomatisation d'usine, maintenance predictive
Aerospatial et DefenseSystèmes critiques, télémétrie temps réel
Services financiersDonnées de marche basse latence, routage d'ordres
SimulationSimulation 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 :

  1. Qu'est-ce que DDS ? - Apprendre les fondamentaux
  2. Installation - Installer HDDS sur votre système
  3. Hello World C++ - Tutoriel pub/sub C++
  4. 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