專利名稱:通用即插即用內(nèi)的音頻視頻管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬消費(fèi)產(chǎn)品和家庭聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體地說(shuō),與為UPnP 1.0提供音頻視頻管理能力有關(guān)。
背景技術(shù):
通用即插即用(UPnP)是一種用于所有的形狀因素的智能電氣用具、無(wú)線設(shè)備和PC的普遍的對(duì)等網(wǎng)絡(luò)連接的體系結(jié)構(gòu)。它設(shè)計(jì)成可以使易于使用的、靈活的、基于標(biāo)準(zhǔn)的連接用于專門(mén)設(shè)計(jì)的或難以管理的網(wǎng)絡(luò),無(wú)論是家庭、小型企業(yè)、公共場(chǎng)地的網(wǎng)絡(luò)還是接到互聯(lián)網(wǎng)上的網(wǎng)絡(luò)。通用即插即用是一種分布式的開(kāi)放型網(wǎng)絡(luò)結(jié)構(gòu),除了在家庭、事務(wù)所和公共場(chǎng)地內(nèi)的聯(lián)網(wǎng)設(shè)備之間進(jìn)行控制和數(shù)據(jù)傳送,還借用TCP/IP和Web網(wǎng)技術(shù),允許無(wú)縫近程聯(lián)網(wǎng)。
雖然UPnP提供了家庭網(wǎng)絡(luò)內(nèi)各種設(shè)備之間的連接,但并不很適合多應(yīng)用環(huán)境內(nèi)音頻視頻信息的通信。音頻視頻(AV)信息傳送,例如從一個(gè)VCR或DVD播放機(jī)傳送給一個(gè)電視屏幕,通常需要一個(gè)專用的具有至少給定業(yè)務(wù)質(zhì)量(QoS)的點(diǎn)到點(diǎn)通信信道。對(duì)于AV信息傳送或其他對(duì)時(shí)間敏感的通信,UPnP 1.0有著以下三個(gè)主要缺點(diǎn)。
UPnP的第一個(gè)缺點(diǎn)是它不支持可能竟?fàn)帉?duì)同一個(gè)設(shè)備或它的子設(shè)備的控制的多個(gè)應(yīng)用。結(jié)果,在多個(gè)應(yīng)用試圖改變單個(gè)設(shè)備或它的子設(shè)備的狀態(tài)時(shí)可能出現(xiàn)競(jìng)爭(zhēng)狀況,而這些應(yīng)用受到的影響可能是非確定的。
第二個(gè)缺點(diǎn)是UPnP將包括流管理在內(nèi)的保證服務(wù)質(zhì)量(QoS)的負(fù)擔(dān)留給了應(yīng)用。結(jié)果,一個(gè)具有實(shí)時(shí)要求的應(yīng)用必須直接管理網(wǎng)絡(luò)資源。例如,一個(gè)UPnP應(yīng)用必須建立連接,必須分配信道和帶寬,以支持給定的QoS。正如在該技術(shù)領(lǐng)域內(nèi)所知的那樣,這個(gè)任務(wù)是相當(dāng)繁重的,特別是如果這個(gè)應(yīng)用需要處理一些不同網(wǎng)絡(luò)上的設(shè)備,諸如將視頻從一個(gè)1394設(shè)備流注入屬于不同的無(wú)線網(wǎng)絡(luò)的無(wú)線屏幕。通常要求應(yīng)用使用由不同的網(wǎng)絡(luò)提供的不同的接口,以執(zhí)行流注任務(wù)。
第三個(gè)缺點(diǎn)是一個(gè)UPnP應(yīng)用必須常駐,執(zhí)行任何作業(yè),而不能只調(diào)度作業(yè)自動(dòng)啟動(dòng)。這種缺乏調(diào)度導(dǎo)致同時(shí)駐留許多應(yīng)用,因此與讓系統(tǒng)照料未來(lái)作業(yè)的請(qǐng)求或重復(fù)性任務(wù)的請(qǐng)求相比效能較差。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種支持通過(guò)一個(gè)UPnP網(wǎng)絡(luò)傳送音頻視頻信息的系統(tǒng)、方法和體系結(jié)構(gòu)。本發(fā)明的另一個(gè)目的是提供一種控制多個(gè)競(jìng)爭(zhēng)方接入設(shè)備和設(shè)備的子設(shè)備的UPnP網(wǎng)絡(luò)管理系統(tǒng)。本發(fā)明的又一個(gè)目的是提供一種以給定的業(yè)務(wù)質(zhì)量提供可靠通信的UPnP網(wǎng)絡(luò)管理系統(tǒng)。本發(fā)明的再一個(gè)目的是提供一種提供作業(yè)調(diào)度的UPnP網(wǎng)絡(luò)管理系統(tǒng)。
這些目的和其它一些目的通過(guò)為UPnP體系結(jié)構(gòu)添加下列模塊和系統(tǒng)達(dá)到一個(gè)資源管理模塊,所述資源管理模塊支持單個(gè)設(shè)備或它的子設(shè)備的多個(gè)競(jìng)爭(zhēng)方而不會(huì)有競(jìng)爭(zhēng)或危險(xiǎn),它與一些通道管理器一起工作,保證通道的有效性和完整性;一個(gè)通道管理器,所述通道管理器提供源-宿通道管理,包括保證通道有效性、完整性和業(yè)務(wù)質(zhì)量;以及一個(gè)動(dòng)作管理器,所述動(dòng)作管理器允許A/V應(yīng)用調(diào)度作業(yè)。
資源管理器和通道管理器配置成管理分布在不同種類的網(wǎng)絡(luò)內(nèi)的設(shè)備和網(wǎng)絡(luò)資源,諸如分布在采用混合以太網(wǎng)、1394、802.11、HyperLAN2、USB、HPNA的網(wǎng)絡(luò)內(nèi)的資源,從而配置成保證一個(gè)橫穿一些網(wǎng)絡(luò)邊界的通道可以提供有效的通信。動(dòng)作管理器的職責(zé)是調(diào)度動(dòng)作。動(dòng)作管理器是資源管理器和通道管理器的客戶機(jī),起著應(yīng)用的代理的作用。資源管理器和通道管理器配置成UPnP構(gòu)架的一個(gè)組成部分,通過(guò)HTTP消息與應(yīng)用通信。
本發(fā)明將結(jié)合附圖詳細(xì)舉例說(shuō)明,在這些附圖中圖1例示了一個(gè)包括一些與多個(gè)不同種類的網(wǎng)絡(luò)交互作用的UPnP用戶控制點(diǎn)(UCP)的系統(tǒng)的典型方框圖;圖2例示了一個(gè)使一個(gè)非IP網(wǎng)絡(luò)與一些UPnP用戶控制點(diǎn)橋接的系統(tǒng)的典型方框圖;
圖3例示了一個(gè)按照本發(fā)明設(shè)計(jì)的支持時(shí)間敏感信息橫穿多個(gè)不同種類的網(wǎng)絡(luò)的通信的UPnP體系結(jié)構(gòu)的典型方框圖;圖4例示了一個(gè)按照本發(fā)明設(shè)計(jì)的保留一個(gè)通信通道沿路的設(shè)備資源的過(guò)程的典型流程圖;以及圖5例示了一個(gè)按照本發(fā)明設(shè)計(jì)的建立一個(gè)通信通道沿路的網(wǎng)絡(luò)段的過(guò)程的典型流程圖。
在這些附圖中,同樣的標(biāo)注數(shù)字所標(biāo)注的是類似的或相應(yīng)的功能部件或功能。
具體實(shí)施例方式
圖1例示了一個(gè)包括一些在一個(gè)IP網(wǎng)絡(luò)160上的UPnP控制器161的系統(tǒng)100的方框圖,這些UPnP控制器與一些在多個(gè)不同種類的網(wǎng)絡(luò)170、180上的設(shè)備171、181交互作用。為了引用方便,UPnP控制器161以下簡(jiǎn)稱為用戶控制點(diǎn)(UCP),與這種控制器一般所用的術(shù)語(yǔ)一致,雖然本發(fā)明可適用于任何形式的UPnP兼容控制實(shí)體。
多個(gè)從網(wǎng)絡(luò)的主系統(tǒng)110內(nèi)的UPnP代理允許邏輯120分別通過(guò)從網(wǎng)絡(luò)接口140、150與受控設(shè)備或者說(shuō)從設(shè)備171、181交互作用。在這個(gè)例子中,所給出的從設(shè)備171是USB設(shè)備,而從設(shè)備181是藍(lán)牙設(shè)備(W1和W2)。雖然例示的是單個(gè)主系統(tǒng)110,但熟悉該技術(shù)領(lǐng)域的可以理解,主系統(tǒng)110可以分布在各種設(shè)備中。所例示的是一個(gè)典型的USB網(wǎng)絡(luò)170和一個(gè)藍(lán)牙RF網(wǎng)絡(luò)180,但是本發(fā)明的原理適用于幾乎任何便于控制網(wǎng)絡(luò)上的設(shè)備的網(wǎng)絡(luò),包括諸如IEEE 1394網(wǎng)絡(luò)之類的HAVi兼容網(wǎng)絡(luò)、802.11網(wǎng)絡(luò)、HomeRF網(wǎng)絡(luò)、Firefly網(wǎng)絡(luò)、諸如X-10網(wǎng)絡(luò)之類的輸電線網(wǎng)絡(luò)和Jini兼容網(wǎng)絡(luò)。
主系統(tǒng)110內(nèi)的UPnP允許邏輯120執(zhí)行UPnP用戶控制點(diǎn)161與從設(shè)備171、181之間的命令和消息的變換和協(xié)調(diào)。為了引用方便,IP網(wǎng)絡(luò)160上遵從UPnP的對(duì)象稱為UPnP對(duì)象,而非IP網(wǎng)絡(luò)170、180上的設(shè)備稱為非UPnP設(shè)備。
圖2例示了一個(gè)使諸如USB網(wǎng)絡(luò)之類的非IP網(wǎng)絡(luò)170與UPnP用戶控制點(diǎn)161橋接的主系統(tǒng)110的典型方框圖。如圖所示,UPnP允許邏輯120通過(guò)UPnP存儲(chǔ)棧(stack)130與IP網(wǎng)絡(luò)160上的UCP 161交互作用,存儲(chǔ)棧包括在單/多播TCP/IP和UDP/IP 232頂上的HTTP 231,這在下面還要進(jìn)一步說(shuō)明。示出的還有一個(gè)DHCP客戶程序231A。UPnP允許邏輯120還與從網(wǎng)絡(luò)接口140交互作用,對(duì)從設(shè)備171進(jìn)行控制和報(bào)信。在本例中,USB網(wǎng)絡(luò)接口140包括設(shè)備驅(qū)動(dòng)241、類驅(qū)動(dòng)器242、USB存儲(chǔ)棧243和USB主控制器244,都與現(xiàn)有的USB標(biāo)準(zhǔn)一致。正如下面進(jìn)一步說(shuō)明的那樣,從網(wǎng)絡(luò)接口140為UPnP允許邏輯120提供網(wǎng)絡(luò)170上每個(gè)設(shè)備171的信息、每個(gè)設(shè)備171的當(dāng)前狀態(tài)(連接/斷開(kāi)/待機(jī)/等)、每個(gè)設(shè)備171的當(dāng)前能力等等。
圖3例示了一個(gè)按照本發(fā)明設(shè)計(jì)的UPnP體系結(jié)構(gòu)的典型方框圖。本發(fā)明為允許邏輯120提供了必要的功能部件,以便在不同種類的網(wǎng)絡(luò)上的設(shè)備之間高效率和有效地傳送音頻視頻信息或其他時(shí)間敏感信息,具體地說(shuō),提供了動(dòng)作管理模塊310、資源管理模塊320和通道管理模塊330以及分別與它們配合的數(shù)據(jù)庫(kù),即動(dòng)作數(shù)據(jù)庫(kù)315、資源數(shù)據(jù)庫(kù)325和通道數(shù)據(jù)庫(kù)335,來(lái)支持通過(guò)UPnP允許的不同種類的網(wǎng)絡(luò)傳送A/V和其他時(shí)間敏感信息。本發(fā)明的UPnP網(wǎng)絡(luò)管理系統(tǒng)包括一個(gè)或多個(gè)UPnP代理允許邏輯塊120,它們配置成控制多個(gè)競(jìng)爭(zhēng)方接入設(shè)備和設(shè)備的子設(shè)備,提供業(yè)務(wù)質(zhì)量按照需要給定的可靠通信,以及提供作業(yè)調(diào)度,如下面要詳細(xì)說(shuō)明的那樣。
為了容易理解,在這里只是說(shuō)明受本發(fā)明的功能部件影響的UPnP代理允許邏輯的那些功能。此外,為了容易理解,給出以下定義。
設(shè)備資源(Device Resource),或者簡(jiǎn)單地說(shuō)資源設(shè)備資源包括設(shè)備和它們的子設(shè)備。例如,一個(gè)VCR設(shè)備及其諸如調(diào)諧器、時(shí)鐘、定時(shí)器和走帶機(jī)構(gòu)之類的子設(shè)備是設(shè)備資源。
網(wǎng)絡(luò)資源(Network Resource)網(wǎng)絡(luò)資源包括信道和帶寬。
通道(Path)一個(gè)通道是一個(gè)按次序從一個(gè)源資源起到一個(gè)宿資源止的網(wǎng)絡(luò)所連接的設(shè)備資源的序列。一個(gè)A/V流可以遵循序列的次序流過(guò)一個(gè)通路。
A/V動(dòng)作(A/V action),或者簡(jiǎn)單地說(shuō)動(dòng)作一個(gè)A/V動(dòng)作相應(yīng)于一種特定類型的A/V流或其他時(shí)間敏感流,從一個(gè)特定時(shí)間開(kāi)始到另一個(gè)特定時(shí)間結(jié)束流過(guò)一個(gè)通路,而且可以周期性發(fā)生。例如,一個(gè)錄取動(dòng)作提供一個(gè)從VCR調(diào)諧器到PC盤(pán)的MPEG2視頻流,每天從3:30pm開(kāi)始到5:00pm結(jié)束。
按照本發(fā)明,調(diào)度一個(gè)A/V動(dòng)作按以下順序進(jìn)行
1.保留動(dòng)作的通道沿路的所有資源。從需執(zhí)行動(dòng)作的時(shí)間開(kāi)始一直持續(xù)一段動(dòng)作持續(xù)時(shí)間;2.按照動(dòng)作的QoS要求沿動(dòng)作的通道建立連接和分配網(wǎng)絡(luò)資源;以及3.在給定時(shí)間調(diào)度動(dòng)作。
在一個(gè)優(yōu)選實(shí)施例中,有一個(gè)應(yīng)用直接提供管理資源保留、通道設(shè)置和作業(yè)調(diào)度,或者它可以請(qǐng)求動(dòng)作管理器310管理這些作業(yè)。通過(guò)配置一個(gè)動(dòng)作管理器310,可以使應(yīng)用不用涉及資源管理和通道管理的細(xì)節(jié)。最好,就在一個(gè)動(dòng)作出現(xiàn)前再立即配給網(wǎng)絡(luò)資源和建立通道,以充分利用網(wǎng)絡(luò)資源,當(dāng)然也可以由行動(dòng)管理器310或應(yīng)用在有效時(shí)間前保留設(shè)備資源。
在一個(gè)優(yōu)選實(shí)施例中,每個(gè)通道管理器有一個(gè)相應(yīng)的同層資源管理器。資源管理器和通道管理器一起管理設(shè)備資源和特定網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)資源,保證通道有效性和完整性。例如,1394網(wǎng)絡(luò)的資源管理器管理網(wǎng)絡(luò)內(nèi)的設(shè)備資源,而同層通道管理器管理連接設(shè)備資源的網(wǎng)絡(luò)資源。資源管理器通過(guò)相互通信保證整個(gè)通道沿路的設(shè)備資源都被保留或都被釋放。類似,通道管理器還通過(guò)相互通信保證建立整個(gè)通道。通道管理器還在通道釋放的情況下通知它們的相應(yīng)同層資源管理器釋放網(wǎng)絡(luò)資源。
在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,傳統(tǒng)的UPnP規(guī)范修改成包括HTTP請(qǐng)求和響應(yīng)命令,以支持資源管理、通道管理和調(diào)度。資源管理命令包括RESERVE(保留)和RELEASE(釋放),帶有一個(gè)標(biāo)識(shí)為之保留資源的通道和保留的開(kāi)始時(shí)間和終止時(shí)間的消息本體。通道管理命令包括SETUP(建立)和TEARDOWN(撤消),帶有一個(gè)包括通道、數(shù)據(jù)流的類型和特征、數(shù)據(jù)流的業(yè)務(wù)質(zhì)量(QoS)要求和通路建立的開(kāi)始時(shí)間和結(jié)束時(shí)間的消息本體。調(diào)度命令包括SCHEDULE(調(diào)度)和UNSCHEDULE(非調(diào)度),帶有一個(gè)包括通道、動(dòng)作的開(kāi)始時(shí)間(包括“現(xiàn)在”)和結(jié)束時(shí)間、數(shù)據(jù)流的類型和特征以及數(shù)據(jù)流的業(yè)務(wù)質(zhì)量QoS要求的消息本體。調(diào)度命令使一個(gè)應(yīng)用在調(diào)度命令提交后就退出網(wǎng)絡(luò)。
為了傳送本發(fā)明的設(shè)施的可用情況,設(shè)備描述數(shù)據(jù)庫(kù)305存有與每個(gè)設(shè)備或業(yè)務(wù)關(guān)聯(lián)的動(dòng)作管理器310、資源管理320和通道管理器330的位置(如通用資源定位碼(URL))。在一個(gè)優(yōu)選實(shí)施例中,設(shè)備管理器模塊340自動(dòng)地將這些URL添加給設(shè)備描述數(shù)據(jù)庫(kù)305。
HTTP服務(wù)器231在初始化時(shí),UPnP HTTP服務(wù)器231為每個(gè)資源管理320、通道管理器330和動(dòng)作管理器310各創(chuàng)建一個(gè)線程。最好,為每個(gè)網(wǎng)絡(luò)設(shè)置每個(gè)類型的一個(gè)管理器,而用一個(gè)配置文件(未示出)指出一個(gè)特定的網(wǎng)絡(luò)將不用或用一個(gè)或多個(gè)一種特定類型的管理器。HTTP服務(wù)器231還識(shí)別和發(fā)送下面要進(jìn)一步說(shuō)明的指向資源管理320、通道管理器330和動(dòng)作管理器310的請(qǐng)求。
資源管理器模塊320資源管理器模塊320的主要功能是避免多個(gè)應(yīng)用試圖使用同一個(gè)設(shè)備或子設(shè)備的競(jìng)爭(zhēng)狀況。最好,資源管理器320是網(wǎng)絡(luò)專用的,負(fù)責(zé)管理相應(yīng)網(wǎng)絡(luò)內(nèi)的資源或部分資源。例如,在一個(gè)包括1394設(shè)備和802.11設(shè)備的UPnP環(huán)境中,至少配置兩個(gè)資源管理器模塊320,一個(gè)用于1394設(shè)備而一個(gè)用于802.11設(shè)備。1394資源管理器管理1394設(shè)備和它們的子設(shè)備,而802.11管理器負(fù)責(zé)802.11設(shè)備和它們的子設(shè)備。
由于資源管理器320管理分布在不同種類的網(wǎng)絡(luò)內(nèi)的資源,諸如分布在采用混合以太網(wǎng)、1394、802.11、USB、HPNA之類的網(wǎng)絡(luò)內(nèi)的資源,因此每個(gè)資源管理器320配置成保證一個(gè)橫穿一些網(wǎng)絡(luò)邊界的通道可以正常工作。資源管理器320保證全部保留或毫不保留,使得一個(gè)保留當(dāng)且僅當(dāng)從源到宿通道沿路的所有實(shí)體可以適當(dāng)配置、保留給預(yù)定的事務(wù)處理時(shí)才予以確立。資源管理器320是UPnP構(gòu)架的一個(gè)組成部分,通過(guò)由HTTP服務(wù)器231傳送的HTTP消息與應(yīng)用通信。
在工作中,一個(gè)應(yīng)用或UPnP系統(tǒng)部件,諸如動(dòng)作管理器310之類,發(fā)布一個(gè)資源保留請(qǐng)求。這樣做了以后,它就成為一個(gè)請(qǐng)求方。每個(gè)接收到一個(gè)保留請(qǐng)求的資源管理器(下面也稱為“活動(dòng)管理器”)必須保證一個(gè)通道的有效性,必須參與全部保留或毫不保留過(guò)程。因此,所有諸如RESERVE、RELEASE、SETUP和TEARDOWN之類的請(qǐng)求指出沿路設(shè)備和網(wǎng)絡(luò)資源需加以管理的整個(gè)通道。一個(gè)通道僅當(dāng)通道沿路的所有設(shè)備資源可獲得時(shí)才是有效的。一個(gè)設(shè)備資源在它由活動(dòng)管理器負(fù)責(zé)時(shí)或者在它有一個(gè)資源管理器而這個(gè)資源管理器是可通達(dá)的情況下是可獲得的。一個(gè)資源管理器僅當(dāng)它例如用一個(gè)確認(rèn)消息響應(yīng)來(lái)自一個(gè)在規(guī)定的時(shí)間期限過(guò)去前的活動(dòng)管理器的請(qǐng)求時(shí)才是可通達(dá)的。以上可通達(dá)性和通道有效性的定義也適合網(wǎng)絡(luò)資源和通道管理器。
為了避免停頓,一個(gè)請(qǐng)求方保留一個(gè)動(dòng)作的通道沿路的所有資源。如果有什么資源不可得到,這個(gè)保留就失敗。作為一個(gè)例子,在試圖將視頻從一個(gè)VCR流注到一個(gè)TV顯示器前,應(yīng)用首先要保留VCR調(diào)諧器和TV顯示器。如果不能保留這兩個(gè),它就開(kāi)始不了流注。圖3中還示出了網(wǎng)絡(luò)業(yè)務(wù)抽象層390,391和392、從網(wǎng)絡(luò)接口393、網(wǎng)絡(luò)表394、DHCP客戶程序395、能力輸出模塊396、設(shè)備能力數(shù)據(jù)庫(kù)397、介紹輸出模塊398、設(shè)備介紹數(shù)據(jù)庫(kù)399、描述輸出模塊381、設(shè)備表345、事件源模塊382、事件預(yù)約數(shù)據(jù)庫(kù)383和業(yè)務(wù)狀態(tài)表384。120d是每個(gè)網(wǎng)絡(luò)或設(shè)備。120b是每個(gè)業(yè)務(wù)。
圖4例示了一個(gè)保留過(guò)程的主邏輯的典型流程圖,適合圖3的典型資源管理器320使用。請(qǐng)求方向任何已知的資源管理器發(fā)送一個(gè)請(qǐng)求,可以是一個(gè)“RESERVE”消息或“RELEASE”消息。每個(gè)資源管理器執(zhí)行一個(gè)連續(xù)循環(huán),在410等待接收消息,即等待接收對(duì)通道的請(qǐng)求,一個(gè)資源保留請(qǐng)求。
如果,在415,確定消息是一個(gè)RESERVE請(qǐng)求,管理器就通過(guò)循環(huán)420-435試圖保留通道沿路它所負(fù)責(zé)的所有資源。在425,接收資源管理器首先試圖從在420得到的受管理器控制的各個(gè)資源中查找一個(gè)還需保留的資源。如果發(fā)現(xiàn)這個(gè)資源,而且這個(gè)資源由接收資源管理器負(fù)責(zé),它就試圖保留這個(gè)資源。如果在430保留成功,就修改保留請(qǐng)求,指出這個(gè)資源已經(jīng)保留,進(jìn)至查找下一個(gè)還需保留的資源。重復(fù)過(guò)程420-435,直到資源管理器成功地保留了這個(gè)通道的它所負(fù)責(zé)的所有資源或者它沒(méi)能保留一個(gè)這樣的資源。在430,在一個(gè)保留失敗的情況下,480資源管理器向請(qǐng)求方發(fā)送一個(gè)FAILED(失敗)消息。于是在485,資源管理器釋放它已為這個(gè)任務(wù)保留的所有資源,向所有前面的資源管理器發(fā)送一個(gè)RELEASE消息,終止為這個(gè)通道的保留,在490,更新資源管理數(shù)據(jù)庫(kù)325。
如果,通過(guò)循環(huán)420-435,資源管理器成功地保留了所有由它負(fù)責(zé)的資源,它將在440檢驗(yàn)是否還有資源需保留,即是否為通道的末端。如果已保留了所有需保留的資源,在445,資源管理器向請(qǐng)求方發(fā)送一個(gè)SUCCESS(成功)消息,在490更新它的相應(yīng)資源管理數(shù)據(jù)庫(kù)325,結(jié)束為這個(gè)通道的保留。如果在440在這個(gè)通道內(nèi)還有需保留的資源,它將它剛保留的資源標(biāo)記為“已保留”,在450將請(qǐng)求轉(zhuǎn)給下一個(gè)資源管理器,等待來(lái)自下一個(gè)資源管理器的確認(rèn)消息。如果在455它在超時(shí)前沒(méi)有接收到確認(rèn)消息,它就在480向請(qǐng)求方發(fā)送一個(gè)FAILED消息,在490,釋放它為請(qǐng)求保留的所有資源,向所有前面的資源管理器發(fā)送一個(gè)RELEASE消息,更新它的相應(yīng)資源管理數(shù)據(jù)庫(kù)325,終止為這個(gè)通道的保留。如果在455資源管理器在超時(shí)前接收到確認(rèn)消息,在490,資源管理器更新它的相應(yīng)資源管理數(shù)據(jù)庫(kù)325后,返回410,為每個(gè)后來(lái)的請(qǐng)求重復(fù)以上過(guò)程。
如果在415消息為RELEASE,就在460,資源管理器首先檢驗(yàn)請(qǐng)求方是否有資格或允許釋放所列的這些資源。一個(gè)請(qǐng)求方如果是另一個(gè)資源管理器320、一個(gè)通道管理器330、動(dòng)作管理器310或資源的屬主(為之保留資源的應(yīng)用),它就有資格釋放資源。如果在460請(qǐng)求方?jīng)]有資格釋放資源,就忽略這個(gè)請(qǐng)求。也可以按需要向沒(méi)有資格的請(qǐng)求方發(fā)送一個(gè)FAILED消息。如果在460請(qǐng)求方是有資格的,資源管理器在465釋放它所負(fù)責(zé)的已為通道保留的資源,在490更新它的相應(yīng)資源管理數(shù)據(jù)庫(kù)325。于是,資源管理器返回410,為新的請(qǐng)求服務(wù)。
此外(未示出),為了保證即使在一個(gè)請(qǐng)求方?jīng)]有明確釋放資源的情況下也釋放資源,資源管理器320配置成在保留時(shí)限期滿時(shí)或不久以后釋放所有資源。
除了以上所述的圖4的保留作業(yè),和/或配合以上所述的圖4的保留作業(yè),在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中圖3的資源管理器320還執(zhí)行以下功能。
資源管理器320創(chuàng)建和維護(hù)資源管理數(shù)據(jù)庫(kù)325,資源管理數(shù)據(jù)庫(kù)325最好實(shí)現(xiàn)為一個(gè)諸如表之類核內(nèi)數(shù)據(jù)結(jié)構(gòu)。對(duì)于每個(gè)資源,數(shù)據(jù)庫(kù)保存資源是否保留的信息、資源的屬主、保留開(kāi)始和終止時(shí)間、保留的周期性和與資源管理有關(guān)的控制功能。如果一個(gè)保留由一個(gè)UPnP系統(tǒng)部件為一個(gè)應(yīng)用提出,還錄取與這個(gè)部件有關(guān)的信息。
在資源管理器320接收到一個(gè)RESERVE請(qǐng)求時(shí),它試圖保留所請(qǐng)求的資源,同時(shí)檢驗(yàn)通道有效性和執(zhí)行全部保留或毫不保留,如圖4這個(gè)流程圖所示。如果它的保留部分成功,資源管理器320將這保留情況錄入數(shù)據(jù)庫(kù)325。如果資源提供資源管理控制功能,資源管理器還形成一個(gè)XML/SOAP消息,將它發(fā)送給相應(yīng)的業(yè)務(wù)控制模塊370。
資源管理器320還提供一個(gè)用來(lái)接收有關(guān)一個(gè)資源的到達(dá)或脫離的通知。在它接收到一個(gè)到達(dá)通知時(shí),它在數(shù)據(jù)庫(kù)325內(nèi)創(chuàng)建一個(gè)登錄項(xiàng),取得資源的描述,提取資源的與資源管理有關(guān)的控制功能,將這信息輸入數(shù)據(jù)庫(kù)325。在資源管理器320接收到一個(gè)脫離通知時(shí),它可以刪除這個(gè)登錄項(xiàng)或者標(biāo)記這個(gè)登錄項(xiàng),指出資源已脫離。通過(guò)標(biāo)記登錄項(xiàng),避免了在資源返回時(shí)重新生成登錄項(xiàng)所需的處理。
此外,資源管理器320提供一個(gè)對(duì)一個(gè)諸如動(dòng)作管理器310或通道管理器330之類的UPnP系統(tǒng)部件的接口,用來(lái)保留或釋放資源而不用進(jìn)行HTTP消息傳送。
資源管理器320還提供管理和通知功能。資源管理器320提供一個(gè)進(jìn)入它的數(shù)據(jù)庫(kù)325進(jìn)行查詢的接口,例如查詢一個(gè)請(qǐng)求方是否為一個(gè)特定資源的屬主。它還通過(guò)事件預(yù)訂模塊360預(yù)訂與它所負(fù)責(zé)的所有資源的資源管理有關(guān)的事件。在它接收到一個(gè)事件的通知時(shí),資源管理器320更新數(shù)據(jù)庫(kù)325,適當(dāng)?shù)脑捦ㄖ獙僦鳌?br>
通道管理器模塊330通道管理器330負(fù)責(zé)管理網(wǎng)絡(luò)資源和設(shè)備連接對(duì)象。設(shè)備連接對(duì)象例如在IEC61883中包括設(shè)備插頭和子設(shè)備插頭。它連接通道沿路的設(shè)備資源,和分配網(wǎng)絡(luò)資源,以保證源至宿連接的建立和業(yè)務(wù)質(zhì)量。因此,在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,一個(gè)應(yīng)用只需向通道管理器330指明一個(gè)A/V流的要求和特征,而不需要知道任何所需資源的特征。一個(gè)應(yīng)用或一個(gè)諸如動(dòng)作管理器310之類的UPnP系統(tǒng)部件可以發(fā)布一個(gè)通道建立請(qǐng)求。這樣做了以后,這個(gè)應(yīng)用或部件就成為一個(gè)請(qǐng)求方。一個(gè)通道建立請(qǐng)求包括需建立的通道、需要這個(gè)通道的開(kāi)始和終止時(shí)間、流的類型和特征、流的QoS要求。如在設(shè)備資源管理器320的情況下,通道管理器330配置成保證全部通道完整性或毫無(wú)通道完整性。如果有什么連接不能構(gòu)成,或者什么網(wǎng)絡(luò)資源不能配給,就將所有與這個(gè)通道有關(guān)的對(duì)象的狀態(tài)復(fù)位,釋放所有設(shè)備資源和網(wǎng)絡(luò)資源。
在一個(gè)優(yōu)選實(shí)施例中,一個(gè)通道管理器330執(zhí)行如圖5所示的連續(xù)循環(huán)。由于這個(gè)循環(huán)的邏輯與圖4中的循環(huán)的邏輯類似,因此兩者共同的說(shuō)明在這里就不再重復(fù)。請(qǐng)求方向任何已知的通道管理器330發(fā)送請(qǐng)求。如果在515確定這個(gè)請(qǐng)求是SETUP,通過(guò)循環(huán)520-535,接收通道管理器330試圖建立通道內(nèi)所有它所負(fù)責(zé)的的分段。對(duì)于在這個(gè)管理器控制內(nèi)的每個(gè)網(wǎng)絡(luò)段,在520,循環(huán)開(kāi)始/繼續(xù)。如果所有帶有下一個(gè)分段的這些分段在535可以成功地設(shè)置,在550,通道管理器就將它剛才建立的分段標(biāo)記為“Set(已設(shè)置)”,再將消息轉(zhuǎn)給下一個(gè)還未設(shè)置的分段,等待下一個(gè)通道管理器響應(yīng)。如果在555在超時(shí)前沒(méi)有接收到響應(yīng),通道管理器就在580向請(qǐng)求方發(fā)送一個(gè)失敗消息,在585撤消它所負(fù)責(zé)的所有網(wǎng)絡(luò)分段,向所有已建立這個(gè)通道的分段的前面的通道管理器發(fā)送一個(gè)TEAR DOWN消息。在595更新相應(yīng)的通道管理數(shù)據(jù)庫(kù)后,返回510。撤消一個(gè)通道包括將通道內(nèi)所有與設(shè)備有關(guān)的對(duì)象復(fù)位,釋放通道的所有網(wǎng)絡(luò)資源。這個(gè)過(guò)程一直繼續(xù)到設(shè)置了整個(gè)通道而沒(méi)有一個(gè)失敗。通道管理器330在通道成功建立后在540檢測(cè)到通道的末端,就在545向請(qǐng)求方回發(fā)一個(gè)成功響應(yīng),在595更新相應(yīng)的通道管理數(shù)據(jù)庫(kù),然后返回510,為一個(gè)新的請(qǐng)求服務(wù),即接受對(duì)通道的請(qǐng)求。
在這個(gè)過(guò)程中,如果在530所檢驗(yàn)到一個(gè)通道管理器330在525不能設(shè)置它所負(fù)責(zé)的所有分段,這個(gè)通道管理器330就在585向所有已建立這個(gè)通道的分段的前面的通道管理器發(fā)送一個(gè)TEAR DOWN消息。它在590還通過(guò)前面提到的釋放請(qǐng)求通知同層資源管理器320有關(guān)撤消情況,在595更新相應(yīng)的通道管理數(shù)據(jù)庫(kù),終止這個(gè)建立過(guò)程,回到循環(huán)的開(kāi)始,以便為一個(gè)新的請(qǐng)求服務(wù)。配置失敗可以發(fā)生在一個(gè)通道管理器不能滿足請(qǐng)求的網(wǎng)絡(luò)資源要求的下限時(shí),也就是說(shuō),發(fā)生在可用的總帶寬小于所需最小帶寬時(shí)。
如果在540確定不是通道的末端,就在550將一個(gè)請(qǐng)求發(fā)送給下一個(gè)管理器。如果在555,請(qǐng)求未得到確認(rèn),就發(fā)送一個(gè)失敗消息。否則,更新相應(yīng)的通道管理數(shù)據(jù)庫(kù)。
如果在515確定請(qǐng)求是一個(gè)TEAR DOWN請(qǐng)求,通道管理器330首先檢驗(yàn)請(qǐng)求方是否有資格撤消這個(gè)通道。一個(gè)請(qǐng)求方有資格撤消一個(gè)通道,如果它是一個(gè)資源管理器320、另一個(gè)通道管理器330、一個(gè)動(dòng)作管理器310或這個(gè)通道的屬主的話。一個(gè)通道的屬主在請(qǐng)求的時(shí)間和在請(qǐng)求中所指出的這段持續(xù)時(shí)間擁有這個(gè)通道內(nèi)所有資源。如果在560檢驗(yàn)確定請(qǐng)求方有資格撤消,通道管理器330就在565撤消它所負(fù)責(zé)的分段,在570通知它的同層資源管理器釋放已經(jīng)為這個(gè)通道保留的資源,在595更新相應(yīng)的通道管理數(shù)據(jù)庫(kù)后返回510。
除了、和/或配合上述通道創(chuàng)建過(guò)程,在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中通道管理器330還執(zhí)行以下功能。
通道管理器330創(chuàng)建和維護(hù)通道數(shù)據(jù)庫(kù)335。通道數(shù)據(jù)庫(kù)335存有建立一個(gè)通道和滿足QoS要求所需的信息。對(duì)于每個(gè)通道,通道管理器330記錄資源的狀態(tài)和能力、配給的網(wǎng)絡(luò)資源、屬主請(qǐng)求方、屬主動(dòng)作等。
一收到一個(gè)SETUP請(qǐng)求,通道管理器330就試圖建立通道的它所負(fù)責(zé)的分段,保證通道建立完整性,如以上所述。通道管理器330如果在建立它的通道部分上成功的話就將有關(guān)通道的信息錄入數(shù)據(jù)庫(kù)335。一個(gè)具體網(wǎng)絡(luò)的通道管理器理解在本網(wǎng)絡(luò)內(nèi)怎樣建立一個(gè)通道。例如,1394網(wǎng)絡(luò)的通道管理器將用一些“插頭(plug)”,遵循與1394標(biāo)準(zhǔn)和諸如IEC61883之類的協(xié)議關(guān)聯(lián)的規(guī)則,通過(guò)這些插頭連接設(shè)備和/或它們的子設(shè)備。
對(duì)于能保證QoS的網(wǎng)絡(luò),諸如1394網(wǎng)絡(luò)之類,通道管理器330分配網(wǎng)絡(luò)資源,以滿足請(qǐng)求方給出的QoS要求。對(duì)于不能保證QoS要求的網(wǎng)絡(luò),諸如IP/以太網(wǎng)之類,通道管理器330分配最好的可用設(shè)施。例如,通道管理器330試圖使用以太網(wǎng)內(nèi)的DifServe那樣的設(shè)施。
通道管理器330提供對(duì)一個(gè)諸如資源管理器320之類的UPnP系統(tǒng)部件的接口,以傳送一個(gè)列有已經(jīng)釋放的資源的清單。在通道管理器330接收到這樣一個(gè)清單時(shí),它就撤消含有這些資源的通道,更新數(shù)據(jù)庫(kù)335。
通道管理器330還提供一個(gè)接口,用來(lái)接收有關(guān)一個(gè)資源的到達(dá)或脫離的通知。在它接收到一個(gè)到達(dá)通知時(shí),通道管理器330在數(shù)據(jù)庫(kù)內(nèi)創(chuàng)建一個(gè)登錄項(xiàng),取得設(shè)備資源的描述,提取與通道管理有關(guān)的控制功能的信息,將這信息輸入數(shù)據(jù)庫(kù)335。在它接收到一個(gè)脫離通知時(shí),通道管理器330或者刪除這個(gè)登錄項(xiàng),或者標(biāo)記這個(gè)登錄項(xiàng),指出資源已脫離。
通道管理器330還提供一個(gè)查詢通道數(shù)據(jù)庫(kù)335的接口。
動(dòng)作管理器模塊310動(dòng)作管理器模塊310使一個(gè)應(yīng)用可以調(diào)度動(dòng)作,讓動(dòng)作管理器310照料動(dòng)作請(qǐng)求。動(dòng)作管理器310還使應(yīng)用從資源管理、通道建立和動(dòng)作管理的細(xì)節(jié)中解放出來(lái)。在一個(gè)優(yōu)選實(shí)施例中,一個(gè)調(diào)度請(qǐng)求包括通道、動(dòng)作的開(kāi)始和結(jié)束時(shí)間、A/V流的類型和特征、A/V流的QoS要求。
動(dòng)作管理器310執(zhí)行以下動(dòng)作。
動(dòng)作管理器310創(chuàng)建和維護(hù)動(dòng)作數(shù)據(jù)庫(kù)315。數(shù)據(jù)庫(kù)315記錄有關(guān)怎樣管理一個(gè)動(dòng)作的信息。這信息包括通道、開(kāi)始和結(jié)束時(shí)間、調(diào)度這個(gè)動(dòng)作的應(yīng)用、A/V流的類型和特征、A/V流的QoS要求。為了效率高,數(shù)據(jù)庫(kù)315最好將這些動(dòng)作組織在一個(gè)時(shí)間隊(duì)列內(nèi)。
在動(dòng)作管理器310接收到一個(gè)SCHEDULE請(qǐng)求時(shí),它向通道內(nèi)的一個(gè)資源的資源管理器320發(fā)送一個(gè)RESERVE請(qǐng)求。在它接收到一個(gè)成功響應(yīng)時(shí),如果動(dòng)作開(kāi)始時(shí)間是“現(xiàn)在”,動(dòng)作管理器310就向通道內(nèi)的一個(gè)通道管理器發(fā)送一個(gè)SETUP請(qǐng)求。如果它接收到一個(gè)成功響應(yīng),它就啟動(dòng)所請(qǐng)求的動(dòng)作。如果動(dòng)作開(kāi)始時(shí)間是在將來(lái),動(dòng)作管理器310就將動(dòng)作輸入數(shù)據(jù)庫(kù)315,等待執(zhí)行時(shí)間到達(dá)。由于資源管理器和通道管理器在一個(gè)失敗后就完全釋放所有設(shè)備和網(wǎng)絡(luò)資源,因此動(dòng)作管理器不需要啟動(dòng)釋放。
動(dòng)作管理器310給本身足夠長(zhǎng)的時(shí)間,以便在要調(diào)度一個(gè)動(dòng)作前建立這個(gè)動(dòng)作所需的通道。在到建立一個(gè)通道的時(shí)間時(shí),如通過(guò)定期檢查數(shù)據(jù)庫(kù)315指出或者作為對(duì)一個(gè)定時(shí)器事件的響應(yīng),動(dòng)作管理器310檢驗(yàn)發(fā)出請(qǐng)求的應(yīng)用此時(shí)是否仍然擁有所有所需的資源。如果屬主(資源的保留方)例如由于取代而改變,執(zhí)行就會(huì)失敗。如果應(yīng)用仍然擁有所有所需的資源,動(dòng)作管理器310命令通道管理器330建立動(dòng)作的通道。在通道成功設(shè)置后,動(dòng)作管理器310啟動(dòng)動(dòng)作。如果通道設(shè)置失敗,執(zhí)行就失敗。由于通道管理器330在失敗的情況下要通知資源管理器320,因此動(dòng)作管理器310不需要通知資源管理器320。如果應(yīng)用仍然存在,動(dòng)作管理器310就將執(zhí)行結(jié)果通知這個(gè)應(yīng)用,或者將這結(jié)果記錄下來(lái)供將來(lái)檢查。
按需要,可以實(shí)現(xiàn)搶先(preemption),一個(gè)應(yīng)用可以搶先一些調(diào)度的動(dòng)作。如果被一個(gè)應(yīng)用選擇,動(dòng)作管理器310就代表調(diào)度動(dòng)作的應(yīng)用參與搶先協(xié)商。在協(xié)商導(dǎo)致放棄一些資源的情況下,如果這應(yīng)用仍然存在,動(dòng)作管理器就通知應(yīng)用,或者將這情況記錄下來(lái)供進(jìn)一步檢查。同時(shí),如果搶先發(fā)生在啟動(dòng)通道建立前,動(dòng)作管理器310向所有已經(jīng)為被搶先的動(dòng)作保留資源的資源管理器320發(fā)送一個(gè)RELEASE請(qǐng)求。否則,動(dòng)作管理器310向所有為這通道建立的通道管理器發(fā)送一個(gè)TEAR DOWN請(qǐng)求。通道管理器再通知它們的相應(yīng)同層資源管理器釋放所保留的資源。在一個(gè)資源被一個(gè)外部事件搶先占用(例如在一個(gè)調(diào)諧器被手控地改為接收一個(gè)與在保留中的不同的信道)的情況下,相應(yīng)的資源管理器接收到一個(gè)有關(guān)這個(gè)事件的通知。資源管理器將這個(gè)事件通知資源的屬主。
在一個(gè)優(yōu)選實(shí)施例中,動(dòng)作管理器310以產(chǎn)生線程和使用線程這兩個(gè)線程的方式實(shí)現(xiàn)。產(chǎn)生線程響應(yīng)SCHEDULE和UNSCHEDULE請(qǐng)求。接收到SCHEDULE請(qǐng)求,動(dòng)作管理器310的產(chǎn)生線程試圖保留所需的資源。如果一個(gè)動(dòng)作需在當(dāng)前時(shí)刻執(zhí)行,而所有資源都得到成功保留,產(chǎn)生線程也就開(kāi)始建立通道,立即調(diào)度這個(gè)動(dòng)作。如果請(qǐng)求是對(duì)于一個(gè)將來(lái)的時(shí)間,產(chǎn)生線程就將這個(gè)作業(yè)在成功保留后放入數(shù)據(jù)庫(kù)315。在為一個(gè)動(dòng)作所安排的通道建立時(shí)間到達(dá)時(shí),使用線程將所有此時(shí)應(yīng)執(zhí)行的作業(yè)推出數(shù)據(jù)庫(kù)315,執(zhí)行它們。
在設(shè)備連接/斷開(kāi)處理器380的一個(gè)優(yōu)選實(shí)施例中,處理器380將一個(gè)登錄項(xiàng)插入描述數(shù)據(jù)庫(kù)305內(nèi)的一個(gè)設(shè)備和/或業(yè)務(wù)的描述。這個(gè)登錄項(xiàng)最好指出負(fù)責(zé)這個(gè)設(shè)備/業(yè)務(wù)的資源管理器320、通道管理器330和動(dòng)作管理器310的URL。
設(shè)備管理器340在與以上保留的通道相應(yīng)的信息傳送開(kāi)始時(shí),設(shè)備管理器340配置成迫使執(zhí)行狀態(tài)改變請(qǐng)求的權(quán)利服從一些規(guī)則,以免可能在多個(gè)應(yīng)用試圖改變同一個(gè)資源的狀態(tài)時(shí)出現(xiàn)競(jìng)爭(zhēng)狀況。執(zhí)行的權(quán)利以保留(reservation)和選通保持(gate keeping)兩個(gè)步驟予以強(qiáng)制執(zhí)行。
保留一個(gè)應(yīng)用當(dāng)且僅當(dāng)它在執(zhí)行一個(gè)狀態(tài)改變命令時(shí)已經(jīng)獲得資源的擁有權(quán)時(shí)才有權(quán)利執(zhí)行這個(gè)狀態(tài)改變命令。為了成為一個(gè)資源的屬主,應(yīng)用必須通過(guò)資源管理器320成功地保留這個(gè)資源。在一個(gè)動(dòng)作管理器310接收到一個(gè)調(diào)度命令后,它將首先保留這個(gè)動(dòng)作所需的資源,以保證提出請(qǐng)求的應(yīng)用在動(dòng)作執(zhí)行時(shí)擁有動(dòng)作的通道沿路的資源。
選通保持通過(guò)設(shè)備管理器模塊340實(shí)現(xiàn)接入資源的命令。在設(shè)備管理器340將一個(gè)狀態(tài)改變命令傳給資源前,設(shè)備管理器340檢驗(yàn)請(qǐng)求方是否有權(quán)利這樣做。每個(gè)設(shè)備,因此所有所關(guān)聯(lián)的設(shè)備資源和網(wǎng)絡(luò)資源,具有一個(gè)資源管理器和一個(gè)通道管理器,負(fù)責(zé)管理它的設(shè)備資源、網(wǎng)絡(luò)資源和網(wǎng)絡(luò)連接對(duì)象。在一個(gè)優(yōu)選實(shí)施例中,僅僅是負(fù)責(zé)的資源管理器有權(quán)利保留任何設(shè)備資源,僅僅是負(fù)責(zé)的通道管理器有權(quán)利分配網(wǎng)絡(luò)資源和處理連接對(duì)象。此外,僅僅是屬主應(yīng)用或代表應(yīng)用的動(dòng)作管理器可以執(zhí)行一個(gè)動(dòng)作。這將使一個(gè)還沒(méi)有保留所有資源的應(yīng)用在它試圖執(zhí)行這個(gè)動(dòng)作時(shí)得到一個(gè)失敗響應(yīng),即使是一個(gè)設(shè)備沒(méi)有提供它自己的保留能力。在一個(gè)優(yōu)選實(shí)施例中,任何請(qǐng)求方都有權(quán)利在資源沒(méi)有被保留期間改變一個(gè)設(shè)備的狀態(tài)。然而,在預(yù)先安排的對(duì)于一個(gè)所保留的資源的狀態(tài)改變的時(shí)間到達(dá)時(shí),將按照需要搶先改變狀態(tài)。
在一個(gè)優(yōu)選實(shí)施例中,設(shè)備管理器340提供以下功能。
設(shè)備管理器340由于一個(gè)設(shè)備的到達(dá)/脫離而創(chuàng)建/刪除一個(gè)業(yè)務(wù)的線程,將這改變通知資源管理器320和通道管理器330。
在設(shè)備管理器340接收到一個(gè)改變一個(gè)目標(biāo)業(yè)務(wù)的狀態(tài)的控制命令時(shí),設(shè)備管理器340首先檢驗(yàn)請(qǐng)求方是否有資格這樣做。只有在請(qǐng)求方有資格的時(shí)候,它才將這命令傳送給這個(gè)業(yè)務(wù)。在一個(gè)優(yōu)選實(shí)施例中,設(shè)備管理器340首先查詢一個(gè)設(shè)備或網(wǎng)絡(luò)資源的保留狀態(tài)。如果不能滿足這個(gè)請(qǐng)求,設(shè)備管理器340就向請(qǐng)求方發(fā)送一個(gè)“失敗響應(yīng)”。一個(gè)請(qǐng)求會(huì)失敗,如果狀態(tài)不是可改變的或者如果有關(guān)的狀態(tài)值等于所請(qǐng)求的值的話,例如,如果資源已經(jīng)處在一個(gè)所保留的狀態(tài),或者如果請(qǐng)求的量超過(guò)提供量,例如,如果剩下的帶寬不夠。否則,設(shè)備管理器340將狀態(tài)的值設(shè)置為所請(qǐng)求的值后,向請(qǐng)求方發(fā)送一個(gè)“成功”響應(yīng)。
以上只是例示本發(fā)明的原理。因此,可以理解,熟悉該技術(shù)領(lǐng)域的人員能設(shè)計(jì)出各種雖然在這里沒(méi)有明確揭示或示出的但體現(xiàn)本發(fā)明的原理從而在以下權(quán)利要求書(shū)給出的本發(fā)明的精神實(shí)質(zhì)和專利保護(hù)范圍內(nèi)的配置。
權(quán)利要求
1.一種便于通過(guò)一個(gè)通用即插即用網(wǎng)絡(luò)(160)傳送時(shí)間敏感信息的系統(tǒng)(100),所述系統(tǒng)包括一個(gè)管理系統(tǒng)(120),配置成保留多個(gè)資源,以在傳送時(shí)間敏感信息前在一個(gè)時(shí)間敏感信息的源與一個(gè)時(shí)間敏感信息的宿之間的通道沿路形成多個(gè)所保留的資源。
2.權(quán)利要求1的系統(tǒng)(100),其中所述在源與宿之間的通道橫穿多個(gè)網(wǎng)絡(luò)(160,170,180),所述源接在多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)第一網(wǎng)絡(luò)上,而所述宿接在多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)第二網(wǎng)絡(luò)上。
3.權(quán)利要求2的系統(tǒng)(100),其中所述管理系統(tǒng)(120)包括多個(gè)資源管理模塊(320);每個(gè)資源管理模塊(320)分別與多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)相應(yīng)網(wǎng)絡(luò)關(guān)聯(lián),配置成保留在相應(yīng)網(wǎng)絡(luò)上的多個(gè)所保留的資源的一個(gè)或多個(gè)設(shè)備資源;以及與第一網(wǎng)絡(luò)關(guān)聯(lián)的資源管理模塊(320)配置成向另一個(gè)資源管理模塊(320)傳送一個(gè)保留請(qǐng)求,以保留多個(gè)網(wǎng)絡(luò)(160,170,180)的另一個(gè)網(wǎng)絡(luò)上的多個(gè)所保留的資源的一個(gè)或多個(gè)設(shè)備資源。
4.權(quán)利要求3的系統(tǒng)(100),其中每個(gè)資源管理模塊(320)配置成一個(gè)UPnP構(gòu)架的一個(gè)組成部分,通過(guò)HTTP消息與應(yīng)用通信。
5.權(quán)利要求3的系統(tǒng)(100),其中另一個(gè)網(wǎng)絡(luò)內(nèi)的所述另一個(gè)資源管理模塊(320)配置成只有在從第一網(wǎng)絡(luò)到第二網(wǎng)絡(luò)的通道沿路的一個(gè)后續(xù)資源管理器可由所述另一個(gè)資源管理模塊(320)通達(dá)時(shí)(455)才保留所述一個(gè)或多個(gè)設(shè)備資源。
6.權(quán)利要求3的系統(tǒng)(100),其中每個(gè)資源管理模塊(320)配置成在一個(gè)所請(qǐng)求的保留不能執(zhí)行時(shí)向通道沿路的一個(gè)前面的資源管理模塊(320)傳送一個(gè)釋放消息(495);以及所述前面的資源管理模塊(320)接收到釋放消息釋放(465)多個(gè)所保留的資源的所關(guān)聯(lián)的設(shè)備資源。
7.權(quán)利要求3的系統(tǒng)(100),其中所述管理系統(tǒng)(120)還包括多個(gè)通道管理模塊(330);每個(gè)通道管理模塊(330)分別與多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)相應(yīng)網(wǎng)絡(luò)關(guān)聯(lián),配置成保留相應(yīng)網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源;與第一網(wǎng)絡(luò)關(guān)聯(lián)的通道管理模塊(330)配置成向另一個(gè)通道管理模塊(330)傳送一個(gè)保留請(qǐng)求,以保留多個(gè)網(wǎng)絡(luò)(160,170,180)的另一個(gè)網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源;以及每個(gè)資源管理模塊(320)和通道管理模塊(330)配置成一個(gè)UPnP構(gòu)架的一個(gè)組成部分,通過(guò)HTTP消息與應(yīng)用通信。
8.權(quán)利要求2的系統(tǒng)(100),其中所述管理系統(tǒng)(120)還包括多個(gè)通道管理模塊(330);每個(gè)通道管理模塊(330)分別與多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)相應(yīng)網(wǎng)絡(luò)關(guān)聯(lián),配置成保留相應(yīng)網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源;以及與第一網(wǎng)絡(luò)關(guān)聯(lián)的通道管理模塊(330)配置成向另一個(gè)通道管理模塊(330)傳送一個(gè)保留請(qǐng)求,以保留多個(gè)網(wǎng)絡(luò)(160,170,180)的另一個(gè)網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源。
9.權(quán)利要求8的系統(tǒng)(100),其中至少一個(gè)通道管理模塊(330)配置成保留一個(gè)具有指定的業(yè)務(wù)質(zhì)量的網(wǎng)絡(luò)資源。
10.權(quán)利要求1的系統(tǒng)(100),所述系統(tǒng)還包括一個(gè)設(shè)備管理器模塊(340),配置成除了由一個(gè)保留多個(gè)所保留的資源的請(qǐng)求方之外阻止?fàn)顟B(tài)改變命令傳送給多個(gè)所保留的資源的一個(gè)設(shè)備資源。
11.權(quán)利要求1的系統(tǒng)(100),所述系統(tǒng)還包括一個(gè)動(dòng)作管理器模塊(310),配置成根據(jù)來(lái)自一個(gè)應(yīng)用程序(161)的調(diào)度請(qǐng)求向管理系統(tǒng)(120)傳送一個(gè)保留請(qǐng)求,以及在與包含在調(diào)度請(qǐng)求內(nèi)的調(diào)度時(shí)間相應(yīng)的時(shí)間向管理系統(tǒng)(120)傳送一個(gè)通道建立請(qǐng)求。
12.一種便于通過(guò)一個(gè)UPnP網(wǎng)絡(luò)(160)傳送時(shí)間敏感信息的方法,所述方法包括下列步驟規(guī)定在時(shí)間敏感信息的源與一個(gè)時(shí)間敏感信息的宿之間的一個(gè)通道;以及保留(420-450)多個(gè)資源,以形成通道沿路的多個(gè)所保留的資源。
13.權(quán)利要求12的方法,其中所述在源之間與宿之間的通道橫穿多個(gè)網(wǎng)絡(luò)(160,170,180),所述源接在多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)第一網(wǎng)絡(luò)上,而所述宿接在多個(gè)網(wǎng)絡(luò)(160,170,180)的一個(gè)第二網(wǎng)絡(luò)上。
14.權(quán)利要求13的方法,其中保留(420-450)多個(gè)資源的步驟包括保留(420-435)多個(gè)資源中與通道沿路一個(gè)網(wǎng)絡(luò)關(guān)聯(lián)的資源;向通道沿路另一個(gè)網(wǎng)絡(luò)傳送(450)一個(gè)保留請(qǐng)求;保留與所述另一個(gè)網(wǎng)絡(luò)關(guān)聯(lián)的資源;以及重復(fù)(440)向通道沿路每個(gè)其他網(wǎng)絡(luò)傳送保留請(qǐng)求,保留與每個(gè)其他網(wǎng)絡(luò)關(guān)聯(lián)的資源直到通道沿路多個(gè)資源的每個(gè)資源都被保留。
15.權(quán)利要求14的方法,其中所述資源在每個(gè)其他網(wǎng)絡(luò)只有在通道沿路一個(gè)隨后的其他網(wǎng)絡(luò)確認(rèn)接收到保留請(qǐng)求時(shí)才被保留。
16.權(quán)利要求14的方法,所述方法還包括下列步驟在一個(gè)所請(qǐng)求的保留不能執(zhí)行時(shí)(430)向通道沿路一個(gè)前面的網(wǎng)絡(luò)傳送(495)一個(gè)釋放消息;以及前面的網(wǎng)絡(luò)接收到(410)釋放消息后就釋放(465)多個(gè)所保留的資源的所關(guān)聯(lián)的設(shè)備資源。
17.權(quán)利要求13的方法,所述方法還包括下列步驟保留第一網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源;向另一個(gè)網(wǎng)絡(luò)傳送一個(gè)保留請(qǐng)求;以及保留多個(gè)網(wǎng)絡(luò)(160,170,180)的所述另一個(gè)網(wǎng)絡(luò)上的一個(gè)或多個(gè)網(wǎng)絡(luò)資源。
18.權(quán)利要求17的方法,其中所述保留請(qǐng)求包括一個(gè)指定的業(yè)務(wù)質(zhì)量。
19.權(quán)利要求12的方法,所述方法還包括下列步驟除了由一個(gè)保留多個(gè)所保留的資源的請(qǐng)求方之外,阻止?fàn)顟B(tài)改變命令傳送給多個(gè)所保留的資源的一個(gè)設(shè)備資源。
20.權(quán)利要求12的方法,所述方法還包括下列步驟根據(jù)一個(gè)來(lái)自一個(gè)應(yīng)用程序的調(diào)度請(qǐng)求將一個(gè)保留請(qǐng)求傳送給一個(gè)管理系統(tǒng)(120);以及在與一個(gè)包含在調(diào)度請(qǐng)求內(nèi)的調(diào)度時(shí)間相應(yīng)的時(shí)間將一個(gè)通道建立請(qǐng)求傳送給管理系統(tǒng)(120)。
全文摘要
為了支持通過(guò)UPnP網(wǎng)絡(luò)傳送音頻視頻信息以及其他時(shí)間敏感信息,將UPnP體系結(jié)構(gòu)擴(kuò)充為包括一個(gè)支持多個(gè)對(duì)單個(gè)設(shè)備或它的子設(shè)備的競(jìng)爭(zhēng)裝置的資源管理模塊,一個(gè)提供源至宿的通道管理的通道管理器,以及一個(gè)允許A/V應(yīng)用調(diào)度作業(yè)的動(dòng)作管理器。資源管理器和通道管理器一起保證通道的有效性、完整性和業(yè)務(wù)質(zhì)量。資源管理器配置成管理分布在不同種類的網(wǎng)絡(luò)內(nèi)的設(shè)備資源,諸如分布在采用混合以太網(wǎng)、1394、802.11、USB、HPNA的網(wǎng)絡(luò)內(nèi)的資源。通道管理器配置成管理分布在不同種類的網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)資源。資源管理器和通道管理器還配置成保證一個(gè)橫穿一些網(wǎng)絡(luò)邊界的通道是有效的。調(diào)度動(dòng)作由每個(gè)起著應(yīng)用的代理作用和是資源管理器和通道管理器的客戶機(jī)的動(dòng)作管理器負(fù)責(zé)。資源管理器和通道管理器配置成UPnP構(gòu)架的一個(gè)組成部分,通過(guò)HTTP消息與應(yīng)用通信。
文檔編號(hào)H04L12/28GK1520659SQ02812918
公開(kāi)日2004年8月11日 申請(qǐng)日期2002年6月20日 優(yōu)先權(quán)日2001年6月29日
發(fā)明者程以寧 申請(qǐng)人:皇家菲利浦電子有限公司