專利名稱:加強(qiáng)對(duì)多播傳輸?shù)脑L問控制的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及安全網(wǎng)絡(luò)通信。
背景技術(shù):
涉及計(jì)算機(jī)組的網(wǎng)絡(luò)計(jì)算應(yīng)用程序可能需要同時(shí)通信。有三種常規(guī)的方式來設(shè)計(jì)用于同時(shí)組通信的網(wǎng)絡(luò)應(yīng)用程序,所述方式為單播、廣播和多播。常規(guī)的單播系統(tǒng)要求向一個(gè)特殊的接收方傳輸每一數(shù)據(jù)分組的副本。為了傳輸?shù)蕉鄠€(gè)接收方,需要與每一接收方進(jìn)行獨(dú)立的連接。隨著接收方數(shù)目的增加,進(jìn)行多個(gè)直接連接需要大量帶寬,并且由于同一分組必須被反復(fù)地復(fù)制然后傳輸給每一接收方,故而可能會(huì)產(chǎn)生延遲。在常規(guī)的廣播系統(tǒng)中,把每一分組的一個(gè)副本發(fā)送給廣播地址。當(dāng)實(shí)際只有少數(shù)人員希望或者需要接收廣播時(shí),廣播傳輸被發(fā)送給大量人員。
采用常規(guī)的多播系統(tǒng),網(wǎng)絡(luò)應(yīng)用程序可以發(fā)送向一組接收方而不是僅向一個(gè)接收方(如單播系統(tǒng)中那樣)尋址的一個(gè)或多個(gè)分組的一個(gè)副本。然后,一個(gè)或多個(gè)網(wǎng)絡(luò)負(fù)責(zé)把一個(gè)或多個(gè)分組轉(zhuǎn)發(fā)給必要的接收方。多播通常使用目的地網(wǎng)際協(xié)議(IP)地址的標(biāo)準(zhǔn)化范圍(例如,224.0.0.0-239.255.255.255)。通過在多播目的地IP地址范圍內(nèi)設(shè)置分組的目的地IP地址,多播源用信號(hào)通知網(wǎng)絡(luò)的其余部分多播傳輸。所使用的多播目的地IP地址是多播組地址。
協(xié)議獨(dú)立多播-稀疏模式(Protocol Independent Multicast-SparseMode,PIM-SM)是對(duì)多播傳輸?shù)囊环N控制范例。在PIM-SM系統(tǒng)中,多播接收方通過使用互聯(lián)網(wǎng)組管理協(xié)議(Internet Group ManagementProtocol,IGMP)向最近的路由器即“最后一跳路由器”發(fā)信號(hào)來請(qǐng)求參與到組傳輸中。最后一跳路由器使用PIM-SM來請(qǐng)求來自下一跳路由器的特定多播流。因此,基于PIM-SM系統(tǒng),多播分組只能去被請(qǐng)求的地方。為了使多播從源向最后一跳路由器移動(dòng),可能需要此處被稱為會(huì)合點(diǎn)的一種路由器。這是因?yàn)槎嗖ピ春妥詈笠惶酚善髯畛醪恢辣舜说拇嬖?。圖1舉例說明了包括會(huì)合點(diǎn)130的常規(guī)PIM-SM系統(tǒng)的例子。參考圖1,多播接收方140a-140d(合稱為“140”)可以用信號(hào)通知最后一跳路由器它們想要特定的傳輸。最后一跳路由器125a-125c(合稱為“125”)然后經(jīng)由中間路由器120向會(huì)合點(diǎn)130發(fā)出對(duì)多播傳輸?shù)募尤胝?qǐng)求。對(duì)于不同的多播組傳輸來說,可以存在不同的會(huì)合點(diǎn)。最后一跳路由器125可以確定對(duì)于特定的多播傳輸而言、向哪個(gè)會(huì)合點(diǎn)發(fā)送加入請(qǐng)求。例如當(dāng)它們不知道源在何處時(shí),最后一跳路由器125與會(huì)合點(diǎn)130進(jìn)行連接,以便訪問源多播流,而不是直接把加入請(qǐng)求傳輸至多播源110。會(huì)合點(diǎn)130經(jīng)由第一跳路由器115和一個(gè)或多個(gè)中間節(jié)點(diǎn)(諸如多播路由器120)從多播源110接收多播傳輸,并且向預(yù)訂了所述多播的所有多播接收方140分發(fā)多播傳輸。
圖2中示出了常規(guī)的多播路由器120。多播路由器120包括用于接收數(shù)據(jù)的接口210,訪問控制列表220,用于確定網(wǎng)絡(luò)中數(shù)據(jù)所沿的下一路徑的路由器230以及用于向下一目的地轉(zhuǎn)發(fā)數(shù)據(jù)的轉(zhuǎn)發(fā)模塊240。訪問控制列表220確定是否允許訪問多播路由器。訪問控制可以基于IP地址信息,所述IP地址信息包括多播組、數(shù)據(jù)所來自的路由器或者接受用戶的列表。
發(fā)明內(nèi)容
本說明書描述了用于提供多播訪問控制的設(shè)備、系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。
依照符合本發(fā)明原理的一種實(shí)現(xiàn)方式,提供了一種多播訪問控制設(shè)備。所述設(shè)備可以包括分析器。所述分析器可操作以便分析輸入數(shù)據(jù)。所述設(shè)備可以包括包含訪問控制規(guī)則的數(shù)據(jù)庫。所述設(shè)備可以包括訪問控制引擎,所述訪問控制引擎可操作以便基于分析器的結(jié)果把適當(dāng)?shù)脑L問控制規(guī)則應(yīng)用于輸入數(shù)據(jù)。
依照本發(fā)明的另一方面,提供了一種用于執(zhí)行多播訪問控制的方法。所述方法包括在多播訪問控制設(shè)備處接收輸入數(shù)據(jù)。所述輸入數(shù)據(jù)可以被分析??梢园言L問控制規(guī)則應(yīng)用于輸入數(shù)據(jù)。
依照本發(fā)明的又一方面,提供了一種用于多播訪問控制的計(jì)算機(jī)程序產(chǎn)品。所述計(jì)算機(jī)程序產(chǎn)品包括用于在多播訪問控制設(shè)備處接收輸入數(shù)據(jù)的指令。所述計(jì)算機(jī)程序產(chǎn)品包括用于分析所述輸入數(shù)據(jù)的指令。所述計(jì)算機(jī)程序產(chǎn)品包括用于把訪問控制規(guī)則應(yīng)用于所述輸入數(shù)據(jù)的指令。
依照本發(fā)明的又一方面,提供了一種多播訪問控制系統(tǒng)。所述多播訪問控制系統(tǒng)包括可操作以便提供多播傳輸?shù)亩嗖ピ?。提供了與多個(gè)區(qū)域相交的多播訪問控制設(shè)備。所述多播訪問控制系統(tǒng)包括會(huì)合點(diǎn)。所述多播訪問控制系統(tǒng)包括一個(gè)或多個(gè)多播接收方。
依照本發(fā)明的又一方面,提供了一種多播訪問控制系統(tǒng)。所述多播訪問控制系統(tǒng)包括可操作以便提供多播傳輸?shù)亩嗖ピ?。所述多播訪問控制系統(tǒng)包括包含代理會(huì)合點(diǎn)的多播訪問控制設(shè)備。所述多播訪問控制系統(tǒng)包括會(huì)合點(diǎn),所述會(huì)合點(diǎn)可操作以便把多播傳輸從多播源路由至多個(gè)多播接收方。
在附圖和以下描述中闡明了本發(fā)明的一個(gè)或多個(gè)實(shí)施例的細(xì)節(jié)。根據(jù)所述描述和附圖并且根據(jù)權(quán)利要求書,本發(fā)明的其它特征、目的以及優(yōu)勢將更加明顯。
并入并且構(gòu)成此說明書一部分的附圖舉例說明了本發(fā)明的實(shí)現(xiàn)方式,并且結(jié)合此描述來解釋本發(fā)明。在所述附圖中,圖1是使用會(huì)合點(diǎn)的常規(guī)多播系統(tǒng)的示意圖;圖2是常規(guī)的多播路由器的示意圖;圖3是使用基于區(qū)域的訪問控制的多播系統(tǒng)的示意圖;圖4是使用基于區(qū)域的訪問控制的可替代多播系統(tǒng)的示意圖;圖5是多播路由器的功能框圖;
圖6是多播路由器的訪問控制組件的功能框圖;圖7是舉例說明使用多播路由器的訪問控制方法的流程圖;圖8是舉例說明使用多播路由器的可替代訪問控制方法的流程圖;圖9是舉例說明使用多播路由器的可替代訪問控制方法的流程圖;圖10是提供代理會(huì)合點(diǎn)的可替代多播系統(tǒng)的示意圖;圖11是提供代理會(huì)合點(diǎn)的可替代多播系統(tǒng)的示意圖;圖12是包括代理會(huì)合點(diǎn)的多播路由器的訪問控制組件的功能框圖;圖13是舉例說明使用包括代理會(huì)合點(diǎn)的多播路由器的訪問控制方法的流程圖;并且圖14是舉例說明使用包括代理會(huì)合點(diǎn)的多播路由器的可替代訪問控制方法的流程圖。
具體實(shí)施例方式
本發(fā)明的如下詳細(xì)描述參考附圖。不同附圖中的相同的附圖標(biāo)記表示相同或者類似元素。此外,接下來的詳細(xì)描述不限制本發(fā)明。相反,本發(fā)明的范圍由所附權(quán)利要求書及其等效物來定義。
圖3是舉例說明依照本發(fā)明一種實(shí)現(xiàn)方式配置的多播系統(tǒng)的框圖。所述多播系統(tǒng)包括經(jīng)由一個(gè)或多個(gè)路由器耦合至?xí)宵c(diǎn)330的多播源310。耦合至多播源310的第一跳路由器315可以把注冊(cè)消息傳輸至?xí)宵c(diǎn)330,以便創(chuàng)建從多播源310到會(huì)合點(diǎn)330的多播傳輸?shù)穆窂?。然后,?huì)合點(diǎn)330可以向多播接收方(例如多播接收方340和380a-380c(合稱為“380”))通知多播傳輸。最后一跳路由器350a-350b(合稱為“350”)可以把協(xié)議獨(dú)立多播(PIM)加入請(qǐng)求傳輸至?xí)宵c(diǎn)330,以便經(jīng)由會(huì)合點(diǎn)330接收來自多播源310的多播傳輸。所述PIM加入消息是在控制面(control plane)中轉(zhuǎn)送的。在控制面中執(zhí)行信號(hào)通知和路由協(xié)議。所述控制面包括諸如PIM-SM的協(xié)議,其用于建立數(shù)據(jù)面(data plane)。所述數(shù)據(jù)面(也稱為轉(zhuǎn)發(fā)面)包括網(wǎng)絡(luò)上數(shù)據(jù)的實(shí)際傳輸。例如,當(dāng)其中一個(gè)多播最后一跳路由器350向會(huì)合點(diǎn)330發(fā)送PIM加入消息時(shí),在會(huì)合點(diǎn)330和該最后一跳路由器350之間在控制面構(gòu)造路徑。從會(huì)合點(diǎn)330向多播接收方380的實(shí)際多播傳輸通過在控制面創(chuàng)建的路徑出現(xiàn)在數(shù)據(jù)面??刂泼嫦⒌睦影≒IM加入請(qǐng)求和PIM PRUNE消息、單播注冊(cè)消息和引導(dǎo)路由器(boot strap router,BSR)通知,以下將其稱為多播控制通知。雖然在此申請(qǐng)中給出的例子是用于PIM和PIM-SM的,但是任何多播路由協(xié)議的控制通知都可以按符合本發(fā)明原理的方式應(yīng)用。數(shù)據(jù)面消息包括多播傳輸?shù)膶?shí)際內(nèi)容或媒體流,并且以下將其稱為媒體傳輸。
訪問控制多播路由器360提供了區(qū)域之間的交叉點(diǎn)。區(qū)域是一組接口。區(qū)域可以表示一個(gè)接口或者接口的集合以及接口服務(wù)的網(wǎng)絡(luò)。接口可以是物理的、例如是物理接口el.1,或者它們可以是邏輯的,例如作為在物理接口el.1上但處于不同虛擬局域網(wǎng)或者虛擬系統(tǒng)中的VLAN標(biāo)記的子接口的邏輯接口el.1,并且可以是不同區(qū)域的一部分。區(qū)域可以是預(yù)先定義的或者可以根據(jù)輸入來創(chuàng)建。另外,可以基于多播組的成員來定義區(qū)域。多播組的成員可以處于同一區(qū)域中,即使它們彼此沒有處于地理或邏輯接近。如圖3中所示那樣,源310和會(huì)合點(diǎn)330位于區(qū)域1(Z1)內(nèi)。最后一跳路由器340和多播接收方370位于區(qū)域2(Z2)內(nèi),而最后一跳路由器350a和350b以及接收方380a和380b位于區(qū)域3(Z3)內(nèi)。因此,從多播源310至多播接收方例如多播接收方380a-380b的媒體傳輸必須從區(qū)域1傳遞至區(qū)域3。作為選擇,從多播源310至多播接收方370的媒體傳輸必須從區(qū)域1傳遞至區(qū)域2。訪問控制多播路由器360在控制面和數(shù)據(jù)面對(duì)跨區(qū)域的消息提供訪問控制。
圖4舉例說明了多播系統(tǒng)的另一實(shí)現(xiàn)方式,其中多播源410和會(huì)合點(diǎn)470位于不同的區(qū)域內(nèi)。依照符合本發(fā)明原理的一種實(shí)現(xiàn)方式,所述多播系統(tǒng)包括經(jīng)由第一跳路由器415以及中間路由器420a和420b(合稱為“420”)耦合至訪問控制多播路由器430的多播源410。多播訪問受控路由器430提供了區(qū)域之間的交叉點(diǎn)。源410、第一跳路由器415和中間路由器420可以位于區(qū)域1(Z1)內(nèi)。多播訪問受控路由器430可以經(jīng)由位于區(qū)域2(Z2)內(nèi)的最后一跳路由器440耦合至多播接收方450。區(qū)域3(Z3)可以包括會(huì)合點(diǎn)470和多播接收方480,其中會(huì)合點(diǎn)470耦合至路由器460而多播接收方480耦合至最后一跳路由器465。路由器460和最后一跳路由器465可以耦合至訪問控制多播路由器430。因此,從多播源410至?xí)宵c(diǎn)470的媒體傳輸從區(qū)域1傳遞至區(qū)域3。另外,從多播源410至多播接收方450的媒體傳輸最初從區(qū)域1傳遞至區(qū)域3中的會(huì)合點(diǎn)470。然后,可以把傳輸轉(zhuǎn)發(fā)給處于區(qū)域2的多播接收方450。訪問控制多播路由器430可以在控制面和數(shù)據(jù)面中對(duì)跨區(qū)域的消息提供訪問控制。
圖5是舉例說明了符合本發(fā)明原理的訪問控制多播路由器500的一種實(shí)現(xiàn)方式的功能框圖。在圖5中,訪問控制多播路由器500可以包括用于接收和發(fā)送諸如多播分組的數(shù)據(jù)的接口510,訪問控制模塊520,用于確定輸出數(shù)據(jù)所走的路徑的路由器530以及用于計(jì)算如何以及向何處發(fā)送輸出數(shù)據(jù)的轉(zhuǎn)發(fā)模塊540。訪問控制模塊520可以確定是否允許訪問訪問控制多播路由器500,包括在控制面。另外,訪問控制模塊520例如可以通過編輯PIM消息中的源和目的地信息來編輯并且轉(zhuǎn)發(fā)多播控制通知,正如當(dāng)存在網(wǎng)絡(luò)地址轉(zhuǎn)換邊界時(shí)或者為適應(yīng)重疊地址所必需的那樣。
圖6是舉例說明訪問控制模塊520的一個(gè)實(shí)施例的另一功能框圖,所述訪問控制模塊520包括區(qū)域分析器610、多播地址轉(zhuǎn)換模塊620、多播訪問控制規(guī)則630和訪問控制引擎640。區(qū)域分析器610可操作以便確定消息對(duì)應(yīng)的區(qū)域。例如,消息可以具有用于識(shí)別消息來自何處的源區(qū)域以及用于識(shí)別消息去向何處的目的地區(qū)域。在多播組的所有成員都處于同一區(qū)域內(nèi)的區(qū)域?qū)崿F(xiàn)方式中,目的地區(qū)域?qū)⑹前ǘ嗖ソM的所有成員的區(qū)域。多播地址轉(zhuǎn)換模塊620可以在控制面和數(shù)據(jù)面應(yīng)用地址轉(zhuǎn)換。例如,當(dāng)發(fā)送方具有私有、非可路由地址(例如,10.1.1.1)時(shí),地址轉(zhuǎn)換模塊620可以轉(zhuǎn)換多播控制通知的發(fā)送方地址。另外,多播訪問控制規(guī)則630可以建立特殊的訪問控制策略。例如,多播訪問控制規(guī)則630可以包括用于允許消息從區(qū)域3傳遞至區(qū)域1但不從區(qū)域2至區(qū)域1的策略。訪問控制引擎640可操作以便基于由區(qū)域分析器610執(zhí)行的區(qū)域分析結(jié)果來確定哪些訪問控制策略應(yīng)用于特定的消息。另外,訪問控制引擎640可以確定多播地址轉(zhuǎn)換模塊620將會(huì)執(zhí)行何種地址轉(zhuǎn)換,如果有的話。
現(xiàn)在參考圖7,該圖示出了用于允許諸如圖3的多播訪問受控路由器360的多播訪問受控路由器把多播接收方加入至媒體傳輸?shù)倪^程。依照符合本發(fā)明原理的一種實(shí)現(xiàn)方式,訪問控制多播路由器360最初接收多播控制通知(動(dòng)作710)。在一個(gè)實(shí)施例中,所述多播控制通知是由最后一跳路由器(例如,最后一跳路由器350a-350b和340)傳輸?shù)目刂泼嫦ⅰ@?,企圖參與到媒體傳輸中的多播接收方380a把多播控制通知經(jīng)由最后一跳路由器350a傳輸至?xí)宵c(diǎn)330。由于多播最后一跳路由器350a和會(huì)合點(diǎn)330位于不同的區(qū)域(分別是區(qū)域3和區(qū)域1)內(nèi),所以多播控制通知經(jīng)過訪問控制多播路由器360。
接下來,訪問控制多播路由器360分析所述多播控制通知,并且確定是否可以把多播控制通知轉(zhuǎn)發(fā)給會(huì)合點(diǎn)330(動(dòng)作720)。區(qū)域分析器610(圖6)然后分析多播控制通知的區(qū)域(動(dòng)作730)。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,區(qū)域分析器610可以審查多播控制通知以便確定多播控制通知的源和接收方區(qū)域。例如,來自多播接收方380a的多播控制通知的源區(qū)域是區(qū)域3。由于會(huì)合點(diǎn)330位于區(qū)域1內(nèi),所以用于多播控制通知的目的地區(qū)域是區(qū)域1。
在分析區(qū)域之后,訪問控制引擎640把訪問控制策略應(yīng)用于多播控制通知(動(dòng)作740)。在一種實(shí)現(xiàn)方式中,訪問控制引擎640使用包含在適用于多播控制通知的區(qū)域(如區(qū)域分析器610所確定的)的多播訪問控制規(guī)則630內(nèi)的訪問控制策略。接下來,作為所應(yīng)用的訪問控制策略的結(jié)果,訪問控制引擎640確定是否允許多播控制通知經(jīng)由訪問控制多播路由器360前進(jìn)(動(dòng)作750)。例如,訪問控制策略可以允許將多播控制通知從區(qū)域3傳輸至區(qū)域1,或者作為選擇,訪問控制策略可以拒絕將多播控制通知從區(qū)域3傳輸至區(qū)域1。所述訪問控制策略還可以是更加集中的。例如,訪問控制策略可以表明多播控制通知可以被允許從區(qū)域3中的第一個(gè)最后一跳路由器350a到區(qū)域1的路由器320,但是不能從區(qū)域3中的第二個(gè)最后一跳路由器350b到區(qū)域1中的路由器320。由此,不同級(jí)別的訪問控制策略可被實(shí)現(xiàn)。如果基于訪問控制策略的應(yīng)用而不允許多播控制通知繼續(xù)到會(huì)合點(diǎn)330,那么可以另外處理所述多播控制通知(動(dòng)作760)。適當(dāng)處理的例子可以包括丟棄所述多播控制通知、記錄所述請(qǐng)求以及警告所述請(qǐng)求。
如果確定允許多播控制通知前進(jìn)到會(huì)合點(diǎn)330,那么訪問控制引擎640接著確定是否需要進(jìn)行多播控制通知的地址轉(zhuǎn)換(動(dòng)作770)。如果需要地址轉(zhuǎn)換,那么多播地址轉(zhuǎn)換模塊620執(zhí)行地址轉(zhuǎn)換(動(dòng)作780),并且轉(zhuǎn)發(fā)模塊540把多播控制通知路由至?xí)宵c(diǎn)330(動(dòng)作790)。在一個(gè)示例性的實(shí)施例中,多播地址轉(zhuǎn)換模塊620可以基于訪問控制策略而在控制面執(zhí)行地址轉(zhuǎn)換或者編輯。如果不需要地址轉(zhuǎn)換,那么訪問控制多播路由器360把多播控制通知路由至?xí)宵c(diǎn)330(動(dòng)作790)。
圖8是舉例說明符合本發(fā)明原理的用于路由多播請(qǐng)求的方法的替代實(shí)現(xiàn)方式的流程圖。如圖8所示,例如當(dāng)會(huì)合點(diǎn)330包括引導(dǎo)路由器(BSR)時(shí),會(huì)合點(diǎn)330可以首先向多播接收方(例如,多播接收方370和380a-380b)通知媒體傳輸。然后由訪問控制多播路由器360接收來自會(huì)合點(diǎn)330的多播控制通知(動(dòng)作810)。然后,會(huì)合點(diǎn)330可以使用諸如路由器320的中間路由器把多播控制通知傳輸至多播接收方。由于多播接收方370和380a-380b位于不同于會(huì)合點(diǎn)330(區(qū)域1)的區(qū)域(區(qū)域2和區(qū)域3)內(nèi),所述多播控制通知必須經(jīng)過訪問控制多播路由器360。具體來講,所述多播控制通知必須從區(qū)域1傳遞至區(qū)域2以便到達(dá)多播接收方370,并且多播控制通知必須從區(qū)域1傳遞至區(qū)域3以便到達(dá)多播接收方380a-380b。
一旦接收到多播控制通知,訪問控制多播路由器360可以分析多播控制通知以確定是否可以把傳輸轉(zhuǎn)發(fā)給多播接收方370和380a-380b(動(dòng)作820)。多播控制通知的分析可以包括分析多播控制通知的區(qū)域(動(dòng)作830)。區(qū)域分析器610審查所述多播控制通知以便確定多播控制通知的源和目的地區(qū)域。例如,來自會(huì)合點(diǎn)330的多播控制通知的源區(qū)域是區(qū)域1。所述多播控制通知的目的地區(qū)域是區(qū)域2和3。
在分析區(qū)域之后,訪問控制引擎640可以把訪問控制策略應(yīng)用于多播控制通知(動(dòng)作840)。訪問控制引擎640可以使用包含在適用于多播控制通知的源和目的地區(qū)域(如區(qū)域分析器610所確定的)的多播訪問控制規(guī)則630內(nèi)的訪問控制策略。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,作為應(yīng)用訪問控制策略的結(jié)果,訪問控制引擎640可以確定是否允許多播控制通知經(jīng)由訪問控制多播路由器360前進(jìn)(動(dòng)作850)。例如,訪問控制策略可以允許多播控制通知從區(qū)域1傳輸至區(qū)域2和3,或者,訪問控制策略可以拒絕多播控制通知從區(qū)域1傳輸至區(qū)域2和3。如果基于訪問控制策略的應(yīng)用而確定不允許多播控制通知繼續(xù)到最后一跳路由器340和350a-350b,那么可以另外處理所述多播控制通知(動(dòng)作860)。適當(dāng)處理的例子可以包括丟棄所述多播控制通知、記錄所述請(qǐng)求并且警告所述請(qǐng)求。作為選擇,訪問控制策略可以只允許多播控制通知傳給某些多播接收方。例如,所述訪問控制策略可以允許注冊(cè)消息從區(qū)域1傳遞至區(qū)域3但不從區(qū)域1傳遞至區(qū)域2。因此,多播控制通知可以被轉(zhuǎn)發(fā)給最后一跳路由器350a(或者350b)但不轉(zhuǎn)發(fā)給最后一跳路由器340。
如果在動(dòng)作850中確定允許多播控制通知前進(jìn)到最后一跳路由器340和350a-350b中至少一個(gè),那么訪問控制引擎640接著確定是否需要進(jìn)行多播控制通知的地址轉(zhuǎn)換(動(dòng)作870)。如果需要地址轉(zhuǎn)換,那么多播地址轉(zhuǎn)換模塊620可以執(zhí)行地址轉(zhuǎn)換(動(dòng)作880),然后向允許的多播接收方路由(即,使用轉(zhuǎn)發(fā)模塊540)多播控制通知(動(dòng)作890)。例如,如果允許從區(qū)域1傳輸至區(qū)域2,那么源地址或者目的地(單個(gè)或者組)地址或者它們兩者可以在分組被釋放到區(qū)域2中以前可被改變。如果確定不需要地址轉(zhuǎn)換,那么訪問控制多播路由器360可以向最后一跳路由器340和350a-350b路由所述多播控制通知(動(dòng)作890)。應(yīng)該理解的是,可以獨(dú)立于傳輸轉(zhuǎn)發(fā)判定而執(zhí)行地址轉(zhuǎn)換。例如,也許不允許傳輸從區(qū)域1進(jìn)行至區(qū)域3,然而在從區(qū)域1向區(qū)域2轉(zhuǎn)發(fā)所述傳輸?shù)倪^程中仍可以進(jìn)行地址轉(zhuǎn)換。此外,可以允許從區(qū)域1向區(qū)域2和3兩者轉(zhuǎn)發(fā),而對(duì)到區(qū)域2和3的每個(gè)傳輸執(zhí)行唯一地址轉(zhuǎn)換。
圖9是舉例說明在符合本發(fā)明原理的多播系統(tǒng)中使用諸如訪問控制多播路由器430的訪問控制多播路由器的方法的流程圖。如圖4所示,多播源410和會(huì)合點(diǎn)470處于不同的區(qū)域。最初,訪問控制多播路由器430接收由多播源410觸發(fā)的多播控制通知,其中多播源410向第一跳路由器415發(fā)送多播分組(動(dòng)作910)。多播控制通知可以由第一跳路由器415和中間路由器傳輸至?xí)宵c(diǎn)470。然而,由于多播源410位于區(qū)域1內(nèi),而會(huì)合點(diǎn)470位于區(qū)域3內(nèi),所以多播控制通知必須經(jīng)過訪問控制多播路由器430以便從區(qū)域1傳遞至區(qū)域3。
因此,訪問控制多播路由器430接下來分析所述多播控制通知,以便確定是否可以把多播控制通知轉(zhuǎn)發(fā)給會(huì)合點(diǎn)470(動(dòng)作920)。此分析的一種實(shí)現(xiàn)方式可以包括分析所述多播控制通知的區(qū)域(動(dòng)作930)。更具體地說,區(qū)域分析器610可以審查所述多播控制通知以便確定多播控制通知的源和目的地區(qū)域。例如,來自多播源410的多播控制通知的源區(qū)域是區(qū)域1。由于會(huì)合點(diǎn)470位于區(qū)域3內(nèi),所以用于多播控制通知的目的地區(qū)域是區(qū)域3。
在區(qū)域分析之后,訪問控制引擎640可以把訪問控制策略應(yīng)用于多播控制通知(動(dòng)作940)。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,訪問控制引擎640可以使用包含在適用于多播控制通知的區(qū)域(如區(qū)域分析器610所確定的)的多播訪問控制規(guī)則630內(nèi)的訪問控制策略。接下來,基于所應(yīng)用的訪問控制策略,訪問控制引擎640可以確定是否允許多播控制通知經(jīng)由訪問控制多播路由器430前進(jìn)(動(dòng)作950)。例如,訪問控制策略可以允許將多播控制通知從區(qū)域1傳輸至區(qū)域3,或者所述訪問控制策略可以拒絕多播控制通知從區(qū)域1傳輸至區(qū)域3,但是允許多播控制通知從區(qū)域1傳輸至區(qū)域2。如上所述,所述訪問控制策略還可以是更加集中的。例如,訪問控制策略可以表明多播控制通知可以被允許從區(qū)域1中的路由器420a或420b向區(qū)域3中的第一路由器460傳輸,但是不能從區(qū)域1中的路由器420a或者420b向區(qū)域3中的最后一跳路由器465傳輸。如果基于訪問控制策略的應(yīng)用而確定不允許多播控制通知繼續(xù)到會(huì)合點(diǎn)470,那么可以另外處理所述多播控制通知(動(dòng)作960)。如同上述,適當(dāng)?shù)奶幚砜梢园▉G棄所述多播控制通知、記錄所述請(qǐng)求以及警告所述請(qǐng)求。
然而,如果在動(dòng)作950中確定允許多播控制通知前進(jìn)到會(huì)合點(diǎn)470,那么訪問控制引擎640接著確定是否需要進(jìn)行多播控制通知的地址轉(zhuǎn)換(動(dòng)作970)。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,如果需要地址轉(zhuǎn)換,那么地址轉(zhuǎn)換模塊620可以執(zhí)行地址轉(zhuǎn)換(動(dòng)作980)。更具體地說,地址轉(zhuǎn)換可以應(yīng)用于源地址、一個(gè)或多個(gè)目的地地址或者它們兩者。然后,可以把多播控制通知路由至?xí)宵c(diǎn)470(動(dòng)作990)。然而,如果在動(dòng)作970中確定不需要進(jìn)行地址轉(zhuǎn)換,那么訪問控制多播路由器430把多播控制通知路由至?xí)宵c(diǎn)470(動(dòng)作990)。
在可替代的實(shí)現(xiàn)方式中,多播系統(tǒng)可以包括一個(gè)以上的域。一個(gè)域內(nèi)的設(shè)備可以被秘密編址,以便使位于該域外部的設(shè)備不可視或者無法訪問。例如,使用私有地址的域內(nèi)會(huì)合點(diǎn)不能被企圖訪問媒體傳輸?shù)淖詈笠惶酚善髟L問。作為選擇,域內(nèi)的會(huì)合點(diǎn)可以位于安全設(shè)備之后,所述安全設(shè)備諸如是用于防止對(duì)位于防火墻之后的設(shè)備進(jìn)行外部訪問的防火墻。為了便于媒體傳輸,可以提供代理會(huì)合點(diǎn),所述代理會(huì)合點(diǎn)可以被包括在訪問控制多播路由器中,以便執(zhí)行外部域不能訪問的會(huì)合點(diǎn)的功能。在不允許直接訪問會(huì)合點(diǎn)的情況下,所述代理會(huì)合點(diǎn)可以提供一種方式來向其他域表示會(huì)合點(diǎn)。因?yàn)闀?huì)合點(diǎn)位于私有網(wǎng)絡(luò)內(nèi),并且由此具有不可視的IP地址或者由于諸如防火墻的安全設(shè)備來實(shí)現(xiàn)防止外部訪問的策略,所以可以防止對(duì)會(huì)合點(diǎn)的直接訪問。
圖10是舉例說明包括兩個(gè)域和代理會(huì)合點(diǎn)的可替代多播系統(tǒng)的框圖。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,所述多播系統(tǒng)可以包括第一域1060和第二域1065。另外,諸如因特網(wǎng)或者其它網(wǎng)絡(luò)(諸如Mbone)的網(wǎng)絡(luò)1035可以位于這些域之間。在一個(gè)實(shí)施例中,第一域1060可以包括經(jīng)由中間路由器1020和第一跳路由器1015耦合至?xí)宵c(diǎn)1030的多播源1010。訪問控制多播路由器1005可以提供區(qū)域之間的交叉點(diǎn)。區(qū)域1(Z1)可以包括多播源1010、會(huì)合點(diǎn)1030、第一跳路由器1015和中間路由器1020。區(qū)域2(Z2)可以包括最后一跳路由器1025和多播接收方1040。區(qū)域3(Z3)可以包括位于第二域1065內(nèi)的中間路由器1050、最后一跳路由器1052a-1052c(合稱為“1052”)和多播接收方1055a-1055c(合稱為“1055”)。另外,可以在區(qū)域3內(nèi)提供訪問控制多播路由器1005內(nèi)的代理會(huì)合點(diǎn)1045。最后一跳路由器1052a-1052c和會(huì)合點(diǎn)1030之間的通信在區(qū)域1和3之間以及第一域1060和第二域1065之間傳遞。
圖11是舉例說明具有兩個(gè)域的可替代多播系統(tǒng)的框圖。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,所述多播系統(tǒng)可以包括第一域1170和第二域1165。諸如因特網(wǎng)的網(wǎng)絡(luò)1125可以位于這些域之間。另外,第二域1165可以包括訪問控制多播路由器1005,其充當(dāng)區(qū)域之間的交叉點(diǎn)。區(qū)域1(Z1)可以包括位于第一域1170內(nèi)的第一跳路由器1115、路由器1120和多播源1110。另外,區(qū)域1可以包括訪問控制多播路由器1005內(nèi)的代理會(huì)合點(diǎn)1045。區(qū)域2(Z2)可以包括經(jīng)由最后一跳路由器1140耦合至訪問控制多播路由器1005的多播接收方1145。區(qū)域3(Z3)可以包括路由器1150、最后一跳路由器1152a-1152b(合稱為“1152”)以及多播接收方1155a-1155b(合稱為“1155”)和會(huì)合點(diǎn)1160。來自多播源1110的多播控制通知在第一域1170和第二域1165之間以及在區(qū)域1和區(qū)域3之間傳遞,以便到達(dá)會(huì)合點(diǎn)1160。
圖12是示出了包括在訪問控制多播路由器1005內(nèi)的訪問控制模塊1200的功能框圖。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,訪問控制模塊1200可以包括區(qū)域分析器1210、代理會(huì)合點(diǎn)(RP,rendezvouspoint)1045、多播地址轉(zhuǎn)換模塊1230、多播訪問控制規(guī)則1240和訪問控制引擎1250。在一種實(shí)現(xiàn)方式中,區(qū)域分析器1210、多播訪問控制規(guī)則1240和訪問控制引擎1250可以起如上相對(duì)于圖6所述的作用。此外,在示例性的實(shí)現(xiàn)方式中,對(duì)于外部域而言,代理會(huì)合點(diǎn)1045好像是位于訪問控制多播路由器1005內(nèi)的會(huì)合點(diǎn)。因此,代理會(huì)合點(diǎn)1045可以執(zhí)行用于位于外部域內(nèi)的設(shè)備的會(huì)合點(diǎn)的功能,而不允許對(duì)位于域內(nèi)的會(huì)合點(diǎn)進(jìn)行直接訪問。
圖13是舉例說明使用圖10的多播訪問受控路由器1005來把多播接收方加入媒體傳輸?shù)囊环N實(shí)現(xiàn)方式的流程圖。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,訪問控制多播路由器1005最初接收多播控制通知(動(dòng)作1310)。在一個(gè)示例性的實(shí)施例中,多播控制通知可以是由下游多播路由器(例如,多播路由器1050)傳輸?shù)目刂泼嫦?。例如,企圖參與到媒體傳輸中的多播接收方1055a使用像IGMP的協(xié)議向最后一跳路由器1052a發(fā)信號(hào)。最后一跳路由器1052a再向位于訪問控制多播路由器1005內(nèi)的代理會(huì)合點(diǎn)1045傳輸加入請(qǐng)求。對(duì)于多播路由器1050和1052a而言,代理會(huì)合點(diǎn)1045好象是會(huì)合點(diǎn)1030。然而,真實(shí)的會(huì)合點(diǎn)1030可以被秘密地編址(例如,10.10.10.10),并且由此對(duì)于外部網(wǎng)絡(luò)而言是不可視的。相反,代理會(huì)合點(diǎn)1045具有外部可視的IP地址(例如,1.1.1.1),并且因此對(duì)外部路由器1050和1052a來說,好象是會(huì)合點(diǎn)。
接下來,訪問控制多播路由器1005分析所述多播控制通知,以便確定是否可以把多播控制通知轉(zhuǎn)發(fā)給會(huì)合點(diǎn)1030(動(dòng)作1320)。依照符合本發(fā)明原理的一種實(shí)現(xiàn)方式,多播控制通知分析可以包括分析多播控制通知的區(qū)域(動(dòng)作1330)。更具體地說,區(qū)域分析器1210可以審查所述多播控制通知以便確定源和目的地區(qū)域。例如,來自最后一跳路由器1052a的多播控制通知的源區(qū)域是區(qū)域3。由于目標(biāo)目的地是位于區(qū)域3內(nèi)的代理會(huì)合點(diǎn)1045,所以多播控制通知的目的地區(qū)域好象是區(qū)域3。然而,為分析目的,由于訪問控制多播路由器1005將要把多播控制通知轉(zhuǎn)發(fā)給會(huì)合點(diǎn)3010,所以目的地區(qū)域被認(rèn)為是會(huì)合點(diǎn)1030所在的區(qū)域1。
在分析區(qū)域之后,訪問控制引擎1250把訪問控制策略應(yīng)用于多播控制通知(動(dòng)作1340)。依照一種實(shí)現(xiàn)方式,訪問控制引擎1250使用包含在適用于多播控制通知的區(qū)域(如區(qū)域分析器1210所確定的)的多播訪問控制規(guī)則1240內(nèi)的訪問控制策略。然后,基于所應(yīng)用的訪問控制策略,訪問控制引擎1250確定是否允許多播控制通知經(jīng)由訪問控制多播路由器1005前進(jìn)(動(dòng)作1350)。例如,訪問控制策略可以允許將多播控制通知從區(qū)域3傳輸至區(qū)域1,或者,訪問控制策略可以拒絕多播控制通知從區(qū)域3傳輸至區(qū)域1。作為選擇,可以允許多播控制通知從區(qū)域3到區(qū)域1,但是只在特殊時(shí)間對(duì)特殊多播組有效。如果基于訪問控制策略的應(yīng)用而確定不允許多播控制通知繼續(xù)到會(huì)合點(diǎn)1030,那么可以另外處理所述多播控制通知(動(dòng)作1360)。另外的處理可以包括丟棄所述多播控制通知、記錄所述請(qǐng)求并且警告所述請(qǐng)求。
如果在動(dòng)作1350中確定允許多播控制通知前進(jìn)到會(huì)合點(diǎn)1030,那么多播地址轉(zhuǎn)換模塊1230對(duì)多播控制通知執(zhí)行地址轉(zhuǎn)換以便把多播控制通知指向會(huì)合點(diǎn)1030(動(dòng)作1370)。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,多播地址轉(zhuǎn)換模塊1230編輯控制面多播控制通知,以便利用會(huì)合點(diǎn)1030的內(nèi)部地址來替代代理會(huì)合點(diǎn)1045的目的地地址(例如,把1.1.1.1改變?yōu)?0.10.10.10)。另外,如果把訪問控制策略設(shè)計(jì)成能這樣做,那么可以編輯多播控制通知的源,使得所述源好象是來自代理會(huì)合點(diǎn)(例如,1.1.1.1)。由此,會(huì)合點(diǎn)1030將把媒體傳輸路由至代理會(huì)合點(diǎn)1045,然后,所述代理會(huì)合點(diǎn)1045可以把傳輸代理至多播接收方。然后,訪問控制多播路由器1005可以把多播控制通知路由至?xí)宵c(diǎn)1030(動(dòng)作1380)。
圖14是舉例說明在如圖11所示的多播系統(tǒng)中使用訪問控制多播路由器1005的方法的另一實(shí)現(xiàn)方式的流程圖,在所述多播系統(tǒng)中,多播源1110和會(huì)合點(diǎn)1160處于不同的域。最初,訪問控制多播路由器1005接收來自多播源1110的多播控制通知(動(dòng)作1410)。在一個(gè)實(shí)施例中,所述多播控制通知由多播源1110經(jīng)由第一跳路由器1115和路由器1120被傳輸至位于訪問控制多播路由器1005內(nèi)的代理會(huì)合點(diǎn)1045。對(duì)于第一跳路由器1115和路由器1120而言,代理會(huì)合點(diǎn)1045好象是會(huì)合點(diǎn)1160。然而,由于實(shí)際的會(huì)合點(diǎn)1160被秘密地編址(例如,10.10.10.10),由此對(duì)于第一跳路由器1115和路由器1120是不可視的。代理會(huì)合點(diǎn)1045具有外部可視的IP地址(例如,1.1.1.1.),并且因此對(duì)外部路由器1120和第一跳路由器1115來說好象是會(huì)合點(diǎn)。
接下來,訪問控制多播路由器1005可以分析所述多播控制通知,以便看看是否可以把多播控制通知轉(zhuǎn)發(fā)給會(huì)合點(diǎn)1160(動(dòng)作1420)。此分析可以包括分析所述多播控制通知的區(qū)域(動(dòng)作1430)。區(qū)域分析器610接著審查所述多播控制通知以便確定多播控制通知的源和目的地區(qū)域。例如,來自多播源1110的多播控制通知的源區(qū)域是區(qū)域1。由于目標(biāo)目的地是位于區(qū)域1內(nèi)的代理會(huì)合點(diǎn)1045,所以多播控制通知的目的地區(qū)域好象也是區(qū)域1。然而,由于訪問控制多播路由器1005可以把單播注冊(cè)消息轉(zhuǎn)發(fā)至?xí)宵c(diǎn)1160,所以目的地區(qū)域被設(shè)置為會(huì)合點(diǎn)1160所在的區(qū)域3。
在區(qū)域分析之后,訪問控制引擎1250把訪問控制策略應(yīng)用于多播控制通知(動(dòng)作1440)。在符合本發(fā)明原理的一種實(shí)現(xiàn)方式中,訪問控制引擎1250可以使用包含在適用于多播控制通知的區(qū)域(如區(qū)域分析器1210所確定的)的多播訪問控制規(guī)則1240內(nèi)的訪問控制策略。接下來,基于所應(yīng)用的訪問控制策略,訪問控制引擎1250確定是否允許多播控制通知經(jīng)由訪問控制多播路由器1005前進(jìn)(動(dòng)作1450)。例如,訪問控制策略可以允許將多播控制通知從區(qū)域1傳輸至區(qū)域3,或者所述訪問控制策略可以拒絕將多播控制通知從區(qū)域1傳輸至區(qū)域3,但是允許多播控制通知從區(qū)域1傳輸至區(qū)域2。如果基于訪問控制策略的應(yīng)用而確定不允許多播控制通知繼續(xù)到會(huì)合點(diǎn)1160,那么可以另外處理所述多播控制通知(動(dòng)作1460)。適當(dāng)?shù)奶幚淼睦涌梢园▉G棄所述多播控制通知、記錄所述請(qǐng)求并且警告所述請(qǐng)求。代理會(huì)合點(diǎn)1045繼續(xù)充當(dāng)區(qū)域1中的會(huì)合點(diǎn)1160,即使不允許多播控制通知繼續(xù)朝向會(huì)合點(diǎn)1160。
如果在動(dòng)作1450中確定允許多播控制通知前進(jìn)到會(huì)合點(diǎn)1160,那么多播地址轉(zhuǎn)換模塊1230對(duì)多播控制通知執(zhí)行地址轉(zhuǎn)換(動(dòng)作1470)。目的地從代理會(huì)合點(diǎn)45改變?yōu)闀?huì)合點(diǎn)1160(例如把IP地址從1.1.1.1改變?yōu)?0.10.10.10)。作為選擇,所述源也可以被改變以便在位于區(qū)域3內(nèi)的訪問控制多播路由器500反映出源位置(例如,10.1.1.1)。結(jié)果,單播消息的發(fā)送方在會(huì)合點(diǎn)1160看來將是10.1.1.1。由此,使用代理會(huì)合點(diǎn)1045的訪問控制多播路由器1005對(duì)會(huì)合點(diǎn)1160來說好象是媒體傳輸?shù)脑?。然后,訪問控制多播路由器430可以把多播控制通知路由至?xí)宵c(diǎn)1160(動(dòng)作1480)。
先前描述了具有兩個(gè)域的多播系統(tǒng)。然而,多播系統(tǒng)內(nèi)可以包括兩個(gè)以上的域。具有兩個(gè)以上域的訪問控制多播路由器和代理會(huì)合點(diǎn)的功能與具有兩個(gè)域時(shí)的功能相同。
本發(fā)明以及此處所述的所有功能操作可以依照數(shù)字電子電路或者計(jì)算機(jī)硬件、固件、軟件或者它們的組合來實(shí)現(xiàn)。本發(fā)明可以作為計(jì)算機(jī)程序產(chǎn)品來實(shí)現(xiàn),即,一種可確實(shí)地嵌入例如是機(jī)器可讀的存儲(chǔ)設(shè)備或者傳播信號(hào)的信息載體中的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序可由數(shù)據(jù)處理設(shè)備執(zhí)行或者控制其操作,所述數(shù)據(jù)處理設(shè)備例如是可編程處理器、計(jì)算機(jī)或者多個(gè)計(jì)算機(jī)。計(jì)算機(jī)程序可以依照任何形式的程序設(shè)計(jì)語言來撰寫,包括編譯或者翻譯語言,并且其可以采用任何的形式,包括按照獨(dú)立程序或者按照模塊、組件、子程序或者適用于計(jì)算環(huán)境的其它單元的形式。計(jì)算機(jī)程序可以被采用以便在一臺(tái)或多臺(tái)計(jì)算機(jī)上執(zhí)行,所述一臺(tái)或多臺(tái)計(jì)算機(jī)可位于一個(gè)場所內(nèi),或者跨越多個(gè)場所分布或由通信網(wǎng)絡(luò)互連。
本發(fā)明的方法步驟可以由一個(gè)或多個(gè)可編程處理器執(zhí)行,所述可編程處理器執(zhí)行計(jì)算機(jī)程序以便通過對(duì)輸入數(shù)據(jù)進(jìn)行操作并且生成輸出來執(zhí)行本發(fā)明的功能。方法步驟還可以通過本發(fā)明的設(shè)備來執(zhí)行,并且本發(fā)明的設(shè)備可以作為專用邏輯電路來實(shí)現(xiàn),所述專用邏輯電路例如是FPGA(現(xiàn)場可編程門陣列)或者ASIC(專用集成電路)。
舉例來說,適用于執(zhí)行計(jì)算機(jī)程序的處理器包括通用和專用微處理器,以及任何類型的數(shù)字計(jì)算機(jī)的任何一個(gè)或多個(gè)處理器。通常,處理器將接收來自只讀存儲(chǔ)器或者隨機(jī)存取存儲(chǔ)器或者它們兩者的指令和數(shù)據(jù)。計(jì)算機(jī)的基本元件是用于執(zhí)行指令的處理器和用于存儲(chǔ)指令和數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)器設(shè)備。通常,計(jì)算機(jī)還將包括一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備來存儲(chǔ)數(shù)據(jù),或者被可操作地耦合以便接收來自一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備的數(shù)據(jù)或向其轉(zhuǎn)送數(shù)據(jù),或者既接收又轉(zhuǎn)送,所述一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備例如是磁性、磁光盤或者是光盤。適用于具體化計(jì)算機(jī)程序指令和數(shù)據(jù)的信息載體包括所有形式的非易失性存儲(chǔ)器,舉例來說包括半導(dǎo)體存儲(chǔ)器設(shè)備,例如,EPROM、EEPROM和閃存設(shè)備;磁盤,例如,內(nèi)部硬盤或者移動(dòng)盤;磁光盤;和CD-ROM和DVD-ROM盤。處理器和存儲(chǔ)器可以通過專用邏輯電路來添加,或者并入其中。
為了提供與用戶的交互,本發(fā)明可以在計(jì)算機(jī)上實(shí)現(xiàn),所述計(jì)算機(jī)具有例如CRT(陰極射線管)或者LCD(液晶顯示器)監(jiān)視器的顯示設(shè)備,用于向用戶顯示信息,并且具有鍵盤和例如鼠標(biāo)或者軌跡球的指示設(shè)備,通過這些設(shè)備,用戶可以提供對(duì)計(jì)算機(jī)的輸入。還可以使用其它設(shè)備來提供與用戶的交互;例如,提供給用戶的反饋可以是任何形式的感覺反饋,例如是視覺反饋、聽覺反饋或者觸覺反饋;并且來自用戶的輸入可以依照任何方式接收,包括聲學(xué)、語音或者觸覺輸入。
本發(fā)明可以在計(jì)算系統(tǒng)中實(shí)現(xiàn),所述計(jì)算系統(tǒng)包括例如是數(shù)據(jù)服務(wù)器的后端組件,或者包括例如是應(yīng)用服務(wù)器的媒件組件,或者包括例如是具有圖形用戶界面或者網(wǎng)絡(luò)瀏覽器的客戶端計(jì)算機(jī)的前端組件(經(jīng)由這些組件,用戶可以與本發(fā)明的實(shí)現(xiàn)方式交互)或者是這種后端、媒件或者前端組件的組合。所述系統(tǒng)的組件可以通過例如通信網(wǎng)絡(luò)的任何形式或者媒體的數(shù)字?jǐn)?shù)據(jù)通信來互連。通信網(wǎng)絡(luò)的例子包括局域網(wǎng)(“LAN”)和廣域網(wǎng)(“WAN”),例如是因特網(wǎng)。
所述計(jì)算系統(tǒng)可以包括客戶端和服務(wù)器??蛻舳撕头?wù)器一般彼此相隔甚遠(yuǎn),并且通常經(jīng)由通信網(wǎng)絡(luò)來相互作用??蛻舳撕头?wù)器的關(guān)系借助于在各個(gè)計(jì)算機(jī)上運(yùn)行的并且具有客戶端-服務(wù)器彼此關(guān)系的計(jì)算機(jī)程序來實(shí)現(xiàn)。
對(duì)本發(fā)明示例性的實(shí)施例的先前描述提供了舉例說明和描述,但是不意味著是窮舉或者把本發(fā)明限制為所公開的確切形式。根據(jù)上述教導(dǎo)或者通過實(shí)施本發(fā)明能夠進(jìn)行修改和變化。
此外,雖然已經(jīng)就圖7-9、13和14描述了一系列動(dòng)作,但是這些動(dòng)作的順序可以依照符合本發(fā)明的其它實(shí)現(xiàn)方式而有所改變。另外,非從屬的動(dòng)作可以并行實(shí)現(xiàn)。
除非明確說明,否則不應(yīng)該把用于描述本申請(qǐng)的元件、動(dòng)作或指令看作是本發(fā)明關(guān)鍵性的或者必要的。此外,正如此處使用的那樣,冠詞“一”意在包括一項(xiàng)或多項(xiàng)。當(dāng)意欲只表示一個(gè)時(shí),使用術(shù)語“一個(gè)”或類似詞語。此外,除非另外明確說明,否則,短語“基于”意味著“基于、至少部分基于”的意思。本發(fā)明的范圍由權(quán)利要求書和其等效物來定義。
權(quán)利要求
1.一種多播訪問控制設(shè)備,包括分析器,可操作以便分析輸入數(shù)據(jù);數(shù)據(jù)庫,包括訪問控制規(guī)則;以及訪問控制引擎,可操作以便基于所述分析器的結(jié)果,把來自數(shù)據(jù)庫的適當(dāng)訪問控制規(guī)則應(yīng)用于所述輸入數(shù)據(jù)。
2.如權(quán)利要求1所述的設(shè)備,其中所述輸入數(shù)據(jù)是控制面消息。
3.如權(quán)利要求2所述的設(shè)備,其中所述控制面消息是協(xié)議獨(dú)立多播加入請(qǐng)求。
4.如權(quán)利要求1所述的設(shè)備,其中所述輸入數(shù)據(jù)是多播通知。
5.如權(quán)利要求1所述的設(shè)備,其中所述輸入數(shù)據(jù)是單播注冊(cè)消息。
6.如權(quán)利要求1所述的設(shè)備,其中所述分析器可操作以便基于所述輸入數(shù)據(jù)的一個(gè)或多個(gè)源區(qū)域以及一個(gè)或多個(gè)目的地區(qū)域來分析輸入數(shù)據(jù)。
7.如權(quán)利要求6所述的設(shè)備,其中一個(gè)或多個(gè)源區(qū)域是發(fā)出所述輸入數(shù)據(jù)的一個(gè)或多個(gè)接口所在的區(qū)域。
8.如權(quán)利要求6所述的設(shè)備,其中一個(gè)或多個(gè)目的地區(qū)域是用于接收所述輸入數(shù)據(jù)的接口所在的區(qū)域。
9.如權(quán)利要求1所述的設(shè)備,其中所述訪問控制規(guī)則至少基于入口和出口區(qū)域。
10.如權(quán)利要求1所述的設(shè)備,其中所述輸入數(shù)據(jù)可以包括多個(gè)目的地區(qū)域。
11.如權(quán)利要求1所述的設(shè)備,還包括多播地址轉(zhuǎn)換模塊,可操作以便在控制和數(shù)據(jù)面兩者編輯輸入數(shù)據(jù)。
12.如權(quán)利要求11所述的設(shè)備,其中所述多播地址轉(zhuǎn)換模塊編輯輸入數(shù)據(jù)的源地址。
13.如權(quán)利要求11所述的設(shè)備,其中所述多播地址轉(zhuǎn)換模塊編輯輸入數(shù)據(jù)的目的地地址,諸如多播組地址。
14.如權(quán)利要求13所述的設(shè)備,其中所述多播地址轉(zhuǎn)換模塊編輯一個(gè)或多個(gè)目的地地址或者多個(gè)目的地地址的組地址或者輸入數(shù)據(jù)的組地址。
15.如權(quán)利要求1所述的設(shè)備,還包括路由模塊,可操作以便路由輸出多播和非多播數(shù)據(jù)。
16.如權(quán)利要求15所述的設(shè)備,其中所述路由模塊把協(xié)議獨(dú)立多播加入請(qǐng)求路由至?xí)宵c(diǎn)。
17.如權(quán)利要求15所述的設(shè)備,其中所述路由模塊把多播通知路由至多個(gè)多播接收方。
18.如權(quán)利要求15所述的設(shè)備,其中所述路由模塊把具有任何定位器服務(wù)的單播控制面消息諸如會(huì)話啟動(dòng)協(xié)議注冊(cè)消息路由至?xí)宵c(diǎn)。
19.如權(quán)利要求1所述的設(shè)備,還包括代理會(huì)合點(diǎn),可操作地連接至所述訪問控制引擎,并且可操作以便基于應(yīng)用的訪問控制規(guī)則把輸入數(shù)據(jù)代理至接收方。
20.如權(quán)利要求19所述的設(shè)備,其中所述分析器可操作以便基于所述輸入數(shù)據(jù)的一個(gè)或多個(gè)源區(qū)域和一個(gè)或多個(gè)目的地區(qū)域來分析輸入數(shù)據(jù)。
21.如權(quán)利要求19所述的設(shè)備,其中所述分析器可操作以便基于所述輸入數(shù)據(jù)的一個(gè)或多個(gè)源地址和一個(gè)或多個(gè)目的地地址來分析輸入數(shù)據(jù)。
22.一種用于執(zhí)行多播訪問控制的方法,包括在多播訪問控制設(shè)備處接收輸入數(shù)據(jù);分析所述輸入數(shù)據(jù);并且把訪問控制規(guī)則應(yīng)用于所述輸入數(shù)據(jù)。
23.如權(quán)利要求22所述的方法,其中所述輸入數(shù)據(jù)是控制面消息。
24.如權(quán)利要求23所述的方法,其中所述控制面消息是協(xié)議獨(dú)立多播消息。
25.如權(quán)利要求23所述的方法,其中所述控制面消息是獨(dú)立多播加入消息。
26.如權(quán)利要求22所述的方法,其中所述輸入數(shù)據(jù)是媒體傳輸。
27.如權(quán)利要求22所述的方法,其中所述輸入數(shù)據(jù)是單播注冊(cè)消息。
28.如權(quán)利要求22所述的方法,還包括在分析所述輸入數(shù)據(jù)期間識(shí)別到達(dá)和出口區(qū)域;并且基于所述到達(dá)和出口區(qū)域來應(yīng)用所述訪問控制規(guī)則。
29.如權(quán)利要求22所述的方法,還包括在分析所述輸入數(shù)據(jù)期間識(shí)別源和目的地區(qū)域。
30.如權(quán)利要求29所述的方法,還包括基于所述源區(qū)域和目的地區(qū)域來應(yīng)用所述訪問控制規(guī)則。
31.如權(quán)利要求29所述的方法,其中所述源區(qū)域是發(fā)出輸入數(shù)據(jù)的接口所在的區(qū)域。
32.如權(quán)利要求29所述的方法,其中所述目的地區(qū)域是用于接收輸入數(shù)據(jù)的接口所在的區(qū)域。
33.如權(quán)利要求22所述的方法,其中所述輸入數(shù)據(jù)可以包括多個(gè)目的地區(qū)域。
34.如權(quán)利要求22所述的方法,還包括在多播地址轉(zhuǎn)換模塊處對(duì)輸入數(shù)據(jù)執(zhí)行地址轉(zhuǎn)換。
35.如權(quán)利要求34所述的方法,還包括在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的源地址。
36.如權(quán)利要求34所述的方法,還包括在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的目的地地址。
37.如權(quán)利要求34所述的方法,還包括在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的一個(gè)或多個(gè)多播組地址。
38.如權(quán)利要求34所述的方法,還包括在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的多個(gè)目的地地址中的一個(gè)或多個(gè)目的地地址。
39.如權(quán)利要求22所述的方法,還包括在應(yīng)用所述訪問控制規(guī)則之后,把輸入數(shù)據(jù)路由至接收方。
40.如權(quán)利要求39所述的方法,還包括把協(xié)議獨(dú)立多播加入請(qǐng)求路由至?xí)宵c(diǎn)。
41.如權(quán)利要求39所述的方法,還包括向多個(gè)多播接收方路由多播通知。
42.如權(quán)利要求39所述的方法,還包括把單播注冊(cè)消息路由至?xí)宵c(diǎn)。
43.如權(quán)利要求22所述的方法,還包括基于所應(yīng)用的訪問控制規(guī)則,把所述輸入數(shù)據(jù)代理至接收方。
44.如權(quán)利要求43所述的方法,其中分析所述輸入數(shù)據(jù)還包括基于所述輸入數(shù)據(jù)的源區(qū)域和目的地區(qū)域來分析輸入數(shù)據(jù)。
45.一種用于多播訪問控制的計(jì)算機(jī)程序產(chǎn)品,其有形地存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,所述計(jì)算機(jī)程序產(chǎn)品包括指令,所述指令可操作以便令可編程處理器執(zhí)行如下步驟在多播訪問控制設(shè)備處接收輸入數(shù)據(jù);分析輸入數(shù)據(jù);并且在控制和數(shù)據(jù)面把訪問控制規(guī)則應(yīng)用于輸入數(shù)據(jù)。
46.如權(quán)利要求45所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令在分析所述輸入數(shù)據(jù)的同時(shí),確定源和目的地區(qū)域。
47.如權(quán)利要求45所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令基于到達(dá)和出口區(qū)域來應(yīng)用訪問控制規(guī)則。
48.如權(quán)利要求45所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令在多播地址轉(zhuǎn)換模塊處對(duì)輸入數(shù)據(jù)執(zhí)行地址轉(zhuǎn)換;在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的源地址;并且在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的目的地地址。
49.如權(quán)利要求45所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令在多播地址轉(zhuǎn)換模塊處對(duì)輸入數(shù)據(jù)執(zhí)行地址轉(zhuǎn)換;并且在所述多播地址轉(zhuǎn)換模塊處編輯所述輸入數(shù)據(jù)的一個(gè)或多個(gè)多播組地址。
50.如權(quán)利要求45所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令在應(yīng)用訪問控制規(guī)則之后,把輸入數(shù)據(jù)路由出出口接口。
51.如權(quán)利要求50所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令把諸如協(xié)議獨(dú)立多播加入請(qǐng)求的多播控制面消息路由至?xí)宵c(diǎn)。
52.如權(quán)利要求50所述的產(chǎn)品,還包括可操作以便令可編程處理器執(zhí)行如下步驟的指令基于所應(yīng)用的訪問控制規(guī)則把多播控制面消息代理至代理會(huì)合點(diǎn)。
53.一種多播訪問控制系統(tǒng),包括多播源,可操作以便提供多播傳輸;與多個(gè)區(qū)域相交的多播訪問控制設(shè)備;會(huì)合點(diǎn);以及一個(gè)或多個(gè)多播接收方。
54.如權(quán)利要求53所述的系統(tǒng),其中所述會(huì)合點(diǎn)可操作以便把多播傳輸從多播源向多個(gè)多播接收方路由。
55.如權(quán)利要求53所述的系統(tǒng),其中所述多播訪問控制設(shè)備可操作以便在控制和數(shù)據(jù)面提供多播訪問控制。
56.如權(quán)利要求53所述的系統(tǒng),其中所述多播源和會(huì)合點(diǎn)處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
57.如權(quán)利要求53所述的系統(tǒng),其中所述會(huì)合點(diǎn)和至少一個(gè)多播接收方處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
58.如權(quán)利要求53所述的系統(tǒng),其中所述會(huì)合點(diǎn)和一個(gè)以上的多播接收方處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
59.如權(quán)利要求53所述的系統(tǒng),其中所述會(huì)合點(diǎn)和一個(gè)以上的多播接收方每個(gè)處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
60.如權(quán)利要求53所述的系統(tǒng),其中所述多播源和會(huì)合點(diǎn)位于同一區(qū)域中。
61.如權(quán)利要求53所述的系統(tǒng),其中所述會(huì)合點(diǎn)和至少一個(gè)多播接收方位于同一區(qū)域中。
62.一種多播訪問控制系統(tǒng),包括多播源,可操作以便提供多播傳輸;與多個(gè)區(qū)域相交并包括代理會(huì)合點(diǎn)的多播訪問控制設(shè)備;以及會(huì)合點(diǎn),可操作以便把多播傳輸從多播源路由至多個(gè)多播接收方。
63.如權(quán)利要求62所述的系統(tǒng),其中所述多播源和會(huì)合點(diǎn)位于不同域中。
64.如權(quán)利要求62所述的系統(tǒng),其中所述多播源和會(huì)合點(diǎn)處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
65.如權(quán)利要求62所述的系統(tǒng),其中所述會(huì)合點(diǎn)和至少一個(gè)多播接收方位于不同域中。
66.如權(quán)利要求62所述的系統(tǒng),其中所述會(huì)合點(diǎn)和至少一個(gè)多播接收方處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
67.如權(quán)利要求62所述的系統(tǒng),其中所述會(huì)合點(diǎn)和一個(gè)以上的多播接收方處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
68.如權(quán)利要求62所述的系統(tǒng),其中所述會(huì)合點(diǎn)和一個(gè)以上的多播接收方每個(gè)處于與多播訪問控制設(shè)備相交的不同區(qū)域中。
69.如權(quán)利要求62所述的系統(tǒng),其中所述代理會(huì)合點(diǎn)處于與多播源相同的區(qū)域中。
70.如權(quán)利要求62所述的系統(tǒng),其中所述代理會(huì)合點(diǎn)處于與至少一個(gè)多播接收方相同的區(qū)域中。
全文摘要
提供了用于多播訪問控制的系統(tǒng)、設(shè)備、方法和計(jì)算機(jī)程序產(chǎn)品,以便基于輸入數(shù)據(jù)的源區(qū)域和目的地區(qū)域來分析輸入數(shù)據(jù)(730)?;诜治鼋Y(jié)果把適當(dāng)?shù)脑L問控制規(guī)則應(yīng)用于輸入數(shù)據(jù)(740)。多播訪問控制的附加實(shí)現(xiàn)方式包括使用代理會(huì)合點(diǎn)(1045),其可操作以便用作會(huì)合點(diǎn)來代替實(shí)際會(huì)合點(diǎn)。
文檔編號(hào)H04L12/18GK1898901SQ200480036350
公開日2007年1月17日 申請(qǐng)日期2004年10月29日 優(yōu)先權(quán)日2003年10月31日
發(fā)明者劉昌明, 格萊格里·M.·萊伯維茲, 珀維·德塞 申請(qǐng)人:叢林網(wǎng)絡(luò)公司