專利名稱:內容分發流量控制方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種內容分發流量控制方法。
背景技術:
目前,互聯網通常僅提供盡力而為的傳送服務,業務內容只要求盡快傳送,而沒有明確的時間和可靠性保障。隨著網絡多媒體技術的飛速發展,互聯網上的多媒體應用層出不窮,互聯網已經逐步從單一的數據傳送網絡向數據、語音、圖像等多媒體信息的綜合傳輸網演化。Q)N (Content Delivery Network,內容分發網絡)技術通過將存儲在中心服務器的數據分發到若干CDN邊緣節點,由邊緣節點向用戶提供服務,一個CDN邊緣節點可以為眾
多用戶服務,因此在傳輸數據時,需要針對每個用戶做流量控制,不能讓某個用戶占了較多帶寬,而其他用戶占了較少帶寬,應該做到帶寬分配的均衡。通過⑶N解決了 Internet網絡擁塞狀況,提高用戶訪問網站的響應速度,越來越受到業界的廣泛關注,并在國內外得到了廣泛的應用。現有的CDN流量控制技術,一般是在CDN邊緣節點上,為每個用戶分配均等的帶寬。這樣,雖然可以做到帶寬分配的均衡,但是對于互聯網視頻業務來講,網絡視頻分辨率大小不一,有720P,也有1080P,相應的視頻碼率也不一,用戶可以請求不同碼率的視頻。因此,如果對每個用戶都分配均等的帶寬,勢必會造成請求低碼率視頻的用戶帶寬冗余,請求高碼率視頻的用戶帶寬不足,而造成播放卡頓,影響用戶體驗。
發明內容
本發明提供了一種方法,能夠在CDN邊緣節點上根據用戶請求視頻的碼率來為用戶分配帶寬,解決上述的問題。為達到上述目的,本發明的實施例采用如下技術方案
一種內容分發流量控制方法,其特征在于根據用戶請求的視頻類型為該用戶分配帶寬。其中,所述視頻類型為視頻碼率。其中,在所述根據用戶請求的視頻類型為該用戶分配帶寬之前還包括
步驟S100,檢測當前寬帶的剩余帶寬量;
步驟S101,獲取用戶請求的視頻碼率。其中,內容分發網絡CDN節點可以根據總帶寬量和已為請求用戶分配的帶寬,計算出所述當前的帶寬利用率,其中所述總帶寬量為固定參數,所述已為請求用戶分配的帶寬為各個用戶分配帶寬的總和。其中,所述檢測用戶請求的視頻碼率包括檢測用戶請求的視頻文件的地址,獲取該視頻文件總字節數和視頻播放時長,并根據公式
視頻碼率=視頻文件總字節數/視頻播放時長,得到所述視頻碼率。
其中,所述視頻碼率還包括直播碼率,所述直播碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。一種內容分發流量控制系統,其包括分配模塊,其根據用戶請求的視頻類型為該用戶分配帶寬。其中,所述視頻類型為視頻碼率。其還包括檢測模塊,其用于檢測當前寬帶的剩余帶寬量;
視頻碼率獲取模塊,其用來獲取用戶請求的視頻碼率。其中,所述剩余帶寬量由內容分發網絡⑶N節點可以根據總帶寬量和已為請求用 戶分配的帶寬來計算,其中所述總帶寬量為固定參數,所述已為請求用戶分配的帶寬為各個用戶分配帶寬的總和。其中,所述獲取用戶請求的視頻碼率通過檢測用戶請求的視頻文件的地址,獲取該視頻文件總字節數和視頻播放時長,并根據公式
視頻碼率=視頻文件總字節數/視頻播放時長,得到所述視頻碼率。其中,所述視頻碼率還包括直播碼率,所述直播碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。通過本發明公開的內容分發流量控制方法,既能保證每個用戶都可以流暢播放視頻,又避免了帶寬的浪費。
圖I為本發明的流量控制方法的實施例的流程 圖2為根據本發明一實施例的帶寬使用餅狀 圖3為本發明一優選實施例的內容分發流量控制系統的結構示意圖。
具體實施例本發明的實施例提供一種內容分發流量控制方法,能夠根據用戶請求視頻的碼率來為用戶分配帶寬,從而充分利用可用帶寬,提升終端用戶的體驗質量。為使本發明技術方案的優點更加清楚,下面結合附圖和實施例對本發明作詳細說明。在CDN邊緣節點上,為請求視頻的用戶分配帶寬時,不是分配一個固定的帶寬值,而是根據視頻碼率來分配。即如果一個用戶請求的視頻碼率為1000KB/S,則為該用戶分配1000KB大小的帶寬;另一個用戶請求的視頻碼率為500KB/S,則為該用戶分配500KB大小的帶寬。這樣,既能保證每個用戶都可以流暢播放視頻,又避免了帶寬的浪費。其中視頻碼率由公式(I)來確定
視頻碼率=視頻文件總字節數/視頻播放時長 …(I)
其中,視頻文字總字節數也就是視頻文件的以字節為單位的總大小,播放時長也是該視頻文件自身的屬性之一。圖I示出了本發明的流量控制方法的實施例的流程圖。所述方法由以下步驟組成
步驟S100、檢測當前寬帶的剩余帶寬量。其中CDN節點可以根據總帶寬量(固定參數)和已為請求用戶分配的帶寬(為各個用戶分配帶寬的總和),計算出當前的剩余帶寬量。剩余帶寬量=總帶寬量-已分配帶寬量…(2)
帶寬量,是指單位時間可傳輸多少數據量;視頻的碼率,是指在視頻播放過程中單位時間內播放的數據量。網絡視頻的播放過程,是先從CDN服務器上下載視頻源文件到用戶本地,在用戶本地通過播放器播放。因此,如果要滿足在用戶本地正常播放,那么下載完成的數據量應即時滿足在用戶本地視頻播放的過程,否則就出現播放卡頓的現象。因此,應根據視頻碼率的值,來為該視頻源文件的下載過程分配帶寬,比如一個視頻的碼率值為500Bytes/s,它在正常播放過程中每秒會播放500Bytes的數據量,那么視頻的下載過程也至少要滿足500Bytes/s的傳輸速度將視頻下載到本地,才可保證在本地的正常播放,因此為該視頻的下載過程分配的帶寬就是500Bytes/s。步驟S101、獲取用戶請求的視頻碼率。檢測用戶請求的視頻文件地址,視頻分辨率不等于碼率,本文不考慮視頻分辨率。視頻碼率是根據視頻文件大小與播放時長計算出來的,用戶不關心也不必知道視頻碼率,只告訴服務器需要下載哪個視頻文件即可,也即在CDN節點側的文件存儲地址,讀取到該視頻文件,獲取該視頻文件總字節數和視頻播放 時長,從而根據公式(I)得到視頻碼率。計算出來的碼率不是用來返回給客戶端的,是用來確定用戶下載視頻的帶寬值的。步驟S102、根據用戶請求的視頻碼率在剩余帶寬量中為該用戶分配帶寬。圖2為本發明一實施例帶寬使用餅狀圖。如圖2所示,假定
總帶寬1G = 1024M = I, 048,576K/s ;
已使用帶寬:1G*80% = 838,860K/s ;
未使用帶寬:1G*20% = 209,715K/s ;
貝U,剩下209M的帶寬,根據具體視頻碼率的值,可接受的用戶請求數分別為
用戶請求視頻碼率為800K/S :262個;
用戶請求視頻碼率為400K/S :524個;
用戶請求視頻碼率為200K/S 1048個;
直播用戶碼率如500K/s: 419個。上述示例表示,CDN節點為每一個視頻用戶分配帶寬時,分配的帶寬值等于該用戶所請求視頻的碼率值。當用戶請求的視頻碼率為800K/s時,則可同時為262個相同請求的用戶分配相應的帶寬,即可以同時承載262個連接;同樣地,當請求視頻碼率為400K/S時,可以為524個用戶提供相應的帶寬;當請求碼率為200K/S時,可以為1048個用戶提供相應的帶寬。同樣,遵循以上示例,假如當前該⑶N節點剩余帶寬為209715 K/s,第一個用戶請求的是碼率為800K/S的視頻,那么就為第一個用戶分配800K大小的帶寬,剩余帶寬量為(209715-800) K/s ;此時,如果第二個用戶請求的是碼率為200K/s的視頻,就為第二個用戶分配200K/s大小的帶寬,剩余帶寬量為(209715-800-200) K/s ;假如,第三個用戶請求的是直播流,直播碼率為500K/S,就為第三個用戶分配500K大小的帶寬,剩余帶寬為(209715-800-200-500) K/s……以此類推,直到該CDN節點帶寬全部分配完畢,不能再為后續的用戶提供服務。
其中,直播的碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。根據以上實施例提供的一種內容分發流量控制方法,本發明還提出了一種內容分發流量控制系統,圖3為本發明一優選實施例的內容分發流量控制系統的結構示意圖。如圖3所示,該系統包括分配模塊,其根據用戶請求的視頻類型為該用戶分配帶寬。其中,所述視頻類型為視頻碼率。
其還包括檢測模塊,其用于檢測當前寬帶的剩余帶寬量;
視頻碼率獲取模塊,其用來獲取用戶請求的視頻碼率。其中,所述剩余帶寬量由內容分發網絡⑶N節點可以根據總帶寬量和已為請求用戶分配的帶寬來計算,其中所述總帶寬量為固定參數,所述已為請求用戶分配的帶寬為各個用戶分配帶寬的總和。其中,所述獲取用戶請求的視頻碼率通過檢測用戶請求的視頻文件的地址,獲取該視頻文件總字節數和視頻播放時長,并根據公式
視頻碼率=視頻文件總字節數/視頻播放時長,得到所述視頻碼率。其中,所述視頻碼率還包括直播碼率,所述直播碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。以上所述,僅為本發明的具體實施例,但本發明實施例的保護范圍不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換都應涵蓋在本發明的保護范圍內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。
權利要求
1.一種內容分發流量控制方法,其特征在于包括以下步驟 檢測當前寬帶的剩余帶寬量; 檢測用戶請求的視頻碼率; 根據所述剩余帶寬量和所述視頻碼率為該用戶分配帶寬。
2.如權利要求I所述方法,其中所述剩余帶寬量由內容分發網絡CDN節點根據總帶寬量和已為請求用戶分配的帶寬來計算,其中所述總帶寬量為固定參數,所述已為請求用戶分配的帶寬為各個用戶分配帶寬的總和。
3.如權利要求I所述方法,其中所述檢測用戶請求的視頻碼率包括檢測用戶請求的視頻文件的地址,獲取該視頻文件總字節數和視頻播放時長,并根據公式 視頻碼率=視頻文件總字節數/視頻播放時長,得到所述視頻碼率。
4.如權利要求I所述方法,其中所述視頻碼率還包括直播碼率,所述直播碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。
5.一種內容分發流量控制系統,其特征在于包括 檢測模塊,其用于檢測當前寬帶的剩余帶寬量; 視頻碼率獲取模塊,其用來獲取用戶請求的視頻碼率; 分配模塊,其用于根據所述剩余帶寬量和用戶請求的視頻碼率為該用戶分配帶寬。
6.如權利要求5所述系統,所述剩余帶寬量由內容分發網絡CDN節點根據總帶寬量和已為請求用戶分配的帶寬來計算,其中所述總帶寬量為固定參數,所述已為請求用戶分配的帶寬為各個用戶分配帶寬的總和。
7.如權利要求5所述系統,所述獲取用戶請求的視頻碼率包括檢測用戶請求的視頻文件的地址,獲取該視頻文件總字節數和視頻播放時長,并根據公式 視頻碼率=視頻文件總字節數/視頻播放時長,得到所述視頻碼率。
8.如權利要求5所述系統所述視頻碼率還包括直播碼率,所述直播碼率是由Flash編碼服務器在對視頻采集設備采集到的視頻流編碼時設定的。
全文摘要
本發明提供了一種內容分發流量控制方法和系統,該方法特征在于根據用戶請求的視頻類型為該用戶分配帶寬。通過本發明公開的內容分發流量控制方法,既能保證每個用戶都可以流暢播放視頻,又避免了帶寬的浪費。
文檔編號H04N21/262GK102883193SQ20121037892
公開日2013年1月16日 申請日期2012年10月9日 優先權日2012年10月9日
發明者邵長松, 夏彥剛, 李茗 申請人:樂視網信息技術(北京)股份有限公司