SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12,...
-
Upload
roland-richardson -
Category
Documents
-
view
216 -
download
2
Transcript of SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12,...
![Page 1: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/1.jpg)
SunGuideSunGuideTMTM Center-to-Center Functionality Center-to-Center FunctionalityWhat “it is” and How to “use it”What “it is” and How to “use it”
November 12, 2008November 12, 2008
![Page 2: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/2.jpg)
Purpose of this class…Purpose of this class…
Part 1 – C2C Fundamentals:– Explain the two “data channels” of C2C:
• Status• Command / Control
– How C2C “works”– What does it do and how does it do this– How to “deploy” C2C
Part 2 – Developer / Support Training:– Test tools available to the developer / support staff– Configuring C2C to “work”– How to write a “plug-in”– How to troubleshoot
November 2008C2C Concepts 2
![Page 3: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/3.jpg)
November 2008C2C Concepts 3
C2C Fundamentals
![Page 4: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/4.jpg)
November 2008C2C Concepts 4
Why Utilize a C2C Standard?Why Utilize a C2C Standard?
Allows data to be collected across TMCs
Allows assets to be used across TMCs
Provides TMC “software independence”
TMCs are not “equal”:– Different equipment– Different data from different TMCs (all do not provide
the same)
A tool to collect regional or statewide data (that could be used by a statewide ATIS system)
![Page 5: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/5.jpg)
November 2008C2C Concepts 5
C2C Infrastructure Concept:C2C Infrastructure Concept:Functional Areas AddressedFunctional Areas Addressed
Roadway network:– Layout (GIS based)– Current conditions
Events (detailed data) Lane Closure Emergency Evacuation Field Devices:
– DMS– LCS– CCTV– Ramp Meter– HOV– Traffic Signals– Environmental Sensors
Railroad Crossings
HAR Parking Lots School Zones Reversible Lanes Dynamic Lane Assignments Transit (Bus):
– Schedules– Location
Commuter/Light Rail:– Schedules– Location
Signals:– Intersection– Artery/Section/Corridor
Vehicle Priority
Addressing both Status and Command/Control
![Page 6: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/6.jpg)
November 2008C2C Concepts 6
C2C Infrastructure Concept:C2C Infrastructure Concept:Conceptual ViewConceptual View
![Page 7: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/7.jpg)
November 2008C2C Concepts 7
C2C Infrastructure Concept:C2C Infrastructure Concept:Deploying a C2C “Cloud”Deploying a C2C “Cloud”
![Page 8: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/8.jpg)
November 2008C2C Concepts 8
TMDD Network ModelTMDD Network Model(TMDD = Traffic Management Data Dictionary)(TMDD = Traffic Management Data Dictionary)
The network model is the underlying data model for C2C Travel times / traffic conditions are published as “link” data Each SunGuide deployment is its own “C2C network” Equipment must be associated with a “C2C network”
![Page 9: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/9.jpg)
During the following slides…During the following slides…
Please consider the following as we move forward:– C2C was designed to be a generic carrier of C2C data– C2C was NOT designed specifically for FDOT SunGuide– C2C was NOT designed specifically for FDOT FL-ATIS
The C2C can be deployed in MANY ways to achieve different objectives
C2C is being deployed in a very specific fashion to satisfy SunGuide requirements
Please do NOT jump to “conclusions” as to how C2C is used until the end of the presentation! Just sit back and “soak it in”!
November 2008C2C Concepts 9
![Page 10: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/10.jpg)
C2C Design ConceptsC2C Design Concepts
Status:– Data revolves around a “network id” (each deployment
will have a UNIQUE “network id”– When a ‘deployment’ comes on-line, the data associated
with the deployment is ‘discovered’ and published (added) to the C2C infrastructure
– ‘Deployments’ pace how often status data is updated– When a ‘deployment’ goes off-line it is ‘erased’ (deleted)
out of the C2C immediately– Status is like a “party line” where all participants can
hear each other simultaneously
Command:– Point-to-point connection created as needed
November 2008C2C Concepts 10
![Page 11: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/11.jpg)
Two “Paths” Through C2CTwo “Paths” Through C2C
When a C2C environment is “Designed” (configured), all participants need to decide what is to be exchanged (and what the ground rules are)
Design decisions include:– SunGuide:
• Status Data– Outbound: Published to C2C as soon as changes are made (i.e.
DMS changed, traffic conditions updated, event updated, etc.)– Inbound: Received and posted upon arrival
• Commands:– Outbound: must be sent with a username/password– Inbound: must have a local username/password to process
– FL-ATIS:• Status Data
– Outbound: Publishes Floodgate data– Inbound: Receives DMS, CCTV, EM Locations, Roadways, Links
• Commands:– Outbound: none– Inbound: accepts Floodgate and Event requests
November 2008C2C Concepts 11
![Page 12: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/12.jpg)
Data Flow Through C2CData Flow Through C2C
Two types of data flows:– Status (broadcast in nature, one-to-many)– Command/Control (point-to-point, one-to-one)
GENERIC infrastructure to exchange XML (there are some basic formatting guidelines) – does NOT have to be “ITS data” – could be “stock prices”)
November 2008C2C Concepts 12
![Page 13: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/13.jpg)
Defining XML for C2CDefining XML for C2C
All participants on a C2C “network” need to ‘agree’ to what the messages that will be exchanged contain
Since XML is not a “protocol”, an exchange protocol must be agreed to (in C2C it is SOAP)
November 2008C2C Concepts 13
![Page 14: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/14.jpg)
Adding Plug-insAdding Plug-ins
Plug-ins “glue” (or convert) between system specific data definitions and the C2C XML definitions
Note that systems connecting to the C2C can be from different vendors and their internal “architecture” is transparent to the C2C
November 2008C2C Concepts 14
![Page 15: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/15.jpg)
Startup / Inventory and statusStartup / Inventory and status
How does a Center tell others about “what inventory has”:
– On initial connection to the C2C infrastructure a center will “declare” its inventory
– This typically includes:
• Names
• Locations
• Attributes (usually a limited set, e.g. rows/cols) After inventory is published, status is provided for the inventory:
– Current status (e.g. current message, current speed)
– Pace of “status” publication is entirely based on the SENDER
– C2C propagates changes as soon as they are received
When a center CONNECTS to the C2C and asks for “status” it will receive an inventory and then status updates.
Status can only be published for something previously declared in an inventory
November 2008C2C Concepts 15
![Page 16: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/16.jpg)
Focus On How Status Focus On How Status Information Is TransmittedInformation Is Transmitted
To ‘integrate’ multiple centers a decision on WHAT data will be sent must be agreed to
Inventory data is sent ONE time Status data is sent as changed (pace is established by the
‘source’
November 2008C2C Concepts 16
![Page 17: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/17.jpg)
Behavior of C2C ComponentsBehavior of C2C Components
Each component has a different “purpose”– Provider – getting data into C2C– Collector – repository for data– Extractor – retrieving data from C2C
November 2008C2C Concepts 17
![Page 18: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/18.jpg)
C2C Provider StartupC2C Provider Startup
C2C Provider:– Plug-in connects to provider and provides inventory data– Inventory data forwarded to any connected downstream
Collector or Extractor– As status updates received, they are passed downstream– Data stored for future connection requests
November 2008C2C Concepts 18
![Page 19: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/19.jpg)
C2C Collector StartupC2C Collector Startup
C2C Collector:– Connects to any configured Collectors or Providers– Inventory data forwarded to any connected downstream
Collector or Extractor– As status updates received, they are passed downstream– Data stored for future connection requests
November 2008C2C Concepts 19
![Page 20: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/20.jpg)
C2C Extractor StartupC2C Extractor Startup
C2C Extractor:– Connects to any configured Collectors or Providers– Inventory data forwarded to any connected plug-in– As status updates received, they are passed to plug-in– No storage of data
November 2008C2C Concepts 20
![Page 21: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/21.jpg)
Rack and Stack Status Rack and Stack Status ComponentsComponents
There is not one “right way” to deploy C2C Deployment is based on what data is to be delivered where:
– If you want all users to get all data…– If you want some users to only get data from 2 sources…– Etc…
November 2008C2C Concepts 21
![Page 22: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/22.jpg)
Status: Subscribing for Status: Subscribing for SunGuide DataSunGuide Data
Configuration files specify WHAT data is “subscribed for” Subscription is at “network” (center) level, is not used to
“filter” data EACH C2C component “can” have a different configuration Can be used to create “custom” data feeds
November 2008C2C Concepts 22
![Page 23: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/23.jpg)
Status Information from Status Information from SunGuideSunGuide
Mapping of SunGuide subsystems to C2C status data
Note: SunGuide does NOT publish “Floodgate Status” (FL-ATIS does)
November 2008C2C Concepts 23
![Page 24: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/24.jpg)
Status Data From FL-ATISStatus Data From FL-ATIS
Note that SunGuide does NOT publish the Floodgate status information – this comes from FL-ATIS
The FL-ATIS plug-in will update the status of the Floodgate data after a command is received.
November 2008C2C Concepts 24
![Page 25: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/25.jpg)
Tracing a Single Status Data Tracing a Single Status Data Type: DMSType: DMS
Each center “publishes” their DMS data A Collector will “gather” the data A consumer of data can get all the data from ONE source Note a TMC only needs to send status once for multiple
consumers to benefit (performance issue)
November 2008C2C Concepts 25
![Page 26: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/26.jpg)
Network DeletesNetwork Deletes
In “status world” of C2C, when a TMC goes “offline” then ALL STATUS data is PURGED in the downstream C2C components.
Offline is the result of:– Plug-in stopping– Center being “rebooted”– Loss of network connectivity
When a center comes back online, inventory is first published and then status publishing resumes
Intermittent network connections can generate large transfers of data
November 2008C2C Concepts 26
![Page 27: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/27.jpg)
Tracing a Single Status Data Tracing a Single Status Data Type with a Center “fails”: DMSType with a Center “fails”: DMS
Assume that District 5 has a failure, this could include:– DMS Subsystems stops– All of SunGuide Fails (or key component such as Data Bus)
Data associated with the failure is deleted THROUGHOUT the C2C (the consuming application must also decide “what to do” – in SunGuide the data is purged))
November 2008C2C Concepts 27
![Page 28: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/28.jpg)
Tracing a Single Status Data Type Tracing a Single Status Data Type with a Collector “fails”: DMSwith a Collector “fails”: DMS
A collector fails (either process of “communications”) Districts are still publishing data (they are ‘healthy’) Downstream ‘consumers’ do not see ANY data During troubleshooting you have to know where to look…
November 2008C2C Concepts 28
![Page 29: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/29.jpg)
Command DataCommand Data
Included with a command:– Command “data”– Userid / password that must be validated by the
RECEIVING application (C2C performs no validation) Commands must provide ‘response’ to sender
November 2008C2C Concepts 29
![Page 30: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/30.jpg)
Putting it all together:Putting it all together:How to connect 2 SunGuide DeploymentsHow to connect 2 SunGuide Deployments
Each sends out status information Each retrieves status information ‘of interest’ Command are send a issued by operator Note: RWIS and HAR data are not exchanged via C2C
November 2008C2C Concepts 30
![Page 31: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/31.jpg)
Putting it all together:Putting it all together:Connecting multiple SunGuide Deployments to FLAITSConnecting multiple SunGuide Deployments to FLAITS
Data from ALL Districts and other providers (e.g. FTE) will go to a single “collector”
Note: EACH deployment will have a “command channel” to FLATIS to deliver events and Floodgates
November 2008C2C Concepts 31
![Page 32: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/32.jpg)
SunGuide C2C Data:SunGuide C2C Data:Status Data and CommandStatus Data and Command
SunGuide can be configured to process status data from other centers and send commands:– DMS– CCTV– HAR– RWIS– Events (status only)
November 2008C2C Concepts 32
![Page 33: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/33.jpg)
Carefully Configure SunGuide:Carefully Configure SunGuide:Preventing un-desired status data and commandsPreventing un-desired status data and commands
Configure what SunGuide received (both status and commands) Configure what data SunGuide sends Note: NO command will be processed unless a valid
userid/password for the command type is received
November 2008C2C Concepts 33
![Page 34: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/34.jpg)
FLATIS Conceptual Data Flow:FLATIS Conceptual Data Flow:(Only one way data flow is shown)(Only one way data flow is shown)
November 2008C2C Concepts 34
![Page 35: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/35.jpg)
How to “Test”…How to “Test”…
C2C Test Suite that allows:– Data to be repeatedly “injected” (excellent for IV&V or
performance testing)– Data to be “viewed” (excellent for verification and
debugging the infrastructure)
November 2008C2C Concepts 35
![Page 36: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/36.jpg)
Performance Testing for FL-ATISPerformance Testing for FL-ATIS
Load testing should use the network links FL-ATIS will use Target system should use production hardware for C2C
infrastructure and FLATIS plug-in/database C2C test tools can be used rather than SunGuide to provide
data– Tools should be run in actual Districts to test firewalls
and networks– Test tools allow highly repeatable and predictable data
to be delivered Loading comments:
– Status data is by far the largest user of bandwidth/CPU– Command data is “very small” – Data files to “mock up” an operational District take a
day or less to create
November 2008C2C Concepts 36
![Page 37: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/37.jpg)
Performance Testing for FL-ATIS: Performance Testing for FL-ATIS: continuedcontinued
Run “Test Tools” in each District
Test files built on “real” data
Utilize FL-ATIS comm. Links
One way testing
November 2008C2C Concepts 37
![Page 38: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/38.jpg)
Performance Testing for FL-ATIS: Performance Testing for FL-ATIS: Test ToolsTest Tools
For “status” load testing:– Create a “status” file from (a deployed) SunGuide data
stream– Send base file on startup– Send regular updates
November 2008C2C Concepts 38
![Page 39: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/39.jpg)
Performance Testing for FL-ATIS: Performance Testing for FL-ATIS: Test Tools - continuedTest Tools - continued
For sending FL-ATIS commands using XML Tester:– Send an “event”– Send a “floodgate”
November 2008C2C Concepts 39
![Page 40: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/40.jpg)
November 2008C2C Concepts 40
Questions?
![Page 41: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/41.jpg)
November 2008C2C Concepts 41
Developer / Support Training
![Page 42: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/42.jpg)
OutlineOutline
Key to understanding the data: C2C ICD
Installing and configuring C2C
Testing/validating data: C2C Test Suite
Something is “broken”: C2C Troubleshooting
Plug-in Development
November 2008C2C Concepts 42
![Page 43: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/43.jpg)
C2C ICDC2C ICD
You HAVE to understand the XML to understand C2C
November 2008C2C Concepts 43
![Page 44: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/44.jpg)
C2C ICD – Examine the XMLC2C ICD – Examine the XML
XML Spy will be used to examine the XML…
November 2008C2C Concepts 44
![Page 45: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/45.jpg)
C2C InstallationC2C Installation
Perform a C2C installation… Install:
– C2C Provider– C2C Collector– C2C Extractor– C2C Command/Receiver– Test Suite
November 2008C2C Concepts 45
![Page 46: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/46.jpg)
Test SuiteTest Suite
Test Server– Publishes status data to C2C Provider– Accepts command requests from C2C Command
Receiver– Validates received commands using C2C XML schemas– Selectable XML-based test data sets
Status Client– Subscribes for status data from C2C Extractor– Validates received status data using C2C XML schemas
Command Client– Interacts with C2C Command Receiver to retrieve device
status and submit command requests– Validates received device data and command responses
using C2C XML schemas
November 2008C2C Concepts 46
![Page 47: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/47.jpg)
Test ServerTest Server
November 2008C2C Concepts 47
![Page 48: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/48.jpg)
Test ServerTest Server
Useful for providing event and device status data during development of a “subscriber” plug-in component Useful for accepting command requests during development of a “command sender” plug-in component Configurable Provider connection Selectable XML-based status data sets Manual and automatic publishing of current status, status updates, and status deletes Configurable Command Receiver connection Data validation of incoming commands using C2C XML schemas View published status data, commands received, and command responses Built-in HTML help
November 2008C2C Concepts 48
![Page 49: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/49.jpg)
Sample Data File for ServerSample Data File for Server
VERY used for “IV&V” or regression testing
Allows “repeatable” data to be used in testing
A file can be created to send an entire TMC
Files for ‘n’ TMCs could be produced and all sent to the C2C
November 2008C2C Concepts 49
![Page 50: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/50.jpg)
Sample Data File for Server – Sample Data File for Server – continuedcontinued
Send Floodgate:
Send Event:
November 2008C2C Concepts 50
![Page 51: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/51.jpg)
Status ClientStatus Client
Useful for consuming event and device status data during development of a “publisher” plug-in component
Configurable Extractor connection
Data validation using C2C XML schemas
View entire status tree, update messages, and update elements
Built-in HTML help
November 2008C2C Concepts 51
![Page 52: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/52.jpg)
Command ClientCommand Client
Useful for delivering command requests during development of a “command receiver” plug-in component
Configurable Command Receiver connection
Data validation using C2C XML schemas
View commands sent and responses received
Built-in HTML help
November 2008C2C Concepts 52
![Page 53: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/53.jpg)
Web Service ConfigurationWeb Service Configuration
Status Logger server host and port Extractor
– Server list contains a single Collector or Provider URI Collector
– Server list contains one or more Collector and/or Provider URIs (blank delimited)
– Subscription data types Provider
– Subscription data types Command Receiver
– XML server port value
Note: Web service “web.config” settings documented in SunGuide VDD
November 2008C2C Concepts 53
![Page 54: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/54.jpg)
Example Configuration FileExample Configuration File
Extractor application settings from its Web.Config file:
November 2008C2C Concepts 54
![Page 55: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/55.jpg)
Example Configuration FileExample Configuration File
Collector application settings from its Web.Config file:
November 2008C2C Concepts 55
![Page 56: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/56.jpg)
Example Configuration FileExample Configuration File
Provider application settings from its Web.Config file:
November 2008C2C Concepts 56
![Page 57: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/57.jpg)
November 2008C2C Concepts 57
C2C Test Suite
Demonstration
![Page 58: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/58.jpg)
C2C TroubleshootingC2C Troubleshooting
IIS– ASP.NET Version, Enabled, “aspnet_regiis.exe”– Application pools: disable recycling– Web service properties
Web service “web.config” files– Valid Status Logger values– Valid URI’s (Extractor and Collector)– Correct subscription data types (Provider and Collector)
Network connectivity– Telnet test– IE web service access test
November 2008C2C Concepts 58
![Page 59: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/59.jpg)
C2C Troubleshooting (cont’d)C2C Troubleshooting (cont’d)
Plug-in configuration (SunGuide)– Publisher configuration
• Valid C2C Provider host and web service• Valid C2C command port• Correct “statusList” and “commandList” elements
– Subscriber configuration• Valid C2C Extractor host and web service• Valid Extractor update port• Correct Extractor subscription list• Valid C2C Command Receiver host and web service• Valid Command Receiver center ID and credentials
November 2008C2C Concepts 59
![Page 60: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/60.jpg)
Plug-in DevelopmentPlug-in Development
Determine what support your system needs:– Status
• Publish event and/or device status data• Subscribe for event and/or device status data
– Command/Control:• Receive command/control requests• Transmit command/control requests
Develop “glue” (aka plug-in) to interface YOUR system to the infrastructure using the C2C ICD (Interface Control Document) and C2C XML schemas
Plug-in utilizes web services to exchange data with the infrastructure
November 2008C2C Concepts 60
![Page 61: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/61.jpg)
Publisher Plug-in DesignPublisher Plug-in Design
Establish functionality:– Identify local device and event data types to be
supported by plug-in– Use C2C Status ICD and XML Schemas to identify
required and optional data elements for each data type to be supported
Code Development:– Code that retrieves data from local TMC components– Code that parses and stores local device and event data– Code that interfaces with the C2C Provider using the
“ProviderClient” interface– Code that generates C2C XML messages for current
status, status updates, and status deletes– Code that manages local TMC connection and C2C
Provider connection
November 2008C2C Concepts 61
![Page 62: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/62.jpg)
Publisher Plug-in DesignPublisher Plug-in Design
C2C Provider “ProviderClient” interface:
November 2008C2C Concepts 62
![Page 63: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/63.jpg)
Publisher Plug-in OperationPublisher Plug-in Operation
Normal Flow:– Connect to local TMC resources; gather device and
event data from TMC server and database; store in local cache; subscribe for device and event updates
– Initialize connection to C2C Provider and deliver current device and event data for configured types
– Deliver status updates and status deletes when supplied by local TMC
Network Interruptions:– Loss of TMC connection should cause send of Network
Delete to C2C Provider; actions after reconnection are the same as at startup
– Loss of C2C Provider connection should cause Provider reset; actions after reconnect include send of Network Delete followed by startup actions
November 2008C2C Concepts 63
![Page 64: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/64.jpg)
Subscriber Plug-in DesignSubscriber Plug-in Design
Establish functionality:– Identify C2C device and event data types to be supported by
plug-in– Use C2C Status ICD and XML Schemas to identify required
and optional data elements for each data type to be supported Code Development:
– Code that parses C2C device and event data for current status, status updates, and status deletes
– Use the C2C device and event data elements as new local data types, OR
– Convert the C2C device and event data into local TMC equivalents
– Code that delivers remote device and event data to local TMC components
– Code that interfaces with the C2C Extractor using the “ExtractorServer” interface
– Code that manages local TMC connection and C2C Extractor connection
November 2008C2C Concepts 64
![Page 65: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/65.jpg)
Subscriber Plug-in DesignSubscriber Plug-in Design
C2C Extractor “ExtractorServer” interface:
November 2008C2C Concepts 65
![Page 66: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/66.jpg)
Subscriber Plug-in OperationSubscriber Plug-in Operation
Normal Flow:– Connect to local TMC resources– Start listener socket for connection by C2C Extractor
and initialize connection to Extractor– Parse C2C current status messages as they are
received and store at least data type and data identifiers to local cache
– Convert to designated local format and deliver to TMC– Process C2C status update messages and C2C status
delete messages the same way– Process C2C network delete messages by sending local
delete messages for each cached device and event instance
Network interruptions:– Loss of C2C Extractor connection should result in
delete messages to local TMC for all device and event instances
– Actions after reconnection are the same as at startup
November 2008C2C Concepts 66
![Page 67: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/67.jpg)
Command Handler Plug-in Command Handler Plug-in DesignDesign
Establish Functionality:– Identify local device types to be supported for remote
commands by plug-in– Use C2C Command ICD and XML Schemas to identify
required and optional command elements for each device type to be supported
– Usually developed to be part of C2C Status Publisher Plug-in for local data cache sharing
Code Development:– Code that generates local TMC command messages for
supported device types– Code that accepts messages from the C2C Command
Receiver– Code that parses the C2C Command request messages– Code that generates C2C Command response
messages– Code that manages local TMC connection and C2C
Command Receiver connection (listener socket)
November 2008C2C Concepts 67
![Page 68: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/68.jpg)
Command Handler Plug-in Command Handler Plug-in OperationOperation
Setup:– Connect to local TMC resources. Perform any necessary
authentication– Initialize socket connection for C2C Command Receiver
Command Processing:– Parse received commands and convert to local TMC
format. Check for presence of device in local data cache– Submit command to local component for processing– Parse received responses and convert to C2C
Command response format– Return formatted response on same socket used for
command receipt
November 2008C2C Concepts 68
![Page 69: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/69.jpg)
Command Sender Plug-in Command Sender Plug-in DesignDesign
Establish functionality:– Identify remote device types to be supported by plug-in– Use C2C Command ICD and XML Schemas to identify required
and optional command elements for each device type to be supported
– Usually developed to be part of C2C Status Subscriber Plug-in for local data cache sharing
Code Development:– Code that parses local device command request messages– Code that generates C2C Command request messages– Code that interfaces with the C2C Command Receiver– Code that parses C2C Command response messages– Code that generates local device command response
messages– Code that manages local TMC connection and C2C Command
Receiver connection
November 2008C2C Concepts 69
![Page 70: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/70.jpg)
Command Sender Plug-in Command Sender Plug-in DesignDesign
C2C Command Receiver interface:
November 2008C2C Concepts 70
![Page 71: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/71.jpg)
Command Sender Plug-in Command Sender Plug-in OperationOperation
Normal Flow:– Connect to local TMC resources; perform any necessary
authentication– Initialize C2C Command Receiver connection– Parse received commands and convert to C2C
Command format; check for presence of device in local data cache
– Submit command to designated C2C Command Receiver for delivery to remote TMC
– Parse received responses and convert to local TMC response format
– Return formatted response to submitting TMC component
November 2008C2C Concepts 71
![Page 72: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/72.jpg)
General ConsiderationsGeneral Considerations
Allocation of plug-in components to applications based on needs of local system
Connection between plug-in and Provider or Extractor web service uses IIS sessions:– Session identifiers contained in “cookies”– Plug-in needs to define a cookie container and assign it
to the web service proxy– Plug-in needs to call the web service “KeepAlive” web
method regularly to prevent session timeout Plug-in that publishes status data should issue “network
delete” and “shutdown” to its Provider when shutting down Plug-in that subscribes for status data should “logout”
from its Extractor when shutting down
November 2008C2C Concepts 72
![Page 73: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/73.jpg)
Sample Source Code:Sample Source Code:“Help” to start a status publishing plug-in“Help” to start a status publishing plug-in
November 2008C2C Concepts 73
![Page 74: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/74.jpg)
Sample Source Code:Sample Source Code:“Help” to start a status subscribing plug-in“Help” to start a status subscribing plug-in
November 2008C2C Concepts 74
![Page 75: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/75.jpg)
DocumentationDocumentation
C2C Infrastructure and Test Suite installer documented in SunGuide VDD
C2C Infrastructure web service configuration settings documented in SunGuide VDD
C2C ICD and XML Schemas available from SunGuide Project website (sunguide.datasys.swri.edu)
Example C2C Plug-in project (C#, Visual Studio 2005) Sample C2C XML status data fragments included with Test
Server
November 2008C2C Concepts 75
![Page 76: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/76.jpg)
Resources…Resources…
Most current C2C ICD is on the project web site in the Reading Room
Sample source code to create a plugin:– http://sunguide.datasys.swri.edu/ReadingRoom/Etc/C2C
%20Class/C2CExample.zip
Sample data to use with the Test Suite:– http://sunguide.datasys.swri.edu/ReadingRoom/Etc/C2C
%20Class/FLATIS-Samples.zip
November 2008C2C Concepts 76
![Page 77: SunGuide TM Center-to-Center Functionality What “it is” and How to “use it” November 12, 2008.](https://reader038.fdocuments.us/reader038/viewer/2022110210/56649e895503460f94b8e2fb/html5/thumbnails/77.jpg)
November 2008C2C Concepts 77
Questions?