專利名稱:一種通道化流量的控制方法
技術領域:
本發(fā)明涉及網絡中的數據流量控制方法,尤其涉及對網絡的數據發(fā)送端和數據接收端的數據流量進行通道化流量控制的方法。
背景技術:
隨著網絡的快速發(fā)展,各種應用越來越多,服務質量也越來越受到重視。從高速鏈路向低速鏈路傳輸數據時,或者網絡中有瞬間的大量數據時,帶寬會在接收端口處出現擁塞,如果不做任何處理,接收端口的接收緩沖區(qū)將溢出,接收緩沖區(qū)溢出的情況下,端口將無法處理后續(xù)到來的流量,將導致數據丟失嚴重。而流量控制則用于防止在端口阻塞的情況下丟幀,這種方法是當發(fā)送或接收緩沖區(qū)開始溢出時通過將阻塞信號發(fā)送回源地址實現的。流量控制可以有效的防止由于網絡中瞬間的大量數據對網絡帶來的沖擊,保證用戶網絡高效而穩(wěn)定的運行。目前,在全雙工方式下(即網絡中的線路可同時收發(fā)數據的方式)的流量控制的實現方法中,一般遵循IEEE 802. 3X標準,由交換機向信息源發(fā)送暫停幀令其暫停發(fā)送數據。如圖1所示為這種暫停幀的格式,該暫停幀格式中包含有如下信息目的 Mac 地址=0x01-80-c2-00-00-01以太網類型=0x88-08操作代碼=0x00-01除以上信息外,暫停幀還攜帶一個暫停時間的參數,是兩個字節(jié)的無符號整型數,代表了要求對端設備暫停發(fā)送數據的時間。當暫停時間為0時,則意味著取消阻塞狀態(tài),對端設備立即發(fā)送下一數據流。圖2為現有技術中采用的流量控制的框圖,其數據流量的控制過程如下A.交換機1通過其發(fā)送端口持續(xù)不斷的以超出交換機2處理能力的速度向交換機2發(fā)送數據流。B.由于到達的數據流超出自身的處理能力,因此交換機2的接收端口的緩沖區(qū)被源源不斷的數據流塞滿。C.為了避免接收端口進入擁塞,交換機2在緩沖區(qū)達到上限之前,向交換機1的發(fā)送端口發(fā)送一個暫停幀,告訴交換機1暫停發(fā)送數據流。D.交換機1收到暫停幀后,解析出幀中的暫停時間信息,如果時間信息不為0,則在該時間內,暫停發(fā)送數據給交換機2.直至時間到期或者又再度收到暫停時間信息為0的暫停幀,才繼續(xù)發(fā)送數據給交換機2.現有技術中,由于接收端對于發(fā)送端發(fā)送的數據不進行區(qū)分,因此一旦發(fā)生擁塞,發(fā)送的暫停幀會使得發(fā)送端的端口直接停止發(fā)送全部數據。當發(fā)送端的端口的數據流是多條通道流量的匯聚,并且導致流量增大的原因只是其中一條通道的時候,如果采取現有技術,會阻止全部通道的流量,導致合理的流量也無法發(fā)送,從而整體上降低了網絡中數據流的收發(fā)速度。
發(fā)明內容
本發(fā)明的目的是提供基于通道的方式,對網絡中的數據流進行區(qū)分通道,當一個通道中的數據流超出了接收端的處理能力時,僅對該通道發(fā)出通道化的暫停幀,而不影響其余通道的正常數據流量,以更加合理的進行流量控制。為實現上述目的,本發(fā)明提出如下技術方案一種通道化流量的控制方法,數據發(fā)送端具有復數個流量通道,數據接收端對應每個流量通道分別設置對應的緩沖區(qū),當數據接收端的某一緩沖區(qū)的數據溢出之前,數據接收端向數據發(fā)送端發(fā)送包含有通道信息的通道化暫停幀,指示暫停所述某一緩沖區(qū)對應的通道暫停數據的發(fā)送。其中,所述通道化暫停幀的格式中包含有通道號信息的字段。所述通道化暫停幀中還包括數據暫停發(fā)送的暫停時間信息。所述暫停時間信息為非零時,數據發(fā)送端暫停發(fā)送數據,暫停時間信息為零時,數據發(fā)送端繼續(xù)發(fā)送數據。所述數據發(fā)送端和接收端的流量控制模式為通道化模式。所述數據發(fā)送端和接收端的流量控制模式還包括普通模式,所述通道化模式兼容所述普通模式的流量控制。本發(fā)明提出技術方案還包括一種通道化流量的控制方法,包括1)、數據發(fā)送端通過其發(fā)送端口將復數流通通道中的數據向數據接收端發(fā)送;2)、數據到達數據接收端端口后,分配給與數據發(fā)送端復數流量通道相對應的緩沖區(qū)進行處理;3)、當某一緩沖區(qū)的數據達到上限之前,數據接收端向數據發(fā)送端發(fā)送通道化暫停幀;4)、數據發(fā)送端根據通道化暫停幀中指定的通道號信息和暫停時間信息指示相應的通道暫停數據的發(fā)送;5)、暫停時間到期,所述通道繼續(xù)向數據接收端發(fā)送數據。其中,所述4)中暫停時間信息為非零時,數據發(fā)送端暫停發(fā)送數據,暫停時間信息為零時,數據發(fā)送端繼續(xù)發(fā)送數據。與現有技術相比,引入通道化的暫停幀后,可以依據每個通道各自的流量來決定是否阻塞該通道,并且通道的阻塞不會影響其余通道的流量。避免了現有技術中只能按照總流量來阻塞端口的局限性,更加優(yōu)化了網絡中流量的傳送,整體上提高了網絡中數據的傳送速度。
圖1為傳統(tǒng)的網絡流量控制方式中暫停幀格式的框圖;圖2為傳統(tǒng)的流量控制的框圖;圖3為本發(fā)明提出的通道化流量控制方式中通道化暫停幀格式的框圖;圖4為本發(fā)明通道化流量控制的框圖。
具體實施方式
下面將結合本發(fā)明的附圖,對本發(fā)明優(yōu)選實施例中的技術方案進行清楚、完整的描述。本發(fā)明所提出的通道化流量的控制方法,是通過在傳統(tǒng)的普通暫停幀格式中加入一個vlan頭,用vlan頭中的vid來標記通道的方式來實現通道化的流量控制。如圖3所示,通道化暫停幀格式中必須包含如下信息目的 Mac 地址=0x01-80-c2-00-00_01通道號和值為0x81-00的Vlan類型字段以太網類型=0x88-08操作代碼=0x00-01引入通道化的暫停幀后,通道化暫停幀接收設備和發(fā)送設備的流量控制行為方式除了兼容接收現有技術中普通模式的暫停幀外,還具有通道化的流量控制模式,即在通道化模式下,數據接收端和數據發(fā)送端通過通道化暫停幀中的vid值,來識別通道化的暫停幀,該通道化的暫停幀只對特定通道中的數據是否暫停發(fā)送有效。且通道化模式能夠兼容正常模式,即在通道化模式下,如果收到的是普通的暫停幀,則當作普通的數據幀處理。在通道化模式下暫停幀發(fā)送及接收的流量控制行為如下1)、暫停幀接收設備能夠識別通道化的暫停幀,并且按照接收到的通道化暫停幀中的暫停時間為每個通道維護一個暫停時間信息。根據該暫停時間信息是否為0來決定是否阻塞該通道。2)、接收到普通的暫停幀時,按照普通的數據幀處理。3)、暫停幀發(fā)送設備對每個通道都維護一個緩沖區(qū),某個通道的緩沖區(qū)溢出之前,發(fā)送通道化暫停幀給接收設備,幀中的vid設置為要阻塞的通道號。圖4是基于通道化的流量控制的框圖,圖中交換機3和交換機4分別為通道化暫停幀的接收設備及發(fā)送設備,PCl PC8分別通過通道1 通道8連接交換機1的端口 1 端口 8,各PC的流量經過交換機3的端口 1 端口 8后,流量匯總至端口 9,然后通過交換機3端口 9將匯總后的流量發(fā)送給交換機4的端口 0。交換機4中的緩沖區(qū)中,對應PCl PC8的通道1 通道8,對應設置有緩沖區(qū)1 緩沖區(qū)8,當通道1的流量突增時,交換機4中的緩沖區(qū)1會溢出,此時交換機4的端口 0發(fā)送通道化暫停幀給交換機3的端口 9,暫停幀中的vid設為1,表示需要暫停的是通道1的流量。端口 9接收到該通道化暫停幀后,根據暫停幀中指示的通道號,將該數據幀發(fā)送給端口 1,端口 1接收到該暫停幀后,剝離通道化暫停幀中的tag信息,恢復成普通的暫停幀發(fā)送給PC1,PCl收到暫停幀后會按照暫停幀中指示的暫停時間信息暫停發(fā)送數據。而其余PC的流量不會受到任何的影響,從而實現基于通道的流量控制。本發(fā)明的技術內容及技術特征已揭示如上,然而熟悉本領域的技術人員仍可能基于本發(fā)明的教示及揭示而作種種不背離本發(fā)明精神的替換及修飾,因此,本發(fā)明保護范圍應不限于實施例所揭示的內容,而應包括各種不背離本發(fā)明的替換及修飾,并為本專利申請權利要求所涵蓋。
權利要求
1.一種通道化流量的控制方法,其特征在于數據發(fā)送端具有復數個流量通道,數據接收端對應每個流量通道分別設置對應的緩沖區(qū),當數據接收端的某一緩沖區(qū)的數據溢出之前,數據接收端向數據發(fā)送端發(fā)送包含有通道信息的通道化暫停幀,指示暫停所述某一緩沖區(qū)對應的通道暫停數據的發(fā)送。
2.根據權利要求1所述的通道化流量的控制方法,其特征在于所述通道化暫停幀的格式中包含有通道號信息的字段。
3.根據權利要求1所述的通道化流量的控制方法,其特征在于所述通道化暫停幀中還包括數據暫停發(fā)送的暫停時間信息。
4.根據權利要求3所述的通道化流量的控制方法,其特征在于所述暫停時間信息為非零時,數據發(fā)送端暫停發(fā)送數據,暫停時間信息為零時,數據發(fā)送端繼續(xù)發(fā)送數據。
5.根據權利要求1至4任意一項所述的通道化流量的控制方法,其特征在于所述數據發(fā)送端和接收端的流量控制模式為通道化模式。
6.根據權利要求5所述的通道化流量的控制方法,其特征在于所述數據發(fā)送端和接收端的流量控制模式還包括普通模式,所述通道化模式兼容所述普通模式的流量控制。
7.一種通道化流量的控制方法,其特征在于包括1)、數據發(fā)送端通過其發(fā)送端口將復數個流量通道中的數據向數據接收端發(fā)送;2)、數據到達數據接收端端口后,分配給與數據發(fā)送端復數流量通道相對應的緩沖區(qū)進行處理;3)、當某一緩沖區(qū)的數據達到上限之前,數據接收端向數據發(fā)送端發(fā)送通道化暫停幀;4)、數據發(fā)送端根據通道化暫停幀中指定的通道號信息和暫停時間信息指示相應的通道暫停數據的發(fā)送;5)、暫停時間到期,所述通道繼續(xù)向數據接收端發(fā)送數據。
8.根據權利要求7所述的通道化流量的控制方法,其特征在于所述4)中暫停時間信息為非零時,數據發(fā)送端暫停發(fā)送數據,暫停時間信息為零時,數據發(fā)送端繼續(xù)發(fā)送數據。
全文摘要
本發(fā)明揭示了一種通道化的流量控制方法,通過對網絡中的數據流進行區(qū)分通道,當一個通道中的數據流超出了接收端對應的緩沖區(qū)的處理能力時,由數據接收端僅對該通道發(fā)出通道化的暫停幀,指示暫停該指定通道的數據發(fā)送,而不影響其余通道的正常數據流量,以更加合理的進行流量控制,從整體上提高網絡中數據的傳送速度。
文檔編號H04L12/56GK102387085SQ201110402650
公開日2012年3月21日 申請日期2011年12月7日 優(yōu)先權日2011年12月7日
發(fā)明者沈宏剛, 許俊 申請人:盛科網絡(蘇州)有限公司