Tillbaka till Omgivningssimulator
Sida 15

3.1 Nätkommunikationsdelen i en EXS-nod

Kallas kort för EXS-NET. Implementeras i C/C++ med BSD Sockets, Sun RPC och XDR för att få så portabel programvara som möjligt. Följande funktionalitet understödjs.

3.1.1 EXS-NET's gränssnitt mot EXS-SIM

Bibliotek av funktioner för åtkomst av meddelanden i en array av listor samt de funktioner som RPC-klienten understödjer (Se Client-Server gränssnitt). En startupprocedur som tar hand om uppkopplingen mot ENS, "prenumeration" på information, skapande av arrayen av listor, m.fl initieringsrutiner bör finnas för att inte EXS-programmeraren ska behöva sätta sig in i detalj hur EXS-NET fungerar.

3.1.2 EXS-NET's gränssnitt mot ENS-NET

Se kapitel ESS, avsnitt Kommunikation. En avbrottshanterare eller daemon tar hand om inkommande meddelanden enligt prioritetsordningen: Broadcast, Unicast, Multicast, RPC-Server reply.

3.1.3 Extrahering av data

Extraktorn i EXS-NET får den del av datagrammet som är under UDP- headern (se bild nedan). Denna del avkodas och sedan uppdateras datat i en array i EXS-NET.
Ett datagram som det ser ut på SimulatorLANet (Ethernet) :

3.1.4 Uppbyggnad

  • Avbrottshanterare eller liknande som tar hand om inkommande meddelanden.
  • Startupprocedur som sköter uppkoppling mot ENS vid omkoppling till Remote mode i EXS-SIM (Se Körningsexempel, Start-Up)
  • RPC-klient (Se Client-Server gränssnitt)
  • Procedurer för avkodning av Meddelandetyper(Objectdata, m fl.)
  • Array av länkade listor, vars ordning i arrayen samt innehåll bestäms av indataspecifikationen

    3.1.5 Datahantering

    Indata lagras i en array av listor uppbyggd enligt indataspecifikationen. Vid kommunikation med ENS används XDR.

    Sida 17