專利名稱:異步傳輸模式調(diào)度方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),尤其涉及異步傳輸模式(ATM)調(diào)度方法及裝置。
背景技術(shù):
ATM是一種采用統(tǒng)計(jì)時(shí)分復(fù)用技術(shù)的傳送模式,它將信息流組織成固定尺寸的信元傳送,可以在同一網(wǎng)絡(luò)平臺(tái)上同時(shí)傳送話音、圖像、數(shù)據(jù)等多種業(yè)務(wù),實(shí)現(xiàn)寬帶化的一網(wǎng)多能。按照服務(wù)質(zhì)量需求的差異,ATM將業(yè)務(wù)劃分為以下幾類恒定比特率(CBR)、實(shí)時(shí)可變比特率(RT-VBR)、非實(shí)時(shí)可變比特率(NRT-VBR)、可用比特率(ABR)和不定比特率(UBR)。這幾類業(yè)務(wù)對應(yīng)話音、圖像、數(shù)據(jù)等不同的服務(wù)質(zhì)量要求,分別具有從高到低不同的優(yōu)先級。
ATM采用面向連接的方式進(jìn)行信元傳輸,在ATM信元傳送之前,兩端用戶需要建立永久虛通路(PVC)。一般ATM系統(tǒng)邏輯支持2k條PVC,每條PVC可以隨機(jī)配置成CBR、RT-VBR、NRT-VBR、ABR和UBR中的任意一種。在現(xiàn)有技術(shù)中,通常采用輪詢機(jī)制來實(shí)現(xiàn)對多條PVC的調(diào)度,其具體過程如下在每個(gè)信元發(fā)送周期,ATM系統(tǒng)逐條對所有的PVC進(jìn)行輪詢,并根據(jù)一定的規(guī)則從中選擇一條需要調(diào)度的PVC,然后將該被選擇的PVC隊(duì)列中的信元發(fā)送出去。
也就是說,在現(xiàn)有的輪詢調(diào)度機(jī)制中,每完成一次信元發(fā)送都需要對所有的PVC進(jìn)行逐條輪詢。這種輪詢調(diào)度機(jī)制比較適用于PVC條數(shù)較少的場合。在PVC條數(shù)較多的情況下,這種逐條輪詢的機(jī)制會(huì)花費(fèi)大量的時(shí)間,造成較大時(shí)延,導(dǎo)致ATM調(diào)度效率的降低。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種ATM調(diào)度方法及裝置,提高ATM調(diào)度效率。
為達(dá)到上述目的,本發(fā)明提供的ATM調(diào)度方法如下檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC作為待調(diào)度PVC;從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度。
其中,所述從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度的過程包括設(shè)置調(diào)度FIFO隊(duì)列和重調(diào)度FIFO隊(duì)列,將有信元入隊(duì)的PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,在讀出PVC標(biāo)識后,判斷該P(yáng)VC是否可以獲得服務(wù),如果可以,則將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去;否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列。
所述將有信元入隊(duì)的PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列之前包括判斷所述PVC是否處于調(diào)度狀態(tài),如果是,則不作處理;否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列,并將該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài)。
所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后包括判斷本次發(fā)送之后該P(yáng)VC隊(duì)列是否為空,如果為空,則將該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列。
該方法進(jìn)一步包括設(shè)置快速調(diào)度FIFO隊(duì)列;所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后包括判斷本次發(fā)送之后該P(yáng)VC隊(duì)列是否為空,如果為空,則將該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入快速調(diào)度FIFO隊(duì)列;所述從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識之前包括判斷快速調(diào)度FIFO隊(duì)列是否為空,如果為空,則從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識;如果不為空,則從快速調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識。
所述將PVC標(biāo)識寫入重調(diào)度FIFO隊(duì)列之后包括
從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,并寫入調(diào)度FIFO隊(duì)列。
所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后進(jìn)一步包括將已發(fā)送的信元從所述PVC中刪除。
本發(fā)明提供的異步傳輸模式調(diào)度裝置包括隊(duì)列管理模塊和調(diào)度模塊,其中,隊(duì)列管理模塊,用于在檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC標(biāo)識發(fā)送給調(diào)度模塊;調(diào)度模塊,用于從收到的PVC標(biāo)識所對應(yīng)的PVC中選擇PVC進(jìn)行調(diào)度。
所述調(diào)度模塊包括調(diào)度FIFO隊(duì)列、重調(diào)度FIFO隊(duì)列、發(fā)送FIFO隊(duì)列、CAR模塊、PVC狀態(tài)表、入口調(diào)度模塊和出口調(diào)度模塊,其中,CAR模塊,用于監(jiān)管各條PVC的流量,并在收到出口調(diào)度模塊反饋的信息后,根據(jù)反饋信息對PVC的監(jiān)管信息進(jìn)行更新;PVC狀態(tài)表,用于保存各條PVC當(dāng)前是否處于調(diào)度狀態(tài)的信息;入口調(diào)度模塊,用于在收到來自隊(duì)列管理模塊的PVC標(biāo)識后,通過查詢PVC狀態(tài)表判斷該P(yáng)VC當(dāng)前是否處于調(diào)度狀態(tài),如果是,則不進(jìn)行任何處理,否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列緩存,并將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài);并且,在未收到來自隊(duì)列管理模塊的PVC標(biāo)識時(shí),從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;出口調(diào)度模塊,用于從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,通過查詢CAR以及發(fā)送FIFO隊(duì)列的狀態(tài),判斷該P(yáng)VC當(dāng)前是否可以獲得服務(wù),如果可以,則將該P(yáng)VC標(biāo)識以及允許調(diào)度的信元個(gè)數(shù)寫入發(fā)送FIFO隊(duì)列,并將該P(yáng)VC允許調(diào)度的信元個(gè)數(shù)信息反饋給隊(duì)列管理模塊和CAR模塊,否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列,等待重新調(diào)度;并且,判斷本次調(diào)度后該P(yáng)VC隊(duì)列是否為空,如果為空,則將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列;所述隊(duì)列管理模塊,在收到出口調(diào)度模塊反饋的信息后,刪除該P(yáng)VC中相應(yīng)個(gè)數(shù)的信元。
所述調(diào)度模塊包括調(diào)度FIFO隊(duì)列、重調(diào)度FIFO隊(duì)列、快速調(diào)度FIFO隊(duì)列、公共調(diào)度FIFO隊(duì)列、發(fā)送FIFO隊(duì)列、CAR模塊、PVC狀態(tài)表、入口調(diào)度模塊、公共調(diào)度模塊和出口調(diào)度模塊,其中,CAR模塊,用于監(jiān)管各條PVC的流量,并在收到出口調(diào)度模塊反饋的信息后,根據(jù)反饋信息對PVC的監(jiān)管信息進(jìn)行更新;PVC狀態(tài)表,用于保存各條PVC當(dāng)前是否處于調(diào)度狀態(tài)的信息;入口調(diào)度模塊,用于在收到來自隊(duì)列管理模塊的PVC標(biāo)識后,通過查詢PVC狀態(tài)表判斷該P(yáng)VC當(dāng)前是否處于調(diào)度狀態(tài),如果是,則不進(jìn)行任何處理,否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列緩存,并將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài);并且,在未收到來自隊(duì)列管理模塊的PVC標(biāo)識時(shí),從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;公共調(diào)度模塊,用于在快速調(diào)度FIFO隊(duì)列不為空時(shí),從快速調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識到公共調(diào)度FIFO隊(duì)列;如果快速調(diào)度FIFO隊(duì)列為空,則從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識到公共調(diào)度FIFO隊(duì)列;出口調(diào)度模塊,用于從公共調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,通過查詢CAR以及發(fā)送FIFO隊(duì)列的狀態(tài),判斷該P(yáng)VC當(dāng)前是否可以獲得服務(wù),如果可以,則將該P(yáng)VC標(biāo)識以及允許調(diào)度的信元個(gè)數(shù)寫入發(fā)送FIFO隊(duì)列,并將該P(yáng)VC允許調(diào)度的信元個(gè)數(shù)信息反饋給隊(duì)列管理模塊和CAR模塊,否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列,等待重新調(diào)度;并且,判斷本次調(diào)度后該P(yáng)VC隊(duì)列是否為空,如果為空,則將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入快速調(diào)度FIFO隊(duì)列;所述隊(duì)列管理模塊,在收到出口調(diào)度模塊反饋的信息后,刪除該P(yáng)VC中相應(yīng)個(gè)數(shù)的信元。
由此可見,本發(fā)明無需對所有的PVC進(jìn)行逐條輪詢,而只需對從有信元的PVC中選擇PVC進(jìn)行調(diào)度即可,從而減少了由于輪詢操作而造成的較長時(shí)延,提高了ATM調(diào)度效率。并且,進(jìn)一步地,還可以通過設(shè)置快速調(diào)度FIFO隊(duì)列的方式,增加大流量PVC隊(duì)列的調(diào)度服務(wù)次數(shù),保證大流量PVC隊(duì)列中的信元能夠被及時(shí)發(fā)送出去。
圖1為本發(fā)明中的ATM調(diào)度方法流程圖。
圖2為本發(fā)明中的ATM調(diào)度裝置結(jié)構(gòu)示意圖。
圖3為本發(fā)明實(shí)施例一中的ATM調(diào)度裝置結(jié)構(gòu)示意圖。
圖4為本發(fā)明實(shí)施例一中的ATM調(diào)度方法流程圖。
圖5為本發(fā)明實(shí)施例二中的ATM調(diào)度裝置結(jié)構(gòu)示意圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,下面參照附圖并舉實(shí)施例,對本發(fā)明作進(jìn)一步詳細(xì)說明。
由背景技術(shù)描述可見,在現(xiàn)有的ATM調(diào)度過程中,需要逐條輪詢各條PVC,而不管PVC隊(duì)列中有無信元等待發(fā)送。但是,由于最終被選擇調(diào)度的必然是有信元的PVC,因此,對于沒有信元等待發(fā)送的PVC,調(diào)度模塊實(shí)際上并不需要進(jìn)行輪詢。
鑒于上述特點(diǎn),本發(fā)明提供了一種ATM調(diào)度方法,其基本思想是僅從有信元等待發(fā)送的PVC中選擇PVC進(jìn)行調(diào)度。參見圖1所示,本發(fā)明提供的ATM調(diào)度方法主要包括以下步驟步驟101檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC作為待調(diào)度PVC;步驟102從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度。
也就是說,只需對從有信元的PVC中選擇PVC進(jìn)行調(diào)度即可,而無需對各條PVC進(jìn)行逐條輪詢。這樣,可以減少由于輪詢操作而造成的較長時(shí)延,提高ATM調(diào)度效率。
相應(yīng)地,本發(fā)明還提供了一種ATM調(diào)度裝置。該裝置的結(jié)構(gòu)參見圖2所示,主要包括隊(duì)列管理模塊(QM)和調(diào)度模塊(SCH)。其中,QM,用于在檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC信息發(fā)送給SCH;
SCH,用于從收到的PVC信息所對應(yīng)的PVC中選擇PVC進(jìn)行調(diào)度。
為更加清楚起見,下面分別結(jié)合圖3和圖4通過兩個(gè)具體實(shí)施例對本發(fā)明進(jìn)行詳細(xì)闡述。
實(shí)施例一圖3所示為本發(fā)明實(shí)施例一中的ATM調(diào)度裝置示意圖,主要包括用于存儲(chǔ)各條PVC信息的隊(duì)列管理模塊QM以及調(diào)度模塊SCH。其中,SCH具體包括入口調(diào)度模塊、出口調(diào)度模塊、調(diào)度先入先出(FIFO)隊(duì)列(SCHQ)、重調(diào)度FIFO隊(duì)列(RE_SCHQ)、發(fā)送FIFO隊(duì)列(TXQ)、PVC狀態(tài)表和承諾接入速率模塊(CAR)。
下面結(jié)合圖3對本實(shí)施例中的ATM調(diào)度方法進(jìn)行詳細(xì)說明。參見圖4所示,本實(shí)施例中的ATM調(diào)度方法主要包括以下步驟步驟401QM在檢測到有信元寫入PVC隊(duì)列后,向入口調(diào)度模塊發(fā)送信元入隊(duì)觸發(fā)請求,將當(dāng)前有信元入隊(duì)的PVC標(biāo)識發(fā)送給入口調(diào)度模塊。
步驟402入口調(diào)度模塊收到QM發(fā)送來的信元入隊(duì)觸發(fā)請求后,查詢PVC狀態(tài)表,判斷該觸發(fā)請求攜帶的PVC標(biāo)識所對應(yīng)的PVC當(dāng)前是否處于調(diào)度狀態(tài),如果該P(yáng)VC處于調(diào)度狀態(tài),則不作任何處理,跳出本流程;如果該P(yáng)VC處于非調(diào)度狀態(tài),則執(zhí)行步驟403。
其中,PVC狀態(tài)表用于保存各條PVC當(dāng)前是否處于調(diào)度狀態(tài)的信息。比如,每條PVC分別對應(yīng)1比特的信息位,如果信息位為高,則表示該P(yáng)VC當(dāng)前處于調(diào)度狀態(tài);如果信息位為低,則表示該P(yáng)VC當(dāng)前處于非調(diào)度狀態(tài)。在初始狀態(tài),可以將各條PVC都置為非調(diào)度狀態(tài)。
步驟403入口調(diào)度模塊將QM發(fā)送來的PVC標(biāo)識寫入SCHQ隊(duì)列,并將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài)。
其中,SCHQ用于依次緩存入口調(diào)度模塊寫入的PVC標(biāo)識,其深度一般大于等于PVC條數(shù)。
步驟404在SCHQ不為空的情況下,出口調(diào)度模塊依次從SCHQ隊(duì)列中讀取PVC標(biāo)識。
步驟405在讀出一個(gè)PVC標(biāo)識后,出口調(diào)度模塊通過查詢CAR,并結(jié)合當(dāng)前TXQ隊(duì)列的狀態(tài),判斷該P(yáng)VC當(dāng)前是否能夠得到服務(wù),即該P(yáng)VC隊(duì)列中的信元是否可以得到發(fā)送,如果可以得到服務(wù),則執(zhí)行步驟406;否則,執(zhí)行步驟409。
其中,CAR用于監(jiān)管各條PVC的流量。比如,CAR為每條PVC分別設(shè)置一個(gè)信元漏桶,用以限制各條PVC可以發(fā)送的最大信元速率。
出口調(diào)度模塊在讀出一個(gè)PVC標(biāo)識后,查看TXQ隊(duì)列是否為滿,如果TXQ滿,則確定該P(yáng)VC當(dāng)前不能夠得到服務(wù)。如果TXQ非滿,則繼續(xù)查詢CAR中與該P(yáng)VC對應(yīng)的信元漏桶中的信元數(shù)目是否已經(jīng)達(dá)到最大值,如果已經(jīng)達(dá)到,則確定該P(yáng)VC當(dāng)前不能夠得到服務(wù);如果沒有達(dá)到,則確定該P(yáng)VC當(dāng)前能夠得到服務(wù)。比如,假設(shè)PVC1信元漏桶中的當(dāng)前信元數(shù)目為10,而其可承載的最大信元數(shù)目為20,那么,則確定PVC1當(dāng)前可以獲得服務(wù)。
步驟406出口調(diào)度模塊將該P(yáng)VC標(biāo)識以及允許發(fā)送的信元個(gè)數(shù)寫入TXQ隊(duì)列。然后,將TXQ隊(duì)列中的PVC標(biāo)識所對應(yīng)PVC中的相應(yīng)個(gè)數(shù)信元發(fā)送出去。
同時(shí),出口調(diào)度模塊還會(huì)將該P(yáng)VC調(diào)度出的信元個(gè)數(shù)信息反饋給QM和CAR。QM收到出口調(diào)度模塊反饋的信息后,刪除該P(yáng)VC中相應(yīng)個(gè)數(shù)的信元。CAR收到出口調(diào)度模塊反饋的信息后,根據(jù)反饋信息對該P(yáng)VC的監(jiān)管信息進(jìn)行更新。比如,依然以PVC1為例,如果本次調(diào)度的PVC1信元個(gè)數(shù)為5,則QM在本次調(diào)度后會(huì)將這5個(gè)信元?jiǎng)h除,而CAR會(huì)將PVC1信元漏桶中的信元數(shù)目更新為15。
步驟407在本次調(diào)度后,出口調(diào)度模塊判斷該P(yáng)VC隊(duì)列是否為空,如果為空,則執(zhí)行步驟408;如果不為空,即在本次調(diào)度后該P(yáng)VC隊(duì)列中還有未被調(diào)度的信元,則執(zhí)行步驟409。
步驟408出口調(diào)度模塊將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài),然后跳出本流程。
步驟409出口調(diào)度模塊將該P(yáng)VC標(biāo)識寫入RE_SCHQ隊(duì)列,等待重新調(diào)度。
其中,RE_SCHQ隊(duì)列用于緩存出口調(diào)度模塊寫入的PVC標(biāo)識。在沒有收到信元入隊(duì)觸發(fā)請求時(shí),入口調(diào)度模塊會(huì)從RE_SCHQ中讀取PVC標(biāo)識并寫入到SCHQ中。
可見,在本實(shí)施例中,調(diào)度模塊SCH無需對QM中的各條PVC進(jìn)行輪詢,而是基于信元入隊(duì)觸發(fā)機(jī)制實(shí)現(xiàn)了高效的ATM調(diào)度。
實(shí)施例二在實(shí)施例一中,對于有信元等待發(fā)送的各條PVC而言,它們被調(diào)度的機(jī)率大致相同。在這種情況下,如果PVC隊(duì)列中有大量的信元等待發(fā)送,那么,受出端口調(diào)度效率的限制,大流量PVC隊(duì)列中的信元必須經(jīng)過多次調(diào)度、花費(fèi)很長的時(shí)間才能夠全部發(fā)送完畢。
為了克服上述問題,保證大流量PVC中的信元能夠及時(shí)發(fā)送出去,本實(shí)施例提供了另一種ATM調(diào)度裝置。該裝置的結(jié)構(gòu)參見圖5所示,主要包括QM和SCH。其中,SCH中除了包括入口調(diào)度模塊、出口調(diào)度模塊、SCHQ、RE_SCHQ、TXQ、PVC狀態(tài)表和CAR之外,還進(jìn)一步包括快速調(diào)度FIFO隊(duì)列(FA_SCHQ)、公共調(diào)度FIFO隊(duì)列(CO_SCHQ)和公共調(diào)度模塊。
圖5中的入口調(diào)度模塊、SCHQ、RE_SCHQ、TXQ、PVC狀態(tài)表和CAR的功能與圖3中的一致,這里不再一一贅述。下面主要針對圖5中新增的模塊進(jìn)行詳細(xì)說明。
其中,F(xiàn)A_SCHQ用于緩存出口調(diào)度模塊寫入的PVC標(biāo)識,其優(yōu)先級要高于SCHQ。如果FA_SCHQ不為空,公共調(diào)度模塊則從FA_SCHQ中讀取PVC標(biāo)識到CO_SCHQ;如果FA_SCHQ為空,公共調(diào)度模塊則從SCHQ中讀取PVC標(biāo)識到CO_SCHQ。
另外,為了避免由于CO_SCHQ中排長隊(duì)而造成FA_SCHQ不能夠及時(shí)得到調(diào)度的情況發(fā)生,可以將CO_SCHQ的深度設(shè)置得淺一些,即縮短CO_SCHQ隊(duì)列的長度。這樣,公共調(diào)度模塊就不會(huì)在FA_SCHQ為空的情況下,從SCHQ中讀取大量的PVC標(biāo)識到CO_SCHQ中排隊(duì),從而避免了當(dāng)FA_SCHQ不為空時(shí),F(xiàn)A_SCHQ無法及時(shí)調(diào)度的情況發(fā)生。
與實(shí)施例一所不同的是,在實(shí)施例二中,出口調(diào)度模塊不是從SCHQ中讀取PVC標(biāo)識,而是從CO_SCHQ中讀取PVC標(biāo)識。讀取PVC標(biāo)識之后的處理與實(shí)施例一基本相同,唯一的區(qū)別在于如果出口調(diào)度模塊在本次調(diào)度后,判斷出該P(yáng)VC隊(duì)列不為空,即在本次調(diào)度后該P(yáng)VC隊(duì)列中還有未被調(diào)度的信元,那么,出口調(diào)度模塊則將該P(yáng)VC標(biāo)識寫入FA_SCHQ,而不是寫入RE_SCHQ。也就是說,當(dāng)PVC可以獲得服務(wù),但由于最大突發(fā)限制不能將該P(yáng)VC中的信元一次發(fā)送完畢時(shí),出口調(diào)度模塊將該P(yáng)VC標(biāo)識寫入FA_SCHQ。
由于FA_SCHQ的優(yōu)先級比SCHQ的優(yōu)先級要高,因此,將未發(fā)送完畢的PVC標(biāo)識寫入FA_SCHQ后,該P(yáng)VC就能夠很快地被重調(diào)度。通過這種調(diào)度方式,可以增加大流量PVC隊(duì)列的調(diào)度服務(wù)次數(shù),保證大流量PVC隊(duì)列中的信元能夠被及時(shí)發(fā)送出去。
以上所述對本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步的詳細(xì)說明,所應(yīng)理解的是,以上所述并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種異步傳輸模式調(diào)度方法,其特征在于,包括檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC作為待調(diào)度PVC;從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度的過程包括設(shè)置調(diào)度FIFO隊(duì)列和重調(diào)度FIFO隊(duì)列,將有信元入隊(duì)的PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,在讀出PVC標(biāo)識后,判斷該P(yáng)VC是否可以獲得服務(wù),如果可以,則將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去;否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將有信元入隊(duì)的PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列之前包括判斷所述PVC是否處于調(diào)度狀態(tài),如果是,則不作處理;否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列,并將該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后包括判斷本次發(fā)送之后該P(yáng)VC隊(duì)列是否為空,如果為空,則將該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,該方法進(jìn)一步包括設(shè)置快速調(diào)度FIFO隊(duì)列;所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后包括判斷本次發(fā)送之后該P(yáng)VC隊(duì)列是否為空,如果為空,則將該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入快速調(diào)度FIFO隊(duì)列;所述從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識之前包括判斷快速調(diào)度FIFO隊(duì)列是否為空,如果為空,則從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識;如果不為空,則從快速調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識。
6.根據(jù)權(quán)利要求2至5任一項(xiàng)所述的方法,其特征在于,所述將PVC標(biāo)識寫入重調(diào)度FIFO隊(duì)列之后包括從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,并寫入調(diào)度FIFO隊(duì)列。
7.根據(jù)權(quán)利要求2至5任一項(xiàng)所述的方法,其特征在于,所述將該P(yáng)VC中允許發(fā)送的信元個(gè)數(shù)發(fā)送出去之后進(jìn)一步包括將已發(fā)送的信元從所述PVC中刪除。
8.一種異步傳輸模式調(diào)度裝置,其特征在于,包括隊(duì)列管理模塊和調(diào)度模塊,其中,隊(duì)列管理模塊,用于在檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC標(biāo)識發(fā)送給調(diào)度模塊;調(diào)度模塊,用于從收到的PVC標(biāo)識所對應(yīng)的PVC中選擇PVC進(jìn)行調(diào)度。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述調(diào)度模塊包括調(diào)度FIFO隊(duì)列、重調(diào)度FIFO隊(duì)列、發(fā)送FIFO隊(duì)列、CAR模塊、PVC狀態(tài)表、入口調(diào)度模塊和出口調(diào)度模塊,其中,CAR模塊,用于監(jiān)管各條PVC的流量,并在收到出口調(diào)度模塊反饋的信息后,根據(jù)反饋信息對PVC的監(jiān)管信息進(jìn)行更新;PVC狀態(tài)表,用于保存各條PVC當(dāng)前是否處于調(diào)度狀態(tài)的信息;入口調(diào)度模塊,用于在收到來自隊(duì)列管理模塊的PVC標(biāo)識后,通過查詢PVC狀態(tài)表判斷該P(yáng)VC當(dāng)前是否處于調(diào)度狀態(tài),如果是,則不進(jìn)行任何處理,否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列緩存,并將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài);并且,在未收到來自隊(duì)列管理模塊的PVC標(biāo)識時(shí),從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;出口調(diào)度模塊,用于從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,通過查詢CAR以及發(fā)送FIFO隊(duì)列的狀態(tài),判斷該P(yáng)VC當(dāng)前是否可以獲得服務(wù),如果可以,則將該P(yáng)VC標(biāo)識以及允許調(diào)度的信元個(gè)數(shù)寫入發(fā)送FIFO隊(duì)列,并將該P(yáng)VC允許調(diào)度的信元個(gè)數(shù)信息反饋給隊(duì)列管理模塊和CAR模塊,否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列,等待重新調(diào)度;并且,判斷本次調(diào)度后該P(yáng)VC隊(duì)列是否為空,如果為空,則將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列;所述隊(duì)列管理模塊,在收到出口調(diào)度模塊反饋的信息后,刪除該P(yáng)VC中相應(yīng)個(gè)數(shù)的信元。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述調(diào)度模塊包括調(diào)度FIFO隊(duì)列、重調(diào)度FIFO隊(duì)列、快速調(diào)度FIFO隊(duì)列、公共調(diào)度FIFO隊(duì)列、發(fā)送FIFO隊(duì)列、CAR模塊、PVC狀態(tài)表、入口調(diào)度模塊、公共調(diào)度模塊和出口調(diào)度模塊,其中,CAR模塊,用于監(jiān)管各條PVC的流量,并在收到出口調(diào)度模塊反饋的信息后,根據(jù)反饋信息對PVC的監(jiān)管信息進(jìn)行更新;PVC狀態(tài)表,用于保存各條PVC當(dāng)前是否處于調(diào)度狀態(tài)的信息;入口調(diào)度模塊,用于在收到來自隊(duì)列管理模塊的PVC標(biāo)識后,通過查詢PVC狀態(tài)表判斷該P(yáng)VC當(dāng)前是否處于調(diào)度狀態(tài),如果是,則不進(jìn)行任何處理,否則,將該P(yáng)VC標(biāo)識寫入調(diào)度FIFO隊(duì)列緩存,并將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為調(diào)度狀態(tài);并且,在未收到來自隊(duì)列管理模塊的PVC標(biāo)識時(shí),從重調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識寫入調(diào)度FIFO隊(duì)列;公共調(diào)度模塊,用于在快速調(diào)度FIFO隊(duì)列不為空時(shí),從快速調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識到公共調(diào)度FIFO隊(duì)列;如果快速調(diào)度FIFO隊(duì)列為空,則從調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識到公共調(diào)度FIFO隊(duì)列;出口調(diào)度模塊,用于從公共調(diào)度FIFO隊(duì)列中讀取PVC標(biāo)識,通過查詢CAR以及發(fā)送FIFO隊(duì)列的狀態(tài),判斷該P(yáng)VC當(dāng)前是否可以獲得服務(wù),如果可以,則將該P(yáng)VC標(biāo)識以及允許調(diào)度的信元個(gè)數(shù)寫入發(fā)送FIFO隊(duì)列,并將該P(yáng)VC允許調(diào)度的信元個(gè)數(shù)信息反饋給隊(duì)列管理模塊和CAR模塊,否則,將該P(yáng)VC標(biāo)識寫入重調(diào)度FIFO隊(duì)列,等待重新調(diào)度;并且,判斷本次調(diào)度后該P(yáng)VC隊(duì)列是否為空,如果為空,則將PVC狀態(tài)表中該P(yáng)VC的狀態(tài)標(biāo)記為非調(diào)度狀態(tài);如果不為空,則將該P(yáng)VC標(biāo)識寫入快速調(diào)度FIFO隊(duì)列;所述隊(duì)列管理模塊,在收到出口調(diào)度模塊反饋的信息后,刪除該P(yáng)VC中相應(yīng)個(gè)數(shù)的信元。
全文摘要
本發(fā)明提供了一種異步傳輸模式調(diào)度方法及裝置。該方法包括檢測到有信元寫入PVC后,將有信元入隊(duì)的PVC作為待調(diào)度PVC;從所有待調(diào)度PVC中選擇PVC進(jìn)行調(diào)度。利用本發(fā)明所提供的技術(shù)方案,能夠提高ATM調(diào)度效率。
文檔編號H04Q11/00GK101060463SQ20071010002
公開日2007年10月24日 申請日期2007年6月4日 優(yōu)先權(quán)日2007年6月4日
發(fā)明者王彬, 劉強(qiáng), 林暉 申請人:杭州華三通信技術(shù)有限公司