Art-Net 3 : De A à Z Chapitre I : Introduction

Je profites des vacances pour écrire une nouvelle série de tutos, nous allons temporairement mettre la GrandMA2 de côté. Nous allons découvrir ensemble les fondements de l’Art-Net 3, partir dans les entrailles de ce protocole (oui, nous pouvons parler de protocole). Nous découvrirons que l’Art-Net n’est pas uniquement un protocole pour le DMX et qu’il peut couvrir bien d’autres cas. L’ensemble des éléments proviennent de la “RFC” officielle décrivant le protocole Art-Net 3, je n’invente rien.

L’Art-Net

C’est un protocole ethernet basé sur la pile TCP/IP, il permet le transfert de grosses données DMX512 à travers une zone utilisant des technologies de réseau standard. La rédaction de ce protocole est sur base des échanges avec les constructeurs et drivé par l’Artistic Licence membre du Plasa.

Un peu de vocabulaire avant de commencer

Lorsqu’on parle d’Art-Net on entend un peu tout et n’importe quoi… mais il faut garder en tête que chaque terme à son importance :

  • Node : Un appareil qui translate des paquets DMX512 depuis ou vers un réseau Art-Net
  • Port-Address : Une des 32.768 adresses disponibles à travers lesquelles il est possible de transmettre un paquet DMX512, il s’agit de la combinaison : Net + Sub-Net + Universe
  • Net : Un groupe de 16 subs-nets consécutifs ou 256 univers. Il y a 128 nets au total
  • Sub-Net : Une groupe de 16 univers consécutifs (à ne pas confondre avec le masque de sous-réseau ou subnet mask)
  • Universe : Permet d’envoyer une simple frame DMX512 de 512 valeurs, c’est l’équivalent d’un simple réseau DMX512
  • Kiloverse : Un groupe de 1024 univers.
  • Controller : Un logiciel ou appareil qui génère des données, exemple une console est un controller.
  • IP : On parlera de l’adresse IP que l’on connait actuellement et qui régie nos réseaux
  • Subnet Mask : Permet de définir l’adresse et la configuration du réseau IP
  • Directed Broadcast : Utilisé lors de l’init et de la négociation d’un contrôleur. Un paquet est envoyé en broadcast afin d’identifier l’ensemble des nodes. Cela permet la découverte du réseau Art-Net.

Implémentation sur ethernet

Toutes les communications Art-Net sont basées sur l’UDP (User Datagram Protocol), il s’agit de l’un des principaux protocole de la couche transport du protocole TCP/IP. On parle de la couche 4 du modèle OSI. Ce protocole est détaillé dans la RFC 768. Pour résumer : ce protocole à l’avantage d’être “très simple”, c’est à dire qu’une entité peut communiquer avec une autre à partir du moment où elle partage ce protocole à travers une adresse IP et un port. Il fonctionne sans négociation (vs TCP) ce qui implique qu’UDP n’est pas forcement capable de garantir la bonne réception des paquets et encore moins leur ordre. Il existe néanmoins une somme de contrôle sur chaque paquet (obligatoire en IPv6, optionnel en IPv4).

Voici à quoi peut ressembler un paquet UDP, c’est très simple :

udp

C’est dans la zone données que nous allons retrouver notre trame Art-Net, nous verrons son format un peu plus tard. L’avantage de l’UDP est qu’il est très performant et certaines mécaniques sont présentes pour anticiper les erreurs. Nous verrons aussi cela un peu plus tard.

Chaque node Art-Net possède une adresse IP, par défaut un appareil Art-Net démarre avec une adresse IP de classe A. Cela permet de s’entendre sur une typologie de réseau et de se passer d’un serveur DHCP (Dynamic Host Configuration Protocol). Néanmoins, il peut être utile d’adresser un node avec une adresse IP particulière pour que ce ne soit pas le bazard. Lors de l’identification d’un node celui-ci indique si il supporte le DHCP, si c’est le cas l’utilisation d’adresse pourra se faire via le protocole DHCP.

L’adresse IP étant de classe A, il s’agit donc d’un réseau qui doit être fermé et non routé vers Internet. En général, lorsqu’un matériel Art-Net démarre, une adresse IP du type 2.?.?.? sera attribué sur le réseau 255.0.0.0. Une stratégie d’adressage existe afin d’éviter les collisions avec les différents constructeurs. Elle se base sur l’adresse MAC (Media Access Control ou simplement adresse matérielle, unique au matériel). Supposons l’encodage d’une adresse MAC sous la forme u:v:w:x:y:z (exemple : 12:45:78:98:34:76) avec le code OEM 0x0010 (code identifiant du constructeur).

artnet_adress

Ce qui donnera d’après la matrice précédente :

  • Bloc IP A : (0x98 en hexa + 0 +16) = 168 en décimal
  • Bloc IP B : (0x34 en hexa) = 52 en décimal
  • Bloc IP C : (0x76 en hexa) = 118 en décimal
  • Soit l’adresse IP : 2.168.52.118

Cette partie est assez complexe et certaines bases réseau sont nécessaires, néanmoins vous pouvez-vous abstraire de la méthodologie de calcul de l’adresse IP, il faut juste retenir que par défaut une adresse IP de classe A est affectée et que si vous voulez la changer c’est possible via DHCP.

Deux typologies de réseau

L’Art-Net autorise deux typologies de réseau :

  • Peer To Peer : Réseau non managé, pas besoin de contrôleur, toutes les données sont directement diffusez en mode broadcast.
  • Controller To Peer : Dans ce mode, les contrôleurs peuvent envoyer des paquets à certains nodes uniquement, c’est un mode un peu plus intelligent.

Nous aurons le plaisir de revenir sur ces notions lors des chapitres suivants, en attendant vous pouvez passer au chapitre II.

 

corentin

View more posts from this author
2 thoughts on “Art-Net 3 : De A à Z Chapitre I : Introduction
  1. Corentin

    Bonjour,
    Je constate une erreur dans vos explications. Les réseaux en classe A peuvent être route sur internet, le seul soucis c’est que vous ne précisez pas qu’une adresse IP peut être public (vendu par des FAI pour circulé sur internet) ou privé (plage en classe A qui est en 10.0.0.0 jusqu’à 10.255.255.255 et qui est adressable par exemple sur un réseau local, mais il sera impossible de naviguer sur Internet avec celle-ci par elle n’est pas unique à l’échelle du réseau internet)
    Donc Art-net est basé sur une structure en 2.0.0.0 car la plus part des réseaux art-net son sur des réseaux dédié et donc la classe A est la plus efficace en terme de possibilités de “machine” (node, etc)
    Mais aussi pour ne pas avoir de conflit avec un réseau adressé en classe privé.
    Je recommande quand même de changé les adresses

     
    Reply
    1. corentin

      Bonjour,

      Effectivement j’ai du prendre un raccourcis pour vulgariser un peu. Vous avez complètement raison je vais essayer d’adapter un peu l’article.

       
      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Advertisment ad adsense adlogger