{"id":35851,"date":"2022-05-11T14:50:39","date_gmt":"2022-05-11T18:50:39","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=35851"},"modified":"2022-05-11T14:50:39","modified_gmt":"2022-05-11T18:50:39","slug":"usb-c-hubs-breaking-ethernet-networks","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2022\/05\/11\/usb-c-hubs-breaking-ethernet-networks\/","title":{"rendered":"USB-C Hubs Breaking Ethernet Networks"},"content":{"rendered":"<p><a href=\"https:\/\/www.reddit.com\/r\/UsbCHardware\/comments\/qo6r3f\/powered_usbc_hubs_which_are_confirmed_not_to_spam\/\">algalgal<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.reddit.com\/r\/UsbCHardware\/comments\/qo6r3f\/powered_usbc_hubs_which_are_confirmed_not_to_spam\/\"><p>I recently learned that some USB-C hubs, with power pass through and an Ethernet port, seem to destabilize a wired network when they are connected to ethernet and to power but not to a computer. They do this by flooding the network with bad traffic (or maybe PAUSE frames).<\/p><p>[&#8230;]<\/p><p>It sounds unlikely but it seems like a longstanding issue if you look for it.<\/p><p>This carefully researched 2018 reddit post <a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/an3nyf\/pass_though_power_usb_type_c_hubs_cause_broadcast\/\">does the best job documenting the issue in depth<\/a>, manifesting on a TOTO USB-C hub. This blog post <a href=\"https:\/\/lucumr.pocoo.org\/2020\/7\/6\/usb-c-network-hubs\/\">describes the same issue with Aukey and Flyland hubs<\/a>. This 2020 forum post <a href=\"https:\/\/community.netgear.com\/t5\/Orbi\/Spanning-Tree-problem-with-Orbi-RBR50\/m-p\/1910466#M91701\">describes the issue with an Orbi router<\/a>. More recently, this 2021 forum post describes it <a href=\"https:\/\/www.dell.com\/community\/Monitors\/U3421WE-Ethernet-causes-network-storm\/td-p\/7786590\">in a Dell monitor&rsquo;s embedded USB-C hub<\/a><\/p><p>I believe I&rsquo;m seeing it myself. My new Anker PowerExpand 8-in-1&rsquo;s Ethernet port lights up with a lot of &ldquo;phantom&rdquo; network activity even when there&rsquo;s no computer attached. Then later, a computer and other devices plugged into the same network switch as that USB-C hub will lose wired connectivity. Restarting the switch resolves the problem. But the problem is also solved by never leaving the hub USB-C powered and connected without a computer!<\/p><\/blockquote>\n\n<p>Via <a href=\"https:\/\/twitter.com\/Freerunnering\/status\/1522271084124454914\">Kyle Howells<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/Freerunnering\/status\/1522271084124454914\">\n<p>I&rsquo;ve had this problem with 3 different ethernet adapters. If I leave the ethernet USB hub plugged into the ethernet switch it will break the switch sending any network traffic at all unless I unplug it &amp; reboot the switch.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/www.reddit.com\/r\/UsbCHardware\/comments\/qo6r3f\/powered_usbc_hubs_which_are_confirmed_not_to_spam\/hjm5agq\/?utm_source=reddit&amp;utm_medium=web2x&amp;context=3\">KittensInc<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.reddit.com\/r\/UsbCHardware\/comments\/qo6r3f\/powered_usbc_hubs_which_are_confirmed_not_to_spam\/hjm5agq\/?utm_source=reddit&amp;utm_medium=web2x&amp;context=3\"><p>The interesting thing is that the <em>hub<\/em> doesn&rsquo;t seem to be anything explicitly <em>wrong<\/em> here.<\/p>\n<p>[&#8230;]<\/p><p>USB is a bit flaky, and sometimes the connection burps and drops out for a fraction of a second. You don&rsquo;t really want to lose any data, so you just add a small buffer on the adapter so you can resume when the connection comes back.<\/p><p>But doing that is expensive, and you still run the risk of the buffer filling up. Turns out Ethernet supports a &ldquo;pause&rdquo; command which tells the switch to halt sending new data for a bit!<\/p>\n<p>[&#8230;]<\/p><p>Besides, it&rsquo;s completely harmless.<\/p><p>Well, until someone doesn&rsquo;t really read the Ethernet specs when designing switches. Turns out some switches will honor the pause command, <em>and then forward it to all other device<\/em>. A blatant violation of the spec, but nobody notices because the pause thing was specified in 1997 and most people forgot about it because it turned out to be pretty useless. And of course the devices they forward it to are honoring the pause commands, so they stop sending data altogether.<\/p><\/blockquote>","protected":false},"excerpt":{"rendered":"<p>algalgal: I recently learned that some USB-C hubs, with power pass through and an Ethernet port, seem to destabilize a wired network when they are connected to ethernet and to power but not to a computer. They do this by flooding the network with bad traffic (or maybe PAUSE frames).[&#8230;]It sounds unlikely but it seems [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2022-05-11T18:50:42Z","apple_news_api_id":"a90e4e3f-cff6-4b2c-9a76-6a8ba6e2a42a","apple_news_api_modified_at":"2022-05-11T18:50:42Z","apple_news_api_revision":"AAAAAAAAAAD\/\/\/\/\/\/\/\/\/\/w==","apple_news_api_share_url":"https:\/\/apple.news\/AqQ5OP8_2SyyadmqLpuKkKg","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[1530,762,452,30,476,175,1154],"class_list":["post-35851","post","type-post","status-publish","format-standard","hentry","category-technology","tag-anker","tag-ethernet","tag-hardware","tag-mac","tag-networking","tag-usb","tag-usb-c"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/35851","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=35851"}],"version-history":[{"count":1,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/35851\/revisions"}],"predecessor-version":[{"id":35852,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/35851\/revisions\/35852"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=35851"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=35851"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=35851"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}