專利名稱:節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,屬于視頻監(jiān)控領(lǐng)域。
背景技術(shù):
目前,公知的視頻監(jiān)控領(lǐng)域?qū)崟r(shí)視音頻點(diǎn)播方案是由用戶終端和媒體資源提供者組成,用戶通過媒體資源提供者進(jìn)行實(shí)時(shí)視音頻資源點(diǎn)播業(yè)務(wù)。媒體資源提供者包括媒體服務(wù)器、監(jiān)控平臺和媒體設(shè)備如IPC,DVR, DVS等,為描述直觀與方便,以下統(tǒng)稱為媒體服務(wù)器。這類方案通過媒體服務(wù)器向各個(gè)用戶進(jìn)行視音頻媒體資源的分發(fā),每個(gè)用戶都直接向媒體服務(wù)器獲取實(shí)時(shí)視音頻媒體資源。在突發(fā)事件(比如暴動(dòng))發(fā)生時(shí),點(diǎn)播某些媒體資源的用戶量暴增,而媒體資源傳輸占用帶寬非常大,一路視音頻流量大致為標(biāo)清2Mbps、高清6Mbps,而傳輸網(wǎng)絡(luò)帶寬是有限的,這經(jīng)常會導(dǎo)致以下問題:
1.用戶數(shù)過多,用戶業(yè)務(wù)資源切換頻繁,而資源切換涉及到信令和數(shù)據(jù)傳輸兩個(gè)模塊,很容易導(dǎo)致媒體服務(wù)器的性能下降甚至引發(fā)崩潰;
2.傳輸帶寬不能滿足傳輸需求,導(dǎo)致媒體資源在傳輸時(shí)丟包,資源數(shù)和用戶數(shù)越多,丟包就越嚴(yán)重;
3.媒體服務(wù)器分發(fā)路數(shù)過多,分發(fā)時(shí)間超過資源時(shí)間,導(dǎo)致丟包。比如I秒的實(shí)時(shí)媒體流大小為6Mb,媒體服務(wù)器向所有用戶分發(fā)該6Mb數(shù)據(jù)耗時(shí)為1.2秒,這必然會導(dǎo)致下一秒的實(shí)時(shí)媒體流部分被丟棄,從而嚴(yán)重影響用戶感知。而且隨著時(shí)間的增加,該影響會越來越大。雖然通過增加媒體服務(wù)器數(shù)量,增加傳輸帶寬可以緩解該問題,但是這個(gè)做法無疑大大增加了成本,而且增加服務(wù)器也意味著增加了運(yùn)營維護(hù)的難度。
發(fā)明內(nèi)容
為了克服現(xiàn)有方案造成的網(wǎng)絡(luò)帶寬和服務(wù)器資源消耗問題,本發(fā)明提供一種新的解決方案,該方案不僅能滿足實(shí)時(shí)視音頻資源點(diǎn)播業(yè)務(wù),而且能解決大量用戶并發(fā)訪問問題,并且能極大的節(jié)省網(wǎng)絡(luò)帶寬和緩解媒體服務(wù)器的壓力。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:對用戶以組為單位進(jìn)行收斂,組內(nèi)選擇一個(gè)用戶作為主源,該用戶從網(wǎng)絡(luò)獲取媒體資源,然后將資源進(jìn)行組內(nèi)分發(fā);啟用一個(gè)或多個(gè)備用源保證主源異常時(shí)業(yè)務(wù)不至于中斷。其目的是通過用戶收斂減少在運(yùn)營商網(wǎng)絡(luò)上的媒體資源傳輸數(shù)量,因?yàn)檫\(yùn)營商網(wǎng)絡(luò)帶寬資源相當(dāng)昂貴,而局域網(wǎng)內(nèi)部帶寬資源十分低廉,所以按照局域網(wǎng)或其子網(wǎng)對用戶進(jìn)行收斂,局域網(wǎng)內(nèi)用戶通過交換機(jī)或路由器等設(shè)備進(jìn)行資源共享。當(dāng)局域網(wǎng)內(nèi)用戶數(shù)過多時(shí),負(fù)責(zé)資源分發(fā)的用戶終端會存在性能瓶頸,即會出現(xiàn)分發(fā)速度小于資源接收速度的情況(背景技術(shù)問題3),所以必須對局域網(wǎng)內(nèi)的用戶進(jìn)行分組,組內(nèi)的“源”(負(fù)責(zé)組內(nèi)分發(fā)的用戶)負(fù)責(zé)對其所在組內(nèi)其他用戶進(jìn)行資源分發(fā)。
為防止“源”出現(xiàn)異常情況(比如死機(jī))從而導(dǎo)致該組內(nèi)所有用戶都中斷該媒體資源,本發(fā)明采用主源加備用源的方式,正常情況下備用源不從媒體服務(wù)器獲取媒體資源,當(dāng)主源出現(xiàn)異常時(shí),立即啟用備用源進(jìn)行分發(fā),一個(gè)組有且僅有一個(gè)主源,可有多個(gè)備用源;當(dāng)系統(tǒng)資源充足時(shí)可不考慮啟用備用源。當(dāng)用戶需要做實(shí)時(shí)視音頻資源點(diǎn)播業(yè)務(wù)時(shí):
1.用戶向媒體服務(wù)器請求媒體資源,媒體服務(wù)器接收到該請求,判斷用戶屬于哪個(gè)局域網(wǎng),并將該用戶添加到該資源所在的對應(yīng)局域網(wǎng)的具體組中;
2.若該組中沒有主源,意味著該組是一個(gè)新組,只有當(dāng)前用戶,則把該用戶設(shè)置為主源,并向主源推送媒體流;
3.若該組中已經(jīng)存在主源,則判斷組內(nèi)備用源情況:
a)備用源數(shù)量小于設(shè)定值,則把用戶設(shè)置為備用源,并將組內(nèi)所有用戶信息(包括源)發(fā)送給該用戶,同時(shí)向所有用戶發(fā)送添加源消息;
b)備用源數(shù)量大于或等于設(shè)定值,則將組內(nèi)所有源用戶信息發(fā)送給該用戶,同時(shí)向所有源發(fā)送添加用戶消息;
4.用戶在收到媒體流后,進(jìn)行判斷:
a)如果媒體流來源是媒體服務(wù)器,則進(jìn)行媒體流的組內(nèi)轉(zhuǎn)發(fā),同時(shí)將媒體流推送給業(yè)務(wù)進(jìn)程;
b)如果媒體流來源是組內(nèi)其他源,則只推送給業(yè)務(wù)進(jìn)程;
c)如果媒體流來源是其他地址,則拋棄處理;
5.用戶在接收到媒體服務(wù)器響應(yīng)后,判斷自己是否是源,如果是源,則需定時(shí)向媒體服務(wù)器發(fā)送心跳信息,如果媒體服務(wù)器在一段時(shí)間內(nèi)沒有接收到源用戶的心跳信息,則認(rèn)為該源出現(xiàn)故障,已不再適合做源(不刪除源,只把源用戶降級為普通用戶),必須根據(jù)源類型進(jìn)行如下處理:
a)如果該源是備用源,則向組內(nèi)所有用戶發(fā)送取消源消息,同時(shí)在組內(nèi)選擇一個(gè)非源用戶作為備用源,并通知所有用戶;
b)如果該源是主源,則將組內(nèi)最合適的備用源作為主源,向新的主源推流,向組內(nèi)所有用戶發(fā)送取消源消息,同時(shí)在組內(nèi)選擇一個(gè)非源用戶作為備用源,并通知所有用戶;
6.用戶停止實(shí)時(shí)視音頻點(diǎn)播業(yè)務(wù)時(shí),向媒體服務(wù)器發(fā)送退出業(yè)務(wù)請求,媒體服務(wù)器根據(jù)用戶類型進(jìn)行處理:
a)從組內(nèi)刪除該用戶;
b)如果該組只有該用戶,則刪除該分組;
c)如果是非源用戶,則通知所有源用戶退出消息;
d)如果是備用源,則向組內(nèi)所有用戶發(fā)送源退出消息,同時(shí)在組內(nèi)選擇一個(gè)非源用戶作為備用源,并通知所有用戶;
e)如果是主源,則將組內(nèi)最合適的備用源作為主源,向新的主源推流,向組內(nèi)所有用戶發(fā)送源退出消息,同時(shí)在組內(nèi)選擇一個(gè)非源用戶作為備用源,并通知所有用戶;
7.用戶定時(shí)向媒體服務(wù)器報(bào)送狀態(tài)信息,包括CPU資源,內(nèi)存空閑數(shù)量,業(yè)務(wù)數(shù)量,上行帶寬大小以及上行帶寬占用情況,以便媒體服務(wù)器進(jìn)行源的重選;當(dāng)用戶為源時(shí),如果當(dāng)前丟包率較高(超過I % ),CPU使用過高,上行帶寬不足(上行帶寬用于分發(fā)媒體資源),則向媒體服務(wù)器發(fā)送告警信息;
8.源的選擇與重選:當(dāng)系統(tǒng)空閑或源告警時(shí),可根據(jù)組內(nèi)用戶機(jī)器性能和資源占用情況,進(jìn)行源的重選;源的選擇和重選過程發(fā)生在用戶請求資源、用戶退出、源用戶超時(shí)、源用
戶告警時(shí)。本發(fā)明的有益效果是,通過對用戶進(jìn)行收斂,極大地減少了媒體資源在運(yùn)營商網(wǎng)絡(luò)上的傳輸數(shù)量,減少了傳輸帶寬。若某局域網(wǎng)內(nèi)有100個(gè)用戶同時(shí)點(diǎn)播一路媒體資源,媒體資源流量為6Mbps,傳統(tǒng)方案需要600Mb帶寬,本發(fā)明按照4組用戶來算只需要24Mb帶寬即可滿足業(yè)務(wù)流量需求。在不增加傳輸帶寬和服務(wù)器資源的同時(shí),支持大用戶量并發(fā)進(jìn)行實(shí)時(shí)視音頻點(diǎn)播業(yè)務(wù),并保證了系統(tǒng)的穩(wěn)定性并降級了成本。
下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)一步說明,以一個(gè)主源和一個(gè)備用源為例。為了直觀理解,特意將媒體資源提供者拆分為媒體服務(wù)器和媒體設(shè)備兩部分。圖1是本發(fā)明的部署圖。圖2是本發(fā)明的原理圖。圖3是用戶業(yè)務(wù)請求時(shí)序圖。圖4是主源停止業(yè)務(wù)時(shí)的時(shí)序圖。圖5是主源心跳超時(shí)的時(shí)序圖。圖中1001.運(yùn)營商網(wǎng)絡(luò),1002.局域網(wǎng)內(nèi)部網(wǎng)絡(luò)。
具體實(shí)施例方式本發(fā)明是一種將用戶按組進(jìn)行收斂的方法,以節(jié)省傳輸帶寬。在信令方面用戶可以直接連接媒體服務(wù)器,也可以通過其他服務(wù)器中轉(zhuǎn)或代理連接媒體服務(wù)器。具體包括以下步驟:
1.用戶發(fā)起實(shí)時(shí)視音頻資源點(diǎn)播業(yè)務(wù),建立線程并偵聽端口,向媒體服務(wù)器發(fā)送點(diǎn)播請求,請求內(nèi)容攜帶資源名稱、本機(jī)IP地址、資源接收端口、局域網(wǎng)子網(wǎng)掩碼、網(wǎng)關(guān)IP地址信息;
2.媒體服務(wù)器接收到該請求,按照資源名稱進(jìn)行分類,接著根據(jù)IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)IP以及服務(wù)器接收到的用戶實(shí)際IP地址判斷用戶屬于哪個(gè)局域網(wǎng)(IP地址&子網(wǎng)掩碼,然后再加上網(wǎng)關(guān)IP和網(wǎng)絡(luò)標(biāo)識(表示屬于哪個(gè)網(wǎng)絡(luò))即可確定該用戶屬于哪個(gè)局域網(wǎng),網(wǎng)絡(luò)標(biāo)識由實(shí)際IP地址確定,用于跨網(wǎng)的情況:若實(shí)際IP地址與用戶IP地址不同,則需要和非跨網(wǎng)的用戶區(qū)分處理,此時(shí)建議使用網(wǎng)關(guān)、轉(zhuǎn)發(fā)服務(wù)器或代理服務(wù)器進(jìn)行中轉(zhuǎn)操作,使得該網(wǎng)絡(luò)下的用戶實(shí)際IP地址相同,均為對應(yīng)服務(wù)器IP地址,便于收斂),媒體服務(wù)器也可制定規(guī)則,將某些網(wǎng)段進(jìn)行合并(比如把局域網(wǎng)內(nèi)的子網(wǎng)也歸并到該大局域網(wǎng)),然后將用戶添加到該局域網(wǎng)下的某個(gè)組中,若沒有符合的組,則創(chuàng)建新組并掛載到該局域網(wǎng)列表中;
3.若用戶IP地址與媒體服務(wù)器接收到的用戶實(shí)際IP地址不同,則表明該用戶處于某個(gè)子網(wǎng)或者另外的網(wǎng)絡(luò),此時(shí)直接向用戶推送媒體流可能不會成功,需要通過NAT服務(wù)器進(jìn)行NAT穿透,建立媒體服務(wù)器與用戶之間的媒體數(shù)據(jù)通信鏈路(非源用戶與媒體服務(wù)器之間不需要建立數(shù)據(jù)通信鏈路),NAT時(shí)用戶終端建立通信鏈路的端口必須為其資源接收端口
4.若該組中沒有主源,意味著該組是一個(gè)新組,沒有其他用戶,則:
a)保存用戶信息到組中,包含用戶IP地址,用戶媒體資源接收端口;
b)把該用戶設(shè)置為主源,同時(shí)通知用戶已受理該請求,并告知用戶為源;
c)必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3);
d)向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
e)添加用戶到超時(shí)列表,初始時(shí)間建議為當(dāng)前時(shí)間加上2倍心跳時(shí)間,以避免用戶在第一次心跳之前由于用戶處理邏輯引發(fā)超時(shí);
f)向主源推送媒體資源;
5.若該組中已經(jīng)存在主源,則需要根據(jù)備用源情況進(jìn)行如下處理:
a)保存用戶信息到組中,包含用戶 IP地址,用戶媒體資源接收端口;
b)若備用源數(shù)量小于設(shè)定值,則:
1.將用戶設(shè)置為備用源,同時(shí)通知用戶已受理該請求,并告知用戶為源; .必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3);
ii1.向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
iv.添加用戶到超時(shí)列表,初始時(shí)間建議為當(dāng)前時(shí)間加上2倍心跳時(shí)間,以避免用戶在第一次心跳之前由于用戶處理邏輯引發(fā)超時(shí);
V.將組內(nèi)所有用戶(包括主源、備用源和非源)信息發(fā)送給該用戶;
v1.向所有用戶發(fā)送添加源消息(主源接收到該消息后會向該用戶推送媒體資源);
c)備用源數(shù)量大于或等于設(shè)定值,則: 1.通知用戶已受理該請求;
.將組內(nèi)所有源(包括主源和備用源)用戶信息發(fā)送給該用戶;
ii1.向所有源發(fā)送添加用戶消息(主源接收到該消息后會向該用戶推送媒體資源);
6.用戶在收到媒體服務(wù)器發(fā)送的信令控制消息后,開始利用該數(shù)據(jù)鏈路定時(shí)向媒體服務(wù)器發(fā)送心跳消息,時(shí)間間隔應(yīng)不超過50毫秒;媒體服務(wù)器對于NAT建立通信鏈路的備用源,定時(shí)發(fā)送心跳響應(yīng)控制消息,10秒一次即可,以確保該通信鏈路不會被斷開;
7.用戶在收到媒體流后,進(jìn)行判斷:
a)如果媒體流來源是媒體服務(wù)器,則進(jìn)行媒體流的組內(nèi)轉(zhuǎn)發(fā),同時(shí)推送給業(yè)務(wù)進(jìn)程;
b)如果媒體流來源是源(用戶終端不區(qū)分主源和備用源),只推送給業(yè)務(wù)進(jìn)程;
c)如果媒體流來源是其他地址,則表示不是有效數(shù)據(jù),直接拋棄處理;
8.如果媒體服務(wù)器在一段時(shí)間內(nèi)沒有接收到源的心跳信息(一般設(shè)定為2.4倍用戶定時(shí)時(shí)間即可),則認(rèn)為該源已出現(xiàn)故障,此時(shí)需要取消該源,降級為普通用戶(不刪除該用戶,刪除操作由用戶本身發(fā)起,或者由信令鏈路超時(shí)發(fā)起):
a)如果該源是備用源,則:
1.向組內(nèi)所有用戶發(fā)送取消源消息(降級為普通用戶);
.在組內(nèi)選擇一個(gè)非源用戶作為備用源,必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3),并向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
ii1.將新備用源加入超時(shí)列表;
iv.通知所有用戶添加備用源消息;
V.向新添加的備用源發(fā)送組內(nèi)所有用戶信息;
b)如果該源是主源,則: 1.在組內(nèi)備用源中選擇一個(gè)做為主源; .向新的主源推流;
ii1.向組內(nèi)所有用戶發(fā)送取消源消息,取消原來的主源(降級為普通用戶);
iv.在組內(nèi)選擇一個(gè)非源用戶作為備用源,必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3),并向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
V.將新備用源加入超時(shí)列表;
v1.通知所有用戶添加源消息;
vi1.向新添加的備用源發(fā)送組內(nèi)所有用戶信息;
9.用戶停止視音頻點(diǎn)播業(yè)務(wù)時(shí),向媒體服務(wù)器發(fā)送退出請求,媒體服務(wù)器根據(jù)用戶類型進(jìn)行處理:
a)如果該組內(nèi)只有該用戶,則刪除該分組;
b)如果是非源,則在組內(nèi)刪除該用戶,并向所有源發(fā)送用戶退出消息;
c)如果是備用源,則:
1.在組內(nèi)刪除該用戶,并向組內(nèi)所有用戶發(fā)送源退出消息;
.在組內(nèi)選擇一個(gè)非源用戶作為備用源,必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3),并向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
ii1.將新備用源加入超時(shí)列表;
iv.通知所有用戶添加備用源消息;
V.向新添加的備用源發(fā)送組內(nèi)所有用戶信息;
d)如果是主源,則:
1.在組內(nèi)備用源中選擇一個(gè)做為主源; .向新的主源推流; ii1.向組內(nèi)所有用戶發(fā)送源退出消息,刪除原來的主源;
iv.在組內(nèi)選擇一個(gè)非源用戶作為備用源,必要時(shí)建立媒體數(shù)據(jù)通信鏈路(參考3),并向用戶的媒體接收端口發(fā)送控制信令消息(在數(shù)據(jù)通信鏈路已經(jīng)建立時(shí)利用數(shù)據(jù)通信鏈路向用戶發(fā)送),通知用戶利用該數(shù)據(jù)通信鏈路向媒體服務(wù)器發(fā)送心跳消息;
v.將新備用源加入超時(shí)列表;
v1.通知所有用戶添加備用源消息;
vi1.向新添加的備用源發(fā)送組內(nèi)所有用戶信息;
10.用戶信令控制鏈路在發(fā)起點(diǎn)播業(yè)務(wù)并得到媒體服務(wù)器成功響應(yīng)后,定時(shí)(比如30秒)向媒體服務(wù)器報(bào)送系統(tǒng)狀態(tài)信息,包含上行帶寬大小、上行帶寬占用情況、CPU頻率、CPU使用率、內(nèi)存空閑數(shù)量和業(yè)務(wù)數(shù)量(做為源)等。其目的在于: a)媒體服務(wù)器可以根據(jù)該信息選擇源和備用源;
b)如果一段時(shí)間沒有該信息報(bào)送,則認(rèn)為用戶已經(jīng)退出,執(zhí)行普通用戶退出業(yè)務(wù)流程,此時(shí)用戶必定為普通用戶,如果是源,則會由于源的心跳超時(shí)機(jī)制把源降級為普通用戶,因?yàn)樾奶瑫r(shí)時(shí)間比該狀態(tài)報(bào)送時(shí)間短得多;
當(dāng)用戶為源時(shí),如果當(dāng)前丟包率較高(超過I % ),CPU使用過高,上行帶寬不足,則向媒體服務(wù)器發(fā)送告警信息,以便媒體服務(wù)器進(jìn)行源的重選;
11.源的選擇與重選:
源的選擇方案可采用以下方式:
a)網(wǎng)絡(luò)上行空閑帶寬必須要滿足分發(fā)資源到組內(nèi)其他用戶的帶寬需求,主要考慮因素為網(wǎng)卡速度、網(wǎng)線速度以及用戶是否也在其他媒體資源業(yè)務(wù)中擔(dān)任源的角色,啟用占用和預(yù)留方式:(當(dāng)前用戶數(shù)+ (組內(nèi)最大用戶數(shù)-當(dāng)前用戶數(shù))/4) *媒體流量,如果一個(gè)媒體資源流量為6Mbps,該組最多用戶數(shù)為32,當(dāng)前用戶數(shù)為16,則源用戶上行流量空閑至少為(16+ (32-16) /4) *6=120Mbps ;
b)按CPU空閑量進(jìn)行排序,CPU空閑量最大的做為源;
c)一個(gè)用戶可同時(shí)進(jìn)行多個(gè)點(diǎn)播業(yè)務(wù),按照其做為源的業(yè)務(wù)數(shù)量進(jìn)行降序排列,以最少做為源的業(yè)務(wù)數(shù)量的用戶最為源;
當(dāng)媒體服務(wù)器系統(tǒng)空閑或者源用戶資源告警時(shí),根據(jù)組內(nèi)用戶機(jī)器性能和資源占用情況,執(zhí)行源超時(shí)方案(第8條),進(jìn)行源的重選(可參考源的選擇方案)。附加說明:
媒體服務(wù)器支持直接推送的模式,比如向外部平臺推流,這種情況下就不需要進(jìn)行對用戶分組,也無需心跳確認(rèn),直接將媒體流推送給用戶指定的IP、媒體資源接收端口即可。數(shù)據(jù)傳輸格式如下:
對于直接推送媒體流方式的內(nèi)部服務(wù)器或外部平臺,采用RTP協(xié)議直接推送;
對于用戶收到的每一個(gè)數(shù)據(jù)包,前4個(gè)字節(jié)用來表示數(shù)據(jù)窗口位置以及區(qū)分該包是信令還是媒體數(shù)據(jù):
最高位為1,表示該包是一個(gè)信令控制消息;
最高位為0,表示該包是一個(gè)媒體數(shù)據(jù)包;
低31位表示當(dāng)前的活動(dòng)窗口位置,用于客戶端判斷是否存在丟包,以及統(tǒng)計(jì)丟包比
例,當(dāng)窗口位置超過231時(shí),其值減去231 ;
對于數(shù)據(jù)包,后續(xù)的包內(nèi)容全部為媒體數(shù)據(jù):
窗口棧(4/ 丨媒體數(shù)據(jù)
對于信令包,為了方便媒體服務(wù)器對用戶進(jìn)行快速檢索,接下來4個(gè)字節(jié)為該用戶在
媒體服務(wù)器里數(shù)據(jù)的索引位置,后續(xù)的包內(nèi)容為信令內(nèi)容:
窗口棧(4)丨索引號(4)丨信令內(nèi)容_
權(quán)利要求
1.一種節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,用戶通過媒體資源提供者獲取媒體資源,其特征是: a.對用戶按媒體資源名稱和其所屬網(wǎng)絡(luò)進(jìn)行分組; b.組內(nèi)選擇一個(gè)用戶作為主源,選擇一個(gè)或多個(gè)用戶做為備用源,也可無備用源; c.主源通過網(wǎng)絡(luò)從媒體資源提供者處獲取媒體資源,然后將資源分發(fā)給組內(nèi)其他用戶; d.備用源在主源發(fā)生異常時(shí)啟用,承載資源分發(fā)功能,確保組內(nèi)用戶仍然可以接收到媒體資源。
2.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:組內(nèi)所有用戶都屬于同一個(gè)局域網(wǎng)或其子網(wǎng)。
3.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:組內(nèi)用戶數(shù)量可以動(dòng)態(tài)增加或減少,但用戶數(shù)量有上限。
4.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:主源和備用源定時(shí)向媒體資源提供者發(fā)送心跳信息。
5.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:媒體資源提供者包括媒體服務(wù)器、監(jiān)控平臺和媒體設(shè)備。
6.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:源存儲有組內(nèi)所有用戶信息。
7.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:信令和數(shù)據(jù)分為不同的鏈路進(jìn)行傳輸。
8.根據(jù)權(quán)利要求1所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:用戶與媒體資源提供者之間的數(shù)據(jù)傳輸支持NAT穿透。
9.根據(jù)權(quán)利要求3所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:組內(nèi)源可以動(dòng)態(tài)改變和調(diào)整。
10.根據(jù)權(quán)利要求6所述的節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,其特征是:用戶信息包含用戶IP地址和數(shù)據(jù)接收端口。
全文摘要
一種節(jié)省傳輸帶寬并能增大并發(fā)量的用戶收斂方法,屬于視頻監(jiān)控領(lǐng)域。先根據(jù)資源名稱對用戶進(jìn)行分類,接著將用戶按照局域網(wǎng)進(jìn)行區(qū)分,然后對該局域網(wǎng)下的用戶進(jìn)行分組。在組內(nèi)選擇一個(gè)主源和多個(gè)備用源,主源通過網(wǎng)絡(luò)從媒體服務(wù)器獲取媒體流,然后分發(fā)給組內(nèi)用戶,備用源保證在主源出現(xiàn)異常時(shí)組內(nèi)其他用戶不至于出現(xiàn)媒體資源的中斷。通過該用戶收斂方法,減少了用戶與媒體服務(wù)器之間媒體流的傳輸,從而達(dá)到節(jié)省網(wǎng)絡(luò)傳輸帶寬和增大用戶并發(fā)量的目的。
文檔編號H04N7/18GK103167028SQ201310055620
公開日2013年6月19日 申請日期2013年2月21日 優(yōu)先權(quán)日2013年2月21日
發(fā)明者胡鳳兵 申請人:胡鳳兵