專利名稱::一種數據流統計配置實現方法及其裝置的制作方法
技術領域:
:本發明涉及數據通信領域,特別是涉及一種數據流統計配置實現方法及其裝置。
背景技術:
:QoS(QualityofService)即服務質量,是一個綜合指標,用于衡量使用一個服務的滿意程度。QoS主要業務有隊列調度、流量監管、優先級標記、數據流統計等。其中數據流統計業務為QoS業務中最重要和最基本的要求。數據流統計業務最大可支持的條目數根據芯片的不同而不盡相同,有的最大可以支持1K條,有的則可以支持4K條。軟件實現過程中,盡可能滿足芯片的最大需求,最大支持多少條就最大可以配置多少條。進行數據流統計的端口可能為百兆口、千兆口或者萬兆口,端口吞吐量非常大,如果單單使用32位芯片寄存器進行存儲,幾秒鐘內,芯片寄存器的值就會發生反轉,因此必須設置定時器,定時讀取芯片寄存器中的統計數據并進行芯片寄存器清零。如圖1所示,是對百兆口、千兆口和萬兆口線速發包,芯片寄存器滿所用時間如表1,該表示出了32位芯片寄存器反轉所用的時間。表墨i<table>tableseeoriginaldocumentpage4</column></row><table>在極限情況下,對萬兆口進行統計,只能統計不到7秒時間,超過7秒,芯片寄存器就會發生反轉,統計從頭開始,以前的統計數據丟失。為了避免這種情況,需要啟用一個定時器,定時對芯片寄存器讀數據,每次讀完數據,芯片寄存器就清零,重新開始計數。定時器讀到數據后保存,供使用者進行操作使用。目前已經實現的方案中,大都在配置命令過程中啟用定時器,這種方法已經在大部分交換機或者路由器中使用。數據通信系統分配給QoS等相關業務總共有十幾個定時器,在配置命令時,每配置一個數據流統計,系統就要提供一個定時器供其使用,由于受定時器最大數目的限制,即使配置了過多的數據流統計業務,在芯片中也是不生效的,這種數據流統計配置方法不能滿足業務需求,如果在芯片能夠支持2K條數據流統計的情況下,十幾個如此業務簡直微不足道。定時器在命令的配置過程中進行啟用,如圖1所示,定時器平行排列,彼此之間互不影響,每個定時器為自己的數據流統計業務服務,數據流統計業務被刪除,相應定時器被取消,釋放定時器資源。這樣做的好處是定時器易于維護,操作起來方便,但是由于受定時器分配數目的限制,數據流統計業務嚴重不滿足目前業務的需求。這種方案普遍在交換機中使用,它的弊端在商用過程中凸現,嚴重影響了業務的擴展。
發明內容本發明所要解決的技術問題在于提供一種數據流統計配置實現方法及其裝置,用于解決現有技術受定時器分配數目的限制而導致數據流統計業務無法滿足業務需要的問題。為了實現上述目的,本發明提供了一種數據流統計配置實現方法,用于網絡交換機或路由器的數據流統計配置,其特征在于,該方法包括步驟一,設置一個定時器管理多個寄存器,且所述所有寄存器中的統計數據在所述定時器一次時間到時被取值或清空;步驟二,下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用所述定時器;及步驟三,啟用所述定時器,根據所述定時器設定的讀取時間間隔讀取所述寄存器中的統計數據并保存,以供后續顯示流程調用。所述的數據流統計配置實現方法,其中,所述寄存器為一32位寄存器。所述的數據流統計配置實現方法,其中,所述步驟三中,所述讀取時間間隔為15秒。所述的數據流統計配置實現方法,其中,所述步驟三中,以一64位全局變量保存所述統計數據。所述的數據流統計配置實現方法,其中,所述步驟三中,還包括由一命令顯示函數通過調用所述64位全局變量進行顯示的步驟。所述的數據流統計配置實現方法,其中,所述步驟三中,當所有所述數據流統計業務被取消時,所述定時器也被取消。為了實現上述目的,本發明還提供了一種數據流統計配置實現裝置,用于網絡交換機或路由器的數據流統計配置,該裝置包括一個用于管理多個寄存器的定時器,且所述所有寄存器中的統計數據在所述定時器一次時間到時被取值或清空,其特征在于,還包括一啟用確定模塊,連接所述定時器,用于下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用所述定時器;及一統計配置模塊,連接所述定時器、所述寄存器及所述啟用確定模塊,用于當所述定時器處于啟用狀態時,根據所述定時器設定的讀取時間間隔讀取所述寄存器中的統計數據并保存,以供后續顯示流程調用。所述的數據流統計配置實現裝置,其中,所述寄存器為一32位寄存器。所述的數據流統計配置實現裝置,其中,所述讀取時間間隔為15秒。所述的數據流統計配置實現裝置,其中,還包括一后續顯示模塊,用于通過調用所述統計配置模塊保存的數據進行數據顯示。本發明通過設置一個定時器就完成了所有的數據流業務統計,節省了資源,同時數據流統計業務不再受定時器分配數目的限制,可以達到芯片支持的極限。以下結合附圖和具體實施例對本發明進行詳細描述,但不作為對本發明的限定。圖1為現有的定時器的啟用方式建立示意圖;圖2為本發明定時器的啟用方式建立示意圖;圖3為本發明數據流統計配置實現方法流程圖;圖4為本發明數據流統計配置實現裝置示意圖。具體實施方式請參閱圖2所示,為本發明定時器的啟用方式建立示意圖,圖3為本發明數據流統計工作流程圖。為了解決上述圖1所示數據流統計條目的限制,使數據流統計配置盡可能達到芯片的極限,建立圖2所示的啟用方式。啟用定時器的目的是進行數據流統計管理,定時器不再根據數據流統計配置一個啟用一個,而是當配置命令下發時,首先檢查是否啟用了數據流統計業務,如果啟用,則啟用定時器,并且所有的數據流統計業務提供統一的接口供定時器調用,所有的數據流統計業務由一個定時器來管理。定時器一次時間到,所有寄存器中的統計數據能夠被取值或清空。啟用定時器的功能單一,定時器只負責定時觸發相應的數據流統計業務,因此,啟用一個定時器就可管理所有的數據流統計業務。當定時器時間到,由相應的統計函數提取相應芯片寄存器中的統計數據,并將其保存到統一的全局變量中,提供給命令顯示函數調用。當所有的數據流統計業務取消時,定時器也被取消。請參閱圖3所示,為本發明數據流統計配置實現方法流程圖,該流程具體包括如下步驟步驟301,啟用數據流統計業務;步驟302,啟用定時器,并定時觸發相關數據流統計業務;步驟303,讀取/提取寄存器lN統計數據,并保存;及步驟304,將數據同步到主控或者平臺供調試顯示使用。芯片使用32位寄存器進行計數,在短時間內32位寄存器就會發生反轉而使統計結果失效。為避免這種現象,定時器每隔15秒鐘(使用結果表明,15秒鐘可以滿足需求,根據特殊情況可進行特殊調整。定時器設置時間過短,會占用過多系統資源)統計函數讀取一次32位寄存器,讀取到的數據保存在64位全局變量(即64位計數器)中,提供給客戶進行診斷。64位計數器發生反轉所需時間如表2所示,即使是萬兆口在全速發包的情況下,也會使用58.492年(將近60年,每年按365天計算)的時間才能發生反轉,這么長的期限完全可以滿足用戶需求。表2示出了64位計數器發生反轉所需的時間。<table>tableseeoriginaldocumentpage7</column></row><table>請參閱圖4所示,為本發明數據流統計配置實現裝置示意圖,該裝置包括定時器401、寄存器402,且所有寄存器402中存儲的統計數據在定時器401的一次時間到時能夠被取值或清空,該裝置還包括啟用確定模塊403,連接定時器401,用于下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用定時器401;統計配置模塊404,連接定時器401、寄存器402及啟用確定模塊403,用于當啟用確定模塊403確定定時器401處于啟用狀態時,根據定時器401設定的讀取時間間隔(如15秒)讀取寄存器402中的統計數據并保存,以供后續顯示流程調用。寄存器402為32位寄存器。上述裝置中,還包括后續顯示模塊405,連接統計配置模塊404,用于通過調用統計配置模塊404保存的數據進行數據顯示。本發明通過設置一個定時器就完成了所有的數據流業務統計,節省了資源,同時數據流統計業務不再受定時器分配數目的限制,可以達到芯片支持的極限。對于集中式交換機,數據流統計可以達到實時統計,顯示結果為當時時間點統計結果,這在以前的技術中難以達到。本發明的技術方案已經在某款交換機中得到實驗性應用,反饋結果顯示,在芯片允許的范圍內,數據流統計業務可以無限制配置,經過細節改進,統計結果達到了最大精度,與期望值幾乎絲毫不差。當然,本發明還可有其他多種實施例,在不背離本發明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發明所附的權利要求的保護范圍。權利要求1.一種數據流統計配置實現方法,用于網絡交換機或路由器的數據流統計配置,其特征在于,該方法包括步驟一,設置一個定時器管理多個寄存器,且所述所有寄存器中的統計數據在所述定時器一次時間到時被取值或清空;步驟二,下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用所述定時器;及步驟三,啟用所述定時器,根據所述定時器設定的讀取時間間隔讀取所述寄存器中的統計數據并保存,以供后續顯示流程調用。2、根據權利要求1所述的數據流統計配置實現方法,其特征在于,所述寄存器為一32位寄存器。3、根據權利要求1或2所述的數據流統計配置實現方法,其特征在于,所述步驟三中,所述讀取時間間隔為15秒。4、根據權利要求1或2所述的數據流統計配置實現方法,其特征在于,所述步驟三中,以一64位全局變量保存所述統計數據。5、根據權利要求4所述的數據流統計配置實現方法,其特征在于,所述步驟三中,還包括由一命令顯示函數通過調用所述64位全局變量進行顯示的6、根據權利要求1、2或5所述的數據流統計配置實現方法,其特征在于,所述步驟三中,當所有所述數據流統計業務被取消時,所述定時器也被取消。7、一種數據流統計配置實現裝置,用于網絡交換機或路由器的數據流統計配置,該裝置包括一個用于管理多個寄存器的定時器,且所述所有寄存器中的統計數據在所述定時器一次時間到時被取值或清空,其特征在于,還包括一啟用確定模塊,連接所述定時器,用于下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用所述定時器;及一統計配置模塊,連接所述定時器、所述寄存器及所述啟用確定模塊,用于當所述定時器處于啟用狀態時,根據所述定時器設定的讀取時間間隔讀取所述寄存器中的統計數據并保存,以供后續顯示流程調用。8、根據權利要求7所述的數據流統計配置實現裝置,其特征在于,所述寄存器為一32位寄存器。9、根據權利要求7所述的數據流統計配置實現裝置,其特征在于,所述讀取時間間隔為15秒。10、根據權利要求7、8或9所述的數據流統計配置實現裝置,其特征在于,還包括一后續顯示模塊,用于通過調用所述統計配置模塊保存的數據進行數據顯示。全文摘要本發明公開了一種數據流統計配置實現方法及其裝置,用于網絡交換機或路由器的數據流統計配置,其中,該方法包括步驟一,設置一個定時器管理多個寄存器,且所述所有寄存器中的統計數據在所述定時器一次時間到時被取值或清空;步驟二,下發數據流統計配置命令,并根據數據流統計業務是否啟用確定是否啟用所述定時器;及步驟三,啟用所述定時器,根據所述定時器設定的讀取時間間隔讀取所述寄存器中的統計數據并保存,以供后續顯示流程調用。本發明通過設置一個定時器就完成了所有的數據流業務統計,節省了資源,同時數據流統計業務不再受定時器分配數目的限制,可以達到芯片支持的極限。文檔編號H04L12/24GK101232440SQ20071006302公開日2008年7月30日申請日期2007年1月24日優先權日2007年1月24日發明者潘家民申請人:中興通訊股份有限公司