SmartSocketsForDIP

Uploaded from authorPOINTLite
Views:
 
Category: Education
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

SmartSockets for DIP?: 

SmartSockets for DIP? LDIWG 18 November 2002

Overview: 

Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Was Talarian, now TIBCO: 

Was Talarian, now TIBCO TIBCO SmartSockets Multicast TIBCO SmartMQ TIBCO SmartSockets for JMS TIBCO SmartSockets Cache TIBCO SmartSockets Gateway TIBCO SmartSockets LiveDB TIBCO SmartSockets LiveWeb TIBCO SmartSockets SSL TIBCO SmartSockets Monitor

SmartSockets components: 

SmartSockets components Application Programming Interface C, C++, Java RTserver RTmonitor GUI for monitoring, adm, debug Standard message types Custom types can be defined Sample code (C, C++, Java) Documentation (on-line + paper)

SmartSocket communication: 

SmartSocket communication Publish / subscribe through servers Peer to peer between clients (no server) Multicast Sequential to all clients OR Reliable Multicast Protocol (RMP) Asynchronous (with callbacks) Synchronous (sort of RPC) Thread safe

Availability and Reliability: 

Availability and Reliability Redundancy Cloud of redundant servers Quality of Service Guaranteed Message Delivery (GMD) Messages saved to disk until received by clients Dynamic Message Routing Routing tables in RTservers updated in real time Messages sent through virtual network using shortest path algorithm

Monitoring, Administration: 

Monitoring, Administration On-line monitoring of Traffic Message buffering Memory usage CPU usage Subjects Client options …

Monitoring cont.: 

Monitoring cont. Monitoring using RTmonitor (standard GUI) Home made tools using SS API Synchronous (polling information) Asynchronous (watching) Message logging to files available as standard option

SmartSocket platforms: 

SmartSocket platforms Automatic data translation between platforms Server support Unix (Solaris, HPUX, DEC, Compaq True 64, Irix, linux) Windows NT, 2000 VxWorks IBM OS/390

SmartSocket platforms: 

SmartSocket platforms Client support All the server platforms PLUS Windows 95, 98, Me MacIntosh Java

Message handling: 

Message handling Automatic message buffering and flow control Prioritized messages Re-usable and extensible messages types Load balancing

Scalability: 

Scalability Hiearchical name space with wildcards Ex. /cern/sps/ba2/magnets/* Unlimited number of levels Routing Dynamic Open Shortest Path First (OSPM) Automatic switch between servers in case of failure

Send.c: 

Send.c #include <rtworks/ipc.h> int main(int argc, char **argv) { TipcSrvMsgWrite("/tutorial/lesson1", TipcMtLookupByNum(T_MT_INFO), TRUE, T_IPC_FT_STR, "Hello World!", NULL); /* This call is necessary to ensure the message is sent immediately */ TipcSrvFlush(); TipcSrvDestroy(T_IPC_SRV_CONN_NONE); } /* main */

Receive.c: 

Receive.c #include <rtworks/ipc.h> int main(int argc, char **argv) { T_IPC_MSG msg; T_STR msg_text; TipcSrvSubjectSetSubscribe("/tutorial/lesson1", TRUE); msg = TipcSrvMsgNext(T_TIMEOUT_FOREVER); TipcMsgSetCurrent(msg, 0); TipcMsgNextStr(msg, &msg_text); TutOut("Text from INFO message = %s\n", msg_text); TipcSrvDestroy(T_IPC_SRV_CONN_NONE); } /* main */

Technical Data Server: 

Technical Data Server SmartSocket application in operation since 1996 Today 20000+ tags defined Delivering data to TCR, SCR and PCR 2 redundant servers Used for load balancing in normal conditions 81 simultaneous data publishers ~50 different data clients

TDS architecture: 

TDS architecture

TDS architecture (cont.): 

TDS architecture (cont.)

TDS subjects: 

TDS subjects Flat structure Three main types /ddaq_dg_alarm_data CAS alarms /f_w_ba2 (sys_subs_func) Other clients /dcdm, /I_coolba2, … System subjects NB: Several clients may publish to same subject! (although that is not very common)

License costs: 

License costs RT Server 01.01.02-31.12.02 CHF 15799

Can SS do DIP?: 

Can SS do DIP?

Can SS do DIP?: 

Can SS do DIP?

Can SS do DIP?: 

Can SS do DIP?

Can SS do DIP?: 

Can SS do DIP?

Can SS do DIP?: 

Can SS do DIP?