smartsockets for dip? ldiwg 18 november 2002. overview smartsockets, the sales brochure smartsockets...

24
SmartSockets for DIP? LDIWG 18 November 2002

Upload: melvyn-stone

Post on 18-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

SmartSockets for DIP?

LDIWG 18 November 2002

Page 2: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Overview

• SmartSockets, the sales brochure

• SmartSockets for the TDS

• SmartSockets for DIP

Page 3: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 4: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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)

Page 5: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 6: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 7: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Monitoring, Administration

• On-line monitoring of– Traffic– Message buffering– Memory usage– CPU usage– Subjects– Client options– …

Page 8: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 9: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 10: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

SmartSocket platforms

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

Page 11: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Message handling

• Automatic message buffering and flow control

• Prioritized messages

• Re-usable and extensible messages types

• Load balancing

Page 12: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 13: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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 */

Page 14: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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 */

Page 15: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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

Page 16: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

TDS architecture

rtserver rtserver

PLC

60 PLCs

SCADASCADASCADASCADA

20 SCADA

Dalm

CAS

ELS

logDB

PVSSUMMIUMMIUMMIUMMI

30 UMMI

Rtmonaliv pong

tagcli

listcli

Page 17: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

TDS architecture (cont.)

rtserver rtserver

Dcdm

DutmDsup

Page 18: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

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)

Page 19: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

License costs

• RT Server 01.01.02-31.12.02 CHF 15799

Page 20: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Can SS do DIP?UR Requirement SmartSockets

1 The same protocol shall be used to communicate data with all the different external entities

OK

2 For technical services in TCR and some parts of cryogenics, basic service will be scheduled to run 24h/day, 365days/year

Use redundant servers and make clients reliable

3 Unscheduled loss of service should not exceed 5 minutes.

Redundancy and stable clients

Page 21: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Can SS do DIP?UR Requirement SmartSockets

4 Consumers must be made aware if a data source does not update its information to the outside

Add-on Dutm

5 The data provider must ensure that consumers are informed if the data source is not working

Quality stamp

[UR vague]

6 Time stamping of the data with millisecond resolution is needed

Time stamped messages

Page 22: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Can SS do DIP?UR Requirement SmartSockets

7 Acceptable delay 1s OK

8 Handle peak traffic of 250 KBytes/s and 100 messages/s without loss of data

OK (TDS tests showed avalanche latency, no loss)

9 subscribe without static configuration change at the producer level

OK all dynamic

10 Commonly used ind. Standard OK.

Page 23: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Can SS do DIP?UR Requirement SmartSockets

11 multiple platforms OK

12 ‘on-change’ communication OK

13 Grouping multiple changes OK

14 Only ‘current’ values In client or use Smart Cache?

15 browse published data items Outside SS scope

Config DB?

16 Naming scheme should be uniform

OK (SS won’t stop us)

Page 24: SmartSockets for DIP? LDIWG 18 November 2002. Overview SmartSockets, the sales brochure SmartSockets for the TDS SmartSockets for DIP

Can SS do DIP?UR Requirement SmartSockets

17 Consumer message rate will not exceed 10 messages/second

Client’s responsibility

18 Latency no better than 0.5 N/A

19 Neither producer nor consumer should block the system

Producer, consumer problem

20 Terminate ill-mannered client Special msg

21 Security SSL + client authentication