У меня есть сомнения. Я работаю над протоколом CAN, который использует CSMA-CD и механизм арбитража для передачи сообщений. Я планирую реализовать один серверный узел и несколько клиентских узлов.
- Сервер предоставлен
ID of 0 (11-bit Identifier)
. - Когда узел включен, он должен получить идентификатор для связи в сети, поэтому он запрашивает его у сервера. Узел использует
Remote Frame
для запроса идентификатора с сервера, который включает ID = 0 (Server ID), DLC = 2
Я сомневаюсь, что на шине CAN имеется несколько узлов, поэтому каждый узел запрашивает идентификатор у сервера. И все узлы используют ID = 0 (Server ID), DLC = 2 as Remote Frame
. Теперь предположим, что 2 или более узлов одновременно отправляют сообщение на сервер, и механизм арбитража не будет работать, поскольку оба узла получают контроль над шиной CAN. Так что, CSMA-CD предотвратит это и позволит только одному узлу взаимодействовать в данный момент времени?