Existe-t-il vraiment un "protocole de communication USB"?

Selon Wikipedia , USB:

Définit les câbles, connecteurs et protocoles de communication utilisés dans un bus pour la connexion, la communication et l'alimentation électrique entre ordinateurs et appareils électroniques

Mais existe-t-il vraiment un "protocole de communication USB " ? Mon compréhension est que:

  1. Vous connectez un périphérique USB à une machine (par exemple, Ubuntu ou tout type de Linux)
  2. Linux trouve le périphérique pilote pour ce périphérique (en quelque sorte - bonus si vous le savez!) et le charge
  3. L'appareil est maintenant connecté sous /dev/theDevice
  4. Les applications de l'espace utilisateur peuvent désormais lire/écrire sur /dev/theDevice et le pilote gère les E/S de bas niveau sur le périphérique / matériel sous-jacent

Pour moi, nulle part dans ce flux n'apparaît un "protocole de communication USB". Si ma compréhension est correcte, l'USB n'est que le câble et la connexion électrique entre le PC et l'appareil.

Ai-je tort ici? USB implémente-t-il réellement une sorte de protocole de bas niveau qui souligne le flux ci-dessus? Si oui, de quoi s'agit-il et comment fonctionne-t-il à une vue de 30 000 pieds?

demandé sur