專利名稱:分布式隊(duì)列分配方法及分布式系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種分布式隊(duì)列分配方法及分布式系統(tǒng)。
背景技術(shù):
在通信領(lǐng)域中,系統(tǒng)按照實(shí)現(xiàn)方式,可以分為集中式系統(tǒng)和分布式系統(tǒng)。在集中式系統(tǒng)中,物理隊(duì)列和管理軟件位于同一個(gè)系統(tǒng)中,隊(duì)列分配由轉(zhuǎn)發(fā)和控 制單元負(fù)責(zé),隊(duì)列原始數(shù)據(jù)包經(jīng)轉(zhuǎn)發(fā)和控制單元分配處理后,成為處理過(guò)的隊(duì)列數(shù)據(jù)包,集 中式系統(tǒng)的隊(duì)列使用和管理都比較容易,如圖1所示。而在一個(gè)典型的分布式系統(tǒng)中,分布式系統(tǒng)中的處理流程分成上行和下行兩個(gè)部 分;而且這兩個(gè)處理可能在不同的轉(zhuǎn)發(fā)單元上,如圖2所示。上行流程負(fù)責(zé)進(jìn)行轉(zhuǎn)發(fā)業(yè)務(wù)判 斷和處理,獲取下行的隊(duì)列號(hào),下行流程根據(jù)隊(duì)列號(hào)進(jìn)行入隊(duì)列操作,然后進(jìn)行數(shù)據(jù)包的修 改,完成一次業(yè)務(wù)處理。在分布式系統(tǒng)中,如果轉(zhuǎn)發(fā)單元類型都是一樣的,那么隊(duì)列分配方 式也是相同的。但是,如果存在不同類型的轉(zhuǎn)發(fā)單元,則無(wú)法合理地分配和使用隊(duì)列。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種分布式隊(duì)列分配方法及分布式系統(tǒng),以至少解決 上述的上分布式系統(tǒng)中存在不同類型的轉(zhuǎn)發(fā)單元時(shí),無(wú)法合理地分配和使用隊(duì)列的問(wèn)題。根據(jù)本發(fā)明的一個(gè)方面,提供了一種分布式隊(duì)列分配方法,應(yīng)用于分布式系統(tǒng),包 括在接收到轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列模板中選擇與轉(zhuǎn)發(fā) 單元的類型對(duì)應(yīng)的隊(duì)列模板;使用選擇的隊(duì)列模板分配隊(duì)列。根據(jù)本發(fā)明的另一方面,提供了一種分布式系統(tǒng),包括轉(zhuǎn)發(fā)單元管理模塊,用于 在接收轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列模板中選擇與轉(zhuǎn)發(fā)單元 的類型對(duì)應(yīng)的隊(duì)列模板;隊(duì)列分配模塊,用于使用選擇的隊(duì)列模板分配隊(duì)列。通過(guò)本發(fā)明,采用根據(jù)轉(zhuǎn)發(fā)單元類型,選擇不同的隊(duì)列模板,使得在分布式系統(tǒng)中 存在多種不同的轉(zhuǎn)發(fā)單元時(shí),經(jīng)不同轉(zhuǎn)發(fā)單元分配的隊(duì)列有適合于該轉(zhuǎn)發(fā)單元的隊(duì)列模 板,以使隊(duì)列能夠順利分配,解決了現(xiàn)有分布式系統(tǒng)存在不同類型轉(zhuǎn)發(fā)單元時(shí),無(wú)法合理地 分配和使用隊(duì)列的問(wèn)題,進(jìn)而達(dá)到了在分布式系統(tǒng)中,經(jīng)不同類型的轉(zhuǎn)發(fā)單元合理分配和 使用隊(duì)列的效果。
此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā) 明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中圖1是根據(jù)相關(guān)技術(shù)的一種集中式設(shè)備轉(zhuǎn)發(fā)示意圖;圖2是根據(jù)相關(guān)技術(shù)的一種分布式設(shè)備轉(zhuǎn)發(fā)示意圖;圖3是根據(jù)本發(fā)明實(shí)施例一的一種分布式隊(duì)列分配方法的步驟流程圖;圖4是根據(jù)本發(fā)明實(shí)施例二的一種分布式隊(duì)列分配方法的步驟流程圖5是根據(jù)本發(fā)明實(shí)施例三的一種分布式系統(tǒng)的結(jié)構(gòu)框圖;圖6是根據(jù)本發(fā)明實(shí)施例四的一種分布式系統(tǒng)的結(jié)構(gòu)框圖;圖7是根據(jù)本發(fā)明實(shí)施例五的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布式隊(duì)列分配 的步驟流程圖;圖8是根據(jù)本發(fā)明實(shí)施例六的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布式隊(duì)列分配 的步驟流程圖;圖9是根據(jù)本發(fā)明實(shí)施例七的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布式隊(duì)列分配 的步驟流程圖;圖10是根據(jù)本發(fā)明實(shí)施例八的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布式隊(duì)列分 配的步驟流程圖。
具體實(shí)施例方式下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的 情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。參照?qǐng)D3,示出了根據(jù)本發(fā)明實(shí)施例一的一種分布式隊(duì)列分配方法的步驟流程圖, 包括以下步驟步驟S302 在接收到轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列 模板中選擇與轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板;分布式系統(tǒng)的上線消息用于業(yè)務(wù)隊(duì)列的分配和處理,當(dāng)分布式系統(tǒng)接收到某一個(gè) 或某幾個(gè)轉(zhuǎn)發(fā)單元的上線消息后,開(kāi)始業(yè)務(wù)的分配和處理。分布式系統(tǒng)中存儲(chǔ)有針對(duì)不同轉(zhuǎn)發(fā)單元類型的多個(gè)隊(duì)列模板,當(dāng)分布式系統(tǒng)接收 到轉(zhuǎn)發(fā)單元發(fā)送的上線消息時(shí),依據(jù)發(fā)送該上線消息的轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列模板 中選擇適用與該轉(zhuǎn)發(fā)單元的隊(duì)列模板。步驟S304 使用選擇的隊(duì)列模板分配隊(duì)列。相關(guān)技術(shù)中,若分布式系統(tǒng)中存在不同類型的轉(zhuǎn)發(fā)單元,如,轉(zhuǎn)發(fā)單元的芯片類型 不同,則無(wú)法合理地分配和使用隊(duì)列。通過(guò)本實(shí)施例,采用根據(jù)轉(zhuǎn)發(fā)單元類型,選擇不同的 隊(duì)列模板,使得在分布式系統(tǒng)中存在多種不同的轉(zhuǎn)發(fā)單元時(shí),經(jīng)不同轉(zhuǎn)發(fā)單元分配的隊(duì)列 有適合于該轉(zhuǎn)發(fā)單元的隊(duì)列模板,以使隊(duì)列能夠順利分配,解決了現(xiàn)有分布式系統(tǒng)存在不 同類型轉(zhuǎn)發(fā)單元時(shí),無(wú)法合理地分配和使用隊(duì)列的問(wèn)題,進(jìn)而達(dá)到了在分布式系統(tǒng)中,經(jīng)不 同類型的轉(zhuǎn)發(fā)單元合理分配和使用隊(duì)列的效果。參照?qǐng)D4,示出了根據(jù)本發(fā)明實(shí)施例二的一種分布式隊(duì)列分配方法的步驟流程圖, 包括以下步驟步驟S402 分布式系統(tǒng)接收到隊(duì)列分配消息,判斷消息類型,若為轉(zhuǎn)發(fā)單元的上 線消息,則執(zhí)行步驟S404 ;若為特殊業(yè)務(wù)隊(duì)列分配消息,則執(zhí)行步驟S406。本實(shí)施例中,隊(duì)列分配消息包括轉(zhuǎn)發(fā)單元的上線消息和特殊業(yè)務(wù)隊(duì)列分配消息, 分布式系統(tǒng)接收到隊(duì)列分配消息后,首先判斷消息的類型,根據(jù)不同的消息類型進(jìn)行不同處理。步驟S404 當(dāng)隊(duì)列分配消息是轉(zhuǎn)發(fā)單元的上線消息時(shí),分布式系統(tǒng)根據(jù)轉(zhuǎn)發(fā)單元 的線卡類型,從多個(gè)隊(duì)列模板中選擇與轉(zhuǎn)發(fā)單元的線卡類型對(duì)應(yīng)的隊(duì)列模板,轉(zhuǎn)步驟S408。
本實(shí)施例中,以線卡類型區(qū)分轉(zhuǎn)發(fā)單元的類型,但不限于此,本領(lǐng)域技術(shù)人員可以 根據(jù)實(shí)際情況,使用任意可以區(qū)分轉(zhuǎn)發(fā)單元類型的參數(shù),以對(duì)轉(zhuǎn)發(fā)單元類型進(jìn)行區(qū)分。優(yōu)選的,分布式系統(tǒng)中分別設(shè)有轉(zhuǎn)發(fā)單元類型與模板類型的對(duì)應(yīng)關(guān)系,和模板類 型與隊(duì)列模板的對(duì)應(yīng)關(guān)系,分布式系統(tǒng)首先根據(jù)轉(zhuǎn)發(fā)單元的線卡類型確定其對(duì)應(yīng)的模板類 型,然后與模板類型確定隊(duì)列模板。轉(zhuǎn)發(fā)單元類型與模板類型的對(duì)應(yīng)關(guān)系,和模板類型與隊(duì) 列模板的對(duì)應(yīng)關(guān)系可以分別設(shè)置于不同的功能實(shí)體中,以減輕單個(gè)功能實(shí)體的存儲(chǔ)負(fù)擔(dān), 并提高由轉(zhuǎn)發(fā)單元類型確定隊(duì)列模板的實(shí)現(xiàn)靈活性。當(dāng)然,也可以設(shè)置轉(zhuǎn)發(fā)單元的類型和 隊(duì)列模板的對(duì)應(yīng)關(guān)系,直接由轉(zhuǎn)發(fā)單元類型確定隊(duì)列模板。步驟S406 當(dāng)隊(duì)列分配消息是特殊業(yè)務(wù)隊(duì)列分配消息時(shí),分布式系統(tǒng)根據(jù)特殊業(yè) 務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng)關(guān)系,從多個(gè)隊(duì)列模板中選擇與特殊業(yè)務(wù)隊(duì)列對(duì)應(yīng)的隊(duì)列模板。本實(shí)施例中,分布式系統(tǒng)中還設(shè)有特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng)關(guān)系,當(dāng)系統(tǒng) 接收到特殊業(yè)務(wù)隊(duì)列分配消息時(shí),直接根據(jù)該對(duì)應(yīng)關(guān)系,確定特殊業(yè)務(wù)隊(duì)列適用的隊(duì)列模 板,執(zhí)行步驟S408。步驟S408 使用確定的隊(duì)列模板分配隊(duì)列。步驟S410 分布式系統(tǒng)接收到隊(duì)列回收消息,判斷消息類型,若為轉(zhuǎn)發(fā)單元的下 線消息,則執(zhí)行步驟S412 ;若為特殊業(yè)務(wù)隊(duì)列回收消息,則執(zhí)行步驟S414。本實(shí)施例中,隊(duì)列回收消息包括轉(zhuǎn)發(fā)單元的下線消息和特殊業(yè)務(wù)隊(duì)列回收消息, 分布式系統(tǒng)接收到隊(duì)列回收消息后,首先判斷消息的類型,根據(jù)不同的消息類型進(jìn)行不同處理。步驟S412 當(dāng)隊(duì)列回收消息是轉(zhuǎn)發(fā)單元的下線消息,分布式系統(tǒng)根據(jù)隊(duì)列模板的 類型,進(jìn)行默認(rèn)隊(duì)列的回收處理,結(jié)束流程。步驟S414 當(dāng)隊(duì)列回收消息是特殊業(yè)務(wù)隊(duì)列回收消息,分布式系統(tǒng)回收特殊業(yè)務(wù) 隊(duì)列,結(jié)束流程。需要說(shuō)明的是,系統(tǒng)有可能同時(shí)收到多個(gè)隊(duì)列分配消息,表明有多個(gè)隊(duì)列等待分 配。此時(shí),可以根據(jù)隊(duì)列分配消息(包括轉(zhuǎn)發(fā)單元的上線消息和特殊業(yè)務(wù)隊(duì)列分配消息)與 隊(duì)列模板的對(duì)應(yīng)關(guān)系,分別確定不同隊(duì)列適用的不同隊(duì)列模板。上述多個(gè)不同隊(duì)列模板組 成一個(gè)隊(duì)列模板組,多個(gè)不同的隊(duì)列通過(guò)隊(duì)列ID (標(biāo)識(shí))來(lái)標(biāo)識(shí),組成一個(gè)隊(duì)列標(biāo)識(shí)ID組, 多個(gè)隊(duì)列模板中的每一個(gè)隊(duì)列模板都與隊(duì)列標(biāo)識(shí)ID組中的一個(gè)隊(duì)列ID對(duì)應(yīng),隊(duì)列通過(guò)這 種隊(duì)列ID和隊(duì)列模板的對(duì)應(yīng)關(guān)系,確定其使用的隊(duì)列模板。參照?qǐng)D5,示出了根據(jù)本發(fā)明實(shí)施例三的一種分布式系統(tǒng)的結(jié)構(gòu)框圖,包括轉(zhuǎn)發(fā)單元管理模塊502,用于在接收轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類 型,從多個(gè)隊(duì)列模板中選擇與轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板;隊(duì)列分配模塊504,用于使 用選擇的隊(duì)列模板分配隊(duì)列。優(yōu)選的,轉(zhuǎn)發(fā)單元管理模塊502包括第一確定模塊5022,用于在接收到轉(zhuǎn)發(fā)單元 的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類型,按照預(yù)先設(shè)定的轉(zhuǎn)發(fā)單元類型與模板類型的對(duì)應(yīng)關(guān) 系,確定與轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的模板類型;第二確定模塊50M,用于根據(jù)模板類型,按照 預(yù)先設(shè)定的模板類型與隊(duì)列模板的對(duì)應(yīng)關(guān)系,從多個(gè)隊(duì)列模板中確定與模板類型對(duì)應(yīng)的隊(duì) 列模板。優(yōu)選的,轉(zhuǎn)發(fā)單元管理模塊502還包括第三確定模塊50 ,用于在接收到特殊業(yè)
6務(wù)隊(duì)列分配消息后,根據(jù)預(yù)先設(shè)定的特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng)關(guān)系,從多個(gè)隊(duì)列模 板中選擇與特殊業(yè)務(wù)隊(duì)列對(duì)應(yīng)的隊(duì)列模板。優(yōu)選的,本實(shí)施例的分布式系統(tǒng)還包括隊(duì)列回收模塊506,用于在接收到轉(zhuǎn)發(fā)單 元的下線消息,或者,接收到特殊業(yè)務(wù)隊(duì)列回收消息后,回收已分配的隊(duì)列。優(yōu)選的,本實(shí)施例的分布式系統(tǒng)還包括隊(duì)列模板模塊,用于保存多個(gè)隊(duì)列模板; 根據(jù)轉(zhuǎn)發(fā)單元的類型與隊(duì)列模板的對(duì)應(yīng)關(guān)系,或者,根據(jù)特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng) 關(guān)系,為隊(duì)列分配模塊504提供隊(duì)列模板。參照?qǐng)D6,示出了根據(jù)本發(fā)明實(shí)施例四的一種分布式系統(tǒng)的結(jié)構(gòu)框圖。本實(shí)施例的分布式系統(tǒng)包括轉(zhuǎn)發(fā)單元管理模塊602,隊(duì)列模板模塊604,隊(duì)列分配 模塊606和隊(duì)列回收模塊608。其中,轉(zhuǎn)發(fā)單元管理模塊602,用于接收隊(duì)列管理消息,包括轉(zhuǎn)發(fā)單元的上、下線消息,特 殊業(yè)務(wù)隊(duì)列分配、回收消息等,識(shí)別和管理系統(tǒng)中所有的轉(zhuǎn)發(fā)單元,對(duì)于不同的轉(zhuǎn)發(fā)單元和 特殊業(yè)務(wù),確定隊(duì)列模板,調(diào)用隊(duì)列分配模塊606和隊(duì)列回收模塊608等;隊(duì)列模板模塊604,用于保存整個(gè)系統(tǒng)的隊(duì)列模板,為其他模塊提供查詢接口,隊(duì) 列模板模塊中保存有支持多種轉(zhuǎn)發(fā)單元的隊(duì)列模板,當(dāng)轉(zhuǎn)發(fā)單元管理模塊602確定了需要 的隊(duì)列模板后,隊(duì)列模板模塊604提供隊(duì)列模板,供隊(duì)列分配模板606分配隊(duì)列使用;隊(duì)列分配模塊606,用于接收轉(zhuǎn)發(fā)單元管理模塊602發(fā)送的隊(duì)列分配請(qǐng)求(包括默 認(rèn)隊(duì)列分配請(qǐng)求,即收到轉(zhuǎn)發(fā)單元的上線消息后進(jìn)行隊(duì)列分配的分配請(qǐng)求,和特殊業(yè)務(wù)隊(duì) 列分配請(qǐng)求),執(zhí)行轉(zhuǎn)發(fā)單元的默認(rèn)隊(duì)列分配,保證正常業(yè)務(wù)的轉(zhuǎn)發(fā);以及,執(zhí)行特殊業(yè)務(wù) 隊(duì)列分配,對(duì)業(yè)務(wù)進(jìn)行特殊處理,如HQOS(層次化的QOQ業(yè)務(wù);提供系統(tǒng)運(yùn)行的隊(duì)列分配接 Π ;隊(duì)列回收模塊608,用于接收轉(zhuǎn)發(fā)單元管理模塊602發(fā)送的隊(duì)列回收請(qǐng)求(包括默 認(rèn)隊(duì)列回收請(qǐng)求,和特殊業(yè)務(wù)隊(duì)列回收請(qǐng)求),提供系統(tǒng)運(yùn)行的隊(duì)列回收接口,回收業(yè)務(wù)分 配的隊(duì)列,供再次使用。優(yōu)選的,本實(shí)施例的分布式系統(tǒng)還包括特殊業(yè)務(wù)模塊610,其在有特殊業(yè)務(wù)需要 時(shí),可以使用隊(duì)列分配模塊606分配的特殊業(yè)務(wù)隊(duì)列,在業(yè)務(wù)進(jìn)行特殊處理后,可以由隊(duì)列 回收模塊608對(duì)特殊業(yè)務(wù)隊(duì)列進(jìn)行回收。參照?qǐng)D7,示出了根據(jù)本發(fā)明實(shí)施例五的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布 式隊(duì)列分配的步驟流程圖。本實(shí)施例的分布式系統(tǒng)中,不包括特殊業(yè)務(wù)模塊。本實(shí)施例的分布式隊(duì)列分配包括以下步驟步驟S702 轉(zhuǎn)發(fā)單元管理模塊管理分布式系統(tǒng)中的轉(zhuǎn)發(fā)單元,接收隊(duì)列分配消 息,根據(jù)不同的隊(duì)列分配消息確定隊(duì)列的模板類型。當(dāng)轉(zhuǎn)發(fā)單元管理模塊接收到的是轉(zhuǎn)發(fā)單元的上線消息,或者特殊業(yè)務(wù)隊(duì)列分配消 息,則根據(jù)轉(zhuǎn)發(fā)單元類型確定與其對(duì)應(yīng)的模板類型,或者,根據(jù)特殊業(yè)務(wù)隊(duì)列確定與其對(duì)應(yīng) 的模板類型,保存在緩沖區(qū)。如果轉(zhuǎn)發(fā)單元管理模塊接收到的是轉(zhuǎn)發(fā)單元上線消息,則根據(jù)轉(zhuǎn)發(fā)單元類型,確 定對(duì)應(yīng)的模板類型,進(jìn)行緩沖保存,并通知隊(duì)列分配模塊分配默認(rèn)轉(zhuǎn)發(fā)隊(duì)列;如果轉(zhuǎn)發(fā)單元 管理模塊接收到的是特殊業(yè)務(wù)隊(duì)列分配消息,則根據(jù)特殊業(yè)務(wù)隊(duì)列,確定對(duì)應(yīng)的模板類型,進(jìn)行緩沖保存,并通知隊(duì)列分配模塊分配默認(rèn)轉(zhuǎn)發(fā)隊(duì)列。 步驟S704 隊(duì)列模板模塊根據(jù)轉(zhuǎn)發(fā)單元管理模塊確定的模板類型提供隊(duì)列模板。
隊(duì)列模板模塊負(fù)責(zé)保存不同的隊(duì)列模板,為其他模塊提供接口查詢。步驟S706 隊(duì)列分配模塊負(fù)責(zé)分配隊(duì)列,處理業(yè)務(wù)的正常轉(zhuǎn)發(fā)和特殊業(yè)務(wù)處理這 兩種情況下的隊(duì)列分配。若隊(duì)列分配模塊接收到默認(rèn)隊(duì)列分配消息,則根據(jù)轉(zhuǎn)發(fā)單元管理模塊確定的模板 類型,調(diào)用隊(duì)列模板模塊,獲取隊(duì)列模板,結(jié)合默認(rèn)調(diào)度層次分配默認(rèn)隊(duì)列ID組;若隊(duì)列分 配模塊接收到特殊業(yè)務(wù)隊(duì)列分配消息,則根據(jù)轉(zhuǎn)發(fā)單元管理模塊確定的模板類型,調(diào)用隊(duì) 列模板模塊,獲取隊(duì)列模板,然后結(jié)合特殊調(diào)度層次樹,分配特殊隊(duì)列ID組。步驟S708 轉(zhuǎn)發(fā)單元管理模塊接收隊(duì)列回收消息,調(diào)用隊(duì)列回收模塊進(jìn)行隊(duì)列的 回收處理。步驟S710 隊(duì)列回收模塊負(fù)責(zé)回收隊(duì)列,處理業(yè)務(wù)的正常轉(zhuǎn)發(fā)和特殊處理這兩種 情況下的隊(duì)列回收。若轉(zhuǎn)發(fā)單元管理模塊如果接收到轉(zhuǎn)發(fā)單元的下線消息,則根據(jù)轉(zhuǎn)發(fā)單元類型,清 除緩沖區(qū)中與其對(duì)應(yīng)的模板類型和隊(duì)列模塊,通知隊(duì)列回收模塊回收默認(rèn)轉(zhuǎn)發(fā)隊(duì)列,隊(duì)列 回收模塊接收到默認(rèn)隊(duì)列回收消息,使用默認(rèn)的隊(duì)列層次回收默認(rèn)隊(duì)列ID組;若轉(zhuǎn)發(fā)單元 管理模塊如果接收到特殊業(yè)務(wù)隊(duì)列回收消息,則根據(jù)特殊業(yè)務(wù)隊(duì)列,清除緩沖區(qū)中與其對(duì) 應(yīng)的模板類型和隊(duì)列模塊,通知隊(duì)列回收模塊回收特殊隊(duì)列,隊(duì)列回收模塊接收到特殊業(yè) 務(wù)隊(duì)列回收消息,使用特殊調(diào)度層次樹,回收特殊隊(duì)列ID組。通過(guò)本實(shí)施例的分布式系統(tǒng),隊(duì)列分配通過(guò)集中管理轉(zhuǎn)發(fā)單元,并且提供不同轉(zhuǎn) 發(fā)單元的隊(duì)列模板管理,高效地解決了分布式系統(tǒng)的隊(duì)列分配問(wèn)題。參照?qǐng)D8,示出了根據(jù)本發(fā)明實(shí)施例六的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布 式隊(duì)列分配的步驟流程圖。本實(shí)施例僅針對(duì)轉(zhuǎn)發(fā)單元的上、下線消息進(jìn)行分布式隊(duì)列分配。本實(shí)施例的分布式隊(duì)列分配包括以下步驟步驟S802 轉(zhuǎn)發(fā)單元管理模塊接收轉(zhuǎn)發(fā)單元消息,判斷消息類型,進(jìn)行轉(zhuǎn)發(fā)單元 的隊(duì)列管理。步驟S804:如果接收的是上線消息,則轉(zhuǎn)發(fā)單元管理模塊根據(jù)線卡類型,調(diào)用隊(duì) 列模板模塊獲取隊(duì)列模板,然后調(diào)用隊(duì)列分配模塊進(jìn)行默認(rèn)隊(duì)列的分配。步驟S806 如果接收的是下線消息,則轉(zhuǎn)發(fā)單元管理模塊根據(jù)隊(duì)列模板類型,調(diào) 用隊(duì)列回收模塊進(jìn)行默認(rèn)隊(duì)列的回收。參照?qǐng)D9,示出了根據(jù)本發(fā)明實(shí)施例七的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布 式隊(duì)列分配的步驟流程圖。本實(shí)施例僅針對(duì)特殊業(yè)務(wù)模塊的特殊業(yè)務(wù)隊(duì)列分配、回收消息 進(jìn)行分布式隊(duì)列分配。本實(shí)施例的分布式隊(duì)列分配包括以下步驟步驟S902 特殊業(yè)務(wù)模塊接收特殊業(yè)務(wù)隊(duì)列消息,判斷消息類型,進(jìn)行特殊業(yè)務(wù) 的隊(duì)列管理。步驟S904 如果接收的是特殊業(yè)務(wù)隊(duì)列分配消息,則特殊業(yè)務(wù)模塊根據(jù)特殊業(yè)務(wù) 隊(duì)列,調(diào)用隊(duì)列模板模塊獲取隊(duì)列模板,然后調(diào)用隊(duì)列分配模塊進(jìn)行特殊業(yè)務(wù)隊(duì)列的分配。步驟S906 如果接收的是特殊業(yè)務(wù)隊(duì)列回收消息,則特殊業(yè)務(wù)模塊根據(jù)隊(duì)列模板
8類型,調(diào)用隊(duì)列回收模塊進(jìn)行特殊業(yè)務(wù)隊(duì)列的回收。需要說(shuō)明的是,圖8和圖9所示的分布式隊(duì)列分配方法可以分別進(jìn)行,也可以同時(shí) 進(jìn)行,隊(duì)列分配模塊和隊(duì)列回收模塊對(duì)接收到的指令作以判斷,區(qū)分出是默認(rèn)隊(duì)列還是特 殊業(yè)務(wù)隊(duì)列,進(jìn)而做出不同處理即可。參照?qǐng)D10,示出了根據(jù)本發(fā)明實(shí)施例八的一種應(yīng)用圖6所示分布式系統(tǒng)進(jìn)行分布 式隊(duì)列分配的步驟流程圖,包括以下步驟步驟S1002 轉(zhuǎn)發(fā)單元管理模塊接收轉(zhuǎn)發(fā)單元消息,進(jìn)行轉(zhuǎn)發(fā)單元的隊(duì)列管理。步驟S1004 如果步驟S1002中消息是上線消息,轉(zhuǎn)發(fā)單元管理模塊根據(jù)線卡類 型,調(diào)用隊(duì)列模板模塊獲取隊(duì)列模板類型,然后調(diào)用隊(duì)列分配模塊進(jìn)行默認(rèn)隊(duì)列的分配。步驟S1006 如果步驟S1002中消息是下線消息,轉(zhuǎn)發(fā)單元管理模塊根據(jù)隊(duì)列模板 類型,調(diào)用隊(duì)列回收模塊進(jìn)行默認(rèn)隊(duì)列的回收。步驟S1008 隊(duì)列分配模塊接收特殊業(yè)務(wù)模塊的隊(duì)列分配消息,按照隊(duì)列模板類 型和特殊隊(duì)列層次樹,分配相應(yīng)的隊(duì)列組,返回給特殊業(yè)務(wù)模塊。步驟S1010 隊(duì)列分配模塊接收特殊業(yè)務(wù)模塊的隊(duì)列回收消息,按照隊(duì)列模板類 型和特殊業(yè)務(wù)層次樹,回收相應(yīng)的隊(duì)列組。需要說(shuō)明的是,本發(fā)明的上述多個(gè)實(shí)施例中,特殊業(yè)務(wù)可以是任何隊(duì)列有特殊需 要的業(yè)務(wù),如HQOS業(yè)務(wù)等,也可以是任意有特殊需要的其它業(yè)務(wù),本發(fā)明對(duì)此不作限制。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用 的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成 的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ) 在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示 出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或 步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技 術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種分布式隊(duì)列分配方法,其特征在于,應(yīng)用于分布式系統(tǒng),所述方法包括在接收到轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)所述轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列模板中選擇 與所述轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板; 使用所述選擇的隊(duì)列模板分配隊(duì)列。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì) 列模板中選擇與所述轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板的步驟包括根據(jù)所述轉(zhuǎn)發(fā)單元的類型,按照預(yù)先設(shè)定的轉(zhuǎn)發(fā)單元類型與模板類型的對(duì)應(yīng)關(guān)系,確 定與所述轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的模板類型;根據(jù)所述模板類型,按照預(yù)先設(shè)定的模板類型與隊(duì)列模板的對(duì)應(yīng)關(guān)系,從所述多個(gè)隊(duì) 列模板中確定與所述模板類型對(duì)應(yīng)的隊(duì)列模板。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,在所述使用所述選擇的隊(duì)列模板分配 隊(duì)列步驟之前,還包括若接收到特殊業(yè)務(wù)隊(duì)列分配消息,則根據(jù)預(yù)先設(shè)定的特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng) 關(guān)系,從所述多個(gè)隊(duì)列模板中選擇與所述特殊業(yè)務(wù)隊(duì)列對(duì)應(yīng)的隊(duì)列模板。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括在接收到所述轉(zhuǎn)發(fā)單元的下線消息,或者,接收到特殊業(yè)務(wù)隊(duì)列回收消息后,回收所述 已分配的隊(duì)列。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,在所述隊(duì)列包括多個(gè),并且,所述選擇的 隊(duì)列模板包括多個(gè)的情況下,所述使用所述選擇的隊(duì)列模板分配隊(duì)列的步驟包括當(dāng)接收的是轉(zhuǎn)發(fā)單元的上線消息時(shí),使用所述選擇的多個(gè)隊(duì)列模板,根據(jù)默認(rèn)調(diào)度層 次分配隊(duì)列標(biāo)識(shí)ID組,所述多個(gè)隊(duì)列模板與所述隊(duì)列ID組中的多個(gè)隊(duì)列ID —一對(duì)應(yīng); 或者,當(dāng)接收的是特殊業(yè)務(wù)隊(duì)列分配消息時(shí),使用所述選擇的多個(gè)隊(duì)列模板,根據(jù)特殊調(diào)度 層次樹分配隊(duì)列標(biāo)識(shí)ID組,所述多個(gè)隊(duì)列模板與所述隊(duì)列ID組中的多個(gè)隊(duì)列ID—一對(duì)應(yīng)。
6.一種分布式系統(tǒng),其特征在于,包括轉(zhuǎn)發(fā)單元管理模塊,用于在接收轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)所述轉(zhuǎn)發(fā)單元的類型,從 多個(gè)隊(duì)列模板中選擇與所述轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板; 隊(duì)列分配模塊,用于使用所述選擇的隊(duì)列模板分配隊(duì)列。
7.根據(jù)權(quán)利要求6所述的分布式系統(tǒng),其特征在于,所述轉(zhuǎn)發(fā)單元管理模塊包括 第一確定模塊,用于在接收到所述轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)所述轉(zhuǎn)發(fā)單元的類型,按照預(yù)先設(shè)定的轉(zhuǎn)發(fā)單元類型與模板類型的對(duì)應(yīng)關(guān)系,確定與所述轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的 模板類型;第二確定模塊,用于根據(jù)所述模板類型,按照預(yù)先設(shè)定的模板類型與隊(duì)列模板的對(duì)應(yīng) 關(guān)系,從所述多個(gè)隊(duì)列模板中確定與所述模板類型對(duì)應(yīng)的隊(duì)列模板。
8.根據(jù)權(quán)利要求7所述的分布式系統(tǒng),其特征在于,所述轉(zhuǎn)發(fā)單元管理模塊還包括 第三確定模塊,用于在接收到特殊業(yè)務(wù)隊(duì)列分配消息后,根據(jù)預(yù)先設(shè)定的特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng)關(guān)系,從所述多個(gè)隊(duì)列模板中選擇與所述特殊業(yè)務(wù)隊(duì)列對(duì)應(yīng)的隊(duì)列模 板。
9.根據(jù)權(quán)利要求8所述的分布式系統(tǒng),其特征在于,還包括隊(duì)列回收模塊,用于在接收到所述轉(zhuǎn)發(fā)單元的下線消息,或者,接收到特殊業(yè)務(wù)隊(duì)列回 收消息后,回收所述已分配的隊(duì)列。
10.根據(jù)權(quán)利要求6至9任一項(xiàng)所述的分布式系統(tǒng),其特征在于,還包括隊(duì)列模板模塊,用于保存所述多個(gè)隊(duì)列模板;根據(jù)所述轉(zhuǎn)發(fā)單元的類型與隊(duì)列模板的 對(duì)應(yīng)關(guān)系,或者,根據(jù)特殊業(yè)務(wù)隊(duì)列與隊(duì)列模板的對(duì)應(yīng)關(guān)系,為所述隊(duì)列分配模塊提供隊(duì)列 模板。
全文摘要
本發(fā)明公開(kāi)了一種分布式隊(duì)列分配方法及分布式系統(tǒng),其中,分布式隊(duì)列分配方法應(yīng)用于分布式系統(tǒng),包括在接收到轉(zhuǎn)發(fā)單元的上線消息后,根據(jù)轉(zhuǎn)發(fā)單元的類型,從多個(gè)隊(duì)列模板中選擇與轉(zhuǎn)發(fā)單元的類型對(duì)應(yīng)的隊(duì)列模板;使用選擇的隊(duì)列模板分配隊(duì)列。通過(guò)本發(fā)明,達(dá)到了在分布式系統(tǒng)中,經(jīng)不同類型的轉(zhuǎn)發(fā)單元合理分配和使用隊(duì)列的效果。
文檔編號(hào)H04L12/56GK102065009SQ20101059311
公開(kāi)日2011年5月18日 申請(qǐng)日期2010年12月16日 優(yōu)先權(quán)日2010年12月16日
發(fā)明者曹登元 申請(qǐng)人:中興通訊股份有限公司