字體:小 中 大 | |
|
|
2019/01/25 19:09:16瀏覽2312|回應1|推薦4 | |
5G是目前很熱的一個主題。 傻蛋當然要來潑潑冷水啦!
傻蛋接過中華電信的推銷電話廣告好幾次。 把目前的光世代由60M升級到100M,費用只增加約一成喔! 如果就費用比例來看,似乎很划算。 但傻蛋並沒有一絲一毫的心動呀!
為什麼?
首先呢,60M的頻寬已經很夠用了,很少能用到上限頻寬。 其次,當網路速度慢的時候,慢的,也不是自己這邊頻寬不夠,而是網站服務器端的頻寬或運算處理能力有瓶頸。 所以說呢,當視頻網站在Lag的時候,是用戶加頻寬能改善嗎? 不是,是提供視頻服務的供應商要加頻寬。 以前傻蛋只有碰過一次加頻寬感覺很明顯的。 那是由2M升級到50M的時候,喔,主要的不是下載的頻寬,而是上傳頻寬增加。 那時候玩一個網路遊戲,不知道遊戲開發商是怎樣,搞出很自虐的設計,有一個技能組合,可以每秒鐘做廿次攻擊判定。 對啊,一秒砍20刀。 然而實際上呢,通常能砍個四五刀就很好了。 有種卡住的感覺。 上傳頻寬大幅加大後,真的能一秒砍廿下,那一排黏在一起的數字飄出來,真的是蠻爽的啦。 但除此之外,網路的使用,通常覺得慢,都和自己的網速沒多少關係。 忙的都是服務器端,和客戶端影響不大。 所以呢,這個再升級看起來好像有性價比,但其實只是浪費錢而已。
速度這回事,是連線雙方的事。 自己這邊的瀏覽器或應用程式客戶端和服務器主機建立連線。 我的下載速度主要取決於對方主機的上傳速度。 我的上傳和對方的下載速度有關。 對方上傳速度已飽和,我的下載頻寬空閒再多,也派不上用場,不會變快。 我的上傳頻寬不夠,對方的下載頻寬剩再多,速度也同樣快不起來。 當然還有些複雜點的,如有些中繼服務器會提供緩存快取機制。 同樣的靜態內容請求,如果快取有,可以不用去主機請求,那,就會感覺變快。 但這些網路速度的快慢,雖然我們當用戶的都是用感覺的,常常對緩慢的操作覺得無可奈何,但這些快慢不是巫術也不是靠念力,而是有物理的客觀限制的。 當有爛程式或是病毒在偷偷傳送一堆有的沒有的數據,偷偷占掉的頻寬,會拖累網路速度,拖累多少,就是看傳輸的頻率與資料量。
好,那回來,想想5G。
5G不就是說約快10倍嗎? 但,這個快10倍要怎麼實現? 人人換5G手機就會快10倍? 當然不是。 而是整個網路的基礎建設都要提升,水管都整個變粗,整個速度才會變快。 嫌奇摩新聞速度慢會Lag,嫌奇摩股市不穩定常常故障,喔,換5G網路有差嗎? 如果5G網路能讓雅虎的單位頻寬成本大幅降低,那,或許在同樣的預算下,服務的品質和連線的速度就會改善了。 如果成本沒有降低多少,那會不會變快? 雅虎若願意為了各個免費服務的用戶體驗提升花更多成本,加服務器與加頻寬,嘿,即使沒有5G,砸錢還是能夠提升體驗的喔! 當然啦,看新聞看股票感覺不出來,看線上視頻就差很多吧? 一直轉圈圈,受不了,買高級會員權限,配給你比較好的連線資源,才能改善。 這和你的手機是不是5G,關係恐怕不大。 服務商手頭緊,在緊縮成本時,有限的頻寬給很多用戶平分,慢就是正常的。 而更多時候,速度慢的原因還不是頻寬,而是服務器的處理能力不夠。 大家在排隊等待服務回應,自然就感覺超Lag。 換5G當然沒用,服務商加頻寬加機器才是解決之道。 簡單說就是要花錢,花誰的錢而已。
所以呢? 5G是新標準,是新的基礎設施。 誰出錢? 誰收錢? 其實,有時候這個世界是不那麼公平的。 互聯網爆發的時代,依賴的是網路基礎設施的全面提升。 錢誰花的? 在台灣,大約是中華電信吧,網路節點與中繼服務器,就是中華電信要養的。 我們的電腦連線到美國的網站,可不是直接透過一個想像中的網路,直接連過去的。 而是找節點的服務器,一層一層連過去的。 那些中繼的設備,也要電力供應,也要設備購置與維修。 誰出錢的? 網路供應商,通常是電信業者出的吧。 但得到最大好處的不見得是出錢的單位。 實際上,連線,不管是光纖海纜還衛星微波,都需要基礎設施來提供網路服務。 能支撐的速度和技術水平有關,但速度不是一個5G概念就能搞定的。 技術出來了,成熟了,基礎設施沒有完善,一樣沒有用。 速度不是看平均,而是由最慢的一環決定。
還不僅僅是這樣喔。 傻蛋之前曾經想開發一個,類似Slack的管理應用工具。 那時候就有想過,一個線上聊天室,最多能支持多少人同時連線。 有想過,能製作百萬人的聊天室嗎? 實際上不可能,也不切實際。 一人一句話,瞬間刷屏,我們什麼也看不到。 別說百萬人,只要一百個活躍的人,共用同一個聊天頻道,那就夠亂了。 唯一的解決方式是,多開幾個小房間,有興趣的人,自己去小房間聊,才不會互相干擾。 但值得思考的,如何讓多人聊天室的訊息能夠一致? 要時時刷新最新的發言,有兩種方式,要不是大家都連同一個主機,並時時都去主機詢問有無新的發言要更新,不然就是由主機主動向所有收聽者時時推送,一有新訊息就全部推送。 或許還有一條路徑,是不經過主機,而是由你的應用程式直接對同聊天室的其他成員設備做連線推送。 有沒有想到一個可怕的問題? 如果是全部向主機頻繁的請求,那主機服務的壓力有多大? 實際上,現在的主機運算與處理回應能力是超級強的了。 但這些機器也常常被狠狠的操到死啊。 隨著同時服務的人數增加,主機很容易達到瓶頸。 更好的主機,能支撐更大的容量,但往往性價比不好。 所以像Slack那樣會設法限制同一個群組的人數上限,其實是有成本考量的。 如果有一萬人訂閱同一個聊天室,那個聊天室的連線負擔自然很嚴重。 那如果不要用集中連線,而是用P2P,跳過主機呢? 對,那麼主機就不會負荷那麼重了,但想想喔,十個人互相連線,和一百個人互相連線,成本是增加十倍嗎? 每增加一個節點,就要和現有全部節點產生新連線不是? 所以成本會隨規模變大,而加速成長。 所以即時聊天室不管用什麼方案,都支撐不了太高的人數,因為成本不是遞減,而是遞增吧。
傻蛋當時想到這個議題,也只想到用樹狀組織讓節點分層那樣來應付。 就像軍隊的組織一樣,一個將軍不可能同時指揮百萬大軍。 軍令需要層層往下傳達。 規模越大,就需要分越多層,才能維持效率。 所以如果要由一個節點控制大量的其他節點,就需要這樣階層的結構設計,來滿足節點增加時連線需求暴增的問題。 例如,十個(反正是一個數字啦)節點以內,只有一層,由一個主節點當服務器。 超過十個節點,則開始自動分層。 每一個節點最多只和一層數量的上層和下層直接連線。 一個聊天室任務,每個節點,只向自己的上層發送新訊息,只接受上層提供的新訊息。 身為上層節點,只接受有限數量的下層節點,若超過,則下層節點升級,下面再掛更下層的節點。 用這種組織方式,或許能夠讓一個主控中心集中控制百萬個單位的運作了吧。 或許會有更好的方法,但,無論如何,要透過網路控制大量的設備,就是會有這種複雜度的存在。 一台電腦同時和上百萬個設備建立網路連線,這本身就是受到物理限制的。 不是喊個5G萬歲,就能自動解決的。
那麼,5G的下一個預期成就,工業物聯網,又如何? 如果所有設備都轉化為網路資源被連線起來的話,互相連線的消耗,以及一個設備連線對像上限的限制,同樣也是需要設法解決的。 當然這有許多現成的P2P技術可以參考了。 但要一口氣增加大量被連線控制的設備資源,那個成本負擔也不是笑笑就解決的。 雖說現在軟硬體技術好像發展得很不錯,但,那麼慢得讓人髮指的服務,不還是到處都是? 遊戲,超Lag,熱門網站,也是常常就突然很慢很慢。 一些省成本的公共服務,網站慢是剛剛好,也不知道是程式寫太爛還是怎樣。 要快就是要加錢,想省錢的服務供應商,自然就會摳,大家就會被迫訓練耐性啊! 現在都是這樣了。 想像一下,如果所有電子設備,全部都連網喔! 如果基礎設施沒有突破性的發展,會慢成什麼鬼樣子?
但反過來看,如果沒有必要,沒有價值的消耗都加以排除的話,那又如何? 聊天室本就不需要上萬人即時聊天啊! 真的需要即時控制的,只要抓關鍵的部分出來就好了吧? 另外,不要容忍爛程式爛品質,很多系統之所以慢,往往和想像的不一樣。 因為做了很多事,要花五秒鐘是合理的? 傻蛋有習慣在自己寫的程式有感覺得出來的頓的時候,會埋各個執行節點的執行時間。 說真的,會慢的程式,大多數都是因為愚蠢的錯誤,在莫名其妙的地方浪費了時間的。 感覺需要做很多處理,就是需要花不少時間的運算,那些提供主要功能與商業邏輯需求的部分,常常都是咻一下就完成了,大部分的時間都是浪費在奇怪的地方。 當網路變得越大,環境變得越複雜,如果還是繼續保持現在這種垃圾級的應用程式平均水準,很難想像未來世界會是怎樣詭異的體驗。
所以呢,加上一些基礎設施擴充提升的成本,4G到5G,初期可能也就像60M提速到100M那般,有點雞肋而已。 投入成本很大,整體效益卻不到十倍,還有未知的風險在喔,5G與通訊品質速度的提升進化雖然是必然與必要的,但大概不會如那些一頭熱的投資人想像的那樣有魔法喔! |
|
( 不分類|不分類 ) |