亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種流量控制的方法、系統(tǒng)及交換機(jī)和路由器的制作方法

文檔序號:7743893閱讀:255來源:國知局
專利名稱:一種流量控制的方法、系統(tǒng)及交換機(jī)和路由器的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于流量控制技術(shù)領(lǐng)域,尤其涉及一種流量控制的方法、系統(tǒng)及交換機(jī)和 路由器。
背景技術(shù)
在現(xiàn)有技術(shù)中,典型的流量控制實現(xiàn)方案是在交換機(jī)中防止緩沖區(qū)溢出。這種 流量控制策略為在緩沖區(qū)達(dá)到預(yù)先定義的“高水位標(biāo)記”(high water mark)時,發(fā)送一 個帶有非零pause-time值的PAUSE幀,使交換機(jī)能夠防止由于緩沖區(qū)不足而在輸入端丟棄 幀。當(dāng)鏈路伙伴收到了 PAUSE幀并阻塞時,交換機(jī)可以從這個輸入隊列中上載幀,并把它們 轉(zhuǎn)發(fā)到交換機(jī)的其他端口。當(dāng)緩沖區(qū)中的幀少于預(yù)定義的“低水位標(biāo)記”(low water mark) 時,可通過發(fā)送帶有0值pause-time的PAUSE幀取消流量控制,并恢復(fù)正常操作。這樣交 換機(jī)可以不丟棄任何幀并達(dá)到最大吞吐量。然而,上述現(xiàn)有的流量控制技術(shù)無法解決HOLB (線端阻塞)問題,HOLB會嚴(yán)重影響 交換機(jī)等網(wǎng)絡(luò)設(shè)備在單端口對多端口通信模型中的性能表現(xiàn)。如圖1所示,當(dāng)端口 1以各 50%的速率向端口 2和端口 3發(fā)送數(shù)據(jù)的同時端口 4向端口 3以100%的速率發(fā)包。此時 端口 1和端口 4的流量控制打開的話,則會導(dǎo)致端口 1向沒有發(fā)生擁塞的端口 2發(fā)送的速 率降低為33%。由于現(xiàn)有的流量控制技術(shù)為了保證端口 1發(fā)往端口 3的數(shù)據(jù)包不丟失,對 端口 1接收的數(shù)據(jù)的鏈路進(jìn)行了流控。雖然整個系統(tǒng)并沒有產(chǎn)生丟包,但是發(fā)往端口 2的 17%的帶寬被浪費了。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種流量控制的方法,旨在解決現(xiàn)有技術(shù)中存在的流量控 制無法解決線端阻塞的問題。本發(fā)明是這樣實現(xiàn)的,一種流量控制的方法,所述方法包括以下步驟當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū)中的數(shù)據(jù)幀數(shù)量是否達(dá)到 或者超過了預(yù)設(shè)的高水位線;如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線,則檢查所述數(shù)據(jù)幀的目的 地址;當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則不進(jìn)行流量控 制。本發(fā)明的另一目的在于提供一種流量控制的系統(tǒng),所述系統(tǒng)包括高水位線判斷模塊,用于當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū) 中的數(shù)據(jù)幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;目的地址檢查模塊,用于如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線, 則檢查所述數(shù)據(jù)幀的目的地址;控制模塊,用于當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則
4不進(jìn)行流量控制。本發(fā)明的另一目的在于提供一種包括上面所述的流量控制的系統(tǒng)的交換機(jī)。本發(fā)明的另一目的在于提供一種包括上面所述的流量控制的系統(tǒng)的路由器。在本發(fā)明中,通過對緩沖區(qū)中的數(shù)據(jù)幀的目的地址進(jìn)行判斷,如果數(shù)據(jù)幀的目的 地址包括廣播和/或多播地址時,則不進(jìn)行流量控制。本發(fā)明實施例可以避免端口開啟流 量控制后的線端阻塞問題。


圖1是現(xiàn)有技術(shù)提供的數(shù)據(jù)包發(fā)送速率的分配示意圖。圖2是本發(fā)明實施例提供的流量控制的方法的實現(xiàn)流程示意圖。圖3是本發(fā)明實施例提供的流量控制的系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實施 例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā) 明,并不用于限定本發(fā)明。請參閱圖2,為本發(fā)明實施例提供的流量控制的方法的實現(xiàn)流程,其包括以下步 驟在步驟SlOl中,當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū)中的數(shù)據(jù) 幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;在步驟S102中,如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線,則檢查所 述數(shù)據(jù)幀的目的地址;在步驟S103中,當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則 不進(jìn)行流量控制。在本發(fā)明實施例中,所述當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地 址時,則不進(jìn)行流量控制的步驟,具體為當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則接收端口不向鏈 路上發(fā)送包括時間參數(shù)非0的pause幀。在本發(fā)明實施例中,所述流量控制的方法還包括以下步驟在步驟S201中,當(dāng)檢查出所述數(shù)據(jù)幀的目的地址不包括廣播和/或多播地址時, 則判斷所述數(shù)據(jù)幀的目的地址是否全部為同一個單播地址;在步驟S202中,如果判斷出所述數(shù)據(jù)幀的目的地址是全部為同一個單播地址,則 接收端口向鏈路上發(fā)送包括時間參數(shù)非0的pause幀。作為本發(fā)明一優(yōu)選實施例,所述流量控制的方法還包括以下步驟在步驟S301中,如果判斷出所述數(shù)據(jù)幀的目的地址不是全部為同一個單播地址, 則判斷發(fā)往不同端口的端口數(shù)量是否大于預(yù)設(shè)的數(shù)量;在步驟S302中,如果判斷出發(fā)往不同端口的端口數(shù)量大于預(yù)設(shè)的數(shù)量時,則接收 端口不向鏈路上發(fā)送包括時間參數(shù)非0的pause幀;在步驟S303中,如果判斷出發(fā)往不同端口的端口數(shù)量小于等于預(yù)設(shè)的數(shù)量時,則接收端口向鏈路上發(fā)送包括時間參數(shù)非0的pause幀。請參閱圖3,為本發(fā)明實施例提供的流量控制的系統(tǒng)的結(jié)構(gòu),為了便于說明,僅示 出了與本發(fā)明實施例相關(guān)的部分。所述流量控制的系統(tǒng)包括高水位線判斷模塊102、目的 地址檢查模塊104、以及控制模塊106。所述流量控制的系統(tǒng)可以是內(nèi)置于交換機(jī)或者是路 由器中的軟件單元、硬件單元或者是軟硬件結(jié)合的單元。當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,高水位線判斷模塊102判斷所述緩沖區(qū)中 的數(shù)據(jù)幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了 預(yù)設(shè)的高水位線,則目的地址檢查模塊104檢查所述數(shù)據(jù)幀的目的地址;當(dāng)檢查出所述數(shù) 據(jù)幀的目的地址包括廣播和/或多播地址時,則控制模塊106不進(jìn)行流量控制。在本發(fā)明實施例中,所述流量控制的系統(tǒng)還包括單播地址判斷模塊,以及第一發(fā) 送控制模塊。當(dāng)檢查出所述數(shù)據(jù)幀的目的地址不包括廣播和/或多播地址時,則單播地址判斷 模塊判斷所述數(shù)據(jù)幀的目的地址是否全部為同一個單播地址;如果判斷出所述數(shù)據(jù)幀的目 的地址是全部為同一個單播地址,則第一發(fā)送控制模塊控制接收端口向鏈路上發(fā)送包括時 間參數(shù)非0的pause幀。作為本發(fā)明一優(yōu)選實施例,所述流量控制的系統(tǒng)還包括端口數(shù)量判斷模塊、以及 第二發(fā)送控制模塊。如果判斷出所述數(shù)據(jù)幀的目的地址不是全部為同一個單播地址,則所述端口數(shù)量 判斷模塊判斷發(fā)往不同端口的端口數(shù)量是否大于預(yù)設(shè)的數(shù)量;如果判斷出發(fā)往不同端口的 端口數(shù)量大于預(yù)設(shè)的數(shù)量時,則第二發(fā)送控制模塊控制接收端口不向鏈路上發(fā)送包括時間 參數(shù)非0的pause幀;如果判斷出發(fā)往不同端口的端口數(shù)量小于等于預(yù)設(shè)的數(shù)量時,則第二 發(fā)送控制模塊控制接收端口向鏈路上發(fā)送包括時間參數(shù)非0的pause幀。綜上所述,本發(fā)明實施例通過對緩沖區(qū)中的數(shù)據(jù)幀的目的地址進(jìn)行判斷,如果數(shù) 據(jù)幀的目的地址包括廣播和/或多播地址時,則不進(jìn)行流量控制。本發(fā)明實施例可以避免 端口開啟流量控制后的線端阻塞問題。進(jìn)一步的,本發(fā)明實施例當(dāng)接收端口的數(shù)據(jù)幀是轉(zhuǎn)發(fā)到多個端口時,如果這些端 口中有部分端口產(chǎn)生擁塞,則應(yīng)當(dāng)轉(zhuǎn)發(fā)到這些端口的數(shù)據(jù)幀會被緩存在接收端口的緩沖區(qū) 域當(dāng)中,這樣如果采用本方案則可以不啟用流量控制,保證其他發(fā)往非擁塞端口的數(shù)據(jù)幀 可以正常轉(zhuǎn)發(fā)。本發(fā)明實施例提供的流量控制的方法,對于混合速率網(wǎng)絡(luò)設(shè)備的級聯(lián)端口來講有 比較大的實用意義。例如,交換機(jī)的級聯(lián)端口為千兆,普通接入端口為百兆,從千兆級聯(lián)端 口向百兆接入端口的通信理論上來講都將會產(chǎn)生擁塞,采用本發(fā)明實施例提到的流量控制 的方法能夠更好的適應(yīng)這種情況的應(yīng)用。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以 通過程序來指令相關(guān)的硬件來完成,所述的程序可以在存儲于一計算機(jī)可讀取存儲介質(zhì) 中,所述的存儲介質(zhì),如ROM/RAM、磁盤、光盤等。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種流量控制的方法,其特征在于,所述方法包括以下步驟當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū)中的數(shù)據(jù)幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線,則檢查所述數(shù)據(jù)幀的目的地址;當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則不進(jìn)行流量控制。
2.如權(quán)利要求1所述的方法,其特征在于,所述當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括 廣播和/或多播地址時,則不進(jìn)行流量控制的步驟,具體為當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則接收端口不向鏈路上 發(fā)送包括時間參數(shù)非0的pause暫停幀。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述流量控制的方法還包括以下步驟 當(dāng)檢查出所述數(shù)據(jù)幀的目的地址不包括廣播和/或多播地址時,則判斷所述數(shù)據(jù)幀的目的地址是否全部為同一個單播地址;如果判斷出所述數(shù)據(jù)幀的目的地址是全部為同一個單播地址,則接收端口向鏈路上發(fā) 送包括時間參數(shù)非0的pause幀。
4.如權(quán)利要求3所述的方法,其特征在于,所述流量控制的方法還包括以下步驟 如果判斷出所述數(shù)據(jù)幀的目的地址不是全部為同一個單播地址,則判斷發(fā)往不同端口的端口數(shù)量是否大于預(yù)設(shè)的數(shù)量;如果判斷出發(fā)往不同端口的端口數(shù)量大于預(yù)設(shè)的數(shù)量時,則接收端口不向鏈路上發(fā)送 包括時間參數(shù)非0的pause幀;如果判斷出發(fā)往不同端口的端口數(shù)量小于等于預(yù)設(shè)的數(shù)量時,則接收端口向鏈路上發(fā) 送包括時間參數(shù)非0的pause幀。
5.一種流量控制的系統(tǒng),其特征在于,所述系統(tǒng)包括高水位線判斷模塊,用于當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū)中的 數(shù)據(jù)幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;目的地址檢查模塊,用于如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線,則檢 查所述數(shù)據(jù)幀的目的地址;控制模塊,用于當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則不進(jìn) 行流量控制。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括 廣播和/或多播地址時,則不進(jìn)行流量控制的步驟,具體為當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則接收端口不向鏈路上 發(fā)送包括時間參數(shù)非0的pause幀。
7.如權(quán)利要求5或6所述的系統(tǒng),其特征在于,所述流量控制的系統(tǒng)還包括單播地址 判斷模塊,以及第一發(fā)送控制模塊;單播地址判斷模塊,用于當(dāng)檢查出所述數(shù)據(jù)幀的目的地址不包括廣播和/或多播地址 時,則判斷所述數(shù)據(jù)幀的目的地址是否全部為同一個單播地址;第一發(fā)送控制模塊,用于如果判斷出所述數(shù)據(jù)幀的目的地址是全部為同一個單播地 址,則控制接收端口向鏈路上發(fā)送包括時間參數(shù)非0的pause幀。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述流量控制的系統(tǒng)還包括端口數(shù)量判斷 模塊、以及第二發(fā)送控制模塊;所述端口數(shù)量判斷模塊,用于如果判斷出所述數(shù)據(jù)幀的目的地址不是全部為同一個單 播地址,則判斷發(fā)往不同端口的端口數(shù)量是否大于預(yù)設(shè)的數(shù)量;第二發(fā)送控制模塊,用于如果判斷出發(fā)往不同端口的端口數(shù)量大于預(yù)設(shè)的數(shù)量時,則 控制接收端口不向鏈路上發(fā)送包括時間參數(shù)非0的pause幀;如果判斷出發(fā)往不同端口 的端口數(shù)量小于等于預(yù)設(shè)的數(shù)量時,則控制接收端口向鏈路上發(fā)送包括時間參數(shù)非0的 pause中貞。
9.一種包括權(quán)利要求5至8任一項所述的流量控制的系統(tǒng)的交換機(jī)。
10.一種包括權(quán)利要求5至8任一項所述的流量控制的系統(tǒng)的路由器。
全文摘要
本發(fā)明適用于流量控制技術(shù)領(lǐng)域,提供了一種流量控制的方法、系統(tǒng)及交換機(jī)。所述方法包括以下步驟當(dāng)數(shù)據(jù)幀存儲在接收端口的緩沖區(qū)時,判斷所述緩沖區(qū)中的數(shù)據(jù)幀數(shù)量是否達(dá)到或者超過了預(yù)設(shè)的高水位線;如果所述數(shù)據(jù)幀數(shù)量達(dá)到或者超過了預(yù)設(shè)的高水位線,則檢查所述數(shù)據(jù)幀的目的地址;當(dāng)檢查出所述數(shù)據(jù)幀的目的地址包括廣播和/或多播地址時,則不進(jìn)行流量控制。本發(fā)明可以避免端口開啟流量控制后的線端阻塞問題。
文檔編號H04L12/18GK101945037SQ20101012653
公開日2011年1月12日 申請日期2010年3月16日 優(yōu)先權(quán)日2010年3月16日
發(fā)明者關(guān)宇 申請人:深圳市普聯(lián)技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1