udx協議,我寫了很多年,一直在摸索,嘗試各種演算法,停留在一些演算法上很多年。
我也堅信過,這是乙個很多人涉足但是沒有人長期在這一塊工作的領域。
他入門比較簡單,但是做好,經力了太多,真的好難,因為有很多地方,真的不好定義。
tcp bb最大的改進與傳統的tcp比較來說,確實就是他不再以丟包為減速條件,而以流量為準。
這是乙個比較大的改變,但是udx在tcp bbr沒出現之前很多年就是這樣的 ,現在google提出來,好象大家突然認識了擁塞演算法。
另外,乙個比較簡單但是可靠的演算法,就是在超過實際代寬流量的5%至25%流量的速度切換來檢測流量的增加與減少來調整速度,這個策略真的很棒,我以前考慮過好久,但是看了別人對tcp bbr的介紹後,終於想通了,這一回事。udx也實現了這一機制,udx是在15-30%之間動態切換以支援30%丟包的支援。
在這裡我需要說的是,tcp bbr,如果在傳送方有乙個主動查詢丟失資訊的機制的話,效率可能會更加高一些,但是由於tcp的實現,可能tcp bbr的另一邊沒有實現這一機制,就算實現,對於單邊加速的情況來說,tcp bbr也不會完全發揮新協議的優勢。至少目前,還沒有這方面實現的提及,我不知道是不是google的工程師沒有想到,還是不方便實現,這個演算法的關鍵是你想不想得到,並不難和複雜,但是目前沒有看到相關實現。在這一塊來說,udx協議更先進。
udx除了主動查詢,還增加了ack補償,這樣在ack丟失的情況下,更早的恢復傳輸,使計算的流量更加準確,完全沒有超時概論。
在了解了更多關於tcp bbr的實現後,發現udx在大的框架下,已經和tcp bbr非常接近,只是在細節實現上,更符合實時性要求更高的應用。tcp bbr也由於他為了相容性,友好性,tcp的一些劣根性是得不到完全的**。但是,比現有的tcp實現,有質的飛躍是毫無疑問的。
做過測試,在相同的鏈路條件下5mbps,通過接入網路破損儀,在延遲增加到200ms,丟包在5%左右,udx比tcp bbr 快300%。
DELETE 與 TRUNCATE 有什麼不同
truncate和delete有以下幾點區別 1 truncate在各種表上無論是大的還是小的都非常快。如果有rollback命令delete將被撤銷,而truncate則不會被撤銷。2 truncate是乙個ddl語言,向其他所有的ddl語言一樣,他將被隱式提交,不能對truncate使用roll...
Linux 與 BSD 有什麼不同
linux 與 bsd 有什麼不同?這篇文章是別人寫的,並做了一點修改。漢澳sinox就是基於bsd開發的,因此能夠理解為乙個bsd分支,可是由於sinox不開源,被排除在外。bsd不是商業軟體,是比較徹底的自由開源軟體。漢澳sinox做server,作為pc桌面,都表現出色。linux 和 bsd...
Django DRF有什麼不同
描述django 將資料庫的東西通過orm的對映取出來,通過view檔案,按照template檔案排出的模板渲染成html。當使用者請求相應的url時,返回相應的結果。描述drf 將資料庫的東西通過orm的對映取出來,通過view和serializers檔案繫結rest介面,當前端請求時,返回序列化...