(57)【特許請求の範囲】
【請求項１】
送信すべき第１データに対応するインターフェースボードおよび論理通路を特定するステップと、
前記論理通路が前記第１データを送信する能力を有する場合に、
前記インターフェースボードのインターフェースボード識別子および前記論理通路の論理通路識別子を含むヘッダ情報を前記第１データに追加して第２データを取得し、前記第２データを前記論理通路に対応するバッファ領域に記憶するステップと、
前記第２データを前記バッファ領域から読み取るステップと、
読み取られた前記第２データのヘッダ情報から、前記インターフェースボード識別子および前記論理通路識別子を取得するステップと、
読み取られた前記第２データのヘッダ情報を除去して前記第１データを取得するステップと、
取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信するステップと、を含み、
送信すべき前記第１データに対応するインターフェースボードおよび論理通路を特定した後、
前記論理通路の余剰リソースの大きさを取得するステップと、
前記余剰リソースの大きさが第１データの長さ以上である場合に、前記論理通路が前記第１データを送信する能力を有すると特定するステップと、
前記論理通路が前記第１データを送信する能力を有する場合に、前記論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの差分に更新するステップと、を更に含むことを特徴とするデータ伝送方法。
【請求項２】
前記第２データを前記バッファ領域から読み取った後、前記データ伝送方法は、
前記バッファ領域に対応する論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの合計に更新するステップを更に含むことを特徴とする請求項１に記載のデータ伝送方法。
【請求項３】
前記論理通路は、１つの送信ウィンドウに対応し、
前記送信ウィンドウの長さは、前記論理通路に対応するバッファ領域の大きさと同じであり、
前記送信ウィンドウのパラメータは、ウィンドウ開始位置、ウィンドウ終了位置およびウィンドウ占用位置を含み、
前記ウィンドウ占用位置とウィンドウ終了位置との間の長さは、前記論理通路の余剰リソースの大きさであり、
前記論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの差分に更新するステップは、
前記論理通路に対応する送信ウィンドウのウィンドウ占用位置を前記送信ウィンドウのウィンドウ終了位置の方向へ所定長さだけ移動し、前記所定長さは、前記第１データの長さであることを含むことを特徴とする請求項２に記載のデータ伝送方法。
【請求項４】
前記バッファ領域に対応する論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの合計に更新するステップは、
前記論理通路に対応する送信ウィンドウのウィンドウ占用位置を前記送信ウィンドウのウィンドウ開始位置の方向へ前記所定長さだけ移動すること、または、
前記送信ウィンドウのウィンドウ開始位置を前記送信ウィンドウのウィンドウ占用位置の方向へ前記所定長さだけ移動し、前記送信ウィンドウのウィンドウ終了位置を前記送信ウィンドウのウィンドウ開始位置の移動方向へ前記所定長さだけ移動することを含むことを特徴とする請求項３に記載のデータ伝送方法。
【請求項５】
取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信する過程は、
前記論理通路を介して前記第１データを前記インターフェースボードが送信するときに用いられる第１レートを取得することと、
前記第１レートに基づいて、前記インターフェースボードへ前記第１データを送信するための第２レートを特定することと、
前記第２レートに基づいて、取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信することと、を含み、
前記第２レートは、前記第１レートより小さいことを特徴とする請求項１に記載のデータ伝送方法。
【請求項６】
前記第１レートに基づいて、前記インターフェースボードへの前記第１データを送信するための第２レートを特定する過程は、
特徴データに基づいて前記インターフェースボードの転送方式を特定することと、
前記転送方式に基づいて前記第１データを処理し、前記第１レートで送信しようとする第３データを取得することと、
前記第３データの取得中に前記第１データを処理するレートを前記第２レートとして特定することと、を含むことを特徴とする請求項５に記載のデータ伝送方法。
【請求項７】
送信すべき第１データに対応するインターフェースボードおよび論理通路を特定するための特定モジュールと、
前記論理通路が前記第１データを送信する能力を有する場合に、前記インターフェースボードのインターフェースボード識別子および前記論理通路の論理通路識別子を含むヘッダ情報を前記第１データに追加して第２データを取得するための処理モジュールと、
前記第２データを前記論理通路に対応するバッファ領域に記憶するための記憶モジュールと、
前記第２データを前記バッファ領域から読み取り、読み取られた前記第２データのヘッダ情報から、前記インターフェースボード識別子および前記論理通路識別子を取得し、読み取られた前記第２データのヘッダ情報を除去して前記第１データを取得するための読取モジュールと、
取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信するための送信モジュールと、を備え、
前記処理モジュールは、更に、
送信すべき前記第１データに対応するインターフェースボードおよび論理通路が前記特定モジュールによって特定された後、前記論理通路の余剰リソースの大きさを取得し、
前記余剰リソースの大きさが前記第１データの長さ以上である場合に、前記論理通路が前記第１データを送信する能力を有すると特定し、
前記論理通路が前記第１データを送信する能力を有する場合に、前記論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの差分に更新することを特徴とするデータ伝送装置。
【請求項８】
前記処理モジュールは、更に、
前記第２データが前記読取モジュールによって前記バッファ領域から読み取られた後、前記バッファ領域に対応する論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの合計に更新することを特徴とする請求項７に記載のデータ伝送装置。
【請求項９】
前記論理通路は、１つの送信ウィンドウに対応し、
前記送信ウィンドウの長さは、前記論理通路に対応するバッファ領域の大きさと同じであり、
前記送信ウィンドウのパラメータは、ウィンドウ開始位置、ウィンドウ終了位置およびウィンドウ占用位置を含み、
前記ウィンドウ占用位置とウィンドウ終了位置との間の長さは、前記論理通路の余剰リソースの大きさであり、
前記論理通路の余剰リソースの大きさを前記余剰リソースの大きさと第１データの長さとの差分に更新する過程に、前記処理モジュールは、前記論理通路に対応する送信ウィンドウのウィンドウ占用位置を前記送信ウィンドウのウィンドウ終了位置の方向へ所定長さだけ移動し、前記所定長さは、前記第１データの長さであることを特徴とする請求項８に記載のデータ伝送装置。
【請求項１０】
前記バッファ領域に対応する論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの合計に更新する過程に、前記処理モジュールは、
前記論理通路に対応する送信ウィンドウのウィンドウ占用位置を前記送信ウィンドウのウィンドウ開始位置の方向へ前記所定長さだけ移動し、または、
前記送信ウィンドウのウィンドウ開始位置を前記送信ウィンドウのウィンドウ占用位置の方向へ前記所定長さだけ移動し、前記送信ウィンドウのウィンドウ終了位置を前記ウィンドウ開始位置の移動方向へ前記所定長さだけ移動することを特徴とする請求項９に記載のデータ伝送装置。
【請求項１１】
取得された第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信する過程に、前記送信モジュールは、
前記論理通路を介して前記第１データを前記インターフェースボードが送信するときに用いられる第１レートを取得し、
前記第１レートに基づいて、前記インターフェースボードへ前記第１データを送信するための第２レートを特定し、
前記第２レートに基づいて、取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信し、
前記第２レートは、前記第１レートより小さいことを特徴とする請求項７に記載のデータ伝送装置。
【請求項１２】
前記第１レートに基づいて前記インターフェースボードへ第１データを送信するための第２レートを特定する過程に、前記送信モジュールは、
特徴データに基づいて前記インターフェースボードの転送方式を特定し、
前記転送方式に基づいて前記第１データを処理し、前記第１レートで送信しようとする第３データを取得し、
前記第３データの取得中に前記第１データを処理するレートを前記第２レートとして特定することを特徴とする請求項１１に記載のデータ伝送装置。
【請求項１３】
ネットワーク設備であって、
第１速度制限装置と、第２速度制限装置とを備え、
前記第１速度制限装置は、
送信すべき第１データに対応するインターフェースボードおよび論理通路を特定し、
前記論理通路が前記第１データを送信する能力を有する場合に、前記インターフェースボードのインターフェースボード識別子および前記論理通路の論理通路識別子を含むヘッダ情報を前記第１データに追加して第２データを取得し、
第２速度制限装置は、前記第１速度制限装置から送信された前記第２データを受信した後、
前記第２データのヘッダ情報から前記論理通路識別子を取得し、
前記第２データを前記論理通路識別子に対応するバッファ領域に記憶し、
前記第２データを前記バッファ領域から読み取り、
読み取られた前記第２データのヘッダ情報からインターフェースボード識別子および論理通路識別子を取得し、読み取られた前記第２データのヘッダ情報を除去して前記第１データを取得し、
取得された前記第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信し、前記ネットワーク設備は、
送信すべき前記第１データに対応するインターフェースボードおよび論理通路を特定した後、
前記論理通路の余剰リソースの大きさを取得し、
前記余剰リソースの大きさが第１データの長さ以上である場合に、前記論理通路が前記第１データを送信する能力を有すると特定し、
前記論理通路が前記第１データを送信する能力を有する場合に、前記論理通路の余剰リソースの大きさを前記余剰リソースの大きさと前記第１データの長さとの差分に更新することを特徴とするネットワーク設備。
【発明の詳細な説明】
【背景技術】
【０００１】
関連出願の相互引用
本願は、出願日が２０１７年９月２７日であり、出願番号が２０１７１０８８９１３９．Ｘであり、発明名称が「データ伝送方法、装置およびネットワーク設備」である中国特許出願の優先権を主張し、当該出願の全文が引用により本願に組み込まれる。
【０００２】
ネットワーク設備（例えば、ルータ、スイッチ等）は、通常、メイン制御ボードおよびインターフェースボードを備える。ネットワーク設備が集中型として構成されるときに、メイン制御ボードは、高速インターフェースを介してインターフェースボードに接続してもよい。ネットワーク設備が分散型として構成されるときに、当該ネットワーク設備は、ラインカードを更に備え、類似的に、ラインカードは、高速インターフェースを介してインターフェースボードに接続してもよい。ここでの高速インターフェースは、例えば、ＧＥレベルに達せる伝送レートのイーサネット（登録商標）インターフェースである。イーサネットインターフェースの使用により、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ、中央処理装置）に対する占用が減少し、マルチコアＣＰＵの並行性が向上し、且つメイン制御ボードが性能ボトルネックにならない。
【０００３】
また、インターフェースボードが非イーサネットインターフェース（例えば、Ｅ１インターフェース、Ｔ１インターフェース、非同期シリアルインターフェース、同期シリアルインターフェース、ＡＭ（Ａｎａｌｏｇ Ｍｏｄｅｍ、アナログモデム）インターフェース等）を介して他の設備に接続されるが、非イーサネットインターフェースの伝送レートは、遅い（例えば、１００Ｍレベルの伝送レート）。したがって、メイン制御ボードまたはラインカードからインターフェースボードへ送信されるデータのレートと、インターフェースボードから他の設備へ送信されるデータのレートとは、非常に整合しない。これで、インターフェースボードがイーサネットインターフェースを介して大量のデータを受信した後、非イーサネットインターフェースを介して少ないデータのみを送信するため、パケットロスが発生する恐れがある。
【０００４】
図面の簡単な説明
本発明の実施例または従来技術における技術案がより明瞭に説明されるように、以下では、本発明の実施例または従来技術の記述に使用必要な図面を簡単に紹介する。明らかに、以下の記述に係る図面が単に本発明に記載の幾つかの実施例に過ぎず、当業者であれば、本発明の実施例のこれらの図面から他の図面を取得可能である。
【図面の簡単な説明】
【０００５】
【図１】本発明の一実施形態におけるデータ伝送方法のフローチャートである。
【図２】本発明の一実施形態におけるネットワーク設備の構造模式図である。
【図３Ａ】本発明の一実施形態における基本情報表の模式図である。
【図３Ｂ】本発明の一実施形態における基本情報表の模式図である。
【図３Ｃ】本発明の一実施形態におけるウィンドウ管理の模式図である。
【図３Ｄ】本発明の一実施形態におけるウィンドウ管理の模式図である。
【図３Ｅ】本発明の一実施形態におけるウィンドウ管理の模式図である。
【図３Ｆ】本発明の一実施形態におけるウィンドウ管理の模式図である。
【図４Ａ】本発明の一実施形態におけるメッセージフォーマットの模式図である。
【図４Ｂ】本発明の一実施形態におけるメッセージフォーマットの模式図である。
【図５】本発明の一実施形態におけるデータ伝送装置の構造図である。
【図６】本発明の一実施形態におけるネットワーク設備のハードウェア構造図である。
【発明を実施するための形態】
【０００６】
本発明の実施例で使用される用語は、単に特定の実施例を記述する目的であり、本発明を制限するためのものではない。本発明および添付する特許請求の範囲で使用される単数形式の「一種」、「前記」および「当該」も、文脈から他の意味を明瞭で分かる場合でなければ、複数の形式を含むことを意図する。理解すべきことは、本文で使用される用語「および／または」が、１つまたは複数の関連する列挙項目を含む如何なる或いは全ての可能な組み合わせを指す。
【０００７】
理解すべきことは、本発明の実施例において第１、第２、第３等という用語を用いて各種の情報を記述するが、これらの情報は、これらの用語に限定されるものではない。これらの用語は、単に同一のタイプの情報同士を区分するために用いられる。例えば、本発明の範囲を逸脱しない限り、第１情報が第２情報と呼ばれてもよく、類似的に、第２情報が第１情報と呼ばれてもよい。これは、コンテキストに依存する。例えば、ここで使用される言葉「場合」は、「・・・とき」や「・・・ときに」あるいは「特定の状況に応じて」として解釈されてもよい。
【０００８】
本発明の実施例は、ネットワーク設備に適用可能なデータ伝送方法を提供する。本文では、当該ネットワーク設備におけるメイン制御ボードおよびインターフェースボードが高速インターフェースを介して接続されることを例として説明する。ラインカードおよびインターフェースボードが高速インターフェースを介して接続される場合は、これに類似するため、繰り返し説明しない。ネットワーク設備に含まれるメイン制御ボードの数は、１つまたは複数であってもよく、インターフェースボードの数は、１つまたは複数であってもよい。メイン制御ボードは、イーサネットインターフェース、ＰＣＩＥ（Ｐｅｒｉｐｈｅｒａｌ Ｃｏｍｐｏｎｅｎｔ Ｉｎｔｅｒｃｏｎｎｅｃｔ Ｅｘｐｒｅｓｓ、高速型ペリフェラルコンポーネントインターコネクト規格）、ＳＰＩ４（Ｓｅｒｉａｌ Ｐｅｒｉｐｈｅｒａｌ Ｉｎｔｅｒｆａｃｅ、串行外設インターフェース）等の方式でインターフェースボードに接続されてもよく、インターフェースボードは、Ｅ１インターフェース、Ｔ１インターフェース、非同期シリアルインターフェース、同期シリアルインターフェース、ＡＭインターフェース等方式で他の設備に接続されてもよい。通常の場合において、メイン制御ボードとインターフェースボードとの間のデータ伝送レートは、インターフェースボードと他の設備との間のデータ伝送レートより大きい。
【０００９】
図１は、本発明の実施例に係るデータ伝送方法のフロー模式図である。当該データ伝送方法は、メイン制御ボードとインターフェースボードとを備えるネットワーク設備に適用する。
【００１０】
ステップ１０１では、送信すべき第１データに対応するインターフェースボードおよび論理通路を特定する。当該論理通路が当該第１データを送信する能力を有する場合に、ヘッダ情報を当該第１データに追加して第２データを取得し、当該第２データを当該論理通路に対応するバッファ領域に記憶する。当該ヘッダ情報は、当該インターフェースボードのインターフェースボード識別子と当該論理通路の論理通路識別子とを含むが、それらに限定されない。
【００１１】
一例では、「送信すべき第１データに対応するインターフェースボードおよび論理通路を特定する」過程は、送信すべき第１データについて、第１データの宛先アドレス情報（例えば、宛先ＩＰアドレスおよび／または宛先ＭＡＣアドレス等）によって転送表を検索し、当該宛先アドレス情報に対応する出力インターフェースを取得し、この出力インターフェースに対応する１つのインターフェースボードと１つの論理通路を特定することを含むが、それに限定されない。当該インターフェースボードは、第１データに対応するインターフェースボードであり、当該論理通路は、第１データに対応する論理通路である。
【００１２】
一例では、送信すべき第１データに対応するインターフェースボードおよび論理通路が特定された後、当該論理通路が当該第１データを送信する能力を有するか否かを判断する。そうであれば、ヘッダ情報を当該第１データに追加して第２データを取得し、そうでなければ、当該第１データを送信せず、メモリに第１データを記憶し、当該論理通路が当該第１データを送信する能力を有してから、メモリから第１データを読み取り、当該第１データにヘッダ情報を追加して第２データを取得する。
【００１３】
一例では、論理通路が第１データを送信する能力を有するか否かを判断するために、以下の方式を採用する。つまり、論理通路の余剰リソースの大きさを取得し、当該余剰リソースの大きさが第１データの長さ以上である場合に、当該論理通路が当該第１データを送信する能力を有すると特定し、当該余剰リソースの大きさが第１データの長さより小さい場合に、当該論理通路が当該第１データを送信する能力を有さないと特定する。
【００１４】
更に、当該論理通路が当該第１データを送信する能力を有する場合に、当該論理通路の余剰リソースの大きさを現在の余剰リソースの大きさと第１データの長さとの差分に更新する。
【００１５】
一例では、「ヘッダ情報を第１データに追加して第２データを取得する」過程は、当該インターフェースボードに対応する一意識別子（以下では、更に、インターフェースボード識別子と略称されてもよい）を特定し、当該論理通路の一意識別子（以下では、更に、論理通路識別子と略称されてもよい）を特定することを含んでもよいが、それに限定されない。その後、当該第１データにヘッダ情報を追加し、当該ヘッダ情報は、当該インターフェースボード識別子および当該論理通路識別子を含むが、それらに限定されない。ヘッダ情報が追加された第１データは、第２データと呼ばれてもよい。
【００１６】
一例では、「第２データを当該論理通路に対応するバッファ領域に記憶する」過程は、論理通路のそれぞれが１つのバッファ領域に対応してもよい。しかし、複数の論理通路が同一のバッファ領域に対応してもよい。したがって、第２データが取得された後、当該第２データを当該論理通路に対応するバッファ領域に記憶する。
【００１７】
ステップ１０２では、バッファ領域から第２データを読み取り、当該第２データのヘッダ情報からインターフェースボード識別子および論理通路識別子を取得し、当該第２データのヘッダ情報を除去して第１データを取得し、取得された第１データを当該インターフェースボード識別子に対応するインターフェースボードへ送信する。
【００１８】
一例では、第２データがバッファ領域から読み取られた後、当該バッファ領域に対応する論理通路の余剰リソースの大きさを現在の余剰リソースの大きさと第１データの長さとの合計に更新する。
【００１９】
一例では、論理通路が当該第１データを送信する能力を有するか否かを判断するために、論理通路のバッファ領域は、ウィンドウメカニズムを採用して実施する。例えば、論理通路は、１つの送信ウィンドウに対応してもよく、当該送信ウィンドウの長さは、当該論理通路に対応するバッファ領域の大きさと同じである。また、当該送信ウィンドウのパラメータは、ウィンドウ開始位置、ウィンドウ終了位置およびウィンドウ占用位置を含むが、それらに限定されない。当該ウィンドウ開始位置と当該ウィンドウ終了位置との間の長さは、当該送信ウィンドウの長さであり、当該ウィンドウ占用位置と当該ウィンドウ終了位置との間の長さは、当該論理通路の余剰リソースの大きさである。
【００２０】
これを基に、上記「論理通路の余剰リソースの大きさを現在の余剰リソースの大きさと第１データの長さとの差分に更新する」過程は、当該ウィンドウ占用位置を当該ウィンドウ終了位置の方向へ所定長さだけ移動することを含んでもよい。
【００２１】
また、上記「バッファ領域に対応する論理通路の余剰リソースの大きさを現在の余剰リソースの大きさと第１データの長さとの合計に更新する」は、当該ウィンドウ占用位置を当該ウィンドウ開始位置の方向へ所定長さだけ移動すること、または、当該ウィンドウ開始位置を当該ウィンドウ占用位置の方向へ所定長さだけ移動し、且つ当該ウィンドウ終了位置を当該ウィンドウ開始位置の移動方向へ所定長さだけ移動することを含むが、それらに限定されない。上記所定長さは、前記第１データの長さであってもよい。
【００２２】
一例では、第２データがバッファ領域から読み取られた後、当該バッファ領域における当該第２データの位置を取得し、当該バッファ領域における当該第２データの位置に基づいて当該送信ウィンドウのウィンドウ開始位置を特定する。その後、当該ウィンドウ開始位置の移動長さに基づいて当該送信ウィンドウのウィンドウ終了位置を移動する。
【００２３】
一例では、第２データのヘッダ情報がインターフェースボード識別子および論理通路識別子を含むため、第２データのヘッダ情報からインターフェースボード識別子および論理通路識別子を取得し、当該第２データのヘッダ情報を除去することで第１データを取得する。
【００２４】
一例では、「第１データを当該インターフェースボード識別子に対応するインターフェースボードへ送信する」過程は、当該論理通路を介して第１データを当該インターフェースボードが送信するときに用いられる第１レートを取得し、第１レートに基づいて当該インターフェースボードへ第１データを送信するための第２レートを特定し、第２レートで第１データを当該インターフェースボード識別子に対応するインターフェースボードへ送信することを含む。当該第２レートは、第１レートより小さい。
【００２５】
一例では、「第１レートに基づいて当該インターフェースボードへ第１データを送信するための第２レートを特定する」過程は、特徴データに基づいて当該インターフェースボードの転送方式を特定し、転送方式によって第１データを処理し、前記第１レートで送信しようとする第３データを取得し、前記第１データを処理するレートを前記第２レートとして特定することを含んでもよいが、それに限定されない。
【００２６】
一例では、「特徴データに基づいて当該インターフェースボードの転送方式を特定する」前に、更に、以下のステップを含む。つまり、予め配置された基本情報表を検索し、当該論理通路識別子に対応する特徴タイプ識別子を取得し、その後、当該特徴タイプ識別子に対応する特徴データを取得する。当該基本情報表は、論理通路識別子と特徴タイプ識別子との対応関係を記録するために用いられる。
【００２７】
上記技術案を基に、本発明の実施例では、複数の論理通路が同一のメイン制御ボードの処理能力を共有可能であり、且つデータを各論理通路に対応するバッファ領域に記憶し、論理通路を介してバッファ領域におけるデータを送信可能であり、メイン制御ボードとインターフェースボードとのレート不整合の問題が解決でき、インターフェースボードのパケットロス問題が回避され、ＱＯＳ（Ｑｕａｌｉｔｙ Ｏｆ Ｓｅｒｖｉｃｅ、サービス品質）需要を満たす。
【００２８】
以下では、具体的な応用場面を組み合わせて上記技術案を詳細に説明する。図２は、本応用場面のネットワーキング模式図である。図２では、メイン制御ボード２１０、インターフェースボード２３１、インターフェースボード２３２を例として説明する。しかし、インターフェースボードの数は、より多くなってもよい。図２において、第１速度制限装置２１２は、メイン制御ボード２１０に増設された手段であり、且つ第２速度制限装置２２０も増設された手段である。
【００２９】
第２速度制限装置２２０は、メイン制御ボード内に配置されてもよく、メイン制御ボード２１０のそれぞれには、１つずつの第２速度制限装置２２０が配置され、または、第２速度制限装置２２０もインターフェースボード２３１、２３２内に配置されてもよく、インターフェースボード２３１、２３２のそれぞれには、１つずつの第２速度制限装置２２０が配置され、または、第２速度制限装置２２０は、メイン制御ボード２１０若しくはインターフェースボード２３１、２３２内に配置されず、単独で配置されてもよい。図２では、１つの第２速度制限装置２２０を単独で配置することを例として説明する。
【００３０】
第１速度制限装置２１２は、メイン制御ボード２１０に増設された手段であり、１つのハードウェア装置であってもよく、そのタイプについて限定しない。第２速度制限装置２２０がメイン制御ボード２１０またはインターフェースボード２３１、２３２に増設された手段である場合に、第２速度制限装置２２０は、１つのハードウェア装置であってもよく、第２速度制限装置２２０が単独で配置された場合に、第２速度制限装置２２０は、独立するシングルボードであってもよく、そのタイプについて限定しない。
【００３１】
メイン制御ボード２１０は、イーサネットインターフェース、ＰＣＩＥ、ＳＰＩ４等の方式で第２速度制限装置２２０に接続されてもよく、且つ第２速度制限装置２２０は、イーサネットインターフェース、ＰＣＩＥ、ＳＰＩ４等の方式でインターフェースボード２３１／インターフェースボード２３２に接続されてもよい。図２において、メイン制御ボード２１０と第２速度制限装置２２０とがイーサネットインターフェース接続であるが、イーサネットコントローラ２１３は、イーサネットインターフェース接続を実現するために用いられる。また、インターフェースボード２３１／インターフェースボード２３２は、Ｅ１インターフェース、Ｔ１インターフェース、非同期シリアルインターフェース、同期シリアルインターフェース、ＡＭインターフェース等の方式で他の設備に接続されてもよい。
【００３２】
メイン制御ボード２１０と第２速度制限装置２２０の接続方式は、第２速度制限装置２２０とインターフェースボード２３１／インターフェースボード２３２の接続方式と同じであってもよい。このように、メイン制御ボード２１０と第２速度制限装置２２０の最大データ伝送レートは、第２速度制限装置２２０とインターフェースボード２３１／インターフェースボード２３２の最大データ伝送レートと同じであり、何れもインターフェースボード２３１／インターフェースボード２３２と他の設備の最大データ伝送レートよりも大きくなる。
【００３３】
図２に示すように、メイン制御ボード２１０では、プロセッサ２１１（例えば、中央処理装置（ＣＰＵ））がバスを介して第１速度制限装置２１２に接続されてもよく、第１速度制限装置２１２がバスを介してイーサネットコントローラ２１３に接続されてもよい。
【００３４】
図２に示すように、メイン制御ボード２１０は、更に論理通路を確立してもよく、当該論理通路是データの伝送通路、例えば、データの伝送方向がプロセッサ２１１、第１速度制限装置２１２、イーサネットコントローラ２１３、第２速度制限装置２２０、インターフェースボード２３１／インターフェースボード２３２での出力インターフェースであるときに、論理通路は、１つのデータ伝送通路「プロセッサ２１１→第１速度制限装置２１２→イーサネットコントローラ２１３→第２速度制限装置２２０→インターフェースボード２３１／インターフェースボード２３２での出力インターフェース」であってもよい。つまり、論理通路は、上記各デバイスを通過する。
【００３５】
図２において、論理通路がインターフェースボード２３１、２３２にマークされているが、論理通路が当該インターフェースボード２３１、２３２に位置することを意味しておらず、当該論理通路の出力インターフェースが当該インターフェースボード２３１、２３２に位置することのみを意味する。論理通路の出力インターフェースは、Ｅ１インターフェース、Ｔ１インターフェース、非同期シリアルインターフェース、同期シリアルインターフェース、ＡＭインターフェース等であってもよく、これについて限定しない。
【００３６】
論理通路の出力インターフェースは、論理インターフェースであってもよく、物理インターフェースであってもよい。異なる論理通路は、異なる物理インターフェースを占用してもよく、異なる論理通路は、同じ物理インターフェースを共有してもよく、１つの論理通路は、複数の物理インターフェースを占用してもよい。例えば、論理通路２４１は、物理インターフェース１および物理インターフェース２を占用し、論理通路２４２は、物理インターフェース３を占用し、論理通路２４３および論理通路２４４は、物理インターフェース４を共有する。即ち、論理通路２４１のデータ伝送レートは、物理インターフェース１と物理インターフェース２とのデータ伝送レートの合計であり、論理通路２４２のデータ伝送レートは、物理インターフェース３のデータ伝送レートであり、論理通路２４３と論理通路２４４とのデータ伝送レートの合計は、物理インターフェース４のデータ伝送レートである。
【００３７】
メイン制御ボード２１０は、論理通路を確立する過程に、各論理通路へバッファ領域を割り当て、論理通路とバッファ領域との対応関係を確立してもよい。図２に示すように、論理通路２４１は、バッファ領域２５１に対応し、論理通路２４２は、バッファ領域２５２に対応し、論理通路２４３は、バッファ領域２５３に対応し、論理通路２４４は、バッファ領域２５４に対応する。当該論理通路２４１を介して送信される必要のあるデータは、まず、バッファ領域２５１にキャッシュされ、その後、バッファ領域２５１からデータを読み取り、最終的に当該論理通路２４１を介して当該データを送信する。当該論理通路２４２を介して送信される必要のあるデータは、まず、バッファ領域２５２にキャッシュされ、その後バッファ領域２５２からデータを読み取り、最終的に当該論理通路２４２を介して当該データを送信する。これをもって類推する。
【００３８】
論理通路を確立する過程に、メイン制御ボード２１０は、需要に応じて複数の論理通路を確立してもよく、この論理通路の数について限定しない。論理通路は、「プロセッサ２１１→第１速度制限装置２１２→イーサネットコントローラ２１３→第２速度制限装置２２０→インターフェースボード２３１／インターフェースボード２３２での出力インターフェース」に対する１つの論理通路であってもよく、これについて限定しない。論理通路は、１つの出力インターフェース（インターフェースボードに位置する）に対応できればよい。論理通路を介してデータを送信する過程は、当該出力インターフェースを介してデータを送信する過程である。
【００３９】
論理通路の確立が完了された後、メイン制御ボード２１０は、論理通路へバッファ領域を割り当て、論理通路へ１つの送信ウィンドウを配置してもよい。当該バッファ領域の大きさは、論理通路に対応する出力インターフェースのデータ伝送レートに関連し、且つ当該送信ウィンドウの長さは、当該論理通路に対応するバッファ領域の大きさと同じである。例えば、出力インターフェースのデータ伝送レートが５６Ｋｂｉｔｓ／ｓであるときに、バッファ領域の大きさおよび送信ウィンドウの長さは、何れも５６Ｋである。
【００４０】
第１速度制限装置２１２は、各論理通路の基本情報表を含んでもよく、且つ論理通路の基本情報は、インターフェースボード識別子、論理通路識別子、インターフェースタイプ、ウィンドウ位置情報等を含んでもよいが、それらに限定されない。論理通路のそれぞれは、１つの基本情報表に対応し、当該基本情報表の内容は、図３Ａまたは図３Ｂを参照してもよく、図３Ａは、初期時点の基本情報表の例示であり、図３Ｂは、ある時点の基本情報表の例示である。
【００４１】
インターフェースボード識別子ＤｏｗｎＰｏｒｔは、メイン制御ボードにおける、インターフェースボードに接続される下りポートの識別子であり、メイン制御ボードの下りポート番号である。当該下りポート番号は、システムにおいて統一に番号をつける。この下りポート番号に基づけば、メイン制御ボードは、どの下りポートを介してデータをインターフェースボードへ送信するかを知ることができる。
【００４２】
論理通路識別子ＣｈＩＤは、論理通路の一意識別子である。例えば、論理通路識別子は、インターフェースボードの所在するスロット番号（ＳｌｏｔＩＤ）、ポート番号（ＰｏｒｔＩＤ）、サブ通路番号（ＳｕｂＣｈａｎＩＤ）を繋ぎ合わせて形成される。スロット番号は、最高４ビットを占め、１６個のスロットをサポートする。ポート番号は、中間６ビットを占め、６４個のポートをサポートする。サブ通路番号は、最後１２位を占め、最大４０９６個のサブ通路をサポートする。無論、スロット番号、ポート番号、サブ通路番号を繋ぎ合わせた論理通路識別子は、１つの例示に過ぎず、これについて限定しない。
【００４３】
インターフェースタイプＷａｎＴｙｐｅは、論理通路に対応するインターフェースのタイプ、例えば、ＰＯＳ、ＣＥ１、ＣＰＯＳ、ＡｓｙＳｅｒ（非同期シリアルインターフェース）、Ｅ１インターフェース、Ｔ１インターフェース、ＡＭインターフェース等であり、このインターフェースタイプについて限定しない。
【００４４】
ウィンドウ位置情報は、送信ウィンドウの長さＷｉｎＳｉｚｅ、ウィンドウの左エッジＬｅｆｔＥｄｇｅ、ウィンドウの右エッジＲｉｇｈｔＥｄｇｅ、現在送信データのエッジＴｘＥｄｇｅを含んでもよい。ウィンドウの左エッジＬｅｆｔＥｄｇｅは、ウィンドウ開始位置とも呼ばれてもよい。ウィンドウの右エッジＲｉｇｈｔＥｄｇｅは、ウィンドウ終了位置と呼ばれてもよい。送信ウィンドウの長さＷｉｎＳｉｚｅは、例えば、１２８Ｋバイト（即ち、０ｘ２００００）であってもよい。この値は、許容される最大長さを示す。送信ウィンドウの長さＷｉｎＳｉｚｅは、論理通路に対応するバッファ領域の大きさと同じであり、ウィンドウの左エッジＬｅｆｔＥｄｇｅとウィンドウの右エッジＲｉｇｈｔＥｄｇｅとの間の長さは、送信ウィンドウの長さＷｉｎＳｉｚｅである。現在送信データのエッジＴｘＥｄｇｅは、ウィンドウ占用位置と呼ばれてもよい。次回データを送信する際、ここから累積する。例えば、ウィンドウの左エッジＬｅｆｔＥｄｇｅが０であり、第１個のデータの長さが６４であると仮定すれば、第１個のデータが送信された後、現在送信データのエッジＴｘＥｄｇｅは、６４となる。第２個のデータの長さが３０４であると仮定すれば、第２個のデータが送信された後、現在送信データのエッジＴｘＥｄｇｅは、３６８(６４＋３０４)となる。これをもって類推する。現在送信データのエッジＴｘＥｄｇｅがウィンドウの左エッジＬｅｆｔＥｄｇｅとウィンドウの右エッジＲｉｇｈｔＥｄｇｅとの間に位置するとき、論理通路がデータを送信する能力を有することを意味し、現在送信データのエッジＴｘＥｄｇｅがＲｉｇｈｔＥｄｇｅを超えたときに、論理通路がデータを送信する能力を有さないことを意味する。
【００４５】
第２速度制限装置２２０は、各論理通路の基本情報表を含んでもよく、且つ論理通路の基本情報は、インターフェースボード識別子、論理通路識別子、インターフェースタイプ、ウィンドウ位置情報、特徴タイプ識別子等を含んでもよいが、それらに限定されない。且つ論理通路のそれぞれは、１つの基本情報表に対応する。第２速度制限装置２２０の基本情報表は、第１速度制限装置２１２の基本情報表と類似するが、相違点として、第２速度制限装置２２０の基本情報表に特徴タイプ識別子があり、当該特徴タイプ識別子がＦｅａｔｕｒｅＩＤであってもよく、特徴表についてインデックスを付け、特徴表のＦｅａｔｕｒｅＩＤに対応する。当該基本情報表の他の内容について、ここで繰り返し説明しない。
【００４６】
上記応用場面において、本発明の実施例に係るデータ伝送方法は、以下のステップを含む。
【００４７】
ステップａでは、第１速度制限装置２１２は、送信すべき第１データを受信した後、当該第１データに対応するインターフェースボードおよび論理通路を特定する。具体的に、第１データの宛先アドレス情報（例えば、宛先ＩＰアドレスおよび／または宛先ＭＡＣアドレス等）によって転送表を検索し、当該宛先アドレス情報に対応する出力インターフェースを取得する。この出力インターフェースは、１つのインターフェースボードおよび１つの論理通路に対応し、当該インターフェースボードは、第１データに対応するインターフェースボードであり、当該論理通路は、第１データに対応する論理通路である。無論、インターフェースボードおよび論理通路の情報は、プロセッサ２１１から通知されたものであってもよく、この特定方式について限定しない。
【００４８】
ステップｂでは、第１速度制限装置２１２は、当該論理通路が第１データを送信する能力を有するか否かを判断し、そうであれば、ステップｃを実行し、そうでなければ、第１データを送信せず、メモリに第１データを記憶し、当該論理通路が第１データを送信する能力を有してから、ステップｃを実行する。
【００４９】
データの送信時に、第１速度制限装置２１２は、基本情報表におけるウィンドウ位置情報および第１データの長さに基づいて、論理通路が第１データを送信する能力を有するか否かを判断してもよい。例えば、現在送信データのエッジＴｘＥｄｇｅが右へ第１データの長さだけ移動された後、現在送信データのエッジＴｘＥｄｇｅが依然としてウィンドウの左エッジＬｅｆｔＥｄｇｅとウィンドウの右エッジＲｉｇｈｔＥｄｇｅの間に存在するときに、論理通路第１データを送信する能力を有することを意味する。現在送信データのエッジＴｘＥｄｇｅが右へ第１データの長さだけ移動された後、現在送信データのエッジＴｘＥｄｇｅがウィンドウの右エッジＲｉｇｈｔＥｄｇｅを超えたときに、論理通路が第１データを送信する能力を有さないことを意味する。
【００５０】
更に、論理通路が第１データを送信する能力を有するとき、第１速度制限装置２１２は、更に、第１データの長さと送信ウィンドウにおける現在送信データのエッジＴｘＥｄｇｅの位置とに基づいて、現在送信データのエッジＴｘＥｄｇｅの位置を調整してもよい。
【００５１】
図３Ｃに示すように、初期化の時、ウィンドウの左エッジＬｅｆｔＥｄｇｅおよび現在送信データのエッジＴｘＥｄｇｅは、何れも０である。図３Ｄに示すように、１０Ｋバイトのデータが送信された後、現在送信データのエッジＴｘＥｄｇｅは、１０Ｋになる。図３Ｅに示すように、２０Ｋバイトのデータが送信された後、現在送信データのエッジＴｘＥｄｇｅは、２０Ｋになる。データ送信完了メッセージが受信された後、データ送信完了メッセージは第２速度制限装置２２０がすでにバッファ領域から１２Ｋバイトのデータを読み取ったと示した場合に、ウィンドウの左エッジＬｅｆｔＥｄｇｅを例えば１２Ｋだけ右へスライドし、ウィンドウの右エッジＲｉｇｈｔＥｄｇｅを例えば１２Ｋだけ右へスライドし、スライド後の模式図は、図３Ｆに示される。
【００５２】
図４Ａは、データ送信完了メッセージの模式図である。データ送信完了メッセージが受信された後、データ送信完了メッセージにおける現在送信データのエッジＴｘＥｄｇｅがウィンドウの左エッジＬｅｆｔＥｄｇｅとウィンドウの右エッジＲｉｇｈｔＥｄｇｅとの間に位置する場合に、データ送信完了メッセージにおける現在送信データのエッジＴｘＥｄｇｅスライドウィンドウに基づいて、例えば、ウィンドウにおける左エッジＬｅｆｔＥｄｇｅをデータ送信完了メッセージにおける現在送信データのエッジＴｘＥｄｇｅまで右へ移動し、ウィンドウにおける右エッジＲｉｇｈｔＥｄｇｅを対応的に右へスライドし、スライド後の左エッジＬｅｆｔＥｄｇｅと右エッジＲｉｇｈｔＥｄｇｅとの間の長さは、送信ウィンドウの現在長さＷｉｎＳｉｚｅである。データ送信完了メッセージにおける現在送信データのエッジＴｘＥｄｇｅがウィンドウの左エッジＬｅｆｔＥｄｇｅとウィンドウの右エッジＲｉｇｈｔＥｄｇｅとの間に位置しない場合に、当該データ送信完了メッセージを廃棄し、ウィンドウをスライドしない。
【００５３】
第１速度制限装置２１２が第２速度制限装置２２０へデータを送信したときにデータ紛失が発生しても、および／または、第２速度制限装置２２０が第１速度制限装置２１２へデータ送信完了メッセージを送信したときにデータ送信完了メッセージの紛失が発生しても、後続過程においてデータの送信に成功し且つ対応するデータ送信完了メッセージの送信に成功すると、ウィンドウは、正しくスライドできる。このように、送信リソースの紛失が発生せず、パケットロスによる送信停止は回避される。例えば、第Ｎ個のデータのウィンドウ占用位置が第Ｎ−１個のデータの長さ情報を暗示的に含むため、第Ｎ−１個のデータが紛失したときに第Ｎ個のデータに対するデータ送信完了メッセージが受信された場合に、当該データ送信完了メッセージにおける現在送信データのエッジＴｘＥｄｇｅに基づいてウィンドウをスライドするとき、第Ｎ個のデータの送信リソースを回収するとともに、第Ｎ−１個のデータの送信リソースも回収する。したがって、データ紛失が発生しても、および／または、データ完了メッセージの紛失が発生しても、リソースは、正しく回収できる。
【００５４】
ステップｃでは、第１速度制限装置２１２は、第１データにヘッダ情報を追加して第２データを取得し、第２データをイーサネットコントローラ２１３へ送信し、イーサネットコントローラ２１３は、第２データを第２速度制限装置２２０へ送信する。
【００５５】
具体的に、論理通路が第１データを送信する能力を有する場合に、第１速度制限装置２１２は、第１データにヘッダ情報を追加して変更後のデータを取得してもよく、このデータは、第２データである。図４Ｂは、第２データの模式図である。その後、第２データをイーサネットコントローラ２１３へ送信する。イーサネットコントローラ２１３が第２データを第２速度制限装置２２０へ送信してもよい。
【００５６】
第１速度制限装置２１２が第１データにヘッダ情報を追加する過程に、当該ヘッダ情報は、インターフェースボード識別子、論理通路識別子、インターフェースタイプ、パケットタイプ、ウィンドウ送信エッジ、ペイロード長を含んでもよいが、それらに限定されない。第１個のデータパケットのウィンドウ占用位置は、現在送信データのデータパケット長であってもよく、第２個のデータパケットのウィンドウ占用位置は、第１個のデータパケットのウィンドウ占用位置と第２個のデータパケットの長さとの合計であってもよく、第３個のデータパケットのウィンドウ占用位置は、第２個のデータパケットのウィンドウ占用位置と第３個のデータパケットの長さとの合計であってもよい。これをもって類推する。
【００５７】
第１速度制限装置２１２は、第２データをイーサネットコントローラ２１３へ送信した後、論理通路に対応するウィンドウ情報を更新してもよく、例えば、現在送信データのエッジＴｘＥｄｇｅを右へ第１データの長さだけ移動する。
【００５８】
ステップｄでは、第２速度制限装置２２０は、第２データを受信した後、第２データのヘッダ情報から論理通路識別子を解析し、当該第２データを当該論理通路識別子に対応するバッファ領域にキャッシュする。
【００５９】
例えば、第２速度制限装置２２０は、第２データのヘッダ情報から解析された論理通路識別子が論理通路２４１であると仮定すれば、第２データを論理通路２４１に対応するバッファ領域２５１にキャッシュする。
【００６０】
ステップｅでは、第２データを送信する必要があるとき、第２速度制限装置２２０は、論理通路に対応するバッファ領域から第２データを読み取り、第２データのヘッダ情報からインターフェースボード識別子および論理通路識別子を取得し、第２データのヘッダ情報を除去して第１データを取得し、第１データを当該インターフェースボード識別子に対応するインターフェースボードへ送信する。また、当該インターフェースボードに当該論理通路識別子に対応する論理通路を介して第１データを送信するよう通知してもよい。このように、当該インターフェースボードが当該論理通路識別子に対応する論理通路を介して第１データを送信する。
【００６１】
例えば、第２速度制限装置２２０は、バッファ領域２５１から第２データを読み取り、当該第２データのヘッダ情報からインターフェースボード２３１の識別子および論理通路２４１の識別子を取得し、その後、当該第２データのヘッダ情報を除去して第１データを取得し、当該第１データをインターフェースボード２３１へ送信し、インターフェースボード２３１に対して論理通路２４１を介して第１データを送信するよう通知する。
【００６２】
第１データがインターフェースボードへ送信された後、インターフェースボードが論理通路を介して第１データを送信できるように、論理通路の識別子をインターフェースボードへ通知する必要があり、この通知メカニズムについて限定しない。例えば、インターフェースボードが当該論理通路識別子に対応する論理通路を介して第１データを送信するように、第２速度制限装置２２０は、論理通路識別子をインターフェースボードへ送信する。または、第２速度制限装置２２０は、論理通路識別子に対応する論理通路を介して、第１データをインターフェースボードへ送信する。インターフェースボードは、当該論理通路を介して第１データを受信した後、当該論理通路を介して第１データを送信する。
【００６３】
第２速度制限装置２２０は、第１データをインターフェースボードへ送信する過程に、当該論理通路を介して第１データを当該インターフェースボードが送信するときに用いられる第１レートを先に取得し、第１レートに基づいて当該インターフェースボードへ第１データを送信するための第２レートを特定し、第２レートに基づいて第１データを当該インターフェースボードへ送信してもよい。更に、「第１レートに基づいて当該インターフェースボードへ第１データを送信するための第２レートを特定する」過程に、第２速度制限装置２２０は、特徴データに基づいてインターフェースボードの転送方式を特定し、前記転送方式に基づいて第１データを処理し、インターフェースボードによって第１レートで送信しようとする第３データを取得し、第３データの取得中に第１データを処理するレートを第２レートとして特定してもよい。当該第２レートは、第１レートより小さい。
【００６４】
第２速度制限装置２２０は、更に、特徴表を記憶してもよく、当該特徴表は、データストリーム特徴を記録するために用いられ、当該データストリーム特徴は、特徴タイプ識別子（ＦｅａｔｕｒｅＩＤ）および特徴データを含んでもよい。当該特徴タイプ識別子は、本類特徴を表す。特徴タイプ識別子に基づいて特徴データを検索することができる。
【００６５】
また、当該特徴データは、通路レート（Ｓｐｅｅｄ）（例えば、５６Ｋｂｉｔｓ／ｓ、６４Ｋｂｉｔｓ／ｓ等）、フレーム間隔（ＩＦＧ）（例えば、フレーム間隔の間に挿入されたパディングワードの数であり、当該フレーム間隔が経験に応じて配置可能である）、物理層チップへ送信されたデータのブロック長ＢｌｏｃｋＬｅｎ、および、物理層チップへ送信されたデータの進み量ＰｒｅＴｘＬｅｎのうちの１つまたは任意の組み合わせを含んでもよいが、それらに限定されない。
【００６６】
第２速度制限装置２２０は、第２データのヘッダ情報における論理通路識別子に基づいて基本情報表を検索し、当該論理通路識別子に対応する特徴タイプ識別子を取得してもよい。その後、当該特徴タイプ識別子に基づいて特徴表を検索し、当該特徴タイプ識別子に対応する特徴データを取得してもよい。これを基に、第２速度制限装置２２０は、上記特徴データに基づいてインターフェースボードの転送方式を特定してもよい。
【００６７】
転送方式は、インターフェースボードが外へデータを送信するときに用いられる転送方式である。異なるプロトコルに対応する転送方式は、異なってもよく、同じであってもよい。この転送方式は、プロトコルタイプに関連する。例えば、ＨＤＬＣ（Ｈｉｇｈ−ｌｅｖｅｌ Ｄａｔａ Ｌｉｎｋ Ｃｏｎｔｒｏｌ、ハイレベルデータリンク制御プロトコル）について、ＨＤＬＣデータフレームの間がフラグシーケンス（二進数が０１１１１１１０）によって区切られるため、一連のデータビットの中、フラグシーケンスと同じビットの組み合わせが発生する可能性はある。この状況の発生を防止し、データに対するトランスペアレント伝送を保証するために、転送方式は、ビットパディング技術を採用し、連続する５つの「１」の後に１つの「０」を挿入してデータのトランスペアレント伝送を保証することであってもよい。無論、転送方式は、他の方式であってもよく、この転送方式について限定しない。
【００６８】
インターフェースボードの転送方式が取得された後、第２速度制限装置２２０は、当該転送方式に基づいてシミュレーション送信を行ってもよい。具体的に、転送方式に基づいて第１データを処理し、第１レートで送信しようとする第３データを取得し、第３データの取得中に第１データを処理するレートを第２レートとして特定する。第１レートは、インターフェースボードで実際にデータを送信するレートであり、第２レートは、第２速度制限装置２２０で実際にデータを送信するレートである。また、第２速度制限装置２２０が当該転送方式に基づいてシミュレーション送信を行う過程は、リアルタイムに実施される。
【００６９】
第２速度制限装置２２０がシミュレーション送信を採用する原因は、下記のようになる。インターフェースボードが論理通路を介してデータを送信したときに用いられた第１レートを５６Ｋｂｉｔｓ／ｓとすれば、インターフェースボードへデータを供給するレートは、５６Ｋｂｉｔｓ／ｓとなり、インターフェースボードは、データを送信する際、まず、上記転送方式を用いてデータを処理し、例えば、ビットパディング技術を用いてデータに余計な情報を追加する。そうすると、インターフェースボードから送信されたデータは、最終的に５６Ｋｂｉｔｓ／ｓよりも大きくなる（例えば、６０Ｋｂｉｔｓ／ｓ）。つまり、インターフェースボードから送信されたデータにオーバフローが発生する。インターフェースボードが６０Ｋｂｉｔｓ／ｓのデータを伝送できず、５６Ｋｂｉｔｓ／ｓのデータしか伝送できないため、一部のデータが紛失してしまう。
【００７０】
そこで、第２速度制限装置２２０は、先に、インターフェースボードが論理通路を介してデータを送信したときの第１レート、例えば、５６Ｋｂｉｔｓ／ｓを取得してもよい。その後、バッファ領域からデータを読み取り、上記転送方式を用いてデータを処理し、例えば、ビットパディング技術を用いてデータに情報を追加する。当該処理過程に、５６Ｋｂｉｔｓ／ｓでデータを送信するときにバッファ領域からデータを読み取るレートを特定し、この読取データのレートは、第２レート、例えば、５２Ｋｂｉｔｓ／ｓである。したがって、第２速度制限装置２２０からインターフェースボードへデータを供給するレートは、５２Ｋｂｉｔｓ／ｓである。
【００７１】
このように、インターフェースボードへデータを供給するレートは、５６Ｋｂｉｔｓ／ｓではなく、５２Ｋｂｉｔｓ／ｓである。インターフェースボードは、データを送信する際、先に、上記転送方式によってデータを処理し、例えば、ビットパディング技術を用いてデータに情報を追加する。これにより、インターフェースボードから最終的に送信されたデータが５６Ｋｂｉｔｓ／ｓであり、データオーバフローが発生せず、データの紛失が防止され、インターフェースボードの効率が高められ、データ伝送品質が向上し、ＱＯＳ応用が実現され、データ紛失による音声歪みや画像不鮮明等の問題が回避される。
【００７２】
「論理通路を介してデータをインターフェースボードが送信するときに用いられる第１レートを取得する」過程について、特徴データから当該第１レート、例えば、特徴データにおける通路レート（Ｓｐｅｅｄ）を取得可能である。
【００７３】
「特徴データに基づいてインターフェースボードの転送方式を特定し、当該転送方式によってデータを処理する」過程は、以下の方式を含んでもよいが、それに限定されない。つまり、特徴データがインターフェースタイプ（例えば、特徴表にインターフェースタイプが記録されている）を含む場合に、特徴データに基づいてインターフェースボードの転送方式を特定し、当該転送方式に基づいてデータを処理し、特徴データがインターフェースタイプを含まない（例えば、特徴表にインターフェースタイプが記録されていない）場合に、特徴データ、インターフェースタイプ（データのヘッダ情報から取得）に基づいてインターフェースボードの転送方式を特定し、当該転送方式に基づいてデータを処理する。例えば、フレーム間隔（ＩＦＧ）、ＢｌｏｃｋＬｅｎ、ＰｒｅＴｘＬｅｎ、インターフェースタイプ等のパラメータを用いてインターフェースボードの転送方式を特定し、当該転送方式によってデータを処理してもよく、この過程について限定しない。
【００７４】
ステップｆでは、第２速度制限装置２２０は、論理通路に対応するバッファ領域から第２データを読み取った後、更に、第１速度制限装置２１２へデータ送信完了メッセージを送信し、当該データ送信完了メッセージには、第１データの長さ（即ち、第２データからヘッダ情報を除去した後の第１データの長さ）が付加されてもよく、且つ当該データ送信完了メッセージには、上記ヘッダ情報（例えば、インターフェースボード識別子、論理通路識別子、インターフェースタイプ、パケットタイプ、ウィンドウ送信エッジ、有効ペイロード長等）が更に付加されてもよく、当該ヘッダ情報は、第２データのヘッダ情報と同じである。
【００７５】
データ送信完了メッセージのヘッダ情報における現在送信データのエッジＴｘＥｄｇｅは、当該現在送信データのエッジＴｘＥｄｇｅに対応するデータを既にバッファ領域から読み取んだと表せる。
【００７６】
ステップｇでは、第１速度制限装置２１２は、データ送信完了メッセージを受信した後、当該論理通路識別子に対応する論理通路の余剰リソースの大きさを現在の余剰リソースの大きさと第１データの長さとの合計に更新する。例えば、ウィンドウ占用位置をウィンドウ開始位置の方向へ所定長さだけ移動し、または、ウィンドウ開始位置をウィンドウ占用位置の方向へ所定長さだけ移動し、ウィンドウ終了位置をウィンドウ開始位置の移動方向へ所定長さだけ移動する。上記所定長さは、第１データの長さである。
【００７７】
または、バッファ領域における第２データの位置に基づいて当該送信ウィンドウにおけるウィンドウ開始位置を特定し、当該ウィンドウ開始位置の移動長さに基づいて当該送信ウィンドウのウィンドウ終了位置を移動してもよい。
【００７８】
上記技術案に基づくと、本発明の実施例では、複数の論理通路は、同一のメイン制御ボードの処理能力を共有してもよく、且つデータを各論理通路に対応するバッファ領域に記憶し、論理通路を介してバッファ領域におけるデータを送信してもよく、メイン制御ボードとインターフェースボードとのレート不整合の問題を解決でき、インターフェースボードのパケットロス問題を回避し、ＱＯＳ需要を満たす。また、インターフェースボードの精確速度制限が実現し、メイン制御ボードの性能が向上する。例えば、論理通路２４１のデータ伝送レートは、５６Ｋｂｉｔｓ／ｓであり、論理通路２４２のデータ伝送レートは、５６Ｋｂｉｔｓ／ｓであり、論理通路２４３のデータ伝送レートは、５６Ｋｂｉｔｓ／ｓであり、論理通路２４４のデータ伝送レートは、５６Ｋｂｉｔｓ／ｓである。そうすると、イーサネットコントローラ２１３のデータ伝送レートは、ある論理通路に対応する５６Ｋｂｉｔｓ／ｓではなく、２２４Ｋｂｉｔｓ／ｓ（＝４*５６Ｋｂｉｔｓ／ｓ）であってもよい。第２速度制限装置２２０は、５６Ｋｂｉｔｓ／ｓのデータをバッファ領域２５１に記憶し、５６Ｋｂｉｔｓ／ｓのデータをバッファ領域２５２に記憶し、５６Ｋｂｉｔｓ／ｓのデータをバッファ領域２５３に記憶し、５６Ｋｂｉｔｓ／ｓのデータをバッファ領域２５４に記憶する。データの送信中に、第２速度制限装置２２０は、５６Ｋｂｉｔｓ／ｓのデータを論理通路２４１へ送信して論理通路２４１に５６Ｋｂｉｔｓ／ｓのデータを送信させ、５６Ｋｂｉｔｓ／ｓのデータを論理通路２４２へ送信して論理通路２４２に５６Ｋｂｉｔｓ／ｓのデータを送信させ、５６Ｋｂｉｔｓ／ｓのデータを論理通路２４３へ送信して論理通路２４３に５６Ｋｂｉｔｓ／ｓのデータを送信させ、５６Ｋｂｉｔｓ／ｓのデータを論理通路２４４へ送信して論理通路２４４に５６Ｋｂｉｔｓ／ｓのデータを送信させる。
【００７９】
上記方法と同様な出願思想に基づいて、本発明の実施例は、ネットワーク設備に適用可能なデータ伝送装置を更に提供する。図５は、当該装置の構造図であり、当該装置は、以下のモジュールを備えてもよい。
【００８０】
特定モジュール５０１は、送信すべき第１データに対応するインターフェースボードおよび論理通路を特定する。
【００８１】
処理モジュール５０２は、前記論理通路が前記第１データを送信する能力を有する場合に、ヘッダ情報を前記第１データに追加して第２データを取得する。前記ヘッダ情報は、前記インターフェースボードのインターフェースボード識別子と、前記論理通路の論理通路識別子とを含む。
【００８２】
記憶モジュール５０３は、前記第２データを前記論理通路に対応するバッファ領域に記憶する。
【００８３】
読取モジュール５０４は、前記第２データを前記バッファ領域から読み取り、読み取られた前記第２データのヘッダ情報から、前記インターフェースボード識別子および前記論理通路識別子を取得し、読み取られた前記第２データのヘッダ情報を除去して前記第１データを取得する。
【００８４】
送信モジュール５０５は、取得された前記第１データをインターフェースボード識別子に対応するインターフェースボードへ送信する。
【００８５】
前記処理モジュール５０２は、更に、送信すべき前記第１データに対応するインターフェースボードおよび論理通路が前記特定モジュール５０１によって特定された後、前記論理通路の余剰リソースの大きさを取得し、前記余剰リソースの大きさが前記第１データの長さ以上である場合に、前記論理通路が前記第１データを送信する能力を有すると特定し、前記論理通路が前記第１データを送信する能力を有する場合に、前記論理通路の余剰リソースの大きさを当該余剰リソースの大きさと第１データの長さとの差分に更新し、第２データが読取モジュール５０４によってバッファ領域から読み取られた後、前記バッファ領域に対応する論理通路の余剰リソースの大きさを当該余剰リソースの大きさと第１データの長さとの合計に更新する。
【００８６】
前記論理通路は、１つの送信ウィンドウに対応し、前記送信ウィンドウの長さは、前記論理通路に対応するバッファ領域の大きさと同じである。前記送信ウィンドウのパラメータは、ウィンドウ開始位置、ウィンドウ終了位置およびウィンドウ占用位置を含み、前記ウィンドウ占用位置とウィンドウ終了位置との間の長さは、前記論理通路の余剰リソースの大きさである。前記論理通路の余剰リソースの大きさを当該余剰リソースの大きさと第１データの長さとの差分に更新する過程に、前記処理モジュール５０２は、具体的に、前記ウィンドウ占用位置を前記ウィンドウ終了位置の方向へ所定長さだけ移動する。前記バッファ領域に対応する論理通路の余剰リソースの大きさを当該余剰リソースの大きさと第１データの長さとの合計に更新する過程に、前記処理モジュール５０２は、具体的に、前記ウィンドウ占用位置をウィンドウ開始位置の方向へ所定長さだけ移動し、または、前記ウィンドウ開始位置をウィンドウ占用位置の方向へ所定長さだけ移動し、且つウィンドウ終了位置を前記ウィンドウ開始位置の移動方向へ前記所定長さだけ移動する。前記所定長さは、前記第１データの長さである。
【００８７】
前記送信モジュール５０５は、取得された第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信する過程に、具体的に、前記論理通路を介して第１データを前記インターフェースボードが送信するときに用いられる第１レートを取得し、前記第１レートに基づいて前記インターフェースボードへ第１データを送信するための第２レートを特定し、前記第２レートで取得された第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信する。前記第２レートは、前記第１レートより小さい。
【００８８】
一例では、前記送信モジュール５０５は、前記第１レートに基づいて前記インターフェースボードへ第１データを送信するための第２レートを特定する過程に、具体的に、特徴データに基づいて前記インターフェースボードの転送方式を特定し、前記転送方式に基づいて前記第１データを処理して、第１レートで送信しようとする３データを取得し、第３データの取得中に第１データを処理するレートを第２レートとして特定する。
【００８９】
本発明の実施例に係るネットワーク設備は、ハードウェア実装から言うと、ハードウェアアーキテクチャ模式図が具体的に図６を参照してもよく、機械可読記憶媒体６１０およびプロセッサ６２０を備える。
【００９０】
機械可読記憶媒体６１０は、命令コードを記憶する。
プロセッサ６２０は、機械可読記憶媒体６１０と通信し、機械可読記憶媒体６１０に記憶された前記命令コードを読み取って実行することにより、本発明の上記例示されたデータ伝送操作を実施する。
【００９１】
ここで、機械可読記憶媒体は、如何なる電気的なもの、磁気的なもの、光学的なものまたは他の物理的記憶装置であってもよく、情報（例えば、実行可能な指令、データ等）を含むか記憶可能である。例えば、機械可読記憶媒体は、揮発性、不揮発性メモリまたは類似する記憶媒体であってもよい。具体的に、機械可読記憶媒体は、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ、ランダムアクセスメモリ）、フラッシュメモリ、記憶ドライバ（例えば、ハードディスクドライバ）、ソリッド・ステート・ディスク、如何なるタイプの記憶ディスク（例えば、光ディスク、ｄｖｄ等）、または、類似する記憶媒体やそれらの組み合わせであってもよい。
【００９２】
本発明の実施例は、ネットワーク設備を提供する。前記ネットワーク設備は、第１速度制限装置２１２と、第２速度制限装置２２０とを更に備える。
【００９３】
第１速度制限装置２１２は、送信すべき第１データに対応するインターフェースボードおよび論理通路を特定し、前記論理通路が前記第１データを送信する能力を有する場合に、ヘッダ情報を前記第１データに追加して第２データを取得し、前記第２データを第２速度制限装置２２０へ送信する。前記ヘッダ情報は、前記インターフェースボードのインターフェースボード識別子と、前記論理通路の論理通路識別子とを含む。
【００９４】
第２速度制限装置２２０は、前記第２データが受信された後、前記第２データのヘッダ情報から論理通路識別子を取得し、前記第２データを前記論理通路識別子に対応するバッファ領域に記憶し、前記バッファ領域から第２データを読み取り、読み取られた第２データのヘッダ情報からインターフェースボード識別子および論理通路識別子を取得し、読み取られた第２データのヘッダ情報を除去して第１データを取得し、取得された第１データを前記インターフェースボード識別子に対応するインターフェースボードへ送信する。
【００９５】
上記実施例で説明されるシステム、装置、モジュールまたは手段は、具体的にコンピュータチップまたは実体によって実施されてもよく、またはある機能を有する製品によって実施されてもよい。１つの典型的な実施設備は、コンピュータである。コンピュータの具体的な形式は、パソコン、ラップトップコンピュータ、携帯電話、カメラ電話、スマートフォン、ＰＤＡ、メディアプレーヤー、ナビゲーション設備、電子メール送受信設備、ゲームコンソール、タブレットコンピュータ、ウェアラブル設備またはこれらの設備のうちの任意何種かの設備の組み合わせであってもよい。
【００９６】
記述の便宜上、上記装置を記述する際、機能に応じて各種の手段に区分してそれぞれ記述する。無論、本発明の実施時に、各手段の機能は、同一または複数のソフトウェアおよび／またはハードウェアで実現されてもよい。
【００９７】
本分野における技術者であれば理解できるように、本発明の実施例は、方法、システムまたはコンピュータプログラム製品として提供され得る。したがって、本発明は、１００％ハードウェアの実施例、１００％ソフトウェアの実施例、またはソフトウェアとハードウェアとを組み合わせた態様の実施例の形式を採用してもよい。また、本発明の実施例は、１つまたは複数の、コンピュータ利用可能なプログラムコードを含むコンピュータ利用可能な記憶媒体（磁気ディスクメモリ、ＣＤ−ＲＯＭ、光学メモリ等を含むが、それらに限定されない）で実施されるコンピュータプログラム製品の形式を採用してもよい。
【００９８】
本発明は、本発明の実施例の方法、設備（システム）およびコンピュータプログラム製品に基づくフローチャートおよび／またはブロック図を参照して記述されている。コンピュータプログラム指令にてフローチャートおよび／またはブロック図における各フローおよび／またはブロック、並びにフローチャートおよび／またはブロック図におけるフローおよび／またはブロックの組み合わせを実施可能であることは理解されるべきである。これらのコンピュータプログラム指令を汎用コンピュータ、専用コンピュータ、組み込み型処理設備または他のプログラム可能なデータ処理設備のプロセッサへ供給して１つのマシンを生成することにより、コンピュータまたは他のプログラム可能なデータ処理設備のプロセッサで実行される指令にて、フローチャートの１つのフロー若しくは複数のフローおよび／またはブロック図の１つのブロック若しくは複数のブロックにおける指定の機能を実施するための装置を発生してもよい。
【００９９】
また、これらのコンピュータプログラム指令は、更に、コンピュータまたは他のプログラム可能なデータ処理設備が特定の方式で動作するようガイドできるコンピュータ可読メモリに記憶されてもよい。このように、当該コンピュータ可読メモリに記憶された指令は、指令装置を含む製品を生成し、当該指令装置は、フローチャートの１つのフロー若しくは複数のフローおよび／またはブロック図の１つのブロック若しくは複数のブロックにおける指定の機能を実現する。
【０１００】
これらのコンピュータプログラム指令は、コンピュータまたは他のプログラム可能なデータ処理設備にロードされて、コンピュータまたは他のプログラム可能な設備に一連の操作ステップを実施してコンピュータで実現される処理を生成してもよい。これにより、コンピュータまたは他のプログラム可能な設備で実行される指令は、フローチャートの１つのフロー若しくは複数のフローおよび／またはブロック図の１つのブロック若しくは複数のブロックにおける指定の機能を実現するステップを提供する。
【０１０１】
上述したのは、本発明の好適な実施例に過ぎず、本発明を制限するためのものではない。当業者にとって、本発明は種々な変更や変形があり得る。本発明の精神および原則内でなされた如何なる変更、均等物による置換、改良等も、本発明の保護範囲内に含まれる。
【図１】
0006978596.tif 000002
【図２】
0006978596.tif 000003
【図３Ａ】
0006978596.tif 000004
【図３Ｂ】
0006978596.tif 000005
【図３Ｃ】
0006978596.tif 000006
【図３Ｄ】
0006978596.tif 000007
【図３Ｅ】
0006978596.tif 000008
【図３Ｆ】
0006978596.tif 000009
【図４Ａ】
0006978596.tif 000010
【図４Ｂ】
0006978596.tif 000011
【図５】
0006978596.tif 000012
【図６】
0006978596.tif 000013