專利名稱:一種報文傳輸方法及裝置的制作方法
技術領域:
本發(fā)明涉及數(shù)據(jù)通傳輸術領域,尤其涉及一種報文傳輸方法及裝置。
背景技術:
在報文的傳輸過程中,系統(tǒng)根據(jù)報文的重要程度,為報文設置不同的優(yōu)先級,當網(wǎng)絡系統(tǒng)擁塞時,大量的報文匯聚到一個網(wǎng)絡設備的出端口,此時在端口容量允許的情況下, 需要盡量保證優(yōu)先級高的報文優(yōu)先發(fā)送。另外,在網(wǎng)絡設備上每個端口一般有8個輸出隊列,每個隊列均有固定的優(yōu)先級, 用數(shù)字的方式表示,依次為7、6、5、4、3、2、1、0隊列,每個隊列的優(yōu)先級預先注冊在系統(tǒng)內(nèi)。 其中,序號最高的隊列7具有最高的優(yōu)先級,隊列的優(yōu)先級依據(jù)隊列的序列號依次減小,隊列0具有最低的優(yōu)先級。并且,優(yōu)先級高的報文放入優(yōu)先級高的隊列。在隊列調(diào)度時,嚴格按照優(yōu)先級從高至低的次序,優(yōu)先發(fā)送較高優(yōu)先級隊列中的報文,最高優(yōu)先級當然具有最高的發(fā)送權。即,首先發(fā)送優(yōu)先級最高的隊列7中的報文,當優(yōu)先級最高的隊列7為空時,再發(fā)送優(yōu)先級較低的隊列6中的報文,以此類推。因此,將關鍵業(yè)務的報文放入較高優(yōu)先級的隊列中,而將非關鍵業(yè)務的報文放入較低優(yōu)先級的隊列中, 可以保證關鍵業(yè)務的報文能及時發(fā)送,只有當網(wǎng)絡系統(tǒng)空閑,沒有高優(yōu)先級的報文發(fā)送時, 低優(yōu)先級的報文才能被發(fā)送。在網(wǎng)絡設備中,最基本的優(yōu)先級隊列調(diào)度方式是采用固定優(yōu)先級和時間片結合的方式進行。在第一個時間片中,系統(tǒng)根據(jù)待發(fā)送報文所在隊列的優(yōu)先級,選擇所在隊列優(yōu)先級最高的待發(fā)送報文進行發(fā)送,當該時間片結束時,即使該隊列中仍有報文,系統(tǒng)仍然需要回收該隊列的發(fā)送權,重新進行仲裁,當下一個時間片該隊列的優(yōu)先級仍然為最高時,才可以繼續(xù)發(fā)送該隊列的報文,否則,系統(tǒng)選擇優(yōu)先級更高的隊列中的報文進行發(fā)送。因為每個時間片的時間長度是一定的,并且端口的最大速率是由系統(tǒng)確定的,所以,每個時間片最多能夠發(fā)送的報文長度也是確定的。例如某系統(tǒng)的端口速率為mbps,時間片長度為10US,則每個時間片內(nèi)能夠發(fā)送的報文長度為l(ibps*10us = 1250bytes。當隊列中的待發(fā)送報文長度小于系統(tǒng)一個時間片內(nèi)支持的最大長度時,即使該隊列中的報文已經(jīng)發(fā)送完成,系統(tǒng)仍需要等待至這個時間片結束才能重新分配下一個時間片。目前,優(yōu)先級較高隊列中發(fā)送的報文一般為協(xié)議報文,由于協(xié)議報文通常不會連續(xù)發(fā)送,并且每個協(xié)議報文包含的字節(jié)數(shù)比較少,因此,當系統(tǒng)分配時間片用于協(xié)議報文進行發(fā)送時,可能僅有小部分時間在發(fā)送報文,而大部分時間都浪費掉了。在一種極端情況下,當協(xié)議報文的發(fā)送周期與時間片重合時,就會出現(xiàn)每個時間片只能發(fā)送一個協(xié)議報文, 同時,低優(yōu)先級隊列中的報文往往因為時間片一直被占用,而無法進行發(fā)送。因此,在現(xiàn)有技術中,采用固定優(yōu)先級和時間片結合的方式進行報文傳輸?shù)倪^程中,由于時間片分配不合理,會導致時間片利用率偏低,造成系統(tǒng)資源的極大浪費,也嚴重影響了網(wǎng)絡系統(tǒng)的性能。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種報文傳輸方法及裝置,用以解決現(xiàn)有技術中由于時間片分配不合理,而導致系統(tǒng)資源浪費的問題。本發(fā)明提供了一種報文傳輸方法,該方法包括以下步驟 根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;當確定發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸;否則,確定時間片空轉(zhuǎn)。本發(fā)明提供了一種報文傳輸裝置,所述裝置包括判斷模塊,用于根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;傳輸空轉(zhuǎn)模塊,用于當確定發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸;否則,確定時間片空轉(zhuǎn)。本發(fā)明提供了一種報文傳輸方法及裝置,在該方法中設置的報文發(fā)送長度閾值, 根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;確定是否將時間片分配給該發(fā)送隊列,進行報文傳輸;當確定所有發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)都小于設置的報文發(fā)送長度閾值時,確定時間片空轉(zhuǎn)。由于在本發(fā)明中通過對每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),設置報文發(fā)送長度閾值,只有當發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),大于設定的報文發(fā)送長度閾值時,才將時間片分配給該發(fā)送隊列,進行報文傳輸,因此,提高了時間片的利用率,從而有效的減少了系統(tǒng)資源的浪費。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中圖1為本發(fā)明提供的一種報文傳輸?shù)倪^程示意圖;圖2為本發(fā)明提供的一種報文傳輸過程的詳細示意圖;圖3為本發(fā)明提供的另一種報文傳輸?shù)脑敿氝^程示意圖;圖4為本發(fā)明提供的一種報文發(fā)送裝置的結構示意圖。
具體實施例方式為了使本發(fā)明所要解決的技術問題、技術方案及有益效果更加清楚、明白,以下結合附圖和實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明為了提高時間片的利用率,減少系統(tǒng)資源的浪費,提供了一種報文傳輸方法及裝置,由于在本發(fā)明中通過對每個發(fā)送隊列設置報文發(fā)送長度閾值,只有當發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),大于設定的報文發(fā)送長度閾值時,才將時間片分配給該發(fā)送
5隊列,進行報文傳輸,因此,提高了時間片的利用率,從而有效的減少了系統(tǒng)資源的浪費。圖1為本發(fā)明提高的一種報文傳輸?shù)倪^程示意圖,該傳輸過程包括以下幾個步驟SlOl 根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值,當判定結果為是時, 進行步驟S102,否則,進行步驟S103。其中,報文發(fā)送長度閾值可以為任意值,是根據(jù)端口的最大速率及時間片的時間長度確定的。具體的,系統(tǒng)根據(jù)端口的最大速率及時間片的時間長度,設置發(fā)送隊列的報文發(fā)送長度閾值,由于每個時間片的時間長度是一定的,端口的最大速率由系統(tǒng)的配置確定,因此,每個時間片的時間長度內(nèi),端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù),為端口的最大速率與時間片的時間長度乘積而確定的固定值。S102 將時間片分配給該發(fā)送隊列,進行報文傳輸。具體的,在本發(fā)明中系統(tǒng)將當前的一個時間片分配給查找到的發(fā)送隊列,其中,該查找到的發(fā)送隊列為,包含的待發(fā)送報文的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值的隊列中,且優(yōu)先級最高的發(fā)送隊列。S103 確定時間片空轉(zhuǎn)。其中,當系統(tǒng)在端口中未查找到,包含待發(fā)送報文的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值的發(fā)送隊列時,系統(tǒng)將當前的時間片空轉(zhuǎn),并開始下一個時間片的分配過程。在本發(fā)明中通過對每個發(fā)送隊列設置報文發(fā)送長度閾值,只有當發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),大于設定的報文發(fā)送長度閾值時,才將時間片分配給該發(fā)送隊列,進行報文傳輸,因此,提高了時間片的利用率,從而有效的減少了系統(tǒng)資源的浪費。而當每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)都不大于設置的報文長度閾值時,該時間片可以空轉(zhuǎn),或者,為了保證優(yōu)先級較高的發(fā)送隊列中報文的發(fā)送,該時間片可以發(fā)送優(yōu)先級最高的發(fā)送隊列中包含的待發(fā)送報文,或者也可以在所有的發(fā)送隊列中查找包含的字節(jié)數(shù)最多的發(fā)送隊列,發(fā)送該發(fā)送隊列中的待發(fā)送報文,再或者可以任意選擇一個發(fā)送隊列,發(fā)送該發(fā)送隊列包含的待發(fā)送報文。另外,在本發(fā)明中為了在提高時間片利用率的同時,保證優(yōu)先級高的報文優(yōu)先進行傳輸,根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值,包括查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列;針對該發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù);判斷該待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;當確定該待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸,否則,查找較該優(yōu)先級最高的發(fā)送隊列優(yōu)先級低的發(fā)送隊列,直至將時間片分配給該發(fā)送隊列,進行報文傳輸。即在本發(fā)明中,按照發(fā)送隊列的優(yōu)先級從高到底的順序,依次查找每個發(fā)送隊列, 并確定該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),當按照次序查找到某一發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設定的報文發(fā)送長度閾值時,則可以認為該發(fā)送隊列為所有
6發(fā)送隊列中,包含的待發(fā)送報文的字節(jié)數(shù)大于設定的報文發(fā)送長度閾值,且優(yōu)先級最高的發(fā)送隊列,此時將該時間片分配給發(fā)送隊列,發(fā)送該發(fā)送隊列中包含的待發(fā)送報文。圖2為本發(fā)明提供的一種報文傳輸過程的詳細示意圖,該傳輸過程包括以下幾個步驟S201 根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列。具體的,當系統(tǒng)的時間片機制開始運轉(zhuǎn),進行時間片的分配時,系統(tǒng)根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列。S202:針對該優(yōu)先級最高的發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的
字節(jié)數(shù)。S203:判斷該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值,當判定結果為是時,進行步驟S204,否則,進行步驟S205。S204 將時間片分配給該發(fā)送隊列,進行報文傳輸。S205 判斷該發(fā)送隊列是否為該端口的優(yōu)先級最低的發(fā)送隊列,當判斷結果為是時,進行步驟S206,否則,進行步驟S207。S206 確定該時間片空轉(zhuǎn)。S207:在該發(fā)送隊列中除該優(yōu)先級最高的發(fā)送隊列之外的發(fā)送隊列中,查找優(yōu)先級最高的發(fā)送隊列,將該發(fā)送隊列作為當前優(yōu)先級最高的隊列,進行步驟S202。在本發(fā)明中確定時間片空轉(zhuǎn)包括確定當前發(fā)送隊列中優(yōu)先級最低的發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),小于設置的報文發(fā)送長度閾值時,當前時間片空轉(zhuǎn)。另外,在本發(fā)明中為了便于查找到包含的待發(fā)送報文包含的字節(jié)數(shù),大于設置的報文發(fā)送長度閾值的發(fā)送隊列,針對端口中的每個發(fā)送隊列,在確定該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)之前,還包括確定該發(fā)送隊列包含待發(fā)送報文。這是因為有的發(fā)送隊列中可能不包含待發(fā)送報文,如果該發(fā)送隊列中不包含待發(fā)送報文,則該發(fā)送隊列中包含的字節(jié)數(shù)為零,一定小于設置的報文發(fā)送長度閾值,因此, 在本發(fā)明中為了提高報文發(fā)送的效率,在針對每個發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)之前,先判斷該待發(fā)送隊列中是否包含待發(fā)送報文,當該發(fā)送隊列中包含待發(fā)送報文時,再確定該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),當該待發(fā)送隊列中不包含待發(fā)送報文時,則確定該發(fā)送隊列包含的字節(jié)數(shù)小于設定的報文發(fā)送長度閾值,直接進行下一優(yōu)先級的發(fā)送隊列的判斷。圖3為本發(fā)明提供的另一種報文傳輸?shù)脑敿氝^程示意圖,該傳輸過程包括以下幾個步驟S301 系統(tǒng)的時間片機制開始運轉(zhuǎn),對當前的時間片進行分配。S302:根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列,將該優(yōu)先級最高的發(fā)送隊列作為當前發(fā)送隊列。S303:判斷當前發(fā)送隊列中是否包含待發(fā)送報文,當判定結果為是時,進行步驟 S304,否則,進行步驟S307。S304:針對該當前發(fā)送隊列,確定該當前發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)。
S305:判斷該當前發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值,當判定結果為是時,進行步驟S306,否則,進行步驟S307。S306 將時間片分配給該發(fā)送隊列,進行報文傳輸。S307 判斷該當前發(fā)送隊列是否為該端口的優(yōu)先級最低的發(fā)送隊列,當判斷結果為是時,進行步驟S308,否則,進行步驟S309。S308 確定該時間片空轉(zhuǎn),并立刻開始下一個時間片的分配。S309:在該發(fā)送隊列中除優(yōu)先級較該當前發(fā)送隊列高的發(fā)送隊列,及該當前發(fā)送隊列之外的發(fā)送隊列中,查找優(yōu)先級最高的發(fā)送隊列,將該優(yōu)先級最高的發(fā)送隊列作為當前發(fā)送隊列,進行步驟S303。具體的,當查找至端口中優(yōu)先級最低的發(fā)送隊列時,確定該優(yōu)先級最低的發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),小于設置的報文發(fā)送長度閾值時,當前時間片分配結束,并立刻開始下一個時間片的分配。另外,在本發(fā)明中為了在提高時間片利用率的同時,進一步保證優(yōu)先級高的報文優(yōu)先進行傳輸,系統(tǒng)可以統(tǒng)一設置端口中每個發(fā)送隊列的報文發(fā)送長度閾值,也可以根據(jù)端口中每種優(yōu)先級的發(fā)送隊列,分別設置該發(fā)送隊列對應的報文發(fā)送長度閾值。在本發(fā)明中當高優(yōu)先級的報文包含的字節(jié)數(shù)較少時,為了保證低優(yōu)先級流量較大的報文能夠進行傳輸,系統(tǒng)為端口中的發(fā)送隊列統(tǒng)一設置報文發(fā)送長度閾值,例如,統(tǒng)一設置成端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù)。這樣,當端口中優(yōu)先級高的發(fā)送隊列中包含的報文較少時,由于該優(yōu)先級高的發(fā)送隊列中包含的報文字節(jié)數(shù)未達到設定的報文發(fā)送長度閾值,因此,系統(tǒng)將當前的時間片分配給優(yōu)先級較低的,包含的報文字節(jié)數(shù)大于設定的報文發(fā)送長度閾值的發(fā)送隊列,進行報文的傳輸?;蛘撸瑸榱颂岣邥r間片利用率的同時,保證高優(yōu)先級報文能及時的進行傳輸,系統(tǒng)根據(jù)端口中發(fā)送隊列的優(yōu)先級分別設定報文發(fā)送長度閾值,例如,設置優(yōu)先級較高的發(fā)送隊列的報文發(fā)送長度閾值為端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù)的60%,設置優(yōu)先級較低的發(fā)送隊列的報文發(fā)送長度閾值為端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù)。這樣,當端口中優(yōu)先級高的發(fā)送隊列中包含的報文較少時,將時間片分配給優(yōu)先級較低的,包含的報文字節(jié)數(shù)大于端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù)的發(fā)送隊列,進行報文的傳輸,而當優(yōu)先級高的隊列中積累的待發(fā)送報文包含的字節(jié)數(shù),大于端口能夠傳輸?shù)淖畲髨笪淖止?jié)數(shù)的60%時,將時間片分配給該優(yōu)先級高的發(fā)送隊列,進行報文傳輸。圖4為本發(fā)明提供的一種報文發(fā)送裝置的結構示意圖,該裝置包括判斷模塊41,用于根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;傳輸空轉(zhuǎn)模塊42,用于當確定發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸;否則,確定時間片空轉(zhuǎn)。所述傳輸空轉(zhuǎn)模塊42,具體用于查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列;針對該發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù);判斷該待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;當確定該待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸,否則,查找較該優(yōu)先級最高的發(fā)送隊列優(yōu)先級低的發(fā)送隊列,直至將時間片分配給該發(fā)送隊列,進行報文傳輸。所述判斷模塊41,還用于確定該發(fā)送隊列是否包含待發(fā)送報文。所述傳輸空轉(zhuǎn)模塊42,具體用于確定當前發(fā)送隊列中優(yōu)先級最低的發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),小于設置的報文發(fā)送長度閾值時,時間片空轉(zhuǎn)。所述裝置還包括設置模塊43,用于根據(jù)端口的最大速率及時間片的時間長度,設置報文發(fā)送長度閾值,其中,報文發(fā)送長度閾值為不大于端口最大速率與時間片的時間長度乘積的任意值。本發(fā)明提供了一種報文傳輸方法及裝置,在該方法中設置的報文發(fā)送長度閾值, 根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;確定是否將時間片分配給該發(fā)送隊列,進行報文傳輸;當確定所有發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)都小于設置的報文發(fā)送長度閾值時,確定時間片空轉(zhuǎn)。由于在本發(fā)明中通過對每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),設置報文發(fā)送長度閾值,只有當發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),大于設定的報文發(fā)送長度閾值時,才將時間片分配給該發(fā)送隊列,進行報文傳輸,因此,提高了時間片的利用率,從而有效的減少了系統(tǒng)資源的浪費。上述說明示出并描述了本發(fā)明的一個優(yōu)選實施例,但如前所述,應當理解本發(fā)明并非局限于本文所披露的形式,不應看作是對其他實施例的排除,而可用于各種其他組合、 修改和環(huán)境,并能夠在本文所述發(fā)明構想范圍內(nèi),通過上述教導或相關領域的技術或知識進行改動。而本領域人員所進行的改動和變化不脫離本發(fā)明的精神和范圍,則都應在本發(fā)明所附權利要求的保護范圍內(nèi)。
9
權利要求
1.一種報文傳輸方法,其特征在于,所述方法包括根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;當確定發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時, 將時間片分配給該發(fā)送隊列,進行報文傳輸; 否則,確定時間片空轉(zhuǎn)。
2.如權利要求1所述的方法,其特征在于,所述將時間片分配給該發(fā)送隊列,進行報文傳輸,包括查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列; 針對該發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù); 判斷該待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值; 當確定該待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸,否則,查找較該優(yōu)先級最高的發(fā)送隊列優(yōu)先級低的發(fā)送隊列, 直至將時間片分配給該發(fā)送隊列,進行報文傳輸。
3.如權利要求2所述的方法,其特征在于,針對該發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)之前,所述方法還包括確定該發(fā)送隊列包含待發(fā)送報文。
4.如權利要求1所述的方法,其特征在于,所述確定時間片空轉(zhuǎn),包括確定當前發(fā)送隊列中優(yōu)先級最低的發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),小于設置的報文發(fā)送長度閾值時,當前時間片空轉(zhuǎn)。
5.如權利要求1或2所述的方法,其特征在于,所述設置的報文發(fā)送長度閾值,包括 根據(jù)端口的最大速率及時間片的時間長度,設置報文發(fā)送長度閾值,其中,報文發(fā)送長度閾值為不大于端口最大速率與時間片的時間長度乘積的任意值。
6.一種報文傳輸裝置,其特征在于,所述裝置包括判斷模塊,用于根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;傳輸空轉(zhuǎn)模塊,用于當確定發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸;否則,確定時間片空轉(zhuǎn)。
7.如權利要求6所述的裝置,其特征在于,所述傳輸空轉(zhuǎn)模塊,具體用于查找當前發(fā)送隊列中優(yōu)先級最高的發(fā)送隊列;針對該發(fā)送隊列,確定當前該發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù);判斷該待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;當確定該待發(fā)送報文包含的字節(jié)數(shù)大于設置的報文發(fā)送長度閾值時,將時間片分配給該發(fā)送隊列,進行報文傳輸,否則,查找較該優(yōu)先級最高的發(fā)送隊列優(yōu)先級低的發(fā)送隊列,直至將時間片分配給該發(fā)送隊列,進行報文傳輸。
8.如權利要求7所述的裝置,其特征在于,所述判斷模塊,還用于確定該發(fā)送隊列是否包含待發(fā)送報文。
9.如權利要求6所述的裝置,其特征在于,所述傳輸空轉(zhuǎn)模塊,具體用于確定當前發(fā)送隊列中優(yōu)先級最低的發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),小于設置的報文發(fā)送長度閾值時,時間片空轉(zhuǎn)。
10.如權利要求6所述的裝置,其特征在于,所述裝置還包括 設置模塊,用于根據(jù)端口的最大速率及時間片的時間長度,設置報文發(fā)送長度閾值,其中,報文發(fā)送長度閾值為不大于端口最大速率與時間片的時間長度乘積的任意值。
全文摘要
本發(fā)明公開了一種報文傳輸方法及裝置,在該方法中設置的報文發(fā)送長度閾值,根據(jù)端口中每個發(fā)送隊列的優(yōu)先級,按照優(yōu)先級依次判斷每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),是否大于設置的報文發(fā)送長度閾值;確定是否將時間片分配給該發(fā)送隊列,進行報文傳輸;當確定所有發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù)都小于設置的報文發(fā)送長度閾值時,確定時間片空轉(zhuǎn)。由于在本發(fā)明中通過對每個發(fā)送隊列中包含的待發(fā)送報文包含的字節(jié)數(shù),設置報文發(fā)送長度閾值,只有當發(fā)送隊列中待發(fā)送報文包含的字節(jié)數(shù),大于設定的報文發(fā)送長度閾值時,才將時間片分配給該發(fā)送隊列,進行報文傳輸,因此,提高了時間片的利用率,從而有效的減少了系統(tǒng)資源的浪費。
文檔編號H04L12/56GK102223306SQ20111016440
公開日2011年10月19日 申請日期2011年6月17日 優(yōu)先權日2011年6月17日
發(fā)明者唐建娟, 陳曉 申請人:中興通訊股份有限公司