mysql流量控制_UDP流量控制之分析
關健字:
UDP
UDX
UDT
TCP
吞吐量
流量
代寬
擁塞控制
大都知道,UDP是不可靠傳輸協(xié)議與TCP剛好相反.
不過因為UDP的特性適合傳輸不需要確認的數(shù)據(jù),在應用層如果設計好的傳輸協(xié)議一樣可以進行很好的可靠傳輸.比如RUDP協(xié)議.
但是光可靠傳輸還不夠,流量控制是很重要的.
我們從簡單的情況說起來說明流量控制的重要性.
可靠性:
故名思意,就是客戶1發(fā)送一個包給客戶2,客戶2能收到這個包.這才叫可靠傳輸.
最簡單的可靠傳輸協(xié)議就是停止等待協(xié)議,一問一答方式.
打個比方就是,我發(fā)了一封郵件,對方打開郵件后,發(fā)送一封回信,也叫回致,那么發(fā)送方知道了對方已經(jīng)收到了我的郵件.
很顯然,在等待回信的時候,有很大一段時間是用來等待的,這樣對于流量來說是很大的浪費.
滑動窗口協(xié)議,是TCP使用的一種流量控制方法。該協(xié)議允許發(fā)送方在停止并等待確認前可以連續(xù)發(fā)送多個分組。由于發(fā)送方不必每發(fā)一個分組就停下來等待確認,因此該協(xié)議可以加速數(shù)據(jù)的傳輸.
我們可以仿照TCP來完成UDP的可靠傳輸,而這篇BLOG不是用來說明滑動窗口協(xié)議.我們來分析一下本質(zhì).
在流量控制上現(xiàn)在主要有幾種技術方案,通過往返時間的增量來控制.丟包時間差控制,流量控制,ACK返回控制.等 主流控制方法.
他們控制的核心就是控制發(fā)送窗口的大小,窗口越大意味著發(fā)送流量越大.
我們分別對這些控制方法進行一個解說.當了解這些方法后,我們可以對實現(xiàn)這個可靠傳輸有了更準確的一個指導思想.
RTT方法,這個方法代表的tcp實現(xiàn)是TCP vegas.他是通過測RTT,通過公式? Expected =WindowSiz/BaseRTT及Actual = WindowSize/RTT,及Diff = Expected-Actual,來動態(tài)更改發(fā)送窗口
當流量超過負荷時就會發(fā)生丟包,這里會發(fā)生丟包現(xiàn)象.當丟包發(fā)生時,一般采用折半發(fā)送窗口解除擁塞.
需要再次提到的,就是擁塞預測,這個是很重要的手段,傳統(tǒng)的RENO算法,是通過丟包檢測,這個方法理論上說是檢測的本質(zhì),但是對于超大延時網(wǎng)絡,如果當真的丟包了再去擁塞避免,其實已經(jīng)晚已,因為,網(wǎng)關上已經(jīng)有太多的包放在那里被無情丟棄掉了.
這樣的話,會馬上引發(fā)慢啟動.這樣效率大大損失,這在其他UDP傳輸算法上,比如UDT,VTCP上表現(xiàn)比較明顯,我想他們應該是沒有擁塞預測方法的.
擁塞預測方式,主要方法,可以通過RTT測量,和ACK頻率測量,另外就是流量增量測量.
總結
以上是生活随笔為你收集整理的mysql流量控制_UDP流量控制之分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: https nginx phpstudy
- 下一篇: 全民乐分期多久到账