專利名稱:一種基于令牌環的網絡流量控制方法、節點及系統的制作方法
技術領域:
本發明實施例涉及網絡通信技術領域,尤其涉及一種基于令牌環的網絡流量控制方法、節點及系統。
背景技術:
Totem單環有序協議提供了一種廣播域內全局有序向上層服務遞交消息的機制, 從而保證消息傳遞的可靠性和有序性。支持令牌單環有序協議的網絡,例如令牌環網中,由令牌控制各節點對令牌環網的訪問。令牌在令牌環網的各個節點中有序傳遞,只有持有令牌的節點能夠在令牌環網中廣播消息,每個節點接收令牌傳遞周期內其他節點發送的所有消息,并將接收到的消息存放在接收緩沖隊列中。如果不對節點廣播消息的數量進行限制, 令牌環網中處理速度較慢的節點可能來不及處理接收緩沖隊列中的消息而導致接收緩沖隊列溢出。為了避免這種情況發生,需要對網絡中的流量進行控制。現有的流量控制方式如下在一個令牌傳遞周期內規定所有節點可發送消息的總數量N;規定每個節點拿到令牌后,可發送的最大消息數量M ;針對待發送消息較多的節點,可以考慮為其分配更多的發送份額,則還規定節點按比例可發送消息數量K= [(cbl/backlog)XN],其中,cbl表示獲得令牌的節點待發送消息數量、backlog表示所有節點待發送消息數量之和,[]表示取整。當令牌的傳遞順序改變時,一個令牌傳遞周期結束。相應的,每個節點最終可以發送的消息數量X = min(M, K,N_fcc),其中,fee表示在當前令牌傳遞周期內所有已發送消息節點已經發送的消息數量之和。發明人在實現本發明的過程中,發現現有技術中至少存在如下問題當網絡擁塞情況嚴重時,可能會出現消息大量丟失的情況。按照令牌單環有序協議對消息可靠性的要求,節點會請求消息重傳。現有的網絡流量控制方式,沒有考慮到網絡擁塞情況,會導致重傳消息越來越多,增加網絡負擔。且重傳消息的遞增會導致令牌中的重傳列表溢出,消息的大量丟失又會導致接收緩沖隊列中的消息得不到有序提交,進而導致接收緩沖隊列溢出,降低集群的可用性。
發明內容
本發明的實施例提供了一種基于令牌環的網絡流量控制方法、節點及系統,從而解決網絡擁塞情況下的流量控制問題。本發明的目的是通過以下技術方案實現的本發明一個實施例提供一種基于令牌環的網絡流量控制方法,包括獲得令牌的節點獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;所述獲得令牌的節點將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;
所述獲得令牌的節點根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明一個實施例提供一種令牌環節點,包括擁塞信息接收模塊,用于獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;擁塞情況控制模塊,用于將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明一個實施例提供一種基于令牌環的網絡流量控制系統,包括至少三個節點構成環網,各個節點之間按照預定的順序傳遞令牌;獲得令牌的節點用于,獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。由上述本發明的實施例提供的技術方案可以看出,本發明實施例中,由于在令牌中增加了當前令牌傳遞周期內節點請求重傳消息數量之和,來反映網絡擁塞情況,使得獲得令牌的節點能夠在網絡擁塞較為嚴重的情況下,減少消息發送的數量,從而緩解網絡擁塞,減少網絡負擔。避免了由于網絡擁塞嚴重導致重傳列表溢出以及接收緩沖隊列溢出,提高了集群的可用性。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本發明實施例提供的方法流程圖;圖2為本發明實施例提供的令牌環網示意圖;圖3為本發明實施例提供的令牌環節點結構示意圖;圖4為本發明實施例提供的系統結構示意圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。本發明實施例提供一種基于令牌環的網絡流量控制方法,如圖1所示,具體包括如下操作S101、獲得令牌的節點獲取令牌中攜帶的網絡擁塞情況信息;上述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和,用來反映網絡擁塞情況。S102、上述獲得令牌的節點將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;擁塞閾值可以根據網絡擁塞測試確定。S103、上述獲得令牌的節點根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明實施例提供的方法,由于在令牌中增加了當前令牌傳遞周期內節點請求重傳消息數量之和,來反映網絡擁塞情況,使得獲得令牌的節點能夠在網絡擁塞較為嚴重的情況下,減少消息發送的數量,從而緩解網絡擁塞,減少網絡負擔。避免了由于網絡擁塞嚴重導致重傳列表溢出以及接收緩沖隊列溢出,提高了集群的可用性。其中,上述S103的具體實現方式可以是如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,則上述獲得令牌的節點按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則上述獲得令牌的節點按照確定的第二可發送消息數量發送消息。上述S103的具體實現方式還可以是如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于或等于擁塞閾值, 則上述獲得令牌的節點按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于擁塞閾值,則上述獲得令牌的節點按照確定的第二可發送消息數量發送消息。上述第一可發送消息數量為min (M,K,N-fcc)。上述第二可發送消息數量由上述網絡擁塞情況信息和上述第一可發送消息數量確定,且上述第二可發送消息數量小于上述第一可發送消息數量。本發明實施例中,還有根據網絡擁塞情況確定的擁塞出現次數。其具體實現方式可以包括如下兩種(一)令牌環網中的每個節點中均設置有擁塞出現次數,該擁塞出現次數是指,當前令牌傳遞周期內,連續出現的節點請求重傳消息數量之和大于或等于(或大于)擁塞閾值的次數,擁塞出現次數的初始值為0;(二)所述的網絡擁塞情況信息中還可以包括擁塞出現次數。相應的,上述的第二可發送消息數量=[所述第一可發送消息數量χ α/2Ι Μδ)],或者,上述的第二可發送消息數量=[所述第一可發送消息數量Χ(1/2 ^)+1],。根據該公式可知,第二可發送消息數量隨著擁塞出現次數的增加,呈幾何級遞減,從而有效控制了網絡擁塞時,網絡中的消息流量。應當指出的是,上述給出的是一種優選的第二可發送消息數量確定方法,還可以有其他確定第二可發送消息數量的方法,只要滿足第二可發送消息數量隨著網絡擁塞情況惡化而減少即可。本發明實施例中,還包括對令牌中攜帶的網絡擁塞情況信息的更新過程,具體如下(一 )所述獲得令牌的節點根據本地接收緩沖隊列,確定本地請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和;其中,當前令牌傳遞周期內節點請求重傳消息數量之和=令牌中取出的請求重傳消息數量之和+獲得令牌的節點當前請求重傳消息數量_獲得令牌的節點上一次請求重傳消息數量。( 二)根據上述判斷結果,如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則所述獲得令牌的節點將所述擁塞出現次數重置為0 ;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則所述獲得令牌的節點將所述擁塞出現次數加1。下面將對本發明實施例在實際應用過程中的具體實現方式進行詳細的說明。一個應用實施例在圖2所示的網絡中,令牌按照節點1- >節點2- >節點3- >節點4- >節點1的順序在環網中傳遞。其中,令牌中至少攜帶如下字段seq和rtt_COunt,Seq表示全局唯一消息編碼,rtr_count表示當前令牌傳遞周期內節點請求重傳消息數量之和,rtr_count的初始值為0。每個節點中設置有擁塞閾值H,還設置有擁塞出現次數C,C的初始值為0。本發明實施例中,假設各個節點的擁塞閾值H相同。應用本發明實施例提供的方法進行網絡流量控制的實現方式包括如下操作S201、節點1將令牌傳遞給節點2,令牌中的seq = 100,rtr_count為初始值0 ;S202、節點2獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與H進行比較,由于rtr_count值< H,因此節點2確定可發送消息數量X2 = min(M2, K2, N-fcc), 其中,M2表示節點2可發送的最大消息數量,K2表示節點2按比例可發送消息數量;S203、節點2發送消息#101 #110,并將令牌中的seq值修改為110,節點2修改seq值依據的公式為seq = seq+10 ;節點2發送的消息數量沒有超過確定的可發送消息數量X2 ;S204、節點2確定本地請求重傳消息數量為2,將rtr_Count值修改為2,其中,節點2確定本地請求重傳消息數量為2的具體實現方式為由于seq= 100, 則節點2的接收緩沖隊列中應該保存有消息#1 #100,根據有序性要求,節點2查看本地接收緩沖隊列,發現沒有收到消息#81和#82,則確定本地請求重傳消息數量為2 ;S205、節點2將令牌傳遞給節點3,令牌中的seq = 110,rtr_count = 2 ;S206、節點3獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與H進行比較,假設rtr_Coimt值< H,則節點3確定可發送消息數量X3 = min (M3, K3, N-fcc),其中,M3表示節點3可發送的最大消息數量,K3表示節點3按比例可發送消息數量;S207、節點3發送消息#111 #120,并將令牌中的seq值修改為120,節點3修改seq值依據的公式為seq = seq+10 ;節點3發送的消息數量沒有超過確定的可發送消息數量X3 ;S208、節點3確定本地請求重傳消息數量為1,將rtr_Count值修改為3,其中,節點3確定本地請求重傳消息數量為1的具體實現方式為由于seq= 110, 則節點3的接收緩沖隊列中應該保存有消息#1 #110,根據有序性要求,節點3查看本地接收緩沖隊列,發現沒有收到消息#85,則確定本地請求重傳消息數量為1 ;S209、節點3將令牌傳遞給節點4,令牌中的seq =120,rtr_count = 3 ;S210、節點4獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與 H進行比較,假設rtr_COimt值> H,則節點4確定可發送消息數量X4 = [min (M4, K4,N-fcc) X (1/2C)],并將C值加1,其中,M4表示節點4可發送的最大消息數量,K4表示節點4 按比例可發送消息數量;S211、節點4發送消息#121 #130,并將令牌中的seq值修改為130,節點4修改seq值依據的公式為seq = seq+10 ;節點4發送的消息數量沒有超過確定的可發送消息數量X3 ;S212、節點4確定本地請求重傳消息數量為3,將rtr_Count值修改為6,其中,節點4確定本地請求重傳消息數量為3的具體實現方式為由于seq= 120, 則節點4的接收緩沖隊列中應該保存有消息#1 #120,根據有序性要求,節點4查看本地接收緩沖隊列,發現沒有收到消息#91、#92和#93,則確定本地請求重傳消息數量為3 ;S213、節點4將令牌傳遞給節點1,令牌中的seq =130,rtr_count = 6。上述處理過程僅以令牌傳遞周期內,節點1- >節點2- >節點3- >節點4- >節點1的令牌傳遞片段為例,對本發明實施例提供的方法進行說明。且,假設各個節點上一次請求重傳的消息數量為0。另一個應用實施例在圖2所示的網絡中,令牌按照節點1- >節點2- >節點3- >節點4- >節點1 的順序在環網中傳遞。其中,令牌中至少攜帶如下字段seq、rtr_count和cong_count,seq 表示全局唯一消息編碼,rtr_COimt表示當前令牌傳遞周期內節點請求重傳消息數量之和, rtr_count的初始值為0,cong_count表示擁塞出現次數,cong_count的初始值為0。每個節點中設置有擁塞閾值H。本發明實施例中,假設各個節點的擁塞閾值H相同。應用本發明實施例提供的方法進行網絡流量控制的實現方式包括如下操作S301、節點1將令牌傳遞給節點2,令牌中的seq = 100,rtr_count為初始值0 ;S302、節點2獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與H進行比較,由于rtr_count值< H,因此節點2確定可發送消息數量X2 = min(M2, K2, N-fcc), 其中,M2表示節點2可發送的最大消息數量,K2表示節點2按比例可發送消息數量;S303、節點2發送消息#101 #110,并將令牌中的seq值修改為110,節點2修改seq值依據的公式為seq = seq+10 ;節點2發送的消息數量沒有超過確定的可發送消息數量X2 ;S304、節點2確定本地請求重傳消息數量為2,將rtr_Count值修改為2,其中,節點2確定本地請求重傳消息數量為2的具體實現方式為由于seq= 100, 則節點2的接收緩沖隊列中應該保存有消息#1 #100,根據有序性要求,節點2查看本地接收緩沖隊列,發現沒有收到消息#81和#82,則確定本地請求重傳消息數量為2 ;S305、節點2將令牌傳遞給節點3,令牌中的seq = 110,rtr_count = 2 ;S306、節點3獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與H進行比較,假設rtr_Coimt值< H,則節點3確定可發送消息數量X3 = min (M3, K3, N-fcc),其中,M3表示節點3可發送的最大消息數量,K3表示節點3按比例可發送消息數量;S307、節點3發送消息#111 #120,并將令牌中的seq值修改為120,節點3修改seq值依據的公式為seq = seq+10 ;節點3發送的消息數量沒有超過確定的可發送消息數量X3 ;S308、節點3確定本地請求重傳消息數量為1,將rtr_Count值修改為3,
其中,節點3確定本地請求重傳消息數量為1的具體實現方式為由于seq= 110, 則節點3的接收緩沖隊列中應該保存有消息#1 #110,根據有序性要求,節點3查看本地接收緩沖隊列,發現沒有收到消息#85,則確定本地請求重傳消息數量為1 ;S309、節點3將令牌傳遞給節點4,令牌中的seq =120,rtr_count = 3 ;S310、節點4獲得令牌后,獲取令牌中的rtr_Count值,并將rtr_Count值與H進行比較,假設rtr_COimt值> H,則節點4確定可發送消息數量X4 = min(M4, K4, N-fcc) X (IArang-e°mt),并將C0ng_C0imt值加1,其中,M4表示節點4可發送的最大消息數量,K4表示節點4按比例可發送消息數量;S311、節點4發送消息#121 #130,并將令牌中的seq值修改為130,節點4修改seq值依據的公式為seq = seq+10 ;節點4發送的消息數量沒有超過確定的可發送消息數量X3 ;S312、節點4確定本地請求重傳消息數量為3,將rtr_Coimt值修改為6,其中,節點4確定本地請求重傳消息數量為3的具體實現方式為由于seq= 120, 則節點4的接收緩沖隊列中應該保存有消息#1 #120,根據有序性要求,節點4查看本地接收緩沖隊列,發現沒有收到消息#91、#92和#93,則確定本地請求重傳消息數量為3 ;S313、節點4將令牌傳遞給節點1,令牌中的seq =130,rtr_count = 6。上述處理過程僅以令牌傳遞周期內,節點1- >節點2- >節點3- >節點4- >節點1的令牌傳遞片段為例,對本發明實施例提供的方法進行說明。且,假設各個節點上一次請求重傳的消息數量為0。實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。本發明實施例還提供了一種令牌環節點,其結構如圖3所示,具體實現結構包括擁塞信息接收模塊3001,用于獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和,用來反映網絡擁塞情況;擁塞情況控制模塊3002,用于將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明實施例提供的令牌環節點,由于在令牌中增加了當前令牌傳遞周期內節點請求重傳消息數量之和,來反映網絡擁塞情況,使得獲得令牌的節點能夠在網絡擁塞較為嚴重的情況下,減少消息發送的數量,從而緩解網絡擁塞,減少網絡負擔。避免了由于網絡擁塞嚴重導致重傳列表溢出以及接收緩沖隊列溢出,提高了集群的可用性。上述擁塞情況控制模塊3002具體用于,如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,按照確定的第二可發送消息數量發送消息,所述第二可發送消息數量由所述網絡擁塞情況信息和所述第一可發送消息數量確定,且所述第二可發送消息數量小于所述第一可發送消息數量。或者,上述擁塞情況控制模塊3002具體用于,如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于或等于擁塞閾值,則上述獲得令牌的節點按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于擁塞閾值,則上述獲得令牌的節點按照確定的第二可發送消息數量發送消息。本發明實施例提供的令牌環節點還可以包括擁塞信息更新模塊3003,用于根據接收緩沖隊列,確定請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和。本發明實施例中,還有根據網絡擁塞情況確定的擁塞出現次數。其具體實現方式可以包括如下兩種(一)令牌環網中的每個節點中均設置有擁塞出現次數,該擁塞出現次數是指,當前令牌傳遞周期內,連續出現的節點請求重傳消息數量之和大于或等于(或大于)擁塞閾值的次數,擁塞出現次數的初始值為0 ; (二)所述網絡擁塞情況信息還可以包括擁塞出現次數,或者,所述獲得令牌的節點中設置有擁塞出現次數。相應的,所述擁塞信息更新模塊3003還用于如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則將所述擁塞出現次數重置為0 ;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則將所述擁塞出現次數加 1。本發明實施例還提供一種基于令牌環的網絡流量控制系統,其結構如圖4所示, 包括至少三個節點構成環網,各個節點之間按照預定的順序傳遞令牌;獲得令牌的節點用于,獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明實施例提供的系統,由于在令牌中增加了當前令牌傳遞周期內節點請求重傳消息數量之和,來反映網絡擁塞情況,使得獲得令牌的節點能夠在網絡擁塞較為嚴重的情況下,減少消息發送的數量,從而緩解網絡擁塞,減少網絡負擔。避免了由于網絡擁塞嚴重導致重傳列表溢出以及接收緩沖隊列溢出,提高了集群的可用性。所述獲得令牌的節點具體用于,如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,按照確定的第二可發送消息數量發送消息,所述第二可發送消息數量由所述網絡擁塞情況信息和所述第一可發送消息數量確定,且所述第二可發送消息數量小于所述第一可發送消息數量。所述獲得令牌的節點還用于,根據本地接收緩沖隊列,確定本地請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和。所述網絡擁塞情況信息還包括擁塞出現次數,或者,所述獲得令牌的節點中設置有擁塞出現次數;所述獲得令牌的節點還用于如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則將所述擁塞出現次數重置為 0;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則將所述擁塞出現次數加1。 以上所述,僅為本發明較佳的具體實施方式
,但本發明的保護范圍并不局限于此, 任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換, 都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。
權利要求
1.一種基于令牌環的網絡流量控制方法,其特征在于,包括獲得令牌的節點獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括 當前令牌傳遞周期內節點請求重傳消息數量之和;所述獲得令牌的節點將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;所述獲得令牌的節點根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。
2.根據權利要求1所述的方法,其特征在于,所述獲得令牌的節點根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息包括如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,所述獲得令牌的節點按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,所述獲得令牌的節點按照確定的第二可發送消息數量發送消息,所述第二可發送消息數量由所述網絡擁塞情況信息和所述第一可發送消息數量確定,且所述第二可發送消息數量小于所述第一可發送消息數量。
3.根據權利要求2所述的方法,其特征在于,該方法還包括所述獲得令牌的節點根據本地接收緩沖隊列,確定本地請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和。
4.根據權利要求1 3所述的方法,其特征在于,所述網絡擁塞情況信息還包括擁塞出現次數;所述第二可發送消息數量=[所述第一可發送消息數量Χ(1/2Λ^)],或者,所述第二可發送消息數量=[所述第一可發送消息數量Χ(1/2 ^)+1]。
5.根據權利要求1 3任意一項所述的方法,其特征在于,所述獲得令牌的節點中設置有擁塞出現次數;所述第二可發送消息數量=所述第一可發送消息數量X (1/2 —·), 或者,所述第二可發送消息數量=[所述第一可發送消息數量Χ(1/2 ^)+1]。
6.根據權利要求4或5所述的方法,其特征在于,該方法還包括如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則所述獲得令牌的節點將所述擁塞出現次數重置為0 ;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則所述獲得令牌的節點將所述擁塞出現次數加1。
7.一種令牌環節點,其特征在于,包括擁塞信息接收模塊,用于獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;擁塞情況控制模塊,用于將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消肩、ο
8.根據權利要求7所述的令牌環節點,其特征在于,所述擁塞情況控制模塊具體用于, 如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,按照確定的第二可發送消息數量發送消息,所述第二可發送消息數量由所述網絡擁塞情況信息和所述第一可發送消息數量確定,且所述第二可發送消息數量小于所述第一可發送消息數量。
9.根據權利要求8所述的令牌環節點,其特征在于,所述令牌環節點還包括擁塞信息更新模塊,用于根據接收緩沖隊列,確定請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和。
10.根據權利要求7 9任意一項所述的令牌環節點,其特征在于,所述網絡擁塞情況信息還包括擁塞出現次數,或者,所述獲得令牌的節點中設置有擁塞出現次數;所述擁塞信息更新模塊還用于如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則將所述擁塞出現次數重置為0 ;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則將所述擁塞出現次數加1。
11.一種基于令牌環的網絡流量控制系統,其特征在于,包括至少三個節點構成環網,各個節點之間按照預定的順序傳遞令牌;獲得令牌的節點用于,獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。
12.根據權利要求11所述的系統,其特征在于,所述獲得令牌的節點具體用于,如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,按照確定的第一可發送消息數量發送消息;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,按照確定的第二可發送消息數量發送消息,所述第二可發送消息數量由所述網絡擁塞情況信息和所述第一可發送消息數量確定,且所述第二可發送消息數量小于所述第一可發送消息數量。
13.根據權利要求12所述的系統,其特征在于,所述獲得令牌的節點還用于,根據本地接收緩沖隊列,確定本地請求重傳消息數量,并根據所述請求重傳消息數量更新所述當前令牌傳遞周期內節點請求重傳消息數量之和。
14.根據權利要求11 13所述的系統,其特征在于,所述網絡擁塞情況信息還包括 擁塞出現次數,或者,所述獲得令牌的節點中設置有擁塞出現次數;所述獲得令牌的節點還用于如果所述當前令牌傳遞周期內節點請求重傳消息數量之和小于擁塞閾值,且所述擁塞出現次數不為0,則將所述擁塞出現次數重置為0 ;如果所述當前令牌傳遞周期內節點請求重傳消息數量之和大于或等于擁塞閾值,則將所述擁塞出現次數加1。
全文摘要
一種基于令牌環的網絡流量控制方法,包括獲得令牌的節點獲取令牌中攜帶的網絡擁塞情況信息,所述網絡擁塞情況信息包括當前令牌傳遞周期內節點請求重傳消息數量之和;所述獲得令牌的節點將所述當前令牌傳遞周期內節點請求重傳消息數量之和與擁塞閾值進行比較;所述獲得令牌的節點根據比較結果,確定可發送消息數量,并按照所述可發送消息數量發送消息。本發明實施例還提供了一種令牌環節點和基于令牌環的網絡流量控制系統。由于在令牌中增加了當前令牌傳遞周期內節點請求重傳消息數量之和,來反映網絡擁塞情況,使得節點能夠在網絡擁塞較為嚴重時,減少消息發送的數量,從而減少網絡負擔,提高了集群的可用性。
文檔編號H04L1/18GK102291309SQ20111024817
公開日2011年12月21日 申請日期2011年8月26日 優先權日2011年8月26日
發明者江瀅 申請人:華為技術有限公司