1 / 27

STS technical stuff

STS technical stuff. Talker: Siwert Streiffert. OSS. Simplified STS (SCPC) Control Flow and Data Flow. Control Flow. CP. STS. Operator Commands. Data Flow. Presentation Layer. Collection Configuration. Data Provisioning. Service & Data Layer. Data Collection. File Transfer.

Download Presentation

STS technical stuff

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. STS technical stuff Talker: Siwert Streiffert

  2. OSS Simplified STS (SCPC) Control Flow and Data Flow ControlFlow CP STS Operator Commands DataFlow PresentationLayer Collection Configuration Data Provisioning Service &Data Layer Data Collection FileTransfer Entity DB

  3. OSS Simplified STS (SCPC) Control Flow and Data Flow - more details ControlFlow CP STS stsopcm DataFlow PresentationLayer stsopcf stsprov Service &Data Layer process IDS service Stsmain GOH Stsconv DB interface

  4. OSS Lets look at the operator commands… ControlFlow CP STS stsopcm = operator commands DataFlow PresentationLayer stsopcf stsprov Service &Data Layer process IDS service Stsmain GOH Stsconv DB interface

  5. STS commands • 9 commands • Syntax = “stm<xyz>” (stm means statistics and traffic measurement, <xyz> is replaced by a mnemonic describing the function) • stmdbrt, stmttu, stmotd, stmcc, stmotls, stmfo, stmrp, stmmp, stmfols • some commands takes parameters • some commands take more parameters than others

  6. stmdbrt – database retainment time > stmdbrt –p > Database retainment time: 1 Lists and sets the db retainment time STS commands (cont’d)

  7. STS commands (cont’d) stmttu – translation table update > stmttu Forces stsmain to send a new TT update request to the CP

  8. STS commands (cont’d) stmotd – object type define > stmotd –i > stmotd –a CP RP TRUNKROUTE > stmotd –b 5 CP RP TRUNKTOUTE > stmotd –e Defines which OTs should be collected from the CP and at what interval (5 or 15 min) stmotd command keeps a state (-i initiates the session and –e ends that session). Sessions cannot be active in parallell.

  9. STS commands (cont’d) stmcc – counter collection > stmcc –i A global on/off switch for counter collection. If set to ”off”, no DID requests will be sent from stsmain to the CP. Thus no counters will be collected in the ”off” state.

  10. STS commands (cont’d) stmotls – object type list > stmotls > RECORDING AREA > ON OPER > > OBJTYPE INCL BRP NCNT AVAILABLE > CP YES 5 23 > RP YES 5 9 > TRUNKROUTE YES 5 30 NO > END Lists the status of the specified OTs.

  11. STS commands (cont’d) stmfo – file output > stmfo -i -z SCREEN -b 0200 -s 0300 RP > …<long printout>… Reads already collected counter data, formats it, and sends it to screen, to local disk files or to a remote system via GOH file transfer.

  12. STS commands (cont’d) stmrp – report > stmrp just_another_rp CP TRUNKROUTE > ReportId: 2000 Groups OTs together to make it easier to use stmmp

  13. STS commands (cont’d) stmmp – measuring program > stmmp -z ASN.1 -t myqueue 10 2000 …ASN.1 file generated periodically every 10 minutes… Starts periodic reading of latest collected counter data, sending it to local disk file or to a remote sytem via GOH file transfer. Pretty much the same as stmfo, but is automatically repeated according to a given interval and only deals with the latest collected counters.

  14. STS commands (cont’d) stmfols – file output list > stmfols > Lists not-yet-processed stmfo requests

  15. STS commands (cont’d) Commands communicates with different processes • stmcc, stmotd, stmttu, stmotls: stsopcf and stsmain • stmdbrt: stsconv • stmfo, stmfols, stmrp, stmmp: stsprov

  16. Output Files Output Files Output Files Communication between STS processes Shared memory Named pipe (FOS CC) stsopcm stmotd, stmotls, stmcc, stmttu Named pipe Socket (client->server) AP/gatherer File operations stsopcf Other Data Flow stmfo, stmmp, stmrp, stmfols stmdbrt stmotd, stmotls, stmcc, stmttu CP/LAVS GOH stsprov <OT unavailable> stsconv <end of BRP> stsmain (R:) (R:) IDS DB process (S:) service

  17. IDSHD DBHD IDSHD DBHD DBWriter IDSWriter DBReader IDSReader STS Packages P12.1 Common modules DACT Operator Commands Forwarder Operator Commands OPCF OPCM Systemmodel LFM Mapper Localdisk Filter ScreenWriter Scheduler Didswitch Translator LFR APIF Filter FileWriter (TT) Mapper DEM DIDIF Collector ECDC Filter ASN.1Writer CPIF GOH Wrapper IDS DB Collection(stsmain) Conversion(stsconv) Provisioning(stsprov)

  18. STS technical stuff libraries and code

  19. PAL PAL - Programming Abstraction Layer • A single library that is now owned by STS. Historically in some way connected to FOS (Formatting and Output Subsystem), hence the file naming convention. A jack of many trades, provides support for: • File handling • Alarm handling • IPC (shared memory, named pipes, sockets) • Event handling with dispatch loop and registration of callback functions • Time representation • Various design pattern concepts (producer-consumer, singleton, functor, smart pointer….)

  20. PAL (cont’d) • Many levels of abstraction makes the code a bit hard to grasp, even though it is quite well documented in the header files. • It is suspected that a lot of PAL code is not used by STS. ~100 KLOC in total. Half of that are comments

  21. SCPC (central product in STS) SCPC - Statistics Collection and Provisioning • Collects counters from CP and AP, performs aggregation, provides formatted output to local/remote disk or screen. • Consists of 29 sw modules (registered in PRIM) Building the code results in 5 binaries, size being 1MB each: • Stsmain.exe (service) • Stsconv.exe (service) • Stsprov.exe (service) • Stsopcf.exe (service) • Stsopcm.exe (console process) -> stmotls.exe, stmfo.exe, stmdbrt.exe, etc… All binaries run as services except stsopcm. The stsopcm binary is copied to 9 differently named files (same names as the commands) and run as console processes that terminates once the corresponding command has finished. (Common APG40 practice?)

  22. SCPC (cont’d) SCPC uses the PAL implementation of: • the producer-consumer design pattern to forward data inside each process. • the event dispatch handling as the main driver for scheduling events inside each process. • IPC for communication between processes. • file handling • fault/alarm handling • implementation of time • ...more... So STS depends heavily on PAL, but probably only a part of PAL. ~200 KLOC in total, almost half of that are comments.

  23. SGS SGS – Statistics Gatherer Service • Collects statistics counters from the AP platform (disk and performance monitoring). The performance monitoring is just a wrapped flavour of Windows perfmon. • Consists of 4 sw modules (registering in PRIM is partly obsolete) Building the code results in one binary: • gatherer.exe The gatherer.exe runs as a service. Also supports dual-AP configuration (local and global gatherer). • Also uses PAL library. ~25 KLOC in total, half of that are comments.

  24. SGS (cont’d) STSCOUNTERS • Consists mainly of a CDL counter description file and a CDL compiler. The output from the compiler is a legacy format parameter file that can be further processed to a windows .dll file that is read by stsmain (SCPC) at process startup. • The CDL compiler code is partly generated by lexx and yacc definitions. The definitions are also a part of the product allowing the compiler to be modified (e.g. as will happen in dynamic counter handling design object). CDL compiler source code is a few KLOC. CDL counter description file is currently ~ 700 KB.

  25. Tools for SW development Building code: • MS Visual Studio • InstallShield • Personal AP / (Sim AP?) • Lex/yacc (occasionally) • ClearCase Debugging: • MS Visual Studio • Rational Purify (memory leaks) • MS windbg (analyze crashdumps) • system internals freeware tools (various tasks)

  26. Major design changes since 2003 • New language for counter definition (CDL + compiler) • Counter definition removal from parameter file • Replacing Roguewave library with Standard C++ library • Robustness improvements • Dynamic counter handling (ongoing) • STS support for MSC-S BC (ongoing)

More Related