專利名稱:用于調整系統間信道字的傳輸速率的數據映射設備和方法
技術領域:
這個申請涉及用于調整ISC字的傳輸速率的數據映射設備、方法、和制品。
背景技術:
國際商業系統(IBM)開發了用于在計算機之間傳輸數據的系統間信道(Intersystem Channel,ISC)數據格式。此處的發明人已經認識到,以通用組幀過程(Generic Framing Procedure,GFP)幀封裝ISC字、以便在同步光通信網絡(SONET)上傳輸ISC字將是有利的。與從第一計算機通過SONET通信網絡傳輸ISC字到第二計算機相關聯的問題是布置在第一和第二計算機之間的中繼設備可以具有與第一計算機不同的時鐘速度。當用于以GFP幀封裝ISC字的數據映射設備具有與第一計算機不同的時鐘速度時,要么出現過度運行的(over-running)狀態,要么出現運行不足的(under-running)狀態。
當由數據映射設備從第一計算機接收的ISC字的傳輸速率大于來自數據映射設備的ISC字的傳輸速率時,出現過度運行狀態。如果沒有解決過度運行狀態,則數據映射設備內的內部存儲緩沖器可以溢出,而且ISC字在從第一計算機到第二計算機的傳輸期間會丟失。
當由數據映射設備從第一計算機接收的ISC字的傳輸速率小于來自數據映射設備的ISC字的傳輸速率時,出現運行不足狀態。如果沒有解決運行不足狀態,則數據映射設備內的內部存儲緩沖器將不會具有足夠的ISC字以通過SONET通信網絡傳輸。
因此,需要有一種用于調整來自其中的ISC字的傳輸速率以最小化或者消除運行不足狀態和過度運行狀態的數據映射設備和方法。
發明內容
提供了一種用于依據示例實施例、調整來自GFP數據映射設備的ISC字的傳輸速率的方法。GFP數據映射設備具有FIFO緩沖器和可操作地連接到FIFO緩沖器的收發信機。該方法包括從FIFO緩沖器中讀取從傳輸設備接收的第一和第二ISC字。該方法還包括確定存儲在FIFO緩沖器中的ISC字的第一數目是否大于指示過度運行狀態的第二預定數目。該方法還包括如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者指示字的ISC空閑序列。該方法還包括如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字。該方法還包括從FIFO緩沖器中讀取第三ISC字,以及從收發信機傳輸第三ISC字。
提供了一種依據另一個示例實施例、用于調整ISC字的傳輸速率的數據映射設備。數據映射設備包括收發信機,其被配置為接收ISC字以及傳輸ISC字。該數據映射設備還包括FIFO緩沖器,其可操作地連接到收發信機,并且被配置為存儲由收發信機接收的ISC字。數據映射設備還包括處理器,其可操作地連接到FIFO緩沖器。處理器被配置為從FIFO緩沖器中讀取第一和第二ISC字。處理器還被配置為確定存儲在FIFO緩沖器中的ISC字的第一數目是否大于指示過度運行狀態的第二預定數目。處理器還被配置為,如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者字的ISC空閑序列。該處理器還被配置為,如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字。處理器還被配置為從FIFO緩沖器中讀取第三ISC字,并且使收發信機傳輸該第三ISC字。
提供了依據另一個示例實施例的制品。該制品包括計算機儲存器介質,其中編碼有用于調整來自GFP數據映射設備的ISC字的傳輸速率的計算機程序。GFP數據映射設備具有FIFO緩沖器以及可操作地連接到FIFO緩沖器的收發信機。計算機存儲介質包括用于從FIFO緩沖器中讀取從傳輸設備接收的第一和第二ISC字的代碼。計算機存儲介質還包括用于確定是否以過度運行狀態存儲了第一數目的ISC字的代碼。計算機存儲介質還包括代碼,用于如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者字的ISC空閑序列。計算機存儲介質還包括代碼,用于如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字。計算機存儲介質還包括代碼,用于從FIFO緩沖器中讀取第三ISC字以及從收發信機傳輸第三ISC字。
在閱讀以下附圖和詳細說明后,依據實施例的其它系統、方法和/或計算機程序產品對于本領域的技術人員來說將是顯而易見的。意圖將所有這樣的另外的系統、方法、和/或計算機程序產品包含在本發明的范圍之內,并且由權利要求所保護。
圖1是依據示例實施例、具有用于調整來自其中的ISC字的傳輸速率的GFP數據映射設備的系統的框圖;圖2是在圖1的系統中使用的GFP數據映射設備的框圖;圖3是在圖2的GFP數據映射設備中使用的FIFO緩沖器的框圖;圖4是由圖2中的GFP數據映射設備接收的字的第一輸入流;圖5是由GFP數據映射設備響應于圖4中的字的第一輸入流而輸出的字的第一輸出流;圖6是由圖2中的GFP數據映射設備接收的字的第二輸入流;圖7是由GFP數據映射設備響應于圖6中的字的第二輸入流而輸出的字的第二輸出流;以及圖8-12是用于調整來自GFP數據映射設備的ISC字的傳輸速率的方法的流程圖。
具體實施例方式
參見圖1,其中說明了具有用于調整ISC字的傳輸速率的GFP數據映射設備14的通信系統10。系統10包括計算機12、GFP數據映射設備14、同步光通信網絡18、GFP數據解映射(demapping)設備20、以及計算機24。
為了論述起見,現在將說明在此處使用的一些字的簡要說明。ISC字包含表示四個字符的40位字。此外,ISC字可以包含(i)包含四個10位數據字符的數據字,或者(ii)包含空閑字或者空字的特殊字。“空閑字”包含通常當計算機不傳輸數據幀時所傳輸的字。“字的空閑序列”包含多個相鄰的空閑字。“空字”包含既不是數據字又不是空閑字的字,其可以在任何位置添加到字流中而不影響字流的內容。“字的連續序列”,也稱為字的基本序列,是多對空閑字和數據字,其用來代替空閑序列,并且指示計算機的操作狀態。例如,字的連續序列可以包含字的以下序列第一空閑字、第一數據字、第二空閑字、第二數據字等。最后,“數據幀”包含多個數據字,而且在字的第一空閑序列和字的第二空閑序列之間進行傳輸。
提供了計算機12以將ISC字傳輸到GFP數據映射設備14。此外,計算機12具有控制來自其中的ISC字的傳輸速率的傳輸時鐘(未顯示)。計算機12可操作地連接到GFP數據映射設備14和GFP數據解映射設備16。
參見圖1-3,提供了GFP數據映射設備14,以從計算機12接收ISC字并且調整來自設備14的ISC字的傳輸速率。特別是,當GFP數據映射設備14檢測到過度運行狀態時(即,當由設備14從計算機12接收的ISC字的傳輸速率大于來自設備14的ISC字的傳輸速率時),該設備14可以從接收的數據流中除去所接收的ISC字,以獲得來自設備14的期望的傳輸速率。當存儲在設備14中的ISC字的數目大于第一預定值時,設備14確定已經出現了過度運行狀態。當設備14檢測到運行不足狀態時(即,當由設備14從計算機12接收的ISC字的傳輸速率小于來自設備14的ISC字的傳輸速率時),該設備14可以添加成對的字到數據流中,以獲得來自設備14的期望的傳輸速率。當存儲在設備14中的ISC字的數目小于或等于比第一預定值小的第二預定值時,設備14確定已經出現了運行不足狀態。
如圖所示,GFP數據映射設備14包括收發信機40、先進先出(FIFO)緩沖器42、處理器44、和寄存器45、47。收發信機40可操作地與計算機12進行通信,以便從計算機12接收ISC字。此外,收發信機40可操作地與SONET通信網絡18進行通信,以便通過該SONET通信網絡18傳輸ISC字。收發信機40包括接收時鐘51和傳輸時鐘53。接收時鐘51指示何時由收發信機40從計算機12接收了ISC字。接收時鐘51具有本領域技術人員已知的鎖相環路結構。傳輸時鐘53指示何時將從FIFO緩沖器42中讀取的ISC字從收發信機40通過SONET通信網絡18進行傳輸。當讀取FIFO緩沖器42時,寄存器45中的ISC字移入到寄存器47中,而且FIFO緩沖器42中的另一個ISC字移入到寄存器45中。處理器44在已經進行了FIFO緩沖器42的讀取之后,可以使收發信機40傳輸來自寄存器47的ISC字。作為選擇,如果期望的話,處理器44可以從寄存器47中刪除ISC字。
提供了SONET通信網絡18,以將封裝ISC字的GFP幀傳輸到GFP數據解映射設備20。SONET通信網絡18可操作地連接在GFP數據映射設備14和GFP數據解映射設備20之間。
參見圖1和3,提供了GFP數據解映射設備20,以便對GFP幀進行解碼以獲得封裝在其中的ISC字。設備20還被配置為傳輸ISC字到計算機24。
為了理解起見,下面將說明有關在過度運行狀態和運行不足狀態期間、GFP數據映射設備14怎樣調整ISC字的傳輸速率的簡要描述。參見圖4和5,由GFP數據映射設備14接收輸入數據流70。輸入數據流70包括多個數據字(D1),后面繼之以字的空閑序列(例如,I1、I1、I2、I2、I3、I3、I4、I4、I5、I5)。當設備14檢測到過度運行狀態時,設備14從輸入數據流70中除去第五對空閑字(例如,I5、I5),并且如輸出數據流72所示那樣輸出剩余的ISC字。因此,通過除去空閑字對,減小了設備20的傳輸速率,而且在FIFO緩沖器42中沒有丟失數據字。
參見圖6和7,由GFP數據映射設備14接收輸入數據流74。輸入數據流74包含字的連續序列,其包括多個數據字(D1)和空閑字(I1)。當設備14檢測到運行不足狀態時,設備14將數據字和空閑字(例如,DX,IX)添加到輸入數據流74中,并且輸出數據流76。字DX具有與輸出數據流76中的字D1相同的值。此外,字IX具有與輸出數據流76中的字I1相同的值。
當GFP數據映射設備14在過度運行狀態和運行不足狀態期間調整ISC字的傳輸速率時,設備20利用以下五條規則(i)除了可以在數據幀中插入空字之外,數據幀不被更改;(ii)在數據幀之間必須存在至少四個空閑字對;(iii)可以在任何時候除去在字的連續序列中的一對ISC字;(iv)可以在字的連續序列內插入一對ISC字,其中所插入的ISC字之一包含與字的連續序列中的其它數據字相同的數據字;(v)可以在字的空閑序列中的任何地方插入一對空閑字。
參見圖8-11,現在將說明用于調整來自GFP數據映射設備14的ISC字的傳輸速率的方法。該方法包括步驟100,其相對于剩余的步驟異步地執行。在步驟100,當接收時鐘51指示已經接收了ISC字時,收發信機40從計算機12接收ISC字并且將該字存儲在FIFO緩沖器42中。
在步驟110,處理器44讀取在FIFO緩沖器42中的第一ISC字,其中該第一ISC字移入到寄存器45中,而且第二ISC字從寄存器45移入到寄存器47中。
在步驟112,收發信機40通過SONET通信網絡18將寄存器47中的第二ISC字傳輸到GFP數據解映射設備20。
在步驟114,處理器44確定傳輸時鐘53是否指示要傳輸ISC字。如果步驟114的值等于“是”,則該方法前進到步驟116。否則,方法前進到步驟114。
在步驟116,處理器44確定FIFO緩沖器42中是否存儲有大于第一預定數目的ISC字,其中FIFO緩沖器42中存儲有大于第一數目的ISC字指示過度運行狀態。如果步驟116的值等于“是”,則該方法前進到步驟118。否則,該方法前進到步驟140。
在步驟118,處理器44確定寄存器45、47中的ISC字是否是字的連續序列的一部分。如果步驟116的值等于“是”,則該方法前進到120。否則,該方法前進到步驟130。
在步驟120,處理器44讀取FIFO緩沖器42兩次并且丟棄兩個ISC字。在步驟120之后,該方法前進到步驟110。
再次參見步驟118,如果步驟118的值等于“否”,則該方法前進到步驟130。在步驟130,處理器44確定寄存器45、47中至少一個中的ISC字是否是數據幀的一部分。如果步驟130的值等于“是”,則該方法前進到步驟110。否則,該方法前進到步驟132。
在步驟132,處理器44確定寄存器45、47中的ISC字是否是字的空閑序列的一部分。如果步驟132的值等于“是”,則該方法前進到步驟136。否則,該方法前進到步驟134。
在步驟134,處理器44指示已經出現了通信錯誤。在步驟134之后,該方法前進到步驟110。
在步驟136,處理器44確定寄存器45、47中的ISC字是否是第五連續對的空閑字或者在第五連續對的空閑字之后的后續一對空閑字。如果步驟136的值等于“是”,則該方法前進到步驟138。否則,該方法前進到步驟110。
在步驟138,處理器44讀取FIFO緩沖器42兩次并且丟棄兩個ISC字。在步驟138之后,該方法前進到步驟110。
再次參見步驟116,如果步驟116的值等于“否”,則該方法前進到步驟140。在步驟140,處理器44確定FIFO緩沖器42中是否存儲有小于第二預定數目的ISC字,其中FIFO緩沖器42中存儲有小于第二預定數目的ISC字指示運行不足狀態,其中該第二預定數目小于第一預定數目。如果步驟140的值等于“是”,則該方法前進到步驟146。否則,該方法前進到步驟110。
在步驟146,處理器44確定寄存器45、47中的ISC字是否是字的連續序列的一部分。如果步驟146的值等于“是”,則該方法前進到步驟148。否則,該方法前進到步驟150。
在步驟148,收發信機40通過SONET通信網絡18將與字的連續序列相關聯的空閑字和數據字傳輸到GFP數據解映射設備20。在步驟148之后,該方法前進到步驟114。
在步驟150,處理器44確定寄存器45、47中至少一個中的ISC字是否是數據幀的一部分。如果步驟150的值等于“是”,則該方法前進到步驟110。否則,該方法前進到步驟152。
在步驟152,處理器44確定寄存器45、47中的ISC字是否是字的空閑序列的一部分。如果步驟152的值等于“是”,則該方法前進到步驟156。否則,該方法前進到步驟154。
在步驟154,處理器44指示已經出現了通信錯誤。在步驟154之后,該方法前進到步驟110。
在步驟156,收發信機40通過SONET通信網絡18將與字的空閑序列相關聯的一對空閑字傳輸到GFP數據解映射設備20。在步驟156之后,該方法前進到步驟114。
參見圖11,將說明可以在替換實施例中使用的步驟158和160。特別是,當由GFP數據映射設備14檢測到運行不足狀態時,可以使用步驟158和160來代替上述步驟140-156。
在步驟158,處理器44確定FIFO緩沖器42中是否存儲有小于第二預定數目的ISC字,其中該第二預定數目小于第一預定數目。如果步驟158的值等于“是”,則該方法前進到步驟160。否則,該方法前進到步驟110。
在步驟160,收發信機40通過SONET通信網絡18傳輸空字到GFP數據解映射設備20。在步驟160之后,該方法前進到步驟114。
用于調整ISC字的傳輸速率的數據映射設備和方法提供了優于其它設備和方法的顯著優點。特別是,數據映射設備和方法提供了調整ISC字的傳輸速率以最小化或者消除GFP數據映射設備中的運行不足狀態和過度運行狀態的技術效果。
雖然參考示例實施例描述了本發明,但是本領域的技術人員應當理解可以進行等效的各種改變,其可以替換本發明中的元素而沒有背離本發明的范圍。此外,可以對本發明的示教進行許多修改以適應具體的情況而沒有背離本發明的范圍。因此,意圖使本發明不局限于用于執行這個發明的、所公開的實施例,而且本發明包括屬于預期權利要求的范圍之內的所有實施例。此外,術語第一、第二等的使用不表示任何重要性順序,而是將第一、第二等的術語用于區分一個元素和另一個元素。
權利要求
1.一種用于調整來自GFP數據映射設備的ISC字的傳輸速率的方法,該GFP數據映射設備具有FIFO緩沖器和可操作地連接到所述FIFO緩沖器的收發信機,該方法包含從FIFO緩沖器中讀取從傳輸設備接收的第一和第二ISC字;確定存儲在FIFO緩沖器中的ISC字的第一數目是否大于指示過度運行狀態的第二預定數目;如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者字的ISC空閑序列;如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字;以及從FIFO緩沖器讀取第三ISC字并且從收發信機傳輸所述第三ISC字。
2.如權利要求1所述的方法,其中刪除第一和第二ISC字的步驟包含如果第一和第二ISC字包含第五連續對的ISC空閑字或者在第五連續對的ISC空閑字之后的一對ISC空閑字,則刪除第一和第二ISC字。
3.如權利要求1所述的方法,還包含確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目;如果第一數目小于第三預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列;以及如果第一和第二ISC字指示字的ISC連續序列,則從收發信機傳輸ISC空閑字和ISC數據字。
4.如權利要求3所述的方法,其中,ISC數據字具有與第一ISC字相同的位值。
5.如權利要求1所述的方法,還包含確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目;如果第一數目小于第三預定數目,則確定第一和第二ISC字是否指示字的ISC空閑序列;以及如果第一和第二ISC字指示字的ISC空閑序列,則從收發信機傳輸第三和第四ISC空閑字。
6.如權利要求1所述的方法,還包含確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目;以及從收發信機傳輸第三ISC空字。
7.如權利要求1所述的方法,其中從FIFO緩沖器中讀取第三ISC字并且從收發信機傳輸第三ISC字的步驟包含從收發信機通過SONET通信網絡傳輸第三ISC字。
8.一種用于調整ISC字的傳輸速率的數據映射設備,包含收發信機,被配置為接收ISC字和傳輸ISC字;FIFO緩沖器,可操作地連接到收發信機,該FIFO緩沖器被配置為存儲由收發信機接收的ISC字;以及處理器,可操作地連接到FIFO緩沖器,該處理器被配置為從FIFO緩沖器中讀取第一和第二ISC字,處理器被配置為確定存儲在FIFO緩沖器中的ISC字的第一數目是否大于指示過度運行狀態的第二預定數目,處理器還被配置為,如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者字的ISC空閑序列,該處理器還被配置為,如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字,處理器還被配置為從FIFO緩沖器中讀取第三ISC字,并且使收發信機傳輸該第三ISC字。
9.如權利要求8所述的數據映射設備,其中該處理器還被配置為,如果第一和第二ISC字包含第五連續對的ISC空閑字或者在第五連續對的ISC空閑字之后的一對ISC空閑字,則刪除第一和第二ISC字。
10.如權利要求8所述的數據映射設備,其中處理器還被配置為,確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目,處理器還被配置為,如果第一數目小于第三預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列,處理器還被配置為,如果第一和第二ISC字指示字的ISC連續序列,則使收發信機傳輸ISC空閑字和ISC數據字。
11.如權利要求10所述的數據映射設備,其中ISC數據字具有與第一ISC字相同的位值。
12.如權利要求8所述的數據映射設備,其中處理器還被配置為,確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目,處理器還被配置為,如果第一數目小于第三預定數目,則確定第一和第二ISC字是否指示字的ISC空閑序列,處理器還被配置為,如果第一和第二ISC字指示字的ISC空閑序列,則使收發信機傳輸第三和第四ISC空閑字。
13.如權利要求8所述的數據映射設備,其中處理器還被配置為,確定存儲在FIFO緩沖器中的ISC字的第一數目是否小于指示運行不足狀態的第三預定數目,處理器還被配置為,使收發信機傳輸第三ISC空字。
14.如權利要求8所述的數據映射設備,其中收發信機被配置為通過SONET通信網絡傳輸第三ISC字。
15.一種制品,包含計算機儲存介質,其中編碼有計算機程序,該程序用于調整來自GFP數據映射設備的ISC字的傳輸速率,該GFP數據映射設備具有FIFO緩沖器和可操作地連接到所述FIFO緩沖器的收發信機,該計算機存儲介質包含用于執行先前方法權利要求中所述的任一方法的代碼。
全文摘要
提供了一種用于調整ISC字的傳輸速率的數據映射設備、方法、和制品。GFP數據映射設備具有FIFO緩沖器以及可操作地連接到該FIFO緩沖器的收發信機。該方法包括從FIFO緩沖器中讀取從傳輸設備接收的第一和第二ISC字。該方法還包括確定存儲在FIFO緩沖器中的ISC字的第一數目是否大于指示過度運行狀態的第二預定數目。該方法還包括如果第一數目大于第二預定數目,則確定第一和第二ISC字是否指示字的ISC連續序列或者指示字的ISC空閑序列。該方法還包括如果第一和第二ISC字指示字的ISC連續序列或者指示字的ISC空閑序列的話,則刪除該第一和第二ISC字。該方法還包括從FIFO緩沖器讀取第三ISC字并且從收發信機中傳輸第三ISC字。
文檔編號H04L1/00GK1848809SQ200610002410
公開日2006年10月18日 申請日期2006年1月27日 優先權日2005年1月28日
發明者托馬斯·A.·格里格, 卡斯莫·M.·得庫薩蒂斯 申請人:國際商業機器公司