udt常见问题
常見問題
UDT是基于UDP的數據傳輸協議,主要目的是針對“TCP在高帶寬長距離網絡上的傳輸性能差”的問題,盡可能全面支持BDP網絡上的海量數據傳輸。
udt在低速網絡下,傳輸延遲較大?
? ?1.重協議本身來看,udt協議本身設計就是針對高速光纖傳輸用。
? ?2.udt在低網速網絡下,據說可以通過設置,參數設置UDT_SNDBUFF和UDT_RCVBUFF接近于TCP協議的這兩個參數值進行對? ? ? ? 比,結果udt時延應該比tcp要低很多,傳輸速率也更快(在代碼中貌似通過setsockoption進行設置)。
? ? ? ? 在一定程度上加大緩存應該是可以降低延時的,但是從非慢啟動階段的控制算法上看,要在低網速下怎么達到最低的網絡延遲? ? ? ?效果,還需要深層次的設計,證明,具體環境測試。
在網絡丟包在10%左右是,udt傳輸速率下降比較嚴重?
? 該問題個人認為是否通過修改udt源代碼中的,控制發送速率變量m_dPktSndPeriod,該變量的計算牽涉較多
m_iAvgNAKNum = (int)ceil(m_iAvgNAKNum * 0.875 + m_iNAKCount * 0.125); //計算平均負反饋數? ?比如把,0.875改成0.9,0.125改成0.1,通過調整負反饋的值,來減慢m_dPktSndPeriod它的增長。
m_iDecRandom = (int)ceil(m_iAvgNAKNum * (double(rand()) / RAND_MAX));? ? 當然,目前只是探索并沒有得到驗證。這樣調整是發會影響其他變量。
關于udt源碼崩潰問題
? ? 1.udt論壇、UDT::connect超時,調用UDT::cleanup出現內存錯誤,但是我貌似沒有遇到過?
? ? 2.udt論壇、epoll? 監聽不到close事件? 關于這個問題doctor gu應該是已修改,在使用中沒有發現。
目前udt大多數使用的是udt-xx,也是就是udt4最新版本,不知道udt5開發的咋樣。
?
udt中文論壇
總結
- 上一篇: Python运算符与if结构
- 下一篇: 链表结点的物理顺序与逻辑顺序