950 likes | 1.09k Views
La communication s érielle. Généralités. Communication série. La communication série consiste en l’envoie , à un moment donnée, d’un seul bit par l’intermédiaire d’une seule ligne. La chaîne de bits envoyée est codée électriquement selon une méthode particulière appelée « protocole ».
E N D
Communication série • La communication série consiste en l’envoie, à un moment donnée, d’un seul bit par l’intermédiaire d’une seule ligne. La chaîne de bits envoyée est codée électriquement selon une méthode particulière appelée « protocole ». • S’oppose à la communication parallèle qui consiste à envoyer un groupe de plusieurs bits simultanément.
Communication asynchrone • L’émetteur et le récepteur ont des horloges séparées qui ne sont pas synchronisées avec le temps. • Cela implique que les horloges internes des ports de communications soient configurés à la même fréquence. Mais même avec une configuration identique, les horloges peuvent se décaler l’une par rapport à l’autre durant la transmission. T1 T2 T2
Communication synchrone • Les 2 systèmes sont synchronisés. Le signal de synchronisation peut être envoyé: • Sur une ligne séparée; • Exemple: le SCK du SPI. • Codé avec les données. T1 T2 T2 Horloge Maître Esclave
Codage de Manchester • On mélange l’horloge avec le signal à transmettre. • Donnée : 0 0 1 1 • Horloge: 0 1 0 1 • Signal : 0 1 1 0
Communication en « simplex » • L’émetteur et le récepteur sont toujours les mêmes. Donc un seul fil est nécessaire pour transmettre les données. (plus un second pour la masse). E R
Communication en « half duplex » • L’émetteur et le récepteur peuvent changer. Un seul fil est utilisé pour transmettre les données. (plus un second pour la masse). Il faut qu’un seul des deux ordinateurs soit l’émetteur à un temps T. E/R E/R
Communication en « full duplex » • L’émetteur et le récepteur peuvent changer. Deux fils sont utilisés pour transmettre les données. (plus un troisième pour la masse). Les deux ordinateurs peuvent être l’émetteur et le récepteur simultanément. E/R E/R
Réseau multipoint • Plusieurs périphériques sont connectés au réseau. • La figure est une topologie en bus, mais on retrouve aussi des topologies en étoile, en anneau, en arbre, … E/R E/R E/R E/R
Réseau multipoint • Plusieurs équipements étant connectés au réseau, il faut trouver un moyen de s’assurer de la fonctionnalité du réseau. • L’accès au réseau peut être fait par: • Polling: • Un équipement est le maitre du réseau et il consulte les équipements esclaves pour vérifier s’ils ont un message à transmettre. • Une panne du maitre entraine la paralysie du réseau. • Les esclaves doivent passer par le maitre pour communiquer entre eux. • Exemple: Profibus.
Réseau multipoint • TDMA – Time Division Multiple Access: • Un équipement est le maitre du réseau et il émet un signal de synchronisation. • Ensuite, chaque équipement se voit alloué un temps précis et peut transmettre une quantité de données de taille fixe. • Cette approche est plus efficace que le polling (moins de messages échangés). • Exemple: Bluetooth
Réseau multipoint • Token Ring (Réseau à partage de jeton) : • La topologie du réseau peut être en anneau, mais ce n’est pas obligatoire. • Circulation d’un jeton entre les équipements quand il n’y a pas de messages échangés. • L’équipement désirant envoyer un message garde le jeton, émet son message et passe le jeton au suivant. • C’est une connexion déterminisme, car chaque équipement à accès au jeton. • Problèmes si le jeton est perdu ou dupliqué. • Exemple: FiberDistributed Data Interface (FDDI)
Réseau multipoint • CSMA/CD (Carrier Sense Multiple Access/Collision Detection): • Les périphériques surveillent le réseau et attendent un blanc avant d’émettre. • Si un seul équipement prend le contrôle, tout va bien, sinon il y aura une collision de données. • Cela se produit car plusieurs équipements peuvent accéder au réseau. • Lors d’une collision, chaque équipement impliqué génère une durée d’attente aléatoire • Cela fait en sorte que ce réseau n’est pas déterministe. • Si le réseau est chargé, il peut y avoir des problèmes. • Exemple: Ethernet IP
Réseau multipoint • CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance): • Les périphériques surveillent le réseau et attendent un blanc avant d’émettre. • Un équipement désirant émettre envoie un signal RTS (Request to Send) indiquant le volume de données à transmettre. • Un récepteur répond par un CLS (Clear to Send), et l’émetteur commence l’émission de son message, les autres émetteurs se mettant en attente. La fin d’une transaction est signalée par un ACK (Acknowledge) par le récepteur. • Lors d’une collision, chaque équipement impliqué génère une durée d’attente aléatoire • Exemple: LON : Local Operating Network
Réseau multipoint • BinaryCountdown (Accès par dominance de bit): • Les périphériques surveillent le réseau et attendent un blanc avant d’émettre. • Chaque message possède un identificateur (soit type de message, soit adresse de l’émetteur). • Utilise la notion de bit dominant et de bit récessif. Un bit dominant gagne contre un bit récessif. • L’identificateur du message introduit une priorité. En cas de collision, l’émetteur ayant des bits récessifs cesse d’émettre dès qu’il détecte un bit déterminant alors qu’il émet un bit récessif. • Cette approche est très efficace, mais elle entraine une limite sur la taille du réseau. • Exemple: CAN
Le modèle OSI à 7 couches • Le modèle OSI (Open Systems Interconnection) comporte 7 couches et décrit les fonctionnalités d’un réseau informatique et des équipements qui y sont connectés.
Le modèle OSI à 7 couches • Les 4 couches inférieures sont en charge d’assurer un transport optimal des données. • Les 3 couches du haut sont en charge du traitement des données: cryptage, représentation, …
La couche physique. • Elle gère la représentation du bit (codage, timing, synchronisation). • Elle définit les niveaux électriques, optiques,... des signaux ainsi que le support de transmission.
La couche liaison. • Elle fournit les moyens fonctionnels nécessaires à l'établissement, au maintien et à la libération des connexions entres les entités du réseau. • Elle force la structuration des données sous forme de trames. Elle est en charge de la détection et correction (par retransmission) des erreurs détectées et non corrigées par le niveau physique (utilisation de codes détecteur/correcteur d’erreur CRC pour erreur trame).
La couche réseau. • La couche réseau doit permettre d'acheminer correctement les paquets d'informations jusqu'à l'utilisateur final. Elle assure le contrôle des flux (pour tenir des temps de réponse acceptables), le routage des paquets, et l'adressage (pour l'ensemble des machines du monde !).
La couche transport. • La couche transport est en charge de la gestion du dialogue entre deux nœuds actifs. Elle doit optimiser la qualité de la transmission, notamment avec des outils de détection d'erreurs et des algorithmes de renvoi des messages perdus.
La couche session. • La couche de session permet aux différents éléments du réseau de structurer leur dialogue. • Il faut s'assurer qu'un récepteur est là avant d’émettre de l'information. • Dans cette couche, il y a un masquage total des problèmes de transmission.
La couche présentation. • Cette couche se charge de la représentation des données manipulées par les deux applications communicantes (format, compression, cryptage...).
La couche application. • C'est la dernière couche du modèle OSI. Elle donne aux applications le moyen d'accéder aux couches inférieures. • Elle détermine comment différentes applications vont pouvoir coexister et utiliser des modules communs. • De très nombreuses normes ont été définies sur cette base.
Trame de transmission – RS232 • Le RS232 est un protocole de transmission sériel asynchrone:
Trame de transmission – RS232 • Format de transmission (trame): • Nombre de bits transmis: de 7 à 9 bits • 1 bit de départ • 1 ou 2 bits d ’arrêt • Le bit de parité • Temps de repos (idle time) • Application: • Imprimante, terminal, ... • Système externe lent.
Historique • En 1983, un projet interne de Bosch est lancé et son but est de développer un réseau pour les véhicules. • En collaboration avec l’Université de Karlsruhe. • En 1986, lancement du protocole CAN • En 1991, publication des spécifications du CAN 2.0 par Bosch. • En 1992, CiA : CAN in Automation • En 1992, Premières voitures équipées avec du CAN (Mercedes Benz) • En 1993, le CAN devient le standard ISO 11898.
Historique • En 1993, le CAN devient le standard ISO 11898. • En 1994, Allen Bradley introduit le DeviceNet. • En 1995, introduction du protocole CANopen.
http://www.mcafee.com/us/resources/reports/rp-caution-malware-ahead.pdfhttp://www.mcafee.com/us/resources/reports/rp-caution-malware-ahead.pdf
http://www.computerworld.com/s/article/9176778/Car_hackers_can_kill_brakes_engine_and_morehttp://www.computerworld.com/s/article/9176778/Car_hackers_can_kill_brakes_engine_and_more
http://www.theinquirer.net/inquirer/blog-post/1727747/boffins-hack-car-speedhttp://www.theinquirer.net/inquirer/blog-post/1727747/boffins-hack-car-speed
http://www.technologyreview.com/hack/420401/taking-over-a-car/http://www.technologyreview.com/hack/420401/taking-over-a-car/
Bits dominants vs bits récessifs • Bien que la norme CAN puisse être implantée sur différents supports: • Filaire; • Fibre optique; • Infrarouge; • Radio fréquence. • … elle doit obligatoirement respecter le principe des bits dominants et récessifs. • Le bit dominant correspond au niveau logique 0. • Le bit récessif correspond au niveau logique 1.
Bits dominants vs bits récessifs • Si deux nœuds du réseau CAN présentent deux bits de niveaux différents, le bit dominant est celui qui va s’imposer. • Source de l’image: http://www.esd-electronics-usa.com/Images/Online%20Seminars/PDF/CAN%20Seminar%20Youtube.pdf
Arbitrage pour l’accès au bus • L’utilisation de bits récessifs et dominant permet de pouvoir faire un arbitrage non destructif. • L’arbitrage non destructif permet de laisser passer le message le plus prioritaire. • Dans la norme CAN, on utilise l’approche CSMA/CD (Carrier Sense, Multiple Access with Collision Detection). • Un message CAN commence toujours par un identificateur qui identifie la nature du message et sa priorité.
Arbitrage du bus CAN • Exemple
Arbitrage du bus CAN • Exemple L’équipement #2 vient de perdre l’arbitrage
Arbitrage du bus CAN • Exemple L’équipement #2 cesse toute activité et maintient son signal à 1.
Arbitrage du bus CAN • Ainsi, l’équipement #1 envoie un message important qui possède un identifiant lui donnant la priorité poursuit la transmission du message et l’équipement #2 qui envoie un message moins prioritaire cesse sa transmission et reçoit le message au cas où il est le destinataire. • L’équipement #2, tentera de retransmettre son message lorsque le message envoyé par l’équipement #1 sera terminé (en autant qu’il gagne la prochaine phase d’arbitrage, à moins qu’il soit le seul à transmettre).