![1.Veronica sdn@onos-tutorial:/media/sf_THE_ONOS_SYNC/v6/RRM/v88888$ python3.8 -m ryu.cmd.manager --observe-links rrm_controller.py<br />
loading app rrm_controller.py<br />
loading app ryu.topology.switches<br />
loading app ryu.controller.ofp_handler<br />
instantiating app rrm_controller.py of PeriodicRRMController<br />
instantiating app ryu.topology.switches of Switches<br />
instantiating app ryu.controller.ofp_handler of OFPHandler<br />
[DPI] Registered switch 4<br />
[DPI] Registered switch 2<br />
[DPI] Registered switch 3<br />
[DPI] Registered switch 1<br />
[DPI] Registered switch 5<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5)]<br />
[Path] Precomputed 3 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000064 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000077 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000072 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000068 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000088 seconds<br />
[MAC] Learned 00:00:00:00:00:01 at switch 1, port 1<br />
[MAC] Learned 00:00:00:00:00:02 at switch 5, port 1<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.002827 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.001686 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.024533 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.017005 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.008883 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001075 seconds<br />
[RRM] Random path selected: [1, 2, 3, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 2), (3, 2, 3), (4, 3, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002241 seconds<br />
[RRM] Random path selected: [1, 3, 4, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 3), (4, 3, 1), (2, 4, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002308 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001848 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.005730 seconds<br />](https://caips.fiu.edu/wp-content/uploads/2025/06/1.Veronica.png)
Veronica Adetola
Pacific Northwest National Laboratory
Veronica Adetola (Senior member, IEEE) is a Chief Research Scientist and Team Leader at the Pacific Northwest National Laboratory. Her expertise and research interests include model-based and data-driven controls, optimization, and control co-design for grid-interactive energy efficient buildings, microgrids, cyber-physical power and energy systems and power electronics dominated systems. Before joining PNNL in 2019, she spent nearly a decade at the United Technologies Research Center (now Raytheon Technologies), where she both contributed to and led impactful projects for various UTC businesses and government-funded research programs. Dr. Adetola was a Board of Governors member of the IEEE Control Systems Society (CSS) in 2019 and currently serves as Associate Editor for IEEE Transactions on Control Systems Technology and Vice Chair for the CSS Technical Committee on Energy Systems. She earned her Ph.D. from Queen’s University, Canada, in 2008.
![2. Xavier sdn@onos-tutorial:/media/sf_THE_ONOS_SYNC/v6/RRM/v88888$ python3.8 -m ryu.cmd.manager --observe-links rrm_controller.py<br />
loading app rrm_controller.py<br />
loading app ryu.topology.switches<br />
loading app ryu.controller.ofp_handler<br />
instantiating app rrm_controller.py of PeriodicRRMController<br />
instantiating app ryu.topology.switches of Switches<br />
instantiating app ryu.controller.ofp_handler of OFPHandler<br />
[DPI] Registered switch 4<br />
[DPI] Registered switch 2<br />
[DPI] Registered switch 3<br />
[DPI] Registered switch 1<br />
[DPI] Registered switch 5<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5)]<br />
[Path] Precomputed 3 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000064 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000077 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000072 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000068 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000088 seconds<br />
[MAC] Learned 00:00:00:00:00:01 at switch 1, port 1<br />
[MAC] Learned 00:00:00:00:00:02 at switch 5, port 1<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.002827 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.001686 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.024533 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.017005 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.008883 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001075 seconds<br />
[RRM] Random path selected: [1, 2, 3, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 2), (3, 2, 3), (4, 3, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002241 seconds<br />
[RRM] Random path selected: [1, 3, 4, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 3), (4, 3, 1), (2, 4, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002308 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001848 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.005730 seconds<br />](https://caips.fiu.edu/wp-content/uploads/2025/06/2.-Xavier.png)
Xavier Francia
Power Delivery and Utilization (PDU) Sector at EPRI
Xavier Francia is a Sr. Principal Technical Leader of Cyber Security in the Power Delivery and Utilization (PDU) Sector at EPRI. He currently leads EPRI’s portfolio of cybersecurity projects for Cloud and Distributed Energy Resources (DERs), including electric vehicle infrastructure, energy storage systems, demand response systems, etc. Prior to joining EPRI, Xavier has worked for various electric and gas utilities across the United States, specializing in industrial control systems (ICS) cyber security. His experience includes cyber security engineering, architecture, and risk consultation expertise for several major electric OT systems and projects. His work includes development of mitigation strategies and design of technical security control requirements for both legacy and emerging electric applications, including transmission & distribution SCADA, Advanced Distribution Management Systems (ADMS), DER telemetry and control gateways, and DER Management Systems (DERMS). He has also led technical teams for several cyber security research projects, including Modeling & Simulation, Indicator & Remediation Language (IRL) development, and Machine-to-Machine Automated Threat Response (MMATR) research. Xavier holds a M.Sc. in Computer Systems and Software Design from Jacksonville State University and a B.Sc. in Nuclear & Radiological Engineering from Georgia Institute of Technology.
![3. tao sdn@onos-tutorial:/media/sf_THE_ONOS_SYNC/v6/RRM/v88888$ python3.8 -m ryu.cmd.manager --observe-links rrm_controller.py<br />
loading app rrm_controller.py<br />
loading app ryu.topology.switches<br />
loading app ryu.controller.ofp_handler<br />
instantiating app rrm_controller.py of PeriodicRRMController<br />
instantiating app ryu.topology.switches of Switches<br />
instantiating app ryu.controller.ofp_handler of OFPHandler<br />
[DPI] Registered switch 4<br />
[DPI] Registered switch 2<br />
[DPI] Registered switch 3<br />
[DPI] Registered switch 1<br />
[DPI] Registered switch 5<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5)]<br />
[Path] Precomputed 3 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000064 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000077 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000072 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000068 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000088 seconds<br />
[MAC] Learned 00:00:00:00:00:01 at switch 1, port 1<br />
[MAC] Learned 00:00:00:00:00:02 at switch 5, port 1<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.002827 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.001686 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.024533 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.017005 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.008883 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001075 seconds<br />
[RRM] Random path selected: [1, 2, 3, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 2), (3, 2, 3), (4, 3, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002241 seconds<br />
[RRM] Random path selected: [1, 3, 4, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 3), (4, 3, 1), (2, 4, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002308 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001848 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.005730 seconds<br />](https://caips.fiu.edu/wp-content/uploads/2025/06/3.-tao.jpg)
Tao Cui
Siemens Technology US, Future of Automation Technology Field
Tao Cui is a Senior Key Expert at Siemens, where he leads R&D initiatives in industrial automation, leveraging AI and advanced computing systems to revolutionize mission-critical applications. His work has been recognized with several prestigious awards, including the 2023 Edison Patent Award and a finalist position for the esteemed Werner von Siemens Award 2018. With over a decade of experience, Tao has managed high-impact projects with multi-million-dollar budgets, delivering innovative solutions across diverse industries. Tao holds a Ph.D. in Electrical and Computer Engineering from Carnegie Mellon University.
![4. Francisco sdn@onos-tutorial:/media/sf_THE_ONOS_SYNC/v6/RRM/v88888$ python3.8 -m ryu.cmd.manager --observe-links rrm_controller.py<br />
loading app rrm_controller.py<br />
loading app ryu.topology.switches<br />
loading app ryu.controller.ofp_handler<br />
instantiating app rrm_controller.py of PeriodicRRMController<br />
instantiating app ryu.topology.switches of Switches<br />
instantiating app ryu.controller.ofp_handler of OFPHandler<br />
[DPI] Registered switch 4<br />
[DPI] Registered switch 2<br />
[DPI] Registered switch 3<br />
[DPI] Registered switch 1<br />
[DPI] Registered switch 5<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5)]<br />
[Path] Precomputed 3 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000064 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000077 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000072 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000068 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000088 seconds<br />
[MAC] Learned 00:00:00:00:00:01 at switch 1, port 1<br />
[MAC] Learned 00:00:00:00:00:02 at switch 5, port 1<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.002827 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.001686 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.024533 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.017005 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.008883 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001075 seconds<br />
[RRM] Random path selected: [1, 2, 3, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 2), (3, 2, 3), (4, 3, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002241 seconds<br />
[RRM] Random path selected: [1, 3, 4, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 3), (4, 3, 1), (2, 4, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002308 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001848 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.005730 seconds<br />](https://caips.fiu.edu/wp-content/uploads/2025/06/4.-Francisco.png)
Francisco (Fran) Soutuyo
Director of Cybersecurity Architecture at the Tennessee Valley Authority (TVA)
Francisco (Fran) Soutuyo is the Director of Cybersecurity Architecture at the Tennessee Valley Authority (TVA). During his time at TVA, he has worked on various programs providing cybersecurity monitoring across TVA’s Corporate and OT Environments. He also led the effort in implementing a Zero Trust Architecture at TVA. Prior to joining TVA, Fran worked for NASA and the Department of Defense in Huntsville, AL; and with Fannie Mae and the World Bank in Washington DC. Fran has a B.S in Financial Management from Catholic University and a M.S. in Information Systems from George Washington University.
![5. adrian_chavez sdn@onos-tutorial:/media/sf_THE_ONOS_SYNC/v6/RRM/v88888$ python3.8 -m ryu.cmd.manager --observe-links rrm_controller.py<br />
loading app rrm_controller.py<br />
loading app ryu.topology.switches<br />
loading app ryu.controller.ofp_handler<br />
instantiating app rrm_controller.py of PeriodicRRMController<br />
instantiating app ryu.topology.switches of Switches<br />
instantiating app ryu.controller.ofp_handler of OFPHandler<br />
[DPI] Registered switch 4<br />
[DPI] Registered switch 2<br />
[DPI] Registered switch 3<br />
[DPI] Registered switch 1<br />
[DPI] Registered switch 5<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5)]<br />
[Path] Precomputed 3 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000064 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000077 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000072 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000068 seconds<br />
[Topology] Nodes=[3, 2, 4, 5, 1] Links=[(2, 3), (4, 3), (4, 2), (2, 4), (2, 1), (2, 5), (4, 5), (3, 2), (1, 2), (3, 4), (3, 1), (1, 3), (5, 4), (5, 2)]<br />
[Path] Precomputed 7 paths from s1 to s5<br />
[TIME] Path Calculation Time: 0.000088 seconds<br />
[MAC] Learned 00:00:00:00:00:01 at switch 1, port 1<br />
[MAC] Learned 00:00:00:00:00:02 at switch 5, port 1<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(5, 1, 2), (2, 3, 1), (1, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[FLOW] Path installed [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.002827 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.001686 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.024533 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.017005 seconds<br />
[RRM] Random path selected: [1, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=3): 0.008883 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001075 seconds<br />
[RRM] Random path selected: [1, 2, 3, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 2), (3, 2, 3), (4, 3, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002241 seconds<br />
[RRM] Random path selected: [1, 3, 4, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 3), (4, 3, 1), (2, 4, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=5): 0.002308 seconds<br />
[RRM] Random path selected: [1, 2, 4, 5]<br />
[RRM] Path mutated: [(1, 1, 2), (2, 1, 4), (4, 1, 2), (5, 3, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.001848 seconds<br />
[RRM] Random path selected: [1, 3, 2, 5]<br />
[RRM] Path mutated: [(1, 1, 3), (3, 1, 2), (2, 2, 3), (5, 2, 1)]<br />
[TIME] Shuffling Time (hops=4): 0.005730 seconds<br />](https://caips.fiu.edu/wp-content/uploads/2025/06/5.-adrian_chavez.jpg)
Adrian Chavez
Distinguished Member of Technical Staff at Sandia National Laboratories
Dr. Adrian Chavez is a Distinguished Member of Technical Staff at Sandia National Laboratories with over 25 years of experience. His research focuses on improving the security of energy delivery systems by introducing automated detection and response capabilities to mitigate cyber-physical threats in real-time. He is a Presidential Early Career Award for Scientists and Engineers (PECASE) recipient for his cybersecurity research that has resulted in several interoperable commercial products that are fielded in all 50 states.

