SD-CPS is a research framework for orchestrating and managing Industrial Edge Cyber-Physical Systems (CPS) using a software-defined approach. It implements advanced features like SMART adaptation, control plane high-availability, chaos engineering, and privacy-by-design.
The framework is structured into a modular hierarchy:
org.sdcps: System Bootstrap (SDCPSMain).org.sdcps.core: Orchestration and Topology Management.org.sdcps.knowledge: SMART Adaptation Logic and Empirical Validation.org.sdcps.data: Digital Twin Simulation and Privacy Guards.org.sdcps.network: Messaging and Transport Layer (M4T).org.sdcps.workflow: Automation and Edge Workflow Management.
SD-CPS provides a unified launcher script ./sdcps.sh for all operations.
./sdcps.sh buildOpen the visual dashboard to monitor simulation events. The dashboard is dynamic and syncs with the framework in real-time.
./sdcps.sh dashboardNote: The dashboard auto-refreshes to show events like node crashes and adaptations as they occur.
Trigger manual simulation events and observe system adaptation in the logs and dashboard:
./sdcps.sh interactiveAvailable Commands:
nodes: List edge node metrics and energy constraints.register: Onboard new tenants and services.addnode: Scale the topology with new nodes.crash <node>: Simulates hardware failure and triggers self-healing.congestion <node>: Triggers SMART subflow cloning.
See the USER-GUIDE.md for a full command reference and research dashboard walkthrough. For developers looking to extend the framework or integrate with OpenDaylight, refer to the DEV-GUIDE.md.
List and detail all 9 available research scenarios:
./sdcps.sh listRun a specific scenario (e.g., High Availability):
./sdcps.sh run --case 5Verify 100% research parity across all case studies:
./sdcps.sh verifyTo enable real-time AMQP messaging (M4T) without connection warnings:
./sdcps.sh broker(Requires Docker)
SD-CPS includes an automated suite to verify 10 critical research case studies. Use ./sdcps.sh list for full details on each:
- Static Placement: (SDS 2017)
- SMART Adaptation: (Cluster Computing 2019)
- Link Fluctuations: (2019)
- Multi-tenancy: (SDS 2017)
- High Availability: (SDS 2017)
- Thermal Constraints: (2019)
- Empirical Validation: (SDS 2017 & 2019)
- Chaos Engineering: (SDS 2017)
- Privacy-by-Design: Integrated PII masking.
- VANET V2X Deployment: Prototypical VANET with V2V, V2I, and I2V communications (
./run_vanet_demo.sh).
If you use SD-CPS in your research, please cite the following papers:
-
Kathiravelu, P., Van Roy, P. and Veiga, L., 2019. SD-CPS: software-defined cyber-physical systems. Taming the challenges of CPS with workflows at the edge. Cluster Computing, 22(3), pp.661-677.
-
Kathiravelu, P. and Veiga, L., 2017, May. SD-CPS: taming the challenges of cyber-physical systems with a software-defined approach. In 2017 Fourth International Conference on Software Defined Systems (SDS) (pp. 6-13). IEEE.