Networking in SEGA ================== With SEGA, we strive to create highly distributed systems. Each component will theoretically be able to run on a different node on the network. .. _net-net: Networking component -------------------- The network relay is the only component that is in direct connection with the simulation. Other low level components connect to the network relay and tell the network relay what type of messages they would like to recieve. (The sonar network does not want laser sensor information, but it does want sonar sensor information) Components that connect to the network relay are: * :ref:`wheels` * :ref:`sonar` * :ref:`laser` * :ref:`odometer` Networking abstraction ---------------------- The networking code abstracts all the common and uncommon networking problems that all the other code should not be bothered with. It automatically reconnects, and sending data can be done as any native type. Data sent and received by component is buffered by a ``Client`` object. A component should ensure it is capable of receiving and processing data in real time, or the buffers may become full and performance may be degraded. .. automodule:: networking :members: