現(xiàn)在大家的電子設(shè)備基本上都用上了Wi-Fi 、藍(lán)牙,線設(shè)備也越來越流行,再也不用面對(duì)雜亂無章的線纜,這似乎是一件好事,但無線也帶來了一個(gè)又一個(gè)的問題,本文作者曾經(jīng)是一個(gè)無線的倡導(dǎo)者,本文作者分析了無線存在的各種問題,說明了為什么他已經(jīng)“叛變”,重回有線陣營,他說,對(duì)wifi、藍(lán)牙和相關(guān)協(xié)議了解得越多,他就越相信,無線往往比有線更糟糕。
我曾經(jīng)是一個(gè)反對(duì)各種線纜的斗士。我討厭雜亂無章的電線,而且我還有不自覺地咬耳機(jī)線的壞習(xí)慣。但當(dāng)我遇到一個(gè)又一個(gè)無線帶來的棘手錯(cuò)誤時(shí),尤其是在這段遠(yuǎn)程工作期間,我的觀念改變了,對(duì)wifi、藍(lán)牙和相關(guān)協(xié)議了解得越多,我就越相信,無線往往比有線更糟糕。
舉個(gè)例子:大多數(shù)人,當(dāng)他們的視頻通話出現(xiàn)卡頓時(shí),都會(huì)怪他們的互聯(lián)網(wǎng)服務(wù)提供商。這是可以理解的,因?yàn)榇蠖鄶?shù)互聯(lián)網(wǎng)服務(wù)提供商都是價(jià)格過高的寡頭壟斷者,他們的軟件很難用,客戶服務(wù)也很糟糕。然而,當(dāng)我每次我?guī)椭鷦e人搞清楚他們的網(wǎng)絡(luò)連接問題的源頭,罪魁禍?zhǔn)淄际撬麄兊膚ifi。而通常情況下,最簡單的解決方法就是接根網(wǎng)線。
Wifi(還有藍(lán)牙等)通過讓你覺得 “它就是好用 ”來騙你。但如果你調(diào)查一下,你往往會(huì)發(fā)現(xiàn),無線鏈接是在降級(jí)的狀態(tài)下運(yùn)行的,就像CPU的降頻,其性能比同等的有線鏈接差很多。由于這種降級(jí)是悄無聲息發(fā)生的,所以看上去往往不是無線的問題,相反,你很可能會(huì)得出結(jié)論,是你的設(shè)備/軟件/自己的問題。
我一次又一次地看到人們解決一些與無線相關(guān)的問題,然后說:“哇,我不知道這能好多少!”
最近,我終于怒氣沖沖地把辦公桌上的所有無線設(shè)備都換成了有線設(shè)備。雖然我不得不在線纜管理上投入一些資金(并努力克服我咀嚼耳機(jī)線的習(xí)慣),但我能夠達(dá)到和無線幾乎同樣的整潔程度,而且可靠性、質(zhì)量和速度都要好得多。我再也不用擔(dān)心我的設(shè)備無法配對(duì)、電池耗盡,或者在直播演講時(shí)出現(xiàn)卡頓,大大降低了設(shè)備帶來的痛苦。
管理我桌上的線纜。
下面的線纜管理較少。
為了說明我所說的痛苦程度,下面我將介紹我在處理無線協(xié)議上遇到的一些微妙的、難以察覺的但卻很嚴(yán)重的問題。如果你覺得我說的有道理,你也可以試一下放棄無線,你也可以弄清楚你是否已經(jīng)成為無線陷阱的受害者。
Wifi
干擾。如果多個(gè)無線網(wǎng)絡(luò)在同一個(gè) “頻道”(無線電頻段)上運(yùn)行,它們的傳輸可能會(huì)相互干擾。當(dāng)這種情況發(fā)生時(shí),你的設(shè)備需要重新發(fā)送相同的信息,這將使你的wifi速度變慢。
你可能認(rèn)為這可以通過讓路由器自動(dòng)找出最不容易受到干擾的信道來解決,但很多路由器似乎在這方面做的相當(dāng)糟糕。(另外,舊的2.4GHz wifi協(xié)議只允許使用三個(gè)不重疊的信道)。
這意味著在密集的地區(qū)(如公寓樓),路由器經(jīng)常會(huì)選擇一個(gè)不好的信道,最后互相干擾。如果你的路由器或設(shè)備遇到干擾,它沒有辦法通知你,所以只有當(dāng)你知道你的路由器 “應(yīng)該 ”有多快,并注意到它比較慢時(shí),你才會(huì)知道。
死角。如果你離路由器太遠(yuǎn),你的電腦可能無法穩(wěn)定地接收到路由器發(fā)送的信號(hào)。多遠(yuǎn)是 “太遠(yuǎn) ”也受到很多因素的影響,包括墻壁或天花板。除非你很了解無線電波如何與建筑材料相互作用,否則很難預(yù)測(cè)你的死角在哪里。
最糟糕的是,許多死角并不是完全死的:你的電腦和路由器會(huì)在放棄之前多次嘗試重傳每個(gè)數(shù)據(jù)包,而且往往最終會(huì)通過。如果這就是你遇到的情況,這就不是死角,這是一個(gè) “慢區(qū)”,這里能連上網(wǎng),但非常不穩(wěn)定。
當(dāng)然,除非你密切關(guān)注你的網(wǎng)絡(luò)性能統(tǒng)計(jì),以及它們與你的空間位置的關(guān)系,否則你永遠(yuǎn)不會(huì)注意到一個(gè)慢區(qū)。如果你注意到了什么,那就是有時(shí)你的網(wǎng)絡(luò)會(huì)隨機(jī)地比其他時(shí)候更糟糕。
輪詢(Polling)。電腦上的任何程序都可以要求你的無線網(wǎng)卡列出附近的網(wǎng)絡(luò)。這將導(dǎo)致它進(jìn)入 “輪詢模式”,在這種模式下,它花費(fèi)較少的時(shí)間傳輸數(shù)據(jù),而更多的時(shí)間接收路由器廣播他們的網(wǎng)絡(luò)信息(路由器不能在同一時(shí)間傳輸和接收)。因此,它會(huì)導(dǎo)致突然爆發(fā)的網(wǎng)絡(luò)延遲,例如,會(huì)導(dǎo)致你的視頻通話卡頓或停止幾秒鐘。
大多數(shù)程序員沒有意識(shí)到無線網(wǎng)絡(luò)輪詢會(huì)影響網(wǎng)絡(luò)性能,所以他們要求操作系統(tǒng)瘋狂地進(jìn)行輪詢。我已經(jīng)被這種情況折磨過很多次了。
最惡劣的例子,是當(dāng)我注意到我的視頻通話有時(shí)卡頓有著奇怪的規(guī)律頻率。下面是我追查罪魁禍?zhǔn)椎那圻^程:
我每隔一秒就給Ping的路由器一次,持續(xù)大約10分鐘,然后把輸出結(jié)果用Excel繪制出來,確認(rèn)慢速ping的間隔正好是30秒。這讓我猜測(cè)可能是軟件問題。
我在Facebook上求助,有人推薦啟用macOS無線調(diào)試日志。
我啟用了調(diào)試日志,并注意到幾個(gè)應(yīng)用程序,當(dāng)我打開它們時(shí),程序會(huì)請(qǐng)求網(wǎng)絡(luò)掃描,有時(shí)與增加的ping延遲相關(guān)。
把范圍縮小到這幾個(gè)應(yīng)用后,我在AskDifferent(蘋果相關(guān)的問答社區(qū))上詢問如何阻止這些軟件這樣做。
在AskDifferent上有人將問題追蹤到Qt上,Qt是一個(gè)制作用戶界面的軟件框架,被數(shù)百萬用戶的應(yīng)用所使用。
Qt包含了一個(gè)組件,它每隔30秒就會(huì)對(duì)網(wǎng)絡(luò)進(jìn)行一次輪詢,每30秒就會(huì)導(dǎo)致幾乎所有使用網(wǎng)絡(luò)的Qt應(yīng)用降低你的wifi性能。
已經(jīng)有多個(gè)關(guān)于這個(gè)問題的bug報(bào)告,其中一個(gè)被工程師標(biāo)記為 “已解決”,因?yàn)樗麄冊(cè)试S用戶使用一個(gè)環(huán)境變量來禁用輪詢。
當(dāng)然,這是一個(gè)沒啥用的 “解決方案”,因?yàn)榇蠖鄶?shù)用戶不會(huì)意識(shí)到他們的wifi降級(jí)了;意識(shí)到的用戶也不會(huì)意識(shí)到這是Qt的錯(cuò);哪怕你找到了問題所在,仍然很難在谷歌上找到合適的修復(fù)方法(更不用說實(shí)現(xiàn)它了,除非你會(huì)編程)。
這種行為是如此的對(duì)用戶不友好,而 “解決方案 ”又是如此的可笑,似乎很可能是Qt的開發(fā)者們沒有意識(shí)到問題的嚴(yán)重性,我猜它毀掉了大約一百萬人的視頻通話體驗(yàn),因?yàn)椋绊懥艘呀?jīng)被下載了7500萬次的qBittorrent。這一百萬人中的大多數(shù)人可能還沒有足夠的技術(shù)來弄清楚如何 “將QT_BEARER_POLL_TIMEOUT環(huán)境變量設(shè)置為-1”。(幸運(yùn)的是,在2017年,在最初的bug報(bào)告三年后,他們終于意識(shí)到他們應(yīng)該停止輪詢并以正確的方式修復(fù)bug)。
Qt是最嚴(yán)重的問題,但它不是唯一的問題。即使是macOS也有一個(gè)bug,當(dāng)你打開Spotlight時(shí),同樣的事情也會(huì)發(fā)生(我經(jīng)常在視頻通話時(shí)這樣做,如果有人讓我看一個(gè)特定的文件,或者如果我想去在視頻通話的時(shí)候去開個(gè)網(wǎng)頁)。我不得不通過禁用Spotlight結(jié)果類型來解決這個(gè)問題,直到我發(fā)現(xiàn)是哪一個(gè)類型導(dǎo)致了這個(gè)問題。所以看來連蘋果自己的開發(fā)者都沒有意識(shí)到wifi輪詢是一種危害。
藍(lán)牙音頻
高延遲。大多數(shù)藍(lán)牙耳機(jī)都有150-300ms的延遲(我的電腦從網(wǎng)絡(luò)接收音頻到耳機(jī)發(fā)出聲音之間的時(shí)間)。這意味著,如果我和紐約的朋友聊天,音頻數(shù)據(jù)從他們到我的電腦需要50ms,而從我的電腦到我的耳朵需要200ms-4倍的時(shí)間。由于高延遲破壞了談話的自然流程,我希望盡可能地消除延遲。
如果藍(lán)牙耳機(jī)支持正確的 “編解碼器”,比如 “AptX低延遲”,就有可能實(shí)現(xiàn)低延遲的藍(lán)牙耳機(jī)。當(dāng)然,除了理論上支持編解碼器外,它們還得同意你的電腦使用它,這有時(shí)會(huì)失敗(檢查正在使用的編解碼器的選項(xiàng)埋藏在各種隱藏的菜單和設(shè)置中)。
低質(zhì)量。與編解碼器問題有關(guān),許多藍(lán)牙設(shè)備在關(guān)閉麥克風(fēng)時(shí),會(huì)播放高質(zhì)量的音頻,但在打開麥克風(fēng)時(shí),就會(huì)降格為低質(zhì)量得多的音頻。如果你有一個(gè)藍(lán)牙耳機(jī),你可以自己測(cè)試一下:用它播放音樂,然后打開你的麥克風(fēng)設(shè)置到顯示麥克風(fēng)輸入音量的頁面。你可能會(huì)聽到音頻被切斷一秒鐘,然后以較低的質(zhì)量返回。即使是你可能期望的高端設(shè)備也會(huì)發(fā)生這種情況,比如我的Airpods Pro + 2018年的Macbook Air)。
藍(lán)牙的其他問題
藍(lán)牙bug。盡管現(xiàn)在幾乎所有的電腦都內(nèi)置了藍(lán)牙,但許多藍(lán)牙配件還附帶了使用不同協(xié)議的專有適配器。(例如Jabra耳機(jī)、這款耳機(jī)麥克風(fēng)。)這些適配器顯然使用了不同形式的無線傳輸,因?yàn)樗{(lán)牙耗電量大,增加了延遲,而且可靠性較低。
例如,在我的Mac的內(nèi)置藍(lán)牙上,我的鼠標(biāo)(羅技MX Master)顯示出明顯的卡頓,跳動(dòng),而不是平滑移動(dòng)。我在三臺(tái)不同的Mac上都遇到過這種情況,所以這似乎很可能是一個(gè)軟件問題。當(dāng)我切換到使用羅技的適配器時(shí),卡頓就消失了。
同樣,當(dāng)連接到 Mac 藍(lán)牙時(shí),我的 Jabra Evolve 75 耳機(jī)會(huì)經(jīng)常出現(xiàn)麥克風(fēng)或聲音音量降低的情況。它(大多數(shù)情況下)在自己的適配器上工作正常。
我不知道該把這些問題歸咎于Jabra/Logitech還是蘋果(或藍(lán)牙標(biāo)準(zhǔn)機(jī)構(gòu))。但無論如何,當(dāng)設(shè)備制造商放棄藍(lán)牙,轉(zhuǎn)而使用其他需要每個(gè)設(shè)備配備一個(gè)適配器的協(xié)議時(shí),我們知道藍(lán)牙已經(jīng)失敗了。
藍(lán)牙最初的目標(biāo)是將不同的無線設(shè)備統(tǒng)一在一個(gè)無線電和協(xié)議中,就像哈拉爾藍(lán)牙王(藍(lán)牙這個(gè)名稱的來源)統(tǒng)一丹麥,終結(jié)海盜時(shí)代一樣。然而在現(xiàn)實(shí)中,我最近不得不買了一個(gè)USB集線器,只為我的鍵盤、鼠標(biāo)、耳機(jī)和麥克風(fēng)的適配器。
可靠性。即使是專有適配器,無線設(shè)備的可靠性也遠(yuǎn)不如有線設(shè)備。例如,我在上文中寫道,我的羅技MX Master在切換到專有適配器后工作正常,但這并不完全正確:它工作了一段時(shí)間,然后有一天,它又開始無緣無故地卡頓。那一天,我終于下定決心,扔掉了桌子上的無線設(shè)備。
我遇到的其他藍(lán)牙bug,需要我每周取消配對(duì)和重新配對(duì)幾次。例如,我的AirPods有時(shí)會(huì) “不同步”,這樣一個(gè)耳機(jī)比另一個(gè)提前幾毫秒播放音頻,造成一種奇怪和非常令人不愉快的回聲效果。
干擾。可靠性差的一個(gè)可能原因是藍(lán)牙和2.4GHz wifi會(huì)相互干擾。就像wifi的干擾一樣,如果你的設(shè)備遇到干擾,永遠(yuǎn)不會(huì)得到設(shè)備的警告;你只會(huì)感受到突然的卡頓。
充電。這不是藍(lán)牙本身的錯(cuò),但使用太多無線設(shè)備的一個(gè)缺點(diǎn)是,它真的很煩人,要記住讓設(shè)備全部充電。我往往在關(guān)鍵的時(shí)候沒電了,例如在視頻通話時(shí)。
結(jié)論
這些問題大多有幾個(gè)共同點(diǎn)。
不是完全不能用,而是體驗(yàn)不好。這意味著我沒有立即注意到問題的存在。
更加復(fù)雜的是,我不知道這個(gè)設(shè)備 “應(yīng)該 ”如何工作,所以我花了很長時(shí)間才注意到它處于降級(jí)的狀態(tài)。
即使我意識(shí)到了問題,也很難或不可能解決它,因?yàn)槲也恢勒_的方法(或者解決方法不存在)。
我希望我的設(shè)備是可預(yù)測(cè)的,具有一致的性能。無線協(xié)議本質(zhì)上更復(fù)雜(因?yàn)樵S多設(shè)備共享同一網(wǎng)絡(luò)空間),并且有更多不同的出問題的方式,所以它們比有線更難預(yù)測(cè)。對(duì)我來說,無線帶來的便利性往往不值得付出這種代價(jià)。
我還是會(huì)在明顯值得的情況下使用無線設(shè)備,例如,我的筆記本電腦用wifi,因?yàn)樾枰弥教幾撸业?a target="_blank">手機(jī)用無線充電器,因?yàn)槲也⒉蛔非蟪潆娝俣取5珜?duì)于嚴(yán)肅的工作來說,我會(huì)花時(shí)間去擺弄電纜布線,給所有東西接上線。
這讓我想知道,如果我們把目前花在無線上的10%的精力,投入到巧妙的有線解決方案上,世界會(huì)是什么樣子。我敢打賭,很多依賴無線的活動(dòng),比如視頻通話、游戲等,會(huì)變得更加愉快。
? ? ? ?責(zé)任編輯:pj
評(píng)論
查看更多