SQM issues with Ring Doorbell

Hi There,

I am a new user to LEDE, so be sure to ELI5. I have a TPLink Archer C5 v2 running the current factory install + SQM.

I installed it to help me manage the crappy bandwidth I have, which coincidentally is the best I can buy at my home. ( I can only get Century link... and the fastest they will sell me is DSL... 700kbps up/13mbps down ). Most of the time my issues can be described as textbook Buffer Bloat because I have 3 kids, and it seems like the internet is always slow.

SQM handles the issue beautifully, with the exception of 1 thing. I own a ring doorbell. When I have SQM disabled, the Ring doorbell always works... Notifications , video and audio. ( albeit Poor quality video and choppy audio though ).

When I enable SQM, I continue to get notifications from Ring, however the video is completely black. I have SQM configured as described on the setup pages, and have tried all of the different Queue disciplines.

Ring's support pages basically say that if this happens, there isnt enough bandwidth.

Anyone have any advice? Thanks!

I agree with Ring.

You do not have enough bandwidth to do much more than web surfing and email.

Post screenshots of the three tabs in SQM so we can see what your configuration looks like.

1 Like

As I recall...96 Kbps is approximately FM-quality audio slightly...a video stream is 750 Kbps for 360p videos...

You likely don't have enough upload bandwidth.

This would be helpful.

Is it really the case that this device uploads your video to the internet? Because there should be PLENTY of bandwidth to stream video via wifi between two devices on your LAN, and I assume the doorbell thingy is on the LAN as is the device you're receiving the video on. So it should only bottleneck if they first upload "to the cloud" and then your phone downloads from their server, which is about the stupidest thing I've heard all day and requires Ring to purchase bandwith proportional to their number of customers, and seems like a total waste of resources. EDIT: unless of course there's no receiver device on the LAN in which case you might want to proxy the video to a remote phone or whatever... but it seems like that shouldn't be the default.

See: https://ring.com/

Check it out, that's the point of the product...you can answer your doorbell from virtually "anywhere."

Yeah, I added an edit it seems to me like the device should be able to find a receiver on the local LAN if it's there. If not, obviously you'd have to upload to the internet to get it to wherever the receiver is, but if doorbell and receiver are both on the same LAN and doorbell is sending to the internet and then receiver is downloading from the internet... wow, that's a lousy design.

1 Like

AAAH! I understand...that does add complexity to the OP's possible bandwidth situation as well...

Please post the output of:

cat /etc/config/sqm
tc -d qdisc
tc -s qdisc

It might also be intersting to use wireshark/tcpdump to create a packetcapture with someone ringing the ring bell and you trying to watch the video feed, I would especially look for the DSCP marking on the packets.

As a quick and dirty test you could:

  1. Make sure the qdisc statistics counters are reset
    /etc/init.d/sqm stop ; /etc/init.d/sqm start ; tc -s qdisc

  2. Perform your Ring test (try to let the network be idle otherwise, does not need to be totally quiet, but it will be easier to compare the statistics outputs if the main traffic difference was driven by your test)

  3. Get the statistics counters after the test
    tc -s qdisc

and please post the output here (preferably as "preformatted text").
Assuming that you use cake this should show how many packets are dropped during the test.

Best Regards

P.S.: Most of the above requires you to log into your router from a terminal window, in case you are unsure how to do that, please have a look at https://lede-project.org/docs/guide-quick-start/sshadministration for a quick reminder.

Since most five year olds I know can neither read nor write, I am simply ignoring the ELI5 (and before @jwoods' expansion of the abbreviation I was completely ignorant of this, is thjs really a thing?).

From the Ring FAQ...

Can my Ring device run only within my internal Wi-Fi LAN?

Ring products require internet connectivity to connect and send push notifications to your device. Connecting ensures that your Ring device can manage sessions and reach your smartphone or tablet whether you are at home or away.

Means "explain like I'm 5".

User likely has no idea how to do any of that.

Screen shots of the 3 SQM tabs should be easier.

Maybe, but this will also lack a bit of the information that would be nice to have :wink:

Yeah, I agree about my crappy internet. I search for other options ( home LTE, or wireless broadband ) about once a month. It is just wierd that it works with my crappy internet with no SQM, but doesnt work when its enabled.

I know how to navigate a terminal and ssh... I just need to figure out how to ssh into the router as I havent set that up. Probably take a little time reading documentation.

In the meantime I grabbed some screenshots. I have a speedtest from dslreports with both SQM and without.

Hmm. I can only attach one at a time.

19 AM

46 AM

09 AM

10 AM

59 AM

Can you log into the ADSL-modem? If yes it would be great if you could post the stats it presents, at least the up- and downstream synchronization values.

The goodput values reported in the test without SQM seem to indicate a sync value around:

assuming standard PPPoE on the wire size of a packet: 53*(ceil((1500 + 6 + 6 + 2 + 18) / 48)) = 1696

15990 / ((1500-8-20-20)/(1696)) = 18677.02 Kbps
731 / ((1500-8-20-20)/(1696)) = 853.84 Kbps

In that case you should be able to reach 800 Kbps for the uplink shaper and 18677.02 * 0.85 = 15875.467 for the downlink with hopefully still retaining an A or A+ bufferbloat rating.

One big difference between no SQM and SQM on your link is the considerable bandwidth sacrifice you give, which might bring Ring from marginally working to marginally not working, though I really have too little data for more than pure speculation on the real issue, but I believe it might be the time to try to optimize your overhead settings in sqm.

Best Regards

When I was tuning Fairpoint DSL on the EA8500 here, with the Fairpoint modem configured in (Bridged) mode - using (40) for the Per Packet Overhead gave the best results & allowed me to set the Egress *Upload speed higher.

  • Dunno if this applies to your config., just a thought.

The first DSLReports screen shot with all A's indicates your configuration is pretty good.

The problem is you just don't have the horsepower to run everything you want to run.

BroadbandNow has a nice tool for finding Internet providers by zip code. You might see if there is someone you missed...

ok, I twiddled the settings based on input from above, trying to get the throughput up at the same time keeping straight A's

Here is the info I gathered from SSH:

root@LEDE:~# cat /etc/config/sqm

config queue 'eth1'
	option qdisc_advanced '0'
	option interface 'eth0'
	option debug_logging '0'
	option verbosity '5'
	option linklayer 'atm'
	option qdisc 'cake'
	option script 'piece_of_cake.qos'
	option overhead '40'
	option upload '850'
	option download '16875'
	option enabled '1'

.

root@LEDE:~# tc -d qdisc
qdisc noqueue 0: dev lo root refcnt 2 
qdisc cake 8040: dev eth0 root refcnt 2 bandwidth 850Kbit besteffort triple-isolate rtt 100.0ms raw total_overhead 14 hard_header_len 14 
 linklayer atm overhead 40 mtu 2047 tsize 512 
qdisc ingress ffff: dev eth0 parent ffff:fff1 ---------------- 
qdisc fq_codel 0: dev eth1 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms ecn 
qdisc noqueue 0: dev br-lan root refcnt 2 
qdisc noqueue 0: dev br-wan root refcnt 2 
qdisc noqueue 0: dev wlan1 root refcnt 2 
qdisc cake 8041: dev ifb4eth0 root refcnt 2 bandwidth 16875Kbit besteffort triple-isolate wash rtt 100.0ms raw total_overhead 14 hard_header_len 14 
 linklayer atm overhead 40 mtu 2047 tsize 512 
root@LEDE:~# tc -s qdisc
qdisc noqueue 0: dev lo root refcnt 2 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0 
qdisc cake 8040: dev eth0 root refcnt 2 bandwidth 850Kbit besteffort triple-isolate rtt 100.0ms raw total_overhead 14 hard_header_len 14 
 Sent 5761100 bytes 12246 pkt (dropped 335, overlimits 13949 requeues 0) 
 backlog 0b 0p requeues 0 
 memory used: 155232b of 4Mb
 capacity estimate: 850Kbit
                  Tin 0
  thresh        850Kbit
  target         21.4ms
  interval      116.4ms
  pk_delay       25.4ms
  av_delay        4.2ms
  sp_delay         11us
  pkts            12581
  bytes         6173334
  way_inds            8
  way_miss          182
  way_cols            0
  drops             335
  marks               1
  sp_flows            1
  bk_flows            1
  un_flows            0
  max_len          1749

qdisc ingress ffff: dev eth0 parent ffff:fff1 ---------------- 
 Sent 5507563 bytes 18331 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0 
qdisc fq_codel 0: dev eth1 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms ecn 
 Sent 907955430 bytes 978775 pkt (dropped 0, overlimits 0 requeues 3) 
 backlog 0b 0p requeues 3 
  maxpacket 1506 drop_overlimit 0 new_flow_count 2 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc noqueue 0: dev br-lan root refcnt 2 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0 
qdisc noqueue 0: dev br-wan root refcnt 2 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0 
qdisc noqueue 0: dev wlan1 root refcnt 2 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0 
qdisc cake 8041: dev ifb4eth0 root refcnt 2 bandwidth 16875Kbit besteffort triple-isolate wash rtt 100.0ms raw total_overhead 14 hard_header_len 14 
 Sent 7777856 bytes 18331 pkt (dropped 0, overlimits 881 requeues 0) 
 backlog 0b 0p requeues 0 
 memory used: 15872b of 4Mb
 capacity estimate: 16875Kbit
                  Tin 0
  thresh      16875Kbit
  target          5.0ms
  interval      100.0ms
  pk_delay        527us
  av_delay        113us
  sp_delay          8us
  pkts            18331
  bytes         7777856
  way_inds          226
  way_miss          173
  way_cols            0
  drops               0
  marks               0
  sp_flows            3
  bk_flows            1
  un_flows            0
  max_len          1749

And here is the speedtest.01 PM

Video still does not work. I will do the test suggested above and post results.