專利名稱:一種向量包定義及其向量交換實現(xiàn)方法
技術領域:
本發(fā)明涉及通信網(wǎng)絡領域,特別涉及一種向量包定義及其向量交換實現(xiàn)方法。
背景技術:
電子設備為了完成或更好地完成它們的任務,常常需要用通信媒介連成一個通信 網(wǎng),建立網(wǎng)絡通信關系,相互交換信息,以便相互協(xié)作。電信網(wǎng)和計算機網(wǎng)絡是目前廣泛使 用的兩種主要的通信網(wǎng),按照國際標準化組織(ISO)的分層方法,計算機網(wǎng)絡有七層,在 此,把第三層意義上的計算機網(wǎng)絡稱為通信網(wǎng)絡。 從功能上可以把通信網(wǎng)絡分成傳送面功能和控制面功能,控制面根據(jù)用戶呼叫請 求,通過復雜的呼叫控制信令,在網(wǎng)絡中確定一條通信路徑,建立通信連接關系。傳送面則 按照事先建立好的通信連接,高速傳送大量信息。實現(xiàn)傳送面和控制面功能的邏輯網(wǎng)絡分 別被稱為傳送網(wǎng)和控制網(wǎng)。傳送網(wǎng)和控制網(wǎng)通常依附于同一個物理網(wǎng)絡,或者是緊密耦合 的兩個物理網(wǎng)絡,在邏輯上相對獨立,但是二者相互協(xié)調(diào),共同實現(xiàn)整個通信網(wǎng)絡功能。
通信網(wǎng)與網(wǎng)絡地址總是聯(lián)系在一起,常用網(wǎng)絡地址有IP地址、ATM終端地址、ATM 路徑信道地址(即VPI/VCI地址),甚至電話號碼、域名等等都是網(wǎng)絡地址。各種網(wǎng)絡地址 的用途和屬性不同,有的標識通信網(wǎng)的對象,有的用于交換路由操作;有的人使用,便于記 憶,有的機器使用,便于存儲和處理。從使用功能看,有兩類網(wǎng)絡地址最重要, 一種是標識地 址,一種是交換地址。 在數(shù)據(jù)通信網(wǎng)中,為了達到通信的目的,需要建立一套編碼方法,為每個電子設備 指定一個編碼標識,否則無法進行通信,這種標識稱為電子設備的標識地址。 一個電子設備 賦予一個明確的固定不變的標識地址,標識地址就代表這個電子設備,是控制面使用的地址。 交換地址被轉發(fā)設備用于交換操作。從一個端口輸入的數(shù)據(jù)包,其中一定包含一 個字段,轉發(fā)設備依據(jù)該字段做出判斷,數(shù)據(jù)包被轉發(fā)到哪一個端口進行輸出,這個字段就 是交換地址。好的交換地址必須方便傳送面高速、簡單地交換轉發(fā)數(shù)據(jù),是傳送面使用的地 址。 按照以上定義,對于ATM網(wǎng),ATM終端地址是標識地址,ATM的路徑信道地址(VPI/ VCI)就是位置標識。對于IP網(wǎng),IP地址既是標識地址,也是交換地址。
中國發(fā)明專利《一種向量網(wǎng)絡地址編碼方法》(公開號1866972)給出一種向量網(wǎng) 絡地址,簡稱向量地址,是一種不同于IP地址和ATM路徑信道地址的交換地址,以向量地址 為交換地址建立的數(shù)據(jù)通信網(wǎng)被稱其為向量數(shù)據(jù)通信網(wǎng),其傳送網(wǎng)稱為向量傳送網(wǎng)。
在向量傳送網(wǎng)中,轉發(fā)設備的輸入輸出端口從l開始用數(shù)字編號,稱為端口號。向 量地址以端口號為編碼基礎,描述了從信源設備到信宿設備傳送數(shù)據(jù)的通信路徑。通信路 徑信息是端口號組成的序列,路徑上的每個轉發(fā)設備都對應序列中的一個端口號,是通信 路徑通過該電子設備的輸出端口號。以上端口號序列就象一步一步的方向標,引導數(shù)據(jù)包 傳送到達信宿設備,所以被稱為向量地址,其中的端口號被稱為分量地址。
當轉發(fā)設備從某輸入端口收到一個數(shù)據(jù)包后,檢查第一個分量地址,根據(jù)檢查結
果把該數(shù)據(jù)包發(fā)送到第一個分量地址所指定的輸出端口 ,傳送出去的數(shù)據(jù)包不包含第一個 分量地址,即第一個分量地址使用以后就從數(shù)據(jù)包刪去,傳送出去的數(shù)據(jù)包之向量地址少 了一個分量地址。這就是向量傳送網(wǎng)的轉發(fā)設備的數(shù)據(jù)交換過程,在此稱其為向量交換過 程,完成向量交換的轉發(fā)設備被稱為向量交換機。 中國發(fā)明專利《向量數(shù)據(jù)通信網(wǎng)上建立向量連接的方法》(公開號101052055)給
出了一種向量網(wǎng)上建立向量連接的方法,是向量網(wǎng)的控制面功能的基本部分。 向量網(wǎng)的控制面包括控制功能和管理功能。控制功能又包括呼叫和尋由。呼叫是
主叫和被叫雙方協(xié)商確定通信格式,交換必要的通信連接信息的過程。尋由過程是指在協(xié)
商好的通信格式條件下,探索確定指定數(shù)量的多條合理路徑。呼叫和尋由過程完成后,被選
定的多條通信路徑、主叫和被叫的最終更新的連接信息構成一個向量連接。 向量網(wǎng)是一種新的通信網(wǎng)絡,要實現(xiàn)向量網(wǎng),除了需要向量地址、向量交換和向量
連接外,還必須給出向量包的具體比特定義,本發(fā)明提出的向量包定義方法,精簡地定義每
個比特,并給出使用方法,為建立低成本的網(wǎng)絡打下基礎。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種向量包定義方法,并給出這種向量包定義情況下的向 量交換方法。利用本向量包定義方法結合向量地址和向量交換可以實現(xiàn)一種具體的向量傳 送網(wǎng)。 本發(fā)明的技術方案是本發(fā)明定義的向量包包括[I H]兩個部分,H是包頭,I是 承載的信息,包頭和承載信息中沒有關于向量包的長度信息,該長度信息由支持通信的網(wǎng) 絡第二層顯式提供,即要求網(wǎng)絡第二層不但提交數(shù)據(jù)包本身,而且要提交關于該數(shù)據(jù)包的 長度信息。 更具體講包頭H包括[Fcs Fecn B De TVpfBk D]8個比特,D是擴展位,指示包頭 擴展或不擴展,不擴展時包頭H只有一個字節(jié);Bk是帶寬保持標記,標明該包是或不是穿透 性帶寬保持包;Vpf用于區(qū)別向量包和其他類型的包,Vpf = 0表示向量包;Fcs是包頭的奇 偶校驗位;T取值0或1指示該向量包是一個向量控制包還是一個向量數(shù)據(jù)包,控制包承載 網(wǎng)絡信令信息,數(shù)據(jù)包承載用戶數(shù)據(jù);數(shù)據(jù)包情況下I進一步由Data和V組成,即數(shù)據(jù)包 包括[Data V H]三個部分,Data是承載的數(shù)據(jù),V是向量地址,Data、 V和H三者都面向比 特,即以比特為長度單位;Fecn取值0或1指示該向量包傳輸方向的網(wǎng)絡擁塞情況,即當前 是否有擁塞發(fā)生;B和De組合表示三種數(shù)據(jù)轉發(fā)級別和向量包傳輸相反方向的網(wǎng)絡擁塞情 況,指示四種情況數(shù)據(jù)轉發(fā)級別O,數(shù)據(jù)轉發(fā)級別1,數(shù)據(jù)轉發(fā)級別2并且指示后向無擁塞, 數(shù)據(jù)轉發(fā)級別2并且指示后向有擁塞。 當向量地址V不是整字節(jié),但是要求面向字節(jié)時,通過前綴至多七個0和一個1對 V進行比特填充,使V的比特數(shù)可以被8整除,形如[V10000]。當Data的比特數(shù)也可以被 8整除時,向量包就滿足面向字節(jié)要求,是面向比特的特殊情況。 以上定義中除了 Vpf需要在比特2的位置而且Vpf = 0指示該數(shù)據(jù)包是向量包之 外,其余的每個比特在H中的具體比特位置可以任意,而且每個比特的0或1取值可以是反 邏輯,不影響本發(fā)明的本質內(nèi)涵。
利用上述向量包定義實現(xiàn)的向量交換方法的具體步驟如下 步驟C1 :當交換機的輸入端口收到一個向量包,首先檢查包的基本合法性,包括 Vpf = 0和依據(jù)Fcs檢查包的誤碼情況,如果發(fā)現(xiàn)誤碼則報告錯誤。 步驟C2 :如果T指示該向量包是向量控制包則作為向量控制包處理,如果T指示 該向量包是向量數(shù)據(jù)包則繼續(xù)步驟C3。 步驟C3 :根據(jù)當前轉發(fā)交換機設定的分量地址比特數(shù),從向量數(shù)據(jù)包讀取第一分 量地址的值,設該值為To,并且從該向量數(shù)據(jù)包中刪除該分量地址,形成少一分量地址的新 數(shù)據(jù)包。 步驟C4 :根據(jù)數(shù)據(jù)包包頭H中的B和De組合所表示的數(shù)據(jù)轉發(fā)級別決定把該新數(shù) 據(jù)包存入輸入端口緩沖器0、緩沖器1或緩沖器2,如果級別0或1緩沖區(qū)溢出,則置位對應 輸入緩沖器的溢出標志FlaglnO或Flaglnl,溢出標志進行單穩(wěn)態(tài)操作,即延遲一定時間后 溢出標志將自動清零,除非清零之前又進行置位操作,這時延遲時間重新開始計時,另外所 有存入輸入端口緩沖器的數(shù)據(jù)包都根據(jù)輸入端口緩沖器的當前溢出標志用"或"方式修改 數(shù)據(jù)包的Fecn,即如果Fecn = 1表示有擁塞,則Fecn = Fecn | Flag,其中Flag是FlaglnO 或Flaglnl。 步驟C5 :存入輸入緩沖器的數(shù)據(jù)包將根據(jù)交換調(diào)度算法轉發(fā)到To所指定的輸出 端口相應級別的輸出緩沖器,在轉發(fā)時如果級別O或級別1的輸出緩沖區(qū)溢出,則置位對 應輸出緩沖器的溢出標志FlagOutO或FlagOutl,溢出標志進行單穩(wěn)態(tài)操作,即延遲一定時 間后溢出標志將自動清零,除非清零之前又進行置位操作,這時延遲時間重新開始計時,另 外所有存入輸出緩沖器的數(shù)據(jù)包都根據(jù)輸出緩沖器的當前溢出標志用"或"方式修改數(shù)據(jù) 包的Fecn,即如果Fecn = 1表示有擁塞,則Fecn = Fecn | Flag,其中Flag是FlagOutO或 FlagOutl。 步驟C6 :根據(jù)錯誤校驗的要求調(diào)整Fcs后,數(shù)據(jù)包就可以從端口 To按到達先后順 序和數(shù)據(jù)包級別調(diào)度發(fā)送出去,完成交換節(jié)點對數(shù)據(jù)包的轉發(fā)操作,即實現(xiàn)數(shù)據(jù)包的向量 交換。 本發(fā)明的有益效果向量網(wǎng)是一種新的通信網(wǎng)絡,沒有現(xiàn)成的數(shù)據(jù)包定義。 本發(fā)明提供一種向量包定義方法和在此基礎上的向量交換實現(xiàn)方法,從而可以實
現(xiàn)一種具體的向量傳送網(wǎng)。實現(xiàn)的傳送網(wǎng)具有以下優(yōu)點 (1)不擴展時包頭僅1個字節(jié),以最小的包頭開銷支持網(wǎng)絡的擁塞控制機制、分優(yōu) 先級通信,為網(wǎng)絡的QoS提供了基礎性的、不可替代的支持,另外不僅可以傳送用戶數(shù)據(jù), 而且可以傳送網(wǎng)絡信令。 (2)擁塞控制機制不僅包括前向擁塞通知機制,而且能夠實現(xiàn)后向擁塞通知機制。
(3)支持穩(wěn)健的資源預留和網(wǎng)絡流量統(tǒng)計。 (4)包頭的設計使得可以與IP包區(qū)別,在多協(xié)議共存的環(huán)境下,與IP包可以共享 同一個MAC層協(xié)議類型。
(5)預留足夠的擴充機制,必要時用戶可以擴充包頭。 (6)支持三種數(shù)據(jù)級別,級別0用于實時通信,級別1用于帶寬保證但允許一定時 延的應用,級別2提供類似IP網(wǎng)的"盡力而為"的通信。級別2情況時,可以指示該向量包 傳輸相反方向的網(wǎng)絡擁塞情況,為QoS支持提供了基礎,并可配合TCP等上層協(xié)議實現(xiàn)擁塞控制。 總之,本向量包定義方法給出的數(shù)據(jù)包結構小巧靈活,與IP包有幾乎同樣的表達 能力,不僅為向量網(wǎng)提供了具體的包格式,而且結合本發(fā)明給出的向量交換步驟實現(xiàn)的向 量網(wǎng)全面支持網(wǎng)絡的大規(guī)模組網(wǎng)、安全、QoS和合理運營模式。
圖1是本發(fā)明提供的向量數(shù)據(jù)包格式示意圖;
圖2是本發(fā)明提供的向量地址格式示意圖;
圖3是本發(fā)明提供的包分析流程圖; 圖4是本發(fā)明提供的交換機輸入/輸出緩沖器示意圖。
具體實施例方式
下面結合附圖和具體實施例對本發(fā)明作進一步說明,但不作為對本發(fā)明的限定。
本發(fā)明定義的向量包包括[I H]兩個部分,H是包頭,I是承載的信息,更具體講包 頭H包括[Fes Fecn B De T VpfBk D]8個比特,D是擴展位,可以選擇包頭擴展或不擴展, 不擴展時包頭H只有一個字節(jié);Bk是帶寬保持標記,標明該包是或不是穿透性帶寬保持包; Vpf用于區(qū)別向量包和其他類型的包,Vpf = 0表示向量包;Fcs是包頭的奇偶校驗位;T取 值0或1指示該向量包是一個控制包還是一個數(shù)據(jù)包;Fecn取值0或1指示該向量包傳輸 方向的網(wǎng)絡擁塞情況;B和De組合表示三種數(shù)據(jù)轉發(fā)級別和向量包傳輸相反方向的網(wǎng)絡擁 塞情況,指示四種情況數(shù)據(jù)轉發(fā)級別O,數(shù)據(jù)轉發(fā)級別l,數(shù)據(jù)轉發(fā)級別2并且指示后向無 擁塞,數(shù)據(jù)轉發(fā)級別2并且指示后向有擁塞。 依據(jù)T的不同取值向量包可為向量數(shù)據(jù)包或向量控制包。向量數(shù)據(jù)包格式如圖1 所示,圖中左邊是高字節(jié)和高比特,右邊是低字節(jié)和低比特,數(shù)據(jù)包由包頭H、向量地址V和 數(shù)據(jù)Data三部分組成,即數(shù)據(jù)包包括[Data V H]三個部分,Data、V和H三者都面向比特, 即以比特為長度單位。 數(shù)據(jù)Data表示向量數(shù)據(jù)包所承載的數(shù)據(jù)信息。 向量地址V表示從信源到信宿的向量地址,其格式如圖2所示,要求面向字節(jié)時需 要填充位。 令填充位如果要求向量包面向字節(jié),即Data、V、H的長度都必須是整字節(jié),則在V 開始位置需要填充位,否則不需要。填充位由最多七個0和一個1組成,共1-8位(圖2中 的填充位由四個0和一個1共5位組成)。H之后的第一個1之后就是有效的向量地址位。 填充位把面向比特的向量地址變成整字節(jié)。實際的向量地址及其分量地址是不定長的,當 向量地址的位數(shù)不是整字節(jié)時,由填充位來補充成整字節(jié)以方便處理和存儲。若向量地址 剛好是整字節(jié)的,那么填充位是8位,由七個0和一個1組成。
圖1所示的頭部信息H中 D :1比特,用于標記包頭是否擴展。作為實例,有2種可選的包頭格式,當D = 0時,不擴展,H為1個字節(jié);D = 1時,H擴展為4個字節(jié)。
Bk(Bandwidth Ke印)1比特,帶寬保持標記,取值1時標明該包是穿透性帶寬 保持包,取值0時標明該包不是穿透性帶寬保持包。在向量網(wǎng)中,QoS機制要求每個端口都為預留帶寬參數(shù)。穿透性帶 寬保持包的功能是配合更新每個端口的預留帶寬參數(shù),對于網(wǎng)絡的擁塞控制和QoS至關重 要。
Vpf (Vector Packet Flag) :1比特,向量包標志位,Vpf = 0表示向量包。對于 IPv4和IPv6包頭,該位置為1。
T :1比特,數(shù)據(jù)信令標志位,用于區(qū)分向量數(shù)據(jù)包和向量控制包,T = O表示向 量數(shù)據(jù)包。 向量包包頭的前四比特[T Vpf Bk D]與IP包的版本號VER對應,用于區(qū)別向量 包、IP包等二進制數(shù)x0xx表示向量包,其中x表示取O和1的任意值,xlxx是IP包或其 他類型的包,即VER的取值0-3、8-ll被向量網(wǎng)占用,而5, 7和12-15則不用,4和6表示IP 包,因此,向量包和IP包能夠相互區(qū)另U,可以共享同一個MAC層的協(xié)議類型,通過VER的取 值區(qū)別IPv4包、IPv6包、向量包等。
令校驗位(Fes) :1比特,用于包頭的檢錯。 令前向擁塞通知(Fecn) :1比特,表示向量包傳輸方向的網(wǎng)絡擁塞情況,即當前是 否有擁塞發(fā)生,0表示未擁塞,1表示擁塞。該比特由發(fā)生擁塞的網(wǎng)絡點設置,用于通知用 戶啟動擁塞避免程序。設置方式是"或"操作,即如果擁塞則Fecn二 l,如果未擁塞則保留 Fecn的原來取值。
B禾P De : (1) De (可丟棄指示比特)De置"1"說明當網(wǎng)絡發(fā)生擁塞時,可考慮丟棄該數(shù)據(jù) 包,以便于網(wǎng)絡進行帶寬管理。 (2)B :對于不可丟棄包(De = 0) , B表示轉發(fā)級別,B = 1為帶寬保證包(即數(shù)據(jù) 轉發(fā)級別1) , B = 0為實時數(shù)據(jù)包(即數(shù)據(jù)轉發(fā)級別0)。對于可丟棄數(shù)據(jù)包(De = 1),其 數(shù)據(jù)轉發(fā)級別為2, B的意義是"后向擁塞通知",即Becn。 (3)后向擁塞通知(Becn):該比特由收到擁塞通知的端設備來設置,用于通知對 端啟動擁塞避免程序,它說明與載有Been指示的數(shù)據(jù)包反方向的信息有擁塞。
B和De組合的確切意義如下
BDe意義
000級別
101級別
012級別,后向無擁塞
112級別,后向有擁塞 表中定義了向量包的轉發(fā)級別,共三種級別0、1和2。 01和11都表示2級別,但 前者同時傳遞"后向無擁塞",后者同時傳遞"后向有擁塞"信息。 圖3為對包進行分析的流程圖。當一個節(jié)點收到一個包后,分析最低位4個比特,即[T, Vpf , Bk, D],如果Vpf = 1表示該包為IP數(shù)據(jù)包或其他類型的包,如果Vpf = 0,則為向量包,對于向量包,如果T = 0為向量數(shù)據(jù)包,T = 1為向量控制包。
實施例1 :一字節(jié)包頭的向量數(shù)據(jù)包 置Vpf = O,D = O,表示包頭H為一字節(jié)的向量包格式,并根據(jù)資源預留要求設置Bk。 T指示該向量包是一個控制包還是一個數(shù)據(jù)包。如果T = 0表示向量包是向量數(shù)據(jù)包,此時I將由Data和V組成,格式具體為
Data V H Data是承載的數(shù)據(jù),V是向量地址,Data, V, H三者都面向比特,即以比特為長度單位。舉例,如果H的比特順序為[Fes Fecn B De T VpfBk D],以下具體數(shù)據(jù)包 ......1 1100 1011 Oil 00000 1000 0010的意義是[Fes Fecn B De T VpfBk D]
的取值為"IOOO 0010",由此可知該數(shù)據(jù)包是一個向量數(shù)據(jù)包,轉發(fā)級別為0,目前沒有擁塞,有帶寬保持標記,從比特8開始有五個0 —個1,即"10 OOOO"共六位填充位,之后是向量地址加用戶數(shù)據(jù),如果當前交換節(jié)點的分量地址長度是三位,B卩"1 Ol",則向量地址的第一個分量地址為十進制5。至于5之后是用戶數(shù)據(jù)Data還是下一個分量地址只有下一轉發(fā)節(jié)點才知道。 實施例2 :—字節(jié)包頭的向量控制包 置Vpf = 0, D = O,表示H為一字節(jié)的向量包格式,并根據(jù)資源預留要求設置Bk。
如果T = 1表示向量包是向量控制包,I將由Info和Cmd組成,格式具體為
Into Cmd H 向量控制包承載網(wǎng)絡信令信息,其中Cmd命令編碼占用一個字節(jié),Info是進一步的命令信息,Info的長度隨命令不同而不同。Info,Cmd,H三者都面向比特,即以比特為長度單位。舉例,如果比特的順序為[Fes Fecn B De T VpfBkD],以下具體包 ......1100 1011 0110 0000 0110 1000其意義是一個向量控制包,級別1說明不
是最重要的信令,目前信令傳送方向的級別1有擁塞,Cmd取值為01100000,有一個字節(jié)的
命令參數(shù)Info = 11001011。 實施例3 :四字節(jié)包頭的向量數(shù)據(jù)包 置Vpf = 0, D = l,表示H為四字節(jié)的向量包格式,并根據(jù)資源預留要求設置Bk。
T指示該向量包是一個控制包還是一個數(shù)據(jù)包。如果T = 0表示向量包是向量數(shù)據(jù)包,I將由Data和V組成,格式具體為
Data V H Data是承載的數(shù)據(jù),V是向量地址,Data, V, H三者都面向比特,即以比特為長度單位。舉例,如果H的比特順序為[User Fes Fecn B De T VpfBk D],以下具體數(shù)據(jù)包 ...... 1 1100 1011 0110 0000 xxxxxxxx xxxxxxxx xxxxxxxx 1000 0010的意義
是該數(shù)據(jù)包是一個向量數(shù)據(jù)包,轉發(fā)級別為0,目前沒有擁塞,有帶寬保持標記,"xxxxxxxxxxxxxxxx xxxxxxxx 1000 0010"對應比特0至比特31,從比特32開始有五個0—個1,即"100000",共六位填充位,之后是向量地址加用戶數(shù)據(jù),如果當前交換節(jié)點的向量地址長度是三位,則向量地址的第一個分量地址為十進制5。至于5之后是用戶數(shù)據(jù)Data還是下一個分量地址只有下一轉發(fā)節(jié)點才知道。"xxxxxxxx"表示供用戶使用的字段。
實施例4 :向量包分析和數(shù)據(jù)交換過程 向量包的分析和數(shù)據(jù)交換實施例的步驟如下 (1)檢查包的基本合法性,包括Vpf = 0檢查和依據(jù)Fes對包的誤碼檢查,如果有問題則報告錯誤。 (2)如果T = 1則作為向量控制包處理,如果T = O指示該向量包是向量數(shù)據(jù)包則繼續(xù)步驟C3。 (3)根據(jù)當前轉發(fā)交換機設定的分量地址比特數(shù),從向量數(shù)據(jù)包讀取第一分量地址的值,設該值為To,并且從該向量數(shù)據(jù)包中刪除該分量地址,形成少一個分量地址的新數(shù)據(jù)包。 (4)根據(jù)數(shù)據(jù)包包頭的B和De組合所表示的轉發(fā)級別0、 1或2,決定把該新數(shù)據(jù)包存入輸入緩沖器BufflnO、Bufflnl或Buffln2 (如圖5所示),如果級別0或級別1緩沖區(qū)溢出,則置位對應輸入緩沖器的溢出標志FlaglnO或Flaglnl,溢出標志進行單穩(wěn)態(tài)操作,即延遲一定時間后溢出標志將自動清零,除非清零之前又進行置位操作,這時延遲時間重新開始計時,另外所有存入輸入緩沖器的數(shù)據(jù)包都根據(jù)輸入緩沖器的當前溢出標志用"或"方式修改數(shù)據(jù)包的Fecn,即Fecn = Fecn | Flag,其中Flag是FlaglnO或Flaglnl 。
(5)與輸入端口類似,每個輸出端口也有0、1和2三個級別的輸出緩沖器BuffOutO、 BuffOutl和BuffOut2,以及分別與BuffOutO和BuffOutl相伴的溢出標志FlagOutO和FlagOutl,存入輸入緩沖器的數(shù)據(jù)包將根據(jù)交換調(diào)度算法轉發(fā)到To所指定輸出端口的相應級別的輸出緩沖器,在轉發(fā)時如果級別O或級別1的緩沖區(qū)溢出,則置位對應輸出緩沖器的溢出標志FlagOutO或FlagOutl,溢出標志進行單穩(wěn)態(tài)操作,即延遲一定時間后溢出標志將自動清零,除非清零之前又進行置位操作,這時延遲時間重新開始計時,另外所有存入輸出緩沖器的數(shù)據(jù)包都根據(jù)輸出緩沖器的當前溢出標志用"或"方式修改數(shù)據(jù)包的Fecn,艮卩Fecn = Fecn | Flag,其中Flag是FlagOutO或FlagOutl 。 (6)如果Bk = 1則對數(shù)據(jù)包級別和To指定的輸入和輸出端口的預留帶寬參數(shù)進行增加調(diào)整,也可以增加調(diào)整交換機制繩路的預留帶寬參數(shù)。如果Bk = 0則不進行增加調(diào)整。 (7)根據(jù)數(shù)據(jù)包的長度,更新輸入端口、輸出端口和交換機制繩路的流量計數(shù)。
(8)根據(jù)錯誤校驗的要求調(diào)整Fes后,數(shù)據(jù)包就可以從端口 To按到達先后順序和數(shù)據(jù)包級別調(diào)度發(fā)送出去。 以上所述的實施例,只是本發(fā)明的一種較優(yōu)選的具體實施方式
,本領域的技術人員在本發(fā)明技術方案范圍內(nèi)進行的通常變化和替換都應包含在本發(fā)明的保護范圍內(nèi)。
權利要求
一種向量包定義方法,其特征在于,所述方法給出的向量包包括[I H]兩個部分,H是包頭,I是承載的信息,更具體講包頭H包括[Fcs Fecn B De T VpfBk D]8個比特,D是擴展位,選擇包頭擴展或不擴展,不擴展時包頭H只有一個字節(jié);Bk是帶寬保持標記,標明該包是或不是穿透性帶寬保持包;Vpf用于區(qū)別向量包和其他類型的包,Vpf=0表示向量包;Fcs是包頭的奇偶校驗位;T取值0或1指示該向量包是一個向量控制包還是一個向量數(shù)據(jù)包,控制包承載網(wǎng)絡信令信息,數(shù)據(jù)包承載用戶數(shù)據(jù);數(shù)據(jù)包情況下I進一步由Data和V組成,即數(shù)據(jù)包包括[Data V H]三個部分,Data是承載的數(shù)據(jù),V是向量地址,Data、V和H三者都面向比特,即以比特為長度單位;Fecn取值0或1指示該向量包傳輸方向的網(wǎng)絡擁塞情況,即當前是否有擁塞發(fā)生;B和De組合表示三種數(shù)據(jù)轉發(fā)級別和向量包傳輸相反方向的網(wǎng)絡擁塞情況,指示四種情況數(shù)據(jù)轉發(fā)級別0,數(shù)據(jù)轉發(fā)級別1,數(shù)據(jù)轉發(fā)級別2并且指示后向無擁塞,數(shù)據(jù)轉發(fā)級別2并且指示后向有擁塞。
2. 如權利要求1所述的一種向量包定義方法,其特征在于,所述向量數(shù)據(jù)包面向字節(jié) 時通過前綴至多七個0和一個1對向量地址V進行比特填充,使V的比特數(shù)可以被8整除。
3. 如權利要求l所述的一種向量包定義方法,其特征在于,包頭H包括的[Fes Fecn B De T Vpf Bk D]8個比特中Vpf固定在比特2的位置且Vpf 二O,其余每個比特在包頭H中 的具體比特位置是任意的,而且每個比特的0或1取值可以是反邏輯。
4. 一種向量交換實現(xiàn)方法,其特征在于,依據(jù)權利要求1定義的向量包格式,實現(xiàn)向量 交換的具體步驟如下步驟C1 :當交換機的輸入端口收到一個向量包,首先檢查包的基本合法性,包括Vpf = 0和依據(jù)Fes檢查包的誤碼情況,如果發(fā)現(xiàn)誤碼則報告錯誤;步驟C2 :如果T指示該包是向量控制包則作為向量控制包處理,否則作為向量數(shù)據(jù)包 處理繼續(xù)步驟C3 ;步驟C3 :根據(jù)當前轉發(fā)交換機設定的分量地址比特數(shù),從向量數(shù)據(jù)包讀取第一分量地址的值,設該值為To,并且從該向量數(shù)據(jù)包中刪除該分量地址,形成少一分量地址的新數(shù)據(jù) 包;步驟C4 :根據(jù)數(shù)據(jù)包包頭H中的的B和De組合所表示的數(shù)據(jù)轉發(fā)級別決定把該新 數(shù)據(jù)包存入輸入端口的輸入緩沖器0(BufflnO)、輸入緩沖器l(Bufflnl)或輸入緩沖器 2 (Buffln2),如果級別0或1緩沖區(qū)溢出,則置位對應輸入緩沖器的溢出標志FlaglnO或 Flaglnl,溢出標志進行單穩(wěn)態(tài)操作,即延遲一定時間后溢出標志將自動清零,除非清零之 前又進行置位操作,這時延遲時間重新開始計時,另外所有存入輸入緩沖器的數(shù)據(jù)包都根 據(jù)輸入端口緩沖器的當前溢出標志用"或"方式修改數(shù)據(jù)包的Fecn,即如果Fecn = 1表示 有擁塞,貝U Fecn = Fecn | Flag,其中Flag是FlaglnO或Flaglnl ;步驟C5 :存入輸入緩沖器的數(shù)據(jù)包將根據(jù)交換調(diào)度算法轉發(fā)到To所指定的輸出端口 相應級別的輸出緩沖器,在轉發(fā)時如果級別O或級別1的輸出緩沖區(qū)溢出,則置位對應輸出 緩沖器的溢出標志FlagOutO或FlagOutl,溢出標志進行單穩(wěn)態(tài)操作,所有存入輸出緩沖器 的數(shù)據(jù)包都根據(jù)輸出緩沖器的當前溢出標志用"或"方式修改數(shù)據(jù)包的Fecn,即如果Fecn =1表示有擁塞,貝U Fecn = Fecn | Flag,其中Flag是FlagOutO或FlagOutl ;步驟C6 :根據(jù)錯誤校驗的要求調(diào)整Fcs后,數(shù)據(jù)包就可以從端口 To按到達先后順序和 數(shù)據(jù)包級別調(diào)度發(fā)送出去,完成交換節(jié)點對數(shù)據(jù)包的轉發(fā)操作,即實現(xiàn)數(shù)據(jù)包的向量交換。
全文摘要
本發(fā)明提供了一種向量包定義及其向量交換實現(xiàn)方法,屬于通信網(wǎng)絡領域。所述方法給出的向量包包括[IH]兩個部分,H是包頭,I是承載的信息,更具體講包頭H包括[Fcs Fecn B De T Vpf Bk D]8個比特,D是擴展位;Bk是帶寬保持標記;Vpf用于區(qū)別向量包和其他類型的包;Fcs是包頭的奇偶校驗位;T指示向量包是控制包還是數(shù)據(jù)包;數(shù)據(jù)包情況下I進一步由Data和V組成,Data是承載的數(shù)據(jù),V是向量地址;Fecn指示該向量包傳輸方向的網(wǎng)絡擁塞情況,即當前是否有擁塞發(fā)生;B和De組合表示三種數(shù)據(jù)轉發(fā)級別和向量包傳輸相反方向的網(wǎng)絡擁塞情況。
文檔編號H04L12/56GK101729609SQ20091023838
公開日2010年6月9日 申請日期2009年12月3日 優(yōu)先權日2009年12月3日
發(fā)明者梁滿貴, 趙阿群 申請人:北京交通大學