More Related Content

Similar to ROSCON Fr: is ROS 2 ready for production?(20)


ROSCON Fr: is ROS 2 ready for production?

  1. Thomas Moulard AWS RoboMaker, ROS 2 Security WG Lead Is ROS 2 ready for production? A look at ROS 2 robustness, security and performance. 2019-06-12
  2. What we will cover • AWS RoboMaker overview & architecture • ROS 2 D New Features andTools • New Quality of Service settings • Code Quality Improvements • Security • Performance
  3. Robotic Arms International Space Station Drones Education Water Home Self-Driving Vehicles Autonomous Walker Rover Robot landscape
  4. Robotic development is difficult and time consuming Hundreds of hours spent building components Many prototyping iterations Days spent setting up and configuring Months to building a realistic simulation environment Duplicated efforts integrating an application management system
  5. AWS RoboMaker capabilities Development Environment SimulationCloud Extensions for ROS Fleet Management
  6. What’s new in ROS 2 D?
  7. ROS 2 Quality of Service • Quality of Service settings allow fine-grained control over ROS 2 communication behavior. Each topic may have different settings. • Available policies are: • History • Depth • Reliability • Durability • Deadline (new in D!) • Lifespan (new in D!) • Liveliness (new in D!)
  8. New in D: Quality of Service / Deadline Send msg1Node 1 Receive msg1Node 2 msg1 Deadline Success! Message is received before deadline. Send msg2Node 1 Receive msg2Node 2 msg2 Deadline Failure! Message has not been received on time.
  9. New in D: Quality of Service / Lifespan Send msg1Node 1 Receive msg1Node 2 msg1 Lifespan Success! Message delivered before expiry date Send msg2Node 1 Drop msg2Node 2 msg2 Lifespan Failure! Message delivered after expiry date
  10. New in D: Quality of Service / Liveliness HeartbeatNode Node is considered alive Node is not considered alive Heartbeat Heartbeat Heartbeat HeartbeatNode Heartbeat
  11. New in D: Quality of Service / Try it yourself!
  12. ROS 2 Code Quality Improvements In ROS 2 D, we solved: • 4 memory leaks impacting production • 17 memory leaks impacting tests • 2 data races impacting Fast RTPS Fixed 89% of ASan detected defects. Nightly run of GCC sanitizers (ASan/TSan) to detect: • Lock Order Inversion (deadlocks) • Data Races • Unsafe Signal Handling • Invalid Memory Access • Memory Leaks More information:
  13. ROS 2Threat Model
  14. ROS 2 Security • ROS 1/2 footprinting Aztarna by Alias robotics • ROS 2 SecurityTesting Framework (WIP) • SROS 2 enables secure (signed or encrypted) communication over DDS. • Access Control can also be enabled. • Built on top of the DDS Security Extension. • Necessary to avoid data interception when communicating over an insecure network link (Ethernet). • For each node, a private key and a certificate is generated. More information: Join the ROS 2 Security Working group! Bi-weekly meetings to discuss ROS 2 security improvements. Meetings are announced on OSRF Discourse website.
  15. iRobot BenchmarkingTools montreal lyon hamburg osaka mandalay ponce barcelona geneva georgetown arequipa ROS 2 Crystal Performance on a Raspberry Pi 3. More information:
  16. Is ROS 2 Production Ready? With the release of the first LTS ROS 2 release, ROS 2 ecosystem is maturing quickly! • Middleware improvements • QoS features (deadline, lifespan, liveliness) • Code Quality • Nightly runs to detect memory and concurrency bugs early • Security • Secure communication using SROS 2 • Additional security tooling in development by Alias Robotics and AWS • Performance • iRobot Performance Tools
  17. Thank you! We’re hiring!