一種基于鏈路匯聚控制協(xié)議的快速聚合方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種基于鏈路匯聚控制協(xié)議(LinkAggregat1n Control Protocol, LACP)的快速聚合方法及系統(tǒng)。
【背景技術(shù)】
[0002]LACP是一種鏈路聚合協(xié)議,協(xié)議號(hào)是IEEE 802.3ad,它可以讓多個(gè)物理端口聚合成一個(gè)邏輯端口,提供鏈路備份,增強(qiáng)鏈路帶寬。物理端口的選擇狀態(tài)屬性可以是:未選中(UNSELECTED)狀態(tài)、已選中(SELECTED)狀態(tài)或備用(STANDBY)狀態(tài)。端口的聚合狀態(tài)屬性可以是??分離(DETACHED)狀態(tài)、等待(WAITING)狀態(tài)和聚合(ATTACHED)狀態(tài)。
[0003]LACP聚合狀態(tài)機(jī)(mux machine)采用延遲(delay)機(jī)制,使端口進(jìn)入WAITING狀態(tài),等待一段時(shí)間后才進(jìn)入ATTACHED狀態(tài)。一般等待時(shí)間默認(rèn)2秒,因此聚合需延遲了 2秒時(shí)間。在端口聚合過(guò)程中,當(dāng)一個(gè)端口的選擇狀態(tài)變成SELECTED狀態(tài)或STANDBY狀態(tài)后,其聚合狀態(tài)進(jìn)入WAITING狀態(tài),等待其它端口也進(jìn)入WAITING狀態(tài)。在等待的時(shí)間內(nèi),可確定各端口當(dāng)前的選擇狀態(tài)屬性。當(dāng)2秒超時(shí)后,根據(jù)當(dāng)前各端口的選擇狀態(tài)屬性即可確定下一步的聚合狀態(tài)屬性。此時(shí)可將所有SELECTED的端口一起進(jìn)入到聚合狀態(tài),置聚合狀態(tài)屬性為ATTACHED ;選擇狀態(tài)仍然為UNSELECTED或STANDBY的端口,需要重新等待根據(jù)選擇狀態(tài)的變化再?zèng)Q定是否聚合。
[0004]綜上所述,現(xiàn)有的聚合方法存在延遲時(shí)間長(zhǎng)的問(wèn)題,在設(shè)備重啟、配置變更等情況下網(wǎng)絡(luò)恢復(fù)速度慢。
【發(fā)明內(nèi)容】
[0005]針對(duì)現(xiàn)有的聚合方法存在的上述問(wèn)題,現(xiàn)提供一種旨在實(shí)現(xiàn)可讓端口進(jìn)行快速聚合,延遲時(shí)間短的基于鏈路匯聚控制協(xié)議的快速聚合方法及系統(tǒng)。
[0006]具體技術(shù)方案如下:
[0007]—種基于鏈路匯聚控制協(xié)議的快速聚合方法,包括下述步驟:
[0008]S1.選擇已使能鏈路匯聚控制協(xié)議的復(fù)數(shù)個(gè)端口 ;
[0009]S2.令延遲次數(shù)K=I;
[0010]S3.延遲一預(yù)設(shè)時(shí)間后獲取已選擇的所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性;
[0011 ] S4.判斷所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性是否符合一預(yù)設(shè)條件,若否,執(zhí)行步驟S6,若是,則執(zhí)行步驟S5 ;
[0012]S5.判斷所述延遲次數(shù)K是否等于一預(yù)設(shè)閾值,若否則令K = K+1并返回步驟S3,若是則執(zhí)行步驟S6 ;
[0013]S6.將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的所述端口進(jìn)行聚合。
[0014]優(yōu)選的,所述預(yù)設(shè)條件為所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性中有第二狀態(tài)。
[0015]優(yōu)選的,所述預(yù)設(shè)閾值為20,和/或
[0016]預(yù)設(shè)時(shí)間為0.1秒。
[0017]優(yōu)選的,在所述步驟S6中,當(dāng)所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性為所述第一狀態(tài)或第三狀態(tài)時(shí),將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的所述端口進(jìn)行聚合。
[0018]優(yōu)選的,所述第一狀態(tài)為已選中狀態(tài),和/或所述第二狀態(tài)為未選中狀態(tài),和/或所述第三狀態(tài)為備用狀態(tài)。
[0019]—種基于鏈路匯聚控制協(xié)議的快速聚合系統(tǒng),包括:
[0020]一選擇單元,用以選擇已使能鏈路匯聚控制協(xié)議的復(fù)數(shù)個(gè)端口 ;
[0021]—獲取單元,連接所述選擇單元,用以延遲一預(yù)設(shè)時(shí)間后獲取已選擇的所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性;
[0022]—計(jì)數(shù)單元,連接所述獲取單元,用以對(duì)延遲次數(shù)K進(jìn)行計(jì)數(shù);
[0023]—第一判斷單元,連接所述獲取單元,所述第一判斷單元提供一預(yù)設(shè)條件,所述第一判斷單元用以判斷所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性是否符合所述預(yù)設(shè)條件;
[0024]—第二判斷單元,分別連接所述第一判斷單元、所述計(jì)數(shù)單元和所述獲取單元,用以判斷所述延遲次數(shù)K是否等于一預(yù)設(shè)閾值;
[0025]—處理單元,分別連接所述第一判斷單元和所述第二判斷單元,用以將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的所述端口進(jìn)行聚合。
[0026]優(yōu)選的,所述預(yù)設(shè)條件為所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性中有第二狀態(tài)。
[0027]優(yōu)選的,所述預(yù)設(shè)閾值為20,和/或
[0028]所述預(yù)設(shè)時(shí)間為0.1秒。
[0029]優(yōu)選的,當(dāng)所述復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性為所述第一狀態(tài)或第三狀態(tài)時(shí),所述處理單元將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的所述端口進(jìn)行聚合。
[0030]優(yōu)選的,所述第一狀態(tài)為已選中狀態(tài),和/或所述第二狀態(tài)為未選中狀態(tài),和/或所述第三狀態(tài)為備用狀態(tài)。
[0031]上述技術(shù)方案的有益效果:
[0032]本技術(shù)方案中,基于鏈路匯聚控制協(xié)議的快速聚合方法可降低端口的延遲時(shí)間,以提高端口的聚合速度??稍谠O(shè)備重啟、配置變更等情況下提高網(wǎng)絡(luò)恢復(fù)速度。基于鏈路匯聚控制協(xié)議的快速聚合系統(tǒng)根據(jù)端口當(dāng)前的選擇狀態(tài)屬性及滿足的預(yù)設(shè)條件進(jìn)行相應(yīng)的處理,以實(shí)現(xiàn)對(duì)端口快速聚合的目的。
【附圖說(shuō)明】
[0033]圖1為本發(fā)明所述的基于鏈路匯聚控制協(xié)議的快速聚合方法的一種方式的流程圖;
[0034]圖2為本發(fā)明中基于鏈路匯聚控制協(xié)議的進(jìn)行快速聚合的原理圖;
[0035]圖3為端口聚合的原理圖;
[0036]圖4為本發(fā)明所述的基于鏈路匯聚控制協(xié)議的快速聚合系統(tǒng)的一種實(shí)施例的模塊圖。
【具體實(shí)施方式】
[0037]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0038]需要說(shuō)明的是,在不沖突的情況下,本發(fā)明中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0039]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,但不作為本發(fā)明的限定。
[0040]如圖1所示,一種基于鏈路匯聚控制協(xié)議的快速聚合方法,包括下述步驟:
[0041]S1.選擇已使能鏈路匯聚控制協(xié)議的復(fù)數(shù)個(gè)端口 ;
[0042]S2.令延遲次數(shù)K=I;
[0043]S3.延遲一預(yù)設(shè)時(shí)間后獲取已選擇的復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性;
[0044]S4.判斷復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性是否符合一預(yù)設(shè)條件,若否,執(zhí)行步驟S6,若是,則執(zhí)行步驟S5 ;
[0045]S5.判斷延遲次數(shù)K是否等于一預(yù)設(shè)閾值,若否則令K = K+1并返回步驟S3,若是則執(zhí)行步驟S6 ;
[0046]S6.將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的端口進(jìn)行聚合。
[0047]進(jìn)一步地,第一狀態(tài)為SELECTED狀態(tài)。
[0048]在本實(shí)施例中,基于鏈路匯聚控制協(xié)議的快速聚合方法可降低端口的延遲時(shí)間,以提高端口的聚合速度??稍谠O(shè)備重啟、配置變更等情況下提高網(wǎng)絡(luò)恢復(fù)速度。
[0049]在優(yōu)選的實(shí)施例中,預(yù)設(shè)條件為復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性中有第二狀態(tài)。
[0050]進(jìn)一步地,第二狀態(tài)為UNSELECTED狀態(tài)。
[0051]在本實(shí)施例中,當(dāng)復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性中有UNSELECTED狀態(tài)時(shí),判斷當(dāng)前延遲次數(shù)是否等于預(yù)設(shè)閾值,當(dāng)?shù)扔跁r(shí),將當(dāng)前選擇狀態(tài)屬性為SELECTED的端口進(jìn)行聚合;當(dāng)不等于時(shí),可將當(dāng)前的延遲次數(shù)加一,在下一個(gè)0.1秒內(nèi)重新獲取已選擇的復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性。
[0052]于一種優(yōu)選的實(shí)施方式中,預(yù)設(shè)閾值為20。
[0053]于一種優(yōu)選的實(shí)施方式中,預(yù)設(shè)時(shí)間為0.1秒。
[0054]在優(yōu)選的實(shí)施例中,在步驟S6中,當(dāng)復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)或第三狀態(tài)時(shí),將當(dāng)前選擇狀態(tài)屬性為第一狀態(tài)的端口進(jìn)行聚合。
[0055]進(jìn)一步地,,第三狀態(tài)為STANDBY狀態(tài)。
[0056]在本實(shí)施例中,若在第一次延遲時(shí)間0.1秒時(shí),復(fù)數(shù)個(gè)端口的當(dāng)前選擇狀態(tài)屬性為SELECTED或STANDBY時(shí),即可對(duì)SE