Re: [Embedlets-dev] Peer-to-peer or master/slave
Status: Alpha
Brought to you by:
tkosan
|
From: Gregg G. W. <gr...@sk...> - 2003-06-29 14:29:20
|
>...only if there is a reliable master, if I understand your idea. In a true >peer-to-peer ad-hoc (I realize I added that just now) network you can't >count on any node being present at any time. In fact, in any realtime >control network I think that is a good assumption. Whatever nodes happen to >be present carry on as best they can, rather than the whole network just >crashing. > >So if a master is required to facilitate all communication amongst slaves >there can be no true peers. Only the master and slave(s), and the network >should not be called a peer network. I won't disagree with the issue of depending on another party. My only comment is that paranoia about dependencies can be a killer for new ideas. Clearly, on the internet, there is no such thing as peer-to-peer because there is wiring and routers (which are the SPI master of this network technology) in between. However, we are getting more and more comfortable with considering the routers and switches and hubs as part of the wire substrate which is always available. IP provides rerouting on failure, independent of efforts of the sender and receiver, which creates a certain magical repair capability. In the world of hardware, there are duplicate busses and other hardware components that you will find in telephony equipment and other high availability environments (such as the space shuttle). So, we have learned ways to deal with certain types of failures in hardware that we may be unable to repair immediately. That is a true enabeling technology. So, if SPI is cheap, and trivial to use compared to I2C, CAN or something else, you might consider the master/slave issue less important. particularly if the master is an important part of the system that defines the system behavior, and without it, there is no reason for the other parts to function. In Teds example CNC application, it sounds to me like the embedlette container is an integral part of the system because it will be dispatching the work orders to the head controllers. So, if it dies, there is no point in going on with 'other work'. In a CNC shop, SPI between embedlette containers would cause the whole shop to stop if the master failed. In a CNC shop's computer network, such an SPI master would be the fileserver that is typically the place where all the programs are stored. My brother is a CNC machinest, so I am very familiar with this issue. He has a backup file server, tape backups to recover from, uses ghost to image the machine etc. This is a reasonable relationship at this level of the network. But, higher cost technologies don't fair well at the bottom of a control heirarchy. My experience has been that The flexibility of any CSMA network technology will create lots of issues to program around and deal with using heuristics which are expensive in code space and create an unnatural secondary control layer around otherwise simple, concise control layers. ----- gr...@cy... (Cyte Technologies Inc) |