Sequencing for exploitation team

24
Sequencing for Sequencing for exploitation team exploitation team Jean-Claude BAU Jean-Claude BAU AB-CO-HT AB-CO-HT

description

Sequencing for exploitation team. Jean-Claude BAU AB-CO-HT. Overview. Terminology Distributed Table Manager (DTM) Concepts Daemon hierarchy Current configuration Tools Tgm environment C Tgm Library Provided services Needed ressources Tools Java Tgm package Tgm Package - PowerPoint PPT Presentation

Transcript of Sequencing for exploitation team

Page 1: Sequencing for exploitation team

Sequencing forSequencing forexploitation teamexploitation teamSequencing forSequencing for

exploitation teamexploitation teamJean-Claude BAUJean-Claude BAU

AB-CO-HTAB-CO-HT

Page 2: Sequencing for exploitation team

Overview• Terminology• Distributed Table Manager (DTM)

– Concepts– Daemon hierarchy– Current configuration– Tools

• Tgm environment• C Tgm Library

– Provided services– Needed ressources– Tools

• Java Tgm package– Tgm Package– LEIR particularity– Tools

• Useful links

Page 3: Sequencing for exploitation team

Terminology• Telegram• Basic period• Cycle• Beam• Normal/Spare• States: Normal/Spare/Spare+Dump• BCD• Sequence (Lead-in/Lead-out)• Strong/loose coupling

Page 4: Sequencing for exploitation team

DTM: Concepts

• DTM implements the concept of reflective memory via the network through the UDP protocol

• The data entities managed by DTM are called ‘tables’ and exist in the DTM space.

• DTM is used on All DSCs and WS but not on Windows PCs.

• DTM works through services provided by daemons (dtmrt_gs/dtmrt_ls) and a client side library.

• Only one client on WS (get_tgm_dtmrt)

Page 5: Sequencing for exploitation team

DTM: Daemon hierarchy

Master

Global Global

Local Local

Local

Local

Page 6: Sequencing for exploitation team

DTM: Current configuration

Mastercs-ccr-ctm

Globalcs-ccr-felab

Globalcs-ccr-feop

LocalWS/Servers

LocalWS/Servers

LocalFront-endsLocal

WS/ServersLocalWS/ServersLocal

WS/ServersLocalWS/Servers

LocalWS/ServersLocal

WS/ServersLocalWS/ServersLocal

WS/Servers

LocalFront-endsLocal

Front-endsLocalFront-endsLocal

Front-ends

Technical networkPublic network

Page 7: Sequencing for exploitation team

Dtm tools (1)• Check the DTM daemon

– /mcr/dtm/dtmdiag (Linux) or /usr/local/bin/dtmdiag (LynxOS)

> dtmdiag[pcopav01:L]dtm: h– lh/ => List-Hosts here

– cd/ch/ => Change-Host [<host>|..]

– up/ => UP one level to master/global == cd ..

– kd/ => Kill-Daemon tree <host>

– lt/ => List-Table(s) [<table>]

– ft/ => Find-Table <table> List all its users

– pt/ => Print-Table <table>[D] Print tables contents/Decimal

– rt/ => Read-Table <table> Read tables contents from disc

– ls/ => List-Subscriptions

– lg/ => List-Global registrations

– ll/ => List-Local registrations

– lr/la/ => List-All locals/globals/subscriptions

– le/ => List-Errors

Page 8: Sequencing for exploitation team

Dtm tools (2)• Check of the telegram event distribution through DTM

– /mcr/tgm/wait_event [CPS,PSB,…]

• 00:Fields : 0x807fffff• 01:EvtId : 112• 02:Catags : 0x0000001e: ------ StrCyc TgmRdy BpRdy EndCyc ------ ------ ------ ------ ------ ------• 03:Machine: CPS• 04:BPTime : Fri-13/Oct/2006 09:53:58.102 (1160726038 S) (102 Ms)• 06:SeqNo : 498178• 07:ChsId : 1160725634 Fri-13/Oct/2006 09:47:14• 08:Level : 9• 09:BmState: Normal• 10:BmId : 61865• 11:BmIns : 1• 12:BmTime : Fri-13/Oct/2006 09:53:56.267 (1160726036 S) (267 Ms)• 14:CycId : 6: SFTPRO• 15:CycInst: 2• 16:CycTime: Fri-13/Oct/2006 09:53:58.102 (1160726038 S) (102 Ms)• 18:BPInst : 2• 19:AqnTime: Fri-13/Oct/2006 09:53:58.102 (1160726038 S) (102 Ms)• 21:EvtTime: Fri-13/Oct/2006 09:53:58.102 (1160726038 S) (102 Ms)• 31:Telegm : 6 1 11 1 88 2 24 2 1 c a 1 7 8 0 2a 2 2 602 4a03 228 f1a9 c 1

Page 9: Sequencing for exploitation team

Tgm environment• Describe the behavior of the Tgm library

– Operational machines– Channels used for telegram distribution– Timing events distributed on MTG cables– …

• Permit to isolate independent systems like LHC injector chain from Clic Test Facility

• Allows to test new configuration without disturbing the operation.

• Needed on both C and Java libraries

Page 10: Sequencing for exploitation team

Tgm environment: Settings

• On Workstation & PC :– Use an environment variable TGM_NETWORK

• On Linux/LynxOs front-end1. Look for an environment variable TGM_NETWORK2. Look for a file TGM_NETWORK in /local/data/tgm3. Look for a file TGM_NETWORK in /dsc/local/data/tgm

• TGM_NETWORK format:– [MODE].[NETWORK]

• [MODE]: OPER, DEV, DEVLHC, …• [NETWORK]: LIC,CTF,…

– Default: OPER.LIC• Useful link:

http://ab-dep-co-ht.web.cern.ch/ab-dep-co-ht/timing/Seq/mtgConfig.htm

Page 11: Sequencing for exploitation team

C Tgm Library• For C/C++ applications• Supported platforms

– front-end computers running Linux or LynxOS.

– Linux workstations

• PC under Windows not supported

Page 12: Sequencing for exploitation team

C Tgm : Provided services

• Provided services– Access to the telegram description

• Group names (GDT)– TgmGetGroupDescriptor, TgmGetGroupNumber,…

• Line names (LDT)– TgmGetLineName,TgmGetLineNumber, …

– Access to telegram reception in real time• TgmWaitForNextTelegram, TgmGetGroupValue ,

…– Access to the USER MATRIX in real time

• TgmWaitForNextUserMatrix, TgmGetUserMatrix,– …

Page 13: Sequencing for exploitation team

C Tgm : Needed resources (Workstation)

ClientTgm lib

Tgmconfig.

fileNFS

get_tgm_dtmrt*DTM daemon

GDTs LDTs UMTs History Telegrams

Telegramevents

DTM space

*Launched by the client

Page 14: Sequencing for exploitation team

C Tgm : Needed resources (FEC)

ClientTgm lib

Tgmconfig.

fileNFS

get_tgm_tim*DTM daemon

GDTs LDTs UMTs History Telegrams

DTM space Hardware(TG8/CTRx)MTG cable

*Launched by rc.local / transfert.ref

Page 15: Sequencing for exploitation team

C Tgm : get_tgm_dtmrt daemon

• 1 daemon per TGM environment– get_tgm_dtmrt –e OPER.LIC &– get_tgm_dtmrt –e OPER.CTF &– setenv TGM_NETWORK DEV.CTF; get_tgm_dtmrt &– …

• Can be restarted without loosing registrations– Kill -1 pid

• Can be stopped. All registration will be lost. – Kill -9 pid

Page 16: Sequencing for exploitation team

C Tgm : Tools

• Video program (X window application). Uses ‘get_tgm_xxx’ services – video [CPS,PSB,…] (WS/FEC)

• Test programs– test_tgm [CPS,PSB,…] test lib functionalities

• t n -> Wait & Display telegram n times• g -> Display groups• l -> Display lines• u -> Display User Matrix• h -> Display the help

– show_events [CPS,PSB,…] display telegram events using TgmWaitForNextTelegram()

– show_history [CPS,PSB,…] display contents of the history buffer– wait_any [CPS,PSB,…] display telegram events using

TgmWaitForAnyTelegram() – …

Page 17: Sequencing for exploitation team

Tgm java package• Provided services

– Accelerator/Network information• TgmMachine, TgmNetwork,…

– Access to telegram layout• TgmGroup, TgmLine, TgmDescriptor

– Real time telegram event reception• TgmEvent, TgmEventListener, …

– MTG hardware settings (BcdSet)• TgmBcdSet, TgmBcd, TgmBeam, TgmCycle,…

– Telegram event history server• TgmEvent,TgmEventFilter,…

Page 18: Sequencing for exploitation team

Java Tgm : Needed resources

• Http server on ‘cs-ccr-ctm’ to get persistent java object– Accelerator/Network information– Telegram layout

• RMI server on ‘cs-ccr-ctm’ – MTG hardware setting– Telegram event history server– ‘java.policy’ file in jre/lib/security must allow access:

grant { permission java.security.AllPermission;

};

• Local/Remote daemons– Real time telegram event reception

Page 19: Sequencing for exploitation team

Java Tgm : Telegram event distribution

Dtm daemon

Dtm space

get_tgm_dtmrt

JavTgmWrapper(OPER.LIC)

JavTgmServerPSB

JavTgmServerCPS

JavTgmServerSPS

JavTgmServer…

JavTgmServerPSB

JavTgmServerPSB

JavTgmServerCPS

JavTgmServerCPS

JavTgmServerSPS

JavTgmServerSPS

JavTgmServer…

JavTgmServer… Client

Client

Client

Client

Client

Page 20: Sequencing for exploitation team

CS-CCR-FEOP

Java Tgm : Telegram event distribution

PC Windows

Applic Tgm lib

CS-CCR-CTM

Http serverRMI Server

CS-CCR-FELAB

PC Windows

Applic Tgm lib

Linux WS

Applic Tgm lib

Daemons

Linux WS

Applic Tgm lib

Daemons

Daemons

CS-CCR-GWMW

Daemons

DaemonsDtm

Daemon

DtmDaemon

DtmDaemon

DtmDaemon

DtmDaemon

CFV-CCR-CTMEMM

DtmDaemon

Put_Events

Tech. Network

Public Network

DtmDaemon

Page 21: Sequencing for exploitation team

Java Tgm: LEIR Particularity

• Can be coupled or in standalone mode• Controlled with 2 different MTG• On mode change

– Tgm event distribution switch automatically– RMI server switch to LEIR active server

• Switching is transparent for application– No restart is needed

Page 22: Sequencing for exploitation team

Tgm Java: Tools (1)• Video

– Display telegram events

• BcdSetViewer– Display current MTG hardware settings

Page 23: Sequencing for exploitation team

Tgm Java: Tools (2)

• JavTgmWrapper launched by the client

• Can be stopped using the kill command :> kill -1 pid

• A ‘C’ client to test the socket:> /mcr/tgm/JavTgmClient [PSB,CPS,…]

Page 24: Sequencing for exploitation team

Useful Links

• Timing pages in AB-CO-HT web sitehttp://ab-dep-co-ht.web.cern.ch/ab-dep-co-ht/timing/index.htm

– Telegram description: Groups/Lines– All java packages related to sequencing– Notes/Presentations/Publication/…– Configuration (Tgm lib,…)– …