TW201223200A - Sending speed controlling method for multi-cast packages - Google Patents
Sending speed controlling method for multi-cast packages Download PDFInfo
- Publication number
- TW201223200A TW201223200A TW99140665A TW99140665A TW201223200A TW 201223200 A TW201223200 A TW 201223200A TW 99140665 A TW99140665 A TW 99140665A TW 99140665 A TW99140665 A TW 99140665A TW 201223200 A TW201223200 A TW 201223200A
- Authority
- TW
- Taiwan
- Prior art keywords
- time
- transmission
- error
- multicast packet
- sleep
- Prior art date
Links
Description
201223200 六、發明說明: 【發明所屬之技術領域】 本發明係_’彡_包的魏速度控制方法,特別是 一種高精密度的多播封包的發送速度控制方法。 【先前技術】 在與網路封包的發送技術相關的領域中,對發送速度進行 控制是-㈣要的議題。網路資料發送速度的計算方式是資^ 發送量與發送時_比值。目前,微軟(Mie咖ft)的視窗 (Windows)系統係使用延時(sleep)函數控制網路封包的發 送速度。延時函數就是在延時過程中不佔用系統資源,但是它 的精度太低,大祕能精麵毫機^且實際執行延時函數時 的誤差-般會制10毫秒,因此不適驗需要紐且穩定之 發送速度的應用。 而視窗系統亦提供了一種精度能與機器時鐘同步計數 器,其能精確到奈秒(ns)、級。但是利用此計數器進行延遲的 方法需要系統頻繁計數並確認延時時間是否到達,而嚴重佔用 中央處理器(central processor unit,CPU;)資源,進而影響其 他軟體及系統的運行。 也就疋4 ’在傳統上發送多播(multi_cast)等網路封包的 發送速度控制中,具有延時精度過低而容易引起發送速度之波 動的問題’或是具有需要極度耗費CPU資源的缺點。 【發明内容】 201223200 & 多播封yast ⑽哪)碰魏脸财法,翻於令—鱗卡(η— —_,舰)以—目標錢發物_聽。多播 =送=方法包括:依據多播封包的大小以及目標 1异一仏私間,並記錄-累計誤差時間;發送多播封包 ^丰並計算發送的多播封包的—發送時間;計算標準時間盥 =間的差值,將標準時間與發送時間的差值 間與本次誤差時間合計,並將合計結 預:眠時間;當預定休眠時 t 下步驟··休眠預定休眠時間;自休眠中被喚醒,並 二异一貫際休眠時間;以及計算得到新的累計誤差時間為預定 :眠時間,休眠_;以相耻述「依_封包的大 以及目標速度計算鮮時間,並雜帛計 的 驟,以發送下一個多播封包。 M」的步 間,騎㈣大術目標速峨—標準時 累計發送時間,「轉娜之—,_發送= 封包的一發送時間」的步驟之前’,騎勺的/發运的多播 括:計曾 」I驟之則’少播封包的處理方法另可包 送時間;以及當累計發送時間大於-累計昧 J"值時’將累計誤差時間以及累計發送時間重設為0。 括.A康實崎例,多播封包的發送速度控制方法另可’ 括1預定休眠時間不大於—誤差門紐時,將預定休3民= 201223200 作為新的科誤差時^射發 包發送前後的-系統時間相減得到,。”仏將發送的多播封 值可=5累計時_值可以是1秒⑷。_ i㈣。實際休眠時間可以是大於10毫秒。 ,社_’乡_包着奴紐财法彻縣為低斧 又 '延時函數’但實現高精度_控速。透過即時將累積誤差月 ^回^延時函數’並糾清空的技術,多贿包的發 达速度控财法能夠保證網_料傳_級穩定又不佔用 過多的中央處理II (ee咖丨prGee_unit,cpu)資源。 【實施方式】 、下在貫&方式切細敘述本發明之詳細特徵以及優 點,其内容足贿任何熟習細技藝者了解本發明之技術内容 並據以實施’且根據本朗t所揭露之内容、申請專利範圍及 圖式’任何熟習侧技藝者可輕易地理解本發_ g之目的及 優點。 本發明係關於一種多播封包(mUlti_ Cast package )的發送 速度控制方法,其用於令一網路卡, NIC)以一目標速度發送多個多播封包。 請參照「第1圖」,其係為一實施範例之多播封包的發送 速度控制方法之流程圖。 多播封包的發送速度控制方法首先依據要傳送之多播封 包的大小以及目標速度計算一標準時間,並記錄一累計誤差時 201223200 間(步驟S110)。其中標率時間為多播封包的大小除以目標逮 度的商數。接著另網路卡實際以目標速度發送一個多播封包, 並計算發送的多播封包的一發送時間(步驟S120)。 發送時間可以是將發送的多播封包發送前後的一系統時 間相減得到。更詳細地說,可以在發送多播封包前後讀取包括 此網路卡的計算機所維護的系統時間,再將發送前後的時間相 減便能得到實際發送此多播封包所花費的發送時間。 接著計算標準時間與發送時間的差值,將標準時間與發送 時間的差值記錄為本次誤差時間;將累計誤差時間與本次誤差 時間合叶,並將合計結果記錄一預定休眠時間(步驟S130 )。 也就是說,在步驟S130中將累計誤差時間回饋至預定休眠時 間’以更靈敏地反應及調整發送速度。 得到預定休眠時間後,判斷預定休眠時間是否大於一誤差 門檻值(步驟S140)。根據一實施範例,誤差門檻值可以是1 毫移(ms)。誤差門檻值能夠確實地掌握發送速度的控制的精 準度,可依實際發送多播封包的需要設定,在此並不對其做限 制。 當預定休眠時間大於誤差門檻值時,令網路卡休眠一預定 休眠時間’其中預定休眠時間為累計誤差時間加上本次誤差時 間的和(步驟S160)。步驟Sl6〇中可透過例如視窗(wind〇ws) 系、·先的延時(Sleep )函數荨應用程式介面(叩邱㈣⑽^〇抑爪 interface ’ API)實作。相對的’當預定休眠時間不大於誤差門 7 201223200 檻值時’則可將預定休眠時間作為新的累計誤差時間(步驟 S150)〇 由步驟S150以及S160可以見悉,多播封包的發送速度控 制方法將每次延時產生的本次誤鱗間進行保留,而不是丢 棄。本次誤差時間並㈣_至下—次的延時控射,而能夠 動態補償誤差,從而減錢時誤如及提紐繼度。此外, 由於利科祕差㈣_,即使料時間產生的誤差也 可以得到有效補償。 網路卡倾了默休__之後自休财被倾,並計算 實際休目咖(步驟S17G)。類似地,亦可將網路卡休眠前後 的系統時間相減,以得到實際休眠時間。由於細函數的可 _度大於K)毫秒,因此—般而言實際休眠時間均會大於 一’㈣明㈣魏㈣方法縣計算敢休眠時間; 去貫際休眠時間的差值,並將預雜眠時間減去實際休眠和 的差值作為新的累計誤差時間(步驟S180)。且每傳送—心 播封包後都會判斷是否已將全部的多播封包發送完成h 咖)°若是,财結束㈣。若否,胁胸咖以ς 下一個多播封包。 戈与 及「累頁的疋’上述之「誤差門檻值」、「實際休眠時間」以 ^時間Η楹值」所舉例的數值都可依實際發送多播封力 1設定,在此並不對其做限制。透過調整這些數值 201223200 以及多快可以恢復到目標設定速度 設定動態誤差補償的範圍 等。 / 帛2 11」’其係為另—實施範例之多播封包的發 、'又控fi方法之部分流糊。於本實施範例中,在步驟測 ’、可同鍵立累柯送時間。且在實際發送多播封包(步驟 S120)之前可執行下述用以重置累計誤差時間。
在每次發送多播封包之前,先計算累計發送時間(步驟 =10) ’也就是計算累計發送時間被建立或是被重置為〇到目 前已過了多久的時間。接著判斷發送時間是否大於-累計時間 門播值(步驟S22〇);當大於累計時間門檻值時 ’將累計誤差 時間以及累計發送時間重設為0 (步驟S230)。 根據一實施範例,累積誤差門播值可以是1秒(s)。累積 誤差門触亦可依實際發送多播封包的需要蚊,在此並不對 /、做限制。由於每隔一段時間便將累積誤差時間重置為〇,故 月b夠保δ登累積誤差時間在一小段時間内進行動態誤差補償。 印芩照「第3圖」,其係為一實施範例之發送速度之曲線 圖。由「第3圖」的一發送速度曲線20可以見悉,網路卡剛 開始啟動時尚在進行環境的配置等動作而無法快速傳送多播 封包。但隨後為了將累積的多播封包即時傳出,變成完全不需 執行延時函數’能傳多快就傳多快而達到網路卡的發送速度上 限。但為了調整過快的發送速度,多播封包的發送速度控制方 法透過累積誤差時間迅速地將發送速度回復到目標速度。 201223200 ”不上所述’多播封包的發送速度控制方法即時將累積誤 時間回饋給延時函數,錢時將其清心因此多播封包的發 速度控制方法能夠保證網路資料傳輸的高效穩定又不佔用過 ▲多的中央處理器(eentralpwessGrunit,cpu)資源。換句話 δ兄’多播封包的發送速度控制方法能_時達到低資源利用率 以及高精度控_絲。更進—步地,本方絲包括此網路卡 的多播词服器的慶力,而保證多播資料能高速穩定傳輸,並減 少了網路資料傳輸出錯的可能性。 以上較佳具體實施範例之詳述,是希望藉此更加清楚描述 本發明之特徵與精神,並非以上述揭露的較佳具體實施範例對 本發明之範轉加以限制。相反地,其目的是希望將各種改變及 具相等性的捕涵蓋於本發騎欲申請之專利翻的範嘴内。 【圖式簡單說明】 第1圖係為-實施範例之多播封包的發送速度控制方法 之流程圖。 第2圖係為另-實施範例之錢封包的發送速度控制方 法之部分流程圖。 第3圖係為-實施_之發送速度之曲線圖。 【主要元件符號說明】 20 發送速度曲線
Claims (1)
- 201223200 七、申請專利範圍: L二種多播封包的發送速度㈣方法,用於令-網路卡以-目 2度發衫個多播封包’該多播封包的發送速度控制方法 包括: 依據該些多播封包的大小以及該目標速度計算一標準 時間,並記錄一累計誤差時間; 、發送該些錢封包之―,並計算該發送的多播封包的-發送時間; 士計算該標準時間與該發送時間的差值,將該標準時間與 4运時間的差值記錄為—本次誤差時間,將該累計誤差時 間與該本次縣_合計,並將合計結果記錄―敢 間; 當該預定休眠時間大於一誤差門播值時,執 驟: 休眠該預定休眠時間; =眠中被喚醒,並計算—實際休目叫間;以及 十〜預&休眠時間減去該實際休眠時間的差 值’並將該預疋休眠時間減去該實際休眠時間的差值作 為新的該累計誤差時間;以及 〃回到上述依據該些多播封包的大小以及該目標速度計 异一標準_ ’並記錄—累計誤鱗_步驟,以發送下一 201223200 2.如請求項第1項·之多播封㈣魏速度控财法,其中 在该「依據該些多播封包的大小以及該目標速度計算一標準 時間’並記錄-累計誤差時間」的步驟之中,另包括·建立 一累計發送時間;而在該「發送該些多播封包之―,並計算 該發运的多播封包的一發送時間」的步驟之前,該多播封包 的處理方法另包括: 計算該累計發送時間;以及 當该累計發送時間大於一累計時間門檻值時,將該累計 誤差時間以及該累計發送時間重設為〇。 3·如請求項第2項所述之多騎包的發送速度㈣方法,其中 該累計時間門檻值為1秒。 ^ 4’如凊求項第丨項所述之多播封包的魏速度控制方法,其中 該誤差門檻值為1毫秒。 5·如凊求項第1項所述之料封包的發送速度控制方法,另包 括: 當該預定休眠時間不大於該誤差門橋值時,將該預定休 眠時間作為新㈣累計誤差時間。 月长項第1項所述之多播封包的發送速度控制方法,其中 雜送時間係為將該發送的多播封包發送前後的一系統時 間相減得到。 7 j 主 月求項第1項所述之多播封包的發送速度控制方法,其中 该貫際休眠時間大於10毫秒。 12
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99140665A TWI411268B (zh) | 2010-11-24 | 2010-11-24 | 多播封包的發送速度控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99140665A TWI411268B (zh) | 2010-11-24 | 2010-11-24 | 多播封包的發送速度控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201223200A true TW201223200A (en) | 2012-06-01 |
TWI411268B TWI411268B (zh) | 2013-10-01 |
Family
ID=46725432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW99140665A TWI411268B (zh) | 2010-11-24 | 2010-11-24 | 多播封包的發送速度控制方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI411268B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7130668B2 (en) * | 2003-09-01 | 2006-10-31 | Samsung Electronics Co., Ltd. | Method and system for controlling sleep mode in broadband wireless access communication system |
US7219171B2 (en) * | 2003-12-16 | 2007-05-15 | Intel Corporation | Flow control for digital signal processing to support data stream operations |
US8553720B2 (en) * | 2006-04-19 | 2013-10-08 | Marvell World Trade Ltd. | Adaptive speed control for MAC-PHY interfaces |
US20090325533A1 (en) * | 2008-06-27 | 2009-12-31 | Abhijit Lele | Method for using an adaptive waiting time threshold estimation for power saving in sleep mode of an electronic device |
US8295217B2 (en) * | 2008-07-11 | 2012-10-23 | Acer Incorporated | Method and apparatus for a device power savings class |
US8218467B2 (en) * | 2008-09-15 | 2012-07-10 | Qualcomm Incorporated | Method and apparatus for optimizing idle mode stand-by time in a multicast system |
-
2010
- 2010-11-24 TW TW99140665A patent/TWI411268B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
TWI411268B (zh) | 2013-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mittal et al. | TIMELY: RTT-based congestion control for the datacenter | |
TWI486042B (zh) | 對資料中心環境最佳化之通信傳輸 | |
US10129123B2 (en) | Measurement apparatus, communications apparatus, and relay apparatus | |
WO2020244448A1 (zh) | 一种拥塞控制方法、设备及计算机可读介质 | |
Ros et al. | Less-than-best-effort service: A survey of end-to-end approaches | |
CN109347757B (zh) | 消息拥塞控制方法、系统、设备及存储介质 | |
US20090097483A1 (en) | Method and device for transmitting data | |
TW200931876A (en) | Methods and systems for bandwidth prediction | |
CN104115448A (zh) | 监测网络传输特性的方法与装置 | |
KR101795333B1 (ko) | 클라우드 프로세스 관리 | |
US9647915B2 (en) | Detailed end-to-end latency tracking of messages | |
US9954788B2 (en) | Bandwidth estimation based on statistical measures | |
WO2020207479A1 (zh) | 一种网络拥塞控制方法和装置 | |
WO2015096692A1 (zh) | 数据接收流量控制方法及其系统、计算机存储介质 | |
US10554568B2 (en) | Technologies for network round-trip time estimation | |
Tian et al. | P-PFC: Reducing tail latency with predictive PFC in lossless data center networks | |
WO2016095410A1 (zh) | 链路流量分担的方法和装置 | |
CN102882809A (zh) | 一种基于报文缓存的网络限速方法及装置 | |
TW201223200A (en) | Sending speed controlling method for multi-cast packages | |
CN101741747A (zh) | 面向udp协议的nfs流控方法 | |
Bergstrom et al. | The distributed open network emulator: Using relativistic time for distributed scalable simulation | |
US8379643B2 (en) | Method for controlling transmission speed of multi-cast packets | |
CN106293500A (zh) | 一种写操作控制方法、装置及系统 | |
Krishnamurthy et al. | Evaluation of sip proxy server performance: Packet-level measurements and queuing model | |
CN115002033A (zh) | 一种流量控制方法、装置、设备、存储介质及计算机产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |