專利名稱:一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù),特別涉及一種采用延時機(jī)制的網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法及相關(guān)裝置。
背景技術(shù):
近年來,隨著互聯(lián)網(wǎng)的迅速普及和推廣,網(wǎng)絡(luò)性能逐漸成為人們關(guān)注的熱點。在現(xiàn)有網(wǎng)絡(luò)中,各種公認(rèn)標(biāo)準(zhǔn)協(xié)議和廠商私有協(xié)議應(yīng)用廣泛,而組成這個網(wǎng)絡(luò)的關(guān)鍵設(shè)備如路由器、交換機(jī)、寬帶遠(yuǎn)程接入服務(wù)器BRAS、防火墻、主機(jī)等都需要對其中不同的協(xié)議進(jìn)行維護(hù)和處理。網(wǎng)絡(luò)設(shè)備對協(xié)議的處理通常都由處理器(中央處理器CPU、網(wǎng)絡(luò)處理器NP等)來進(jìn)行,如果設(shè)備在短時間內(nèi)需要發(fā)送大量協(xié)議包時,很可能會由于處理器忙而發(fā)送不了這么多。處理器本身的能力是有限的,而隨著網(wǎng)絡(luò)應(yīng)用的增加,報文發(fā)送的需求可能會無限制的增長,因此,如何保證報文都能成功發(fā)送出去就成為了亟待解決的問題。通常協(xié)議報文發(fā)送分為兩種,一種是報文需要單次立即發(fā)送,一種是報文需要周期性發(fā)送。前者由于發(fā)送沒有規(guī)律性,通常發(fā)生在協(xié)議初始化階段,且報文量小,因此不需要做發(fā)包性能優(yōu)化,比如FTP連接的建立。后者報文發(fā)送是周期性的,通常是連接的維護(hù)或鄰居的檢測,由于發(fā)送同步問題的普遍存在,會導(dǎo)致短時間內(nèi)CPU負(fù)擔(dān)過大,進(jìn)而導(dǎo)致鄰居斷開、協(xié)議超時等等問題。對于協(xié)議周期性發(fā)包,當(dāng)設(shè)備有多個端口要發(fā)包且它們的發(fā)包間隔相同時,則使得設(shè)備的CPU負(fù)擔(dān)過重,嚴(yán)重影響報文發(fā)送,同時還可能影響到接收端的協(xié)議報文接收處理。以鏈路層發(fā)現(xiàn)協(xié)議LLDP為例,LLDP協(xié)議啟動后,會檢測所有UP的端口,然后在每個UP的端口周期性的發(fā)送LLDP報文。由于依次檢測所有端口 UP的時間非常短,因此所有UP的端口在發(fā)送LLDP報文時幾乎是同步進(jìn)行的,如果有64個UP的端口,那么CPU將會一次性發(fā)送64個LLDP報文出來,然后每隔一個周期就發(fā)送一次64個LLDP報文。再比如IEEE802. IQbg協(xié)議中提到的邊緣虛擬橋EVB協(xié)議,它的EVB TLV是承載于LLDP報文的,如果一個物理端口下有1000個虛接口,且它們的EVB TLV發(fā)送周期都一致的話,則每隔一個周期就會發(fā)送1000個LLDP報文,如果64個端口都同時發(fā)送的話,那么CPU就需要一次性發(fā)送64000 個 LLDP 報文。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法及裝置,能更好地解決一次性發(fā)送大量協(xié)議報文時處理器負(fù)擔(dān)過重的問題,以保障協(xié)議運行的可靠性和穩(wěn)定性。根據(jù)本發(fā)明的一個方面,提供了一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法,包括對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識;對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識;
當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列;處理器根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。優(yōu)選地,比較所述多個實例的發(fā)包周期,得到最小發(fā)包周期,并將所述最小發(fā)包周期作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T。優(yōu)選地,所述延時處理的步驟包括根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間,并根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間,得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。優(yōu)選地,所述相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間通過以下公式計算(T/m)* (x-1)其中,m是物理端口總數(shù),X是所述網(wǎng)絡(luò)設(shè)備的第X個物理端口。優(yōu)選地,所述相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間通過以下公式計算(T/m) *( (x-1)+ (y_l)/n)其中,η是第X個物理端口下的實例總數(shù),y是第X個物理端口下的第y個實例。優(yōu)選地,在網(wǎng)絡(luò)設(shè)備的第一個發(fā)包周期中,根據(jù)所述發(fā)包啟動延時時間序列,依次發(fā)送所述多個實例的協(xié)議包,并在后續(xù)的發(fā)包周期中,按照發(fā)包周期T,周期性發(fā)送所述多個實例的協(xié)議包。優(yōu)選地,所述實例包括虛接口、協(xié)議、子協(xié)議。根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的裝置,包括標(biāo)識模塊,用于對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識,并對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識;延時處理模塊,用于當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列;發(fā)包模塊,用于根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。優(yōu)選地,所述延時處理模塊包括網(wǎng)絡(luò)設(shè)備發(fā)包周期計算子模塊,用于比較所述多個實例的發(fā)包周期,得到最小發(fā)包周期,并將所述最小發(fā)包周期作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T ;網(wǎng)絡(luò)設(shè)備發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間;實例發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間,得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。優(yōu)選地,所述發(fā)包模塊包括第一發(fā)包子模塊,用于在第一個發(fā)包周期中,根據(jù)所述發(fā)包啟動延時時間序列,依次發(fā)送所述多個實例的協(xié)議包;第二發(fā)包子模塊,用于在后續(xù)的發(fā)包周期中,按照發(fā)包周期T,周期性發(fā)送所述多個實例的協(xié)議包。
5
與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于本發(fā)明通過采用延時機(jī)制,使不同端口不同實例不再同時進(jìn)行協(xié)議發(fā)包,大大減輕了處理器的負(fù)擔(dān),從而保障了協(xié)議運行的可靠性和穩(wěn)定性。
圖I是本發(fā)明實施例提供的網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法原理框圖;圖2是本發(fā)明實施例提供的第一應(yīng)用拓?fù)鋱D;圖3是本發(fā)明實施例提供的第二應(yīng)用拓?fù)鋱D;圖4是本發(fā)明實施例提供的網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的裝置框圖。
具體實施例方式以下結(jié)合附圖對本發(fā)明的優(yōu)選實施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明的核心思想在于利用延時機(jī)制,分散各個實例的發(fā)包啟動時間,從而讓處理器有足夠的時間響應(yīng)所有實例的發(fā)包請求,以保證協(xié)議正常的運行。圖I是本發(fā)明實施例提供的網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法原理框圖,如圖I所示,包括步驟101 :對網(wǎng)絡(luò)設(shè)備的所有物理端口進(jìn)行編號,包括UP狀態(tài)和DOWN狀態(tài)的端口,依次編號為P1、P2、…、Px、…、Pm,這里物理端口總數(shù)目為m,Px表示編號為X的端口。協(xié)議通過在UP的端口上收發(fā)相應(yīng)的協(xié)議報文以維持正常運行,而DOWN的端口有可能由于需要以后會被UP起來,并且參與協(xié)議交互,因此有必要也編號進(jìn)來。步驟102 :在每個物理端口下,有可能會被分割為許多虛接口(比如在虛擬化技術(shù)中),也有可能會被加入到多種協(xié)議中來,還有可能一個協(xié)議下需要周期性發(fā)送多種報文(比如 LLDP 有三種檢測報文,目的 MAC 分別為 01-80-C2-00-00-00、01-80-C2-00-00-03、01-80-C2-00-00-0E),這些虛接口、協(xié)議、子協(xié)議等等在這里都定義為一個實例,它們都有周期性發(fā)送協(xié)議包的需求。因此,在每個物理端口下,分別對這些實例進(jìn)行編號,如果端口Px下有η個實例,則依次編號為II、12、···、&、…、In,這里Px端口下實例總數(shù)為n,Iy表示Px端口下編號為y的實例。如果η的數(shù)目會動態(tài)變化,則需要設(shè)置一個估計值,通常為該物理端口能夠支持的最大實例數(shù)目。步驟103 :當(dāng)在某個物理端口上實例啟動、重啟或最小發(fā)包周期發(fā)生變化時,每個實例需要向CPU請求發(fā)送協(xié)議包,并進(jìn)行一個延時,延時時間根據(jù)公式(Τ/m) * ((x-1) + (y-1) /n)來計算,這里T為所有實例中的最小發(fā)包周期,x為當(dāng)前需要CPU發(fā)包的端口 Px,I為當(dāng)前需要CPU發(fā)包的實例Iy。步驟104 :經(jīng)過延時發(fā)送之后,實例如果不再重啟或最小發(fā)包周期不再調(diào)整,則以后發(fā)包就不需要再延時,當(dāng)發(fā)包周期到達(dá)后,則請求CPU立即發(fā)包。也就是說,對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識,并對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識。當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列,并根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。其中,根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間(T/m) * (x-1),并根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間(T/m) *( (x-1)+ (y-1)/n),從而得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列,以供處理器按照所述時間序列發(fā)送協(xié)議包。圖2是本發(fā)明實施例提供的第一應(yīng)用拓?fù)鋱D,如圖2所示,交換機(jī)有100個物理端口,全局開啟 LLDP 協(xié)議,并且都使能 Nearest Bridge、Nearest Customer Bridge、NearestNon-TPMR Bridge鄰居檢測,因此,LLDP需要在這100個物理端口都發(fā)送這三種鄰居檢測報文,目的 MAC 分別是 01-80-C2-00-00-0E、01-80-C2-00-00-00 和 01-80-C2-00-00-03,并且每隔一個檢測周期(默認(rèn)30s)會檢測一次。此時,總的物理端口數(shù)目是100,每個端口下有3個實例,最小發(fā)包周期是30s。那么,LLDP協(xié)議第一次啟動的時候,第一個端口 Pl的第一個實例Il的鄰居檢測報文的發(fā)包啟動延時時間(發(fā)送延時)是0,即會立即發(fā)送,而第一個端口 Pl的第二個實例12的鄰居檢測報文的發(fā)送延時則是O. Is,即會在第一個檢測報文發(fā)送之后O. Is再發(fā)送,以此類推,第40個端口 P40的第三個實例13的鄰居檢測報文的發(fā)送延時是(30/100) *((40-1)+ ((3-1) /3)) =11. 9s,而最后一個端口 PlOO的三個鄰居檢測報文的發(fā)送延時分別是29. 7s、29.8s、29. 9s。因此,Pl的Il的檢測周期是在Os的時候啟動的,而Pl的12的檢測周期是在O. Is的時候啟動的,以此類推,P40的13的檢測周期是在11. 9s的時候啟動的,PlOO的三個實例的檢測周期分別是在29. 7s,29. 8s,29. 9s啟動的。而從第二個周期開始,它們的鄰居檢測報文的發(fā)送不再需要延時,那么,Pl的Il的第二次檢測報文發(fā)送的時間是第30s,Pl的12的第二次檢測報文的發(fā)送時間是低30. ls,以此類推,P40的13的第二次檢測報文發(fā)送的時間是第41. 9s,PlOO的三個實例的第二次檢測報文發(fā)送的時間分別是第59. 7s、59. 8s、59. 9s。這樣,交換機(jī)就可以在任何一個周期內(nèi)將這總共每個周期100*3=300個報文分開發(fā)送了,每秒只需要發(fā)送10個LLDP報文,否則,如果都立即發(fā)送,則每個周期CPU需要在極短的時間內(nèi)(通常小于Is)發(fā)送出300個LLDP報文,這對CPU來說將是一個較大的負(fù)擔(dān)。除此以外,將所有協(xié)議報文分散在一個最小周期內(nèi),也能避免協(xié)議超時,協(xié)議超時最小也是3倍檢測周期。圖3是本發(fā)明實施例提供的第二應(yīng)用拓?fù)鋱D,如圖3所示,交換機(jī)有10個物理端口,各自連接這不同的站點,交換機(jī)是數(shù)據(jù)中心交換機(jī),所有物理端口都應(yīng)用數(shù)據(jù)中心虛擬化技術(shù),即每個物理端口下都有若干個虛接口,全局開啟LLDP協(xié)議,每個虛接口都需要跟站點對應(yīng)的虛接口交互EVB協(xié)議,EVB TLV是封裝于LLDP報文中,由于虛接口各自相互獨立維護(hù)其EVB信息,并且各自的TLV都是單獨封裝和獨立發(fā)送的,而設(shè)備有多少個虛接口,則就有多少個EVB TLV需要發(fā)送,因此很可能將會有同樣多的LLDP報文需要周期性發(fā)送。如果端口 I下有100個虛接口,端口 5下有600個虛接口,端口 10下有300個虛接口,其它7個端口下各自都有200個虛接口,那么總共將有2400個虛接口,即有2400個LLDP報文需要周期性發(fā)送。在這里,每個虛接口對應(yīng)一個實例的話,Pl下有100個實例,P5下有600個實例,PlO下有300個實例,其它端口下各自有200個實例。LLDP報文的發(fā)送間隔默認(rèn)30s,由于各個端口下的實例數(shù)目有所不同,因此,協(xié)議啟動時,這些檢測報文的發(fā)送延時并不是均勻分布的。開啟協(xié)議后,第一個檢測周期,Pl的Il延時為0,P1的12延時為0.03s,Pl的1100延時為2. 97s ;P5的Il延時為12s,P5的12延時為12. 005s,P5的13延時為12. Ols,以此類推。從第二個檢測周期開始,檢測報文的發(fā)送不再延時,從而保證這每個周期2400個LLDP報文能分散開發(fā)送,CPU每秒只需要發(fā)送80個LLDP報文,大大減輕了其負(fù)擔(dān)。另外,對于每個端口下的虛接口數(shù)目,該值動態(tài)變化可能較頻繁,因此,在這里每個端口下的實例數(shù)目建議提供一個估計值,而不采用實際值,對于超過估計值的虛接口,報文發(fā)送只能與其前一個編號的虛接口同時進(jìn)行了。
圖4是本發(fā)明實施例提供的網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的裝置框圖,如圖4所示,包括標(biāo)識模塊、延時處理模塊和發(fā)包模塊。所述標(biāo)識模塊用于對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識,并對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識。所述延時處理模塊用于當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。所述延時處理模塊進(jìn)一步包括網(wǎng)絡(luò)設(shè)備發(fā)包周期計算子模塊,用于比較所述多個實例的發(fā)包周期,得到最小發(fā)包周期,并將所述最小發(fā)包周期作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T ;網(wǎng)絡(luò)設(shè)備發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間;實例發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間,得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。所述發(fā)包模塊用于根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。所述發(fā)包模塊進(jìn)一步包括第一發(fā)包子模塊,用于在第一個發(fā)包周期中,根據(jù)所述發(fā)包啟動延時時間序列,依次發(fā)送所述多個實例的協(xié)議包;第二發(fā)包子模塊,用于在后續(xù)的發(fā)包周期中,按照發(fā)包周期T,周期性發(fā)送所述多個實例的協(xié)議包。假設(shè)網(wǎng)絡(luò)設(shè)備有m個物理端口,標(biāo)識模塊依次將其編號為P1、P2、P3、…、Px、…、Pm,每個端口下有若干個實例需要發(fā)送協(xié)議包(這里的實例是指的有CPU周期發(fā)包需求的對象,包括虛接口、不同的協(xié)議或子協(xié)議等),第X個端口下有η個實例,標(biāo)識模塊依次將其編號為11、12、13、…、Iy、…、In。每個實例都有一個發(fā)包周期,對于同一種協(xié)議通常是相同的。假設(shè)所有端口下所有實例的最小發(fā)包周期是T,即將所述最小發(fā)包周期T作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T。當(dāng)協(xié)議啟動、端口 UP、實例也啟動之后,CPU會輪詢每個端口的每個實例準(zhǔn)備第一次發(fā)送協(xié)議報文,此時我們給每個實例設(shè)置一個協(xié)議初次發(fā)包延時。首先,所有端口下的所有實例都需要在最短周期T的時間內(nèi)將報文發(fā)出去,m個端口平均分配這段時間,則每個端口下的所有實例都分配的時間是T/m,如果第X個端口下有η個實例,那么每個實例分配到的時間是T/m/n,因此,對于第X個端口的第y個實例,它的協(xié)議初次發(fā)包送延時(第x個端口的第I個實例發(fā)包啟動延時時間)是(T/m) *( (x-1)+ (y-l)/n)。這樣,初次發(fā)包時,第一個端口下的第一個實例將會是立即發(fā)包,而最后一個端口的最后一個實例將會是在延時T* (m*n-l) /m*n之后發(fā)包,其它的實例也將分別延時(0,T)這個范圍內(nèi)的某個時間之后發(fā)包。然后各個實例分別維護(hù)自己的定時器,周期到了時,再各自立即發(fā)包,不用再延時發(fā)送,從而使得不同端口、端口下不同實例的協(xié)議發(fā)包都不再同時進(jìn)行,將會大大的減輕CPU的負(fù)擔(dān)。
盡管上文對本發(fā)明進(jìn)行了詳細(xì)說明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法,其特征在于,包括對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識;對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識;當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列;處理器根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,比較所述多個實例的發(fā)包周期,得到最小發(fā)包周期,并將所述最小發(fā)包周期作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述延時處理的步驟包括根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間,并根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間,得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間通過以下公式計算(T/m)* (x-1)其中,m是物理端口總數(shù),X是所述網(wǎng)絡(luò)設(shè)備的第X個物理端口。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間通過以下公式計算(T/m) *( (x-1)+ (y-l)/n)其中,η是第X個物理端口下的實例總數(shù),y是第X個物理端口下的第y個實例。
6.根據(jù)權(quán)利要求5所述方法,其特征在于,在網(wǎng)絡(luò)設(shè)備的第一個發(fā)包周期中,根據(jù)所述發(fā)包啟動延時時間序列,依次發(fā)送所述多個實例的協(xié)議包,并在后續(xù)的發(fā)包周期中,按照發(fā)包周期T,周期性發(fā)送所述多個實例的協(xié)議包。
7.根據(jù)權(quán)利要求1-6任意一項所述的方法,其特征在于,所述實例包括虛接口、協(xié)議、子協(xié)議。
8.—種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的裝置,其特征在于,包括標(biāo)識模塊,用于對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識,并對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識;延時處理模塊,用于當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列;發(fā)包模塊,用于根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。
9.根據(jù)權(quán)利要求8所述裝置,其特征在于,所述延時處理模塊包括網(wǎng)絡(luò)設(shè)備發(fā)包周期計算子模塊,用于比較所述多個實例的發(fā)包周期,得到最小發(fā)包周期,并將所述最小發(fā)包周期作為網(wǎng)絡(luò)設(shè)備的發(fā)包周期T ;網(wǎng)絡(luò)設(shè)備發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口標(biāo)識和網(wǎng)絡(luò)設(shè)備的發(fā)包周期T,確定相應(yīng)標(biāo)識網(wǎng)絡(luò)設(shè)備的發(fā)包啟動延時時間;實例發(fā)包啟動延時時間計算子模塊,用于根據(jù)所述物理端口的發(fā)包啟動延時時間和物理端口下的實例標(biāo)識,確定每個網(wǎng)絡(luò)設(shè)備下的相應(yīng)標(biāo)識實例的發(fā)包啟動延時時間,得到對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列。
10.根據(jù)權(quán)利要求9所述裝置,其特征在于,所述發(fā)包模塊包括第一發(fā)包子模塊,用于在第一個發(fā)包周期中,根據(jù)所述發(fā)包啟動延時時間序列,依次發(fā)送所述多個實例的協(xié)議包;第二發(fā)包子模塊,用于在后續(xù)的發(fā)包周期中,按照發(fā)包周期T,周期性發(fā)送所述多個實例的協(xié)議包。
全文摘要
本發(fā)明公開了一種網(wǎng)絡(luò)設(shè)備周期性協(xié)議發(fā)包的方法及裝置,涉及通信技術(shù),所述方法包括對網(wǎng)絡(luò)設(shè)備的一個或多個物理端口進(jìn)行標(biāo)識;對每個物理端口下的一個或多個需要周期性發(fā)送協(xié)議包的實例進(jìn)行標(biāo)識;當(dāng)多個實例同時請求處理器發(fā)送協(xié)議包時,對所述多個實例的發(fā)包啟動時間進(jìn)行延時處理,形成對應(yīng)于所述多個實例的發(fā)包啟動延時時間序列;處理器根據(jù)所述發(fā)包啟動延時時間序列,周期性發(fā)送相應(yīng)實例的協(xié)議包。本發(fā)明通過采用延時機(jī)制,使不同物理端口不同實例不再同時進(jìn)行協(xié)議發(fā)包,大大減輕了處理器的負(fù)擔(dān),從而保障了協(xié)議運行的可靠性和穩(wěn)定性。
文檔編號H04L12/861GK102938722SQ20121042394
公開日2013年2月20日 申請日期2012年10月30日 優(yōu)先權(quán)日2012年10月30日
發(fā)明者周吉 申請人:中興通訊股份有限公司