Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unreasonable latency in a lossy network #540

Open
realdream opened this issue Jul 13, 2018 · 0 comments
Open

unreasonable latency in a lossy network #540

realdream opened this issue Jul 13, 2018 · 0 comments

Comments

@realdream
Copy link

Bug report

Required Info:

  • Operating System:
    • Ubuntu 16.04
  • Installation type:
    • from source
  • Version or commit hash:
    • release bouncy
  • DDS implementation:
    • Fast-RTPS
  • Client library (if applicable):
    • rclcpp

QoS Setting

  • PUB:
    • history: KEEP_LAST
    • depth:300
    • reliability: RELIABLE
  • SUB:
    • history: KEEP_LAST
    • depth:300
    • reliability: RELIABLE

Steps to reproduce issue

1.run a minimal pub and sub node together in a single launch(the QoS setting is listed above)
2.the publisher will pub a std:string message every 500ms
3.then simulate some package lost in local loopback

sudo tc qdisc add dev lo root netem loss 30%

Expected behavior

with almost infinite bandwidth and low latency in local loop-back
the RELIABLE QoS setting should ensure the message to transmit on schedule

Abnormal behavior

  1. the sub node will not receive any message for about 5 seconds then suddenly get all the overdue message in a split second
    ``
    [INFO] [my_test]: Publishing: 'Hello, world! 600'
    [INFO] [my_test]: Publishing: 'Hello, world! 601'
    [INFO] [my_test]: Publishing: 'Hello, world! 602'
    [INFO] [my_test]: Publishing: 'Hello, world! 603'
    [INFO] [my_test]: Publishing: 'Hello, world! 604'
    [INFO] [my_test]: Publishing: 'Hello, world! 605'
    [INFO] [my_test]: Publishing: 'Hello, world! 606'
    [INFO] [my_test]: Publishing: 'Hello, world! 607'
    [INFO] [my_test]: Publishing: 'Hello, world! 608'
    [INFO] [my_test]: Publishing: 'Hello, world! 609'
    [INFO] [my_test]: Publishing: 'Hello, world! 610'
    [INFO] [my_test]: Publishing: 'Hello, world! 611'
    [INFO] [my_test]: I heard: 'Hello, world! 600'
    [INFO] [my_test]: I heard: 'Hello, world! 601'
    [INFO] [my_test]: I heard: 'Hello, world! 602'
    [INFO] [my_test]: I heard: 'Hello, world! 603'
    [INFO] [my_test]: I heard: 'Hello, world! 604'
    [INFO] [my_test]: I heard: 'Hello, world! 605'
    [INFO] [my_test]: I heard: 'Hello, world! 606'
    [INFO] [my_test]: I heard: 'Hello, world! 607'
    [INFO] [my_test]: I heard: 'Hello, world! 608'
    [INFO] [my_test]: I heard: 'Hello, world! 609'
    [INFO] [my_test]: I heard: 'Hello, world! 610'
    [INFO] [my_test]: I heard: 'Hello, world! 611'
    [INFO] [my_test]: Publishing: 'Hello, world! 612'
    [INFO] [my_test]: Publishing: 'Hello, world! 613'
    [INFO] [my_test]: Publishing: 'Hello, world! 614'
    [INFO] [my_test]: Publishing: 'Hello, world! 615'
    [INFO] [my_test]: Publishing: 'Hello, world! 616'
    [INFO] [my_test]: Publishing: 'Hello, world! 617'
    [INFO] [my_test]: Publishing: 'Hello, world! 618'
    [INFO] [my_test]: Publishing: 'Hello, world! 619'
    [INFO] [my_test]: Publishing: 'Hello, world! 620'
    [INFO] [my_test]: Publishing: 'Hello, world! 621'
    [INFO] [my_test]: Publishing: 'Hello, world! 622'
    [INFO] [my_test]: Publishing: 'Hello, world! 623'
    [INFO] [my_test]: Publishing: 'Hello, world! 624'
    [INFO] [my_test]: Publishing: 'Hello, world! 625'
    [INFO] [my_test]: Publishing: 'Hello, world! 626'
    [INFO] [my_test]: Publishing: 'Hello, world! 627'
    [INFO] [my_test]: Publishing: 'Hello, world! 628'
    [INFO] [my_test]: Publishing: 'Hello, world! 629'
    [INFO] [my_test]: I heard: 'Hello, world! 612'
    [INFO] [my_test]: I heard: 'Hello, world! 613'
    [INFO] [my_test]: I heard: 'Hello, world! 614'
    [INFO] [my_test]: I heard: 'Hello, world! 615'
    [INFO] [my_test]: I heard: 'Hello, world! 616'
    [INFO] [my_test]: I heard: 'Hello, world! 617'
    [INFO] [my_test]: I heard: 'Hello, world! 618'
    [INFO] [my_test]: I heard: 'Hello, world! 619'
    [INFO] [my_test]: I heard: 'Hello, world! 620'
    [INFO] [my_test]: I heard: 'Hello, world! 621'
    [INFO] [my_test]: I heard: 'Hello, world! 622'
    [INFO] [my_test]: I heard: 'Hello, world! 623'
    [INFO] [my_test]: I heard: 'Hello, world! 624'
    [INFO] [my_test]: I heard: 'Hello, world! 625'
    [INFO] [my_test]: I heard: 'Hello, world! 626'
    [INFO] [my_test]: I heard: 'Hello, world! 627'
    [INFO] [my_test]: I heard: 'Hello, world! 628'
    [INFO] [my_test]: I heard: 'Hello, world! 629'
    [INFO] [my_test]: Publishing: 'Hello, world! 630'
    [INFO] [my_test]: Publishing: 'Hello, world! 631'
@realdream realdream changed the title unreasonable latency in a lossy networks unreasonable latency in a lossy network Jul 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant