(57)【特許請求の範囲】
【請求項１】
フレームまたはパケットのデータに対するカプセリング、およびデカプセリングを行う機能を有する伝送装置において、
入力されたデータに対するビットデスタッフィング処理を行うビットデスタッフ器と、  前記データの複製データに対するバイトデスタッフィング処理を行うバイトデスタッフ器と、
前記ビットデスタッフ器および前記バイトデスタッフ器のそれぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行うＦＣＳチェック器と、
前記ビットデスタッフ器および前記バイトデスタッフ器のそれぞれにおけるコード変換結果と、前記ＦＣＳチェック器により正常なＦＣＳを有する前記データを検出した側のスタッフモードによって、対向側の伝送装置のスタッフモードを判定するモード判定器と、
を有するデカプセリング器を備えたことを特徴とする伝送装置。
【請求項２】
前記対向側の伝送装置に送信するデータをカプセリングするカプセリング器を備え、
前記モード判定器は、判定した対向側の伝送装置のスタッフモードを前記カプセリング器へ通知し、
前記カプセリング器は、前記モード判定器により判定されたスタッフモードによりデータを送信することを特徴とする請求項１に記載の伝送装置。
【請求項３】
前記カプセリング器は、
前記対向側の装置に要求するスタッフモードに関する情報と、当該スタッフモード情報の正常性を示すチェックコードを含むデータを送信するモードフレーム送出器を備えたことを特徴とする請求項２に記載の伝送装置。
【請求項４】
前記モードフレーム送出器は、前記データをバイトスタッフ、およびビットスタッフのそれぞれでスタッフィングし、それぞれを前記対向側の装置へ送信することを特徴とする請求項３に記載の伝送装置。
【請求項５】
フレームまたはパケットのデータに対するカプセリング、およびデカプセリングを行う機能を有する伝送装置の伝送方法において、
入力されたデータに対するビットデスタッフィング処理を行うビットデスタッフ工程と、
前記データの複製データに対するバイトデスタッフィング処理を行うバイトデスタッフ工程と、
前記ビットデスタッフ工程および前記バイトデスタッフ工程のそれぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行うＦＣＳチェック工程と、
前記ビットデスタッフ工程および前記バイトデスタッフ工程のそれぞれにおけるコード変換結果と、前記ＦＣＳチェック工程により正常なＦＣＳを有する前記データを検出した側のスタッフモードによって、対向側の伝送装置のスタッフモードを判定するモード判定工程と、
を含むことを特徴とする伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、伝送装置におけるフレームあるいはパケットのカプセリングを行う伝送装置および伝送方法に関する。
【背景技術】
【０００２】
図９は、フレームのカプセリングを行う伝送装置を備えたネットワークの構成図である。端末装置１５００が送受するフレームは、構内ネットワーク１５０１を介してＥＯＳ／ＰＯＳ伝送装置１５０２に接続され、このＥＯＳ／ＰＯＳ伝送装置１５０２は、ＳＤＨ伝送装置１５０４を介してＳＤＨ等の広域ネットワーク１５０３に接続されている。
【０００３】
ＥＯＳ（Ｅｔｈｅｒ  ｏｖｅｒ  Ｓｏｎｅｔ）、ＰＯＳ（Ｐａｃｋｅｔ  ｏｖｅｒ  Ｓｏｎｅｔ）機能を有するＥＯＳ／ＰＯＳ伝送装置１５０２は、イーサフレーム（Ｅｔｈｅｒ  Ｆｒａｍｅ）やＩＰ  ＰａｃｋｅｔをＳＤＨ／Ｓｏｎｅｔのペイロードに格納する際に、ＧＦＰ（Ｇｅｎｅｒｉｃ  Ｆｒａｍｉｎｇ  Ｐｒｏｃｅｄｕｒｅ）や、ＬＡＰＳ（Ｌｉｎｋ  Ａｃｃｅｓｓ  Ｐｒｏｃｅｄｕｒｅ  ｆｏｒ  ＳＤＨ）により、フレームあるいはパケットをカプセリングする。ＧＦＰによるカプセリングが一般的になりつつあるが、ＬＡＰＳのみをサポートしている装置も数多く存在している。
【０００４】
ＧＦＰ，ＬＡＰＳは、主に、フレームの開始位置、終了位置を通知する役割を担っている。ＧＦＰは、ＨＥＣ（Ｈｅａｄｅｒ  Ｅｒｒｏｒ  Ｃｈｅｃｋ）により、フレームの開始位置を見つける処理を行っており、ヘッダ内にあるＰＬＩ（Ｐａｙｌｏａｄ  Ｌｅｎｇｔｈ  Ｉｎｄｉｃａｔｏｒ）によりフレームの終了位置を検出している。ＬＡＰＳでは、”０ｘ７Ｅ”というコードによって、フレームの開始位置を認識し、開始位置を認識した後に検出した”０ｘ７Ｅ”というコードによって、フレームの終了位置を認識する。
【０００５】
ＬＡＰＳにおいては、”０ｘ７Ｅ”というコードが、ペイロード中に含まれると、フレームの終了位置を正しく検出できないため、ペイロード内に”０ｘ７Ｅ”がある場合は、別のコードに変換する必要がある。変換の方法として、ペイロードのデータに１が５ビット連続したら、０を挿入する方式（ビットスタッフィング）を採用している装置と、”０ｘ７Ｅ”を検出した場合に、”０ｘ７Ｄ、０ｘ５Ｅ”に変換する方式（バイトスタッフィング）を採用している装置がある。（０ｘ７Ｅは、２進数で表すと「０１１１１１１０」となり、１が６ビット連続するので、ビットスタッフィングによっても必ず別のコードに変換される。）特許文献１に記載の技術では、ＬＡＰＳにおいてビットスタッフィングデータ（たとえばＨＤＬＣ（Ｈｉｇｈ−Ｌｅｖｅｌ  Ｄａｔａ  Ｌｉｎｋ  Ｃｏｎｔｒｏｌ）フレーム化データ）をバイト単位データとしてのバイトスタッフィングデータに変換するフォーマット変換部を備えている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−３０５５０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
フレームあるいはパケットのカプセリングの方式が、ＬＡＰＳの場合、対向側の装置が、ビットスタッフィングにより、カプセリングを実施しているか、バイトスタッフィングによりカプセリングを実施しているかを事前に調査し、その対向側の方式に合わせた設定を自装置に設定する必要がある。この設定を間違うと、フレームあるいはパケットは、正常に受信できず廃棄されてしまい、正常な通信ができないという問題がある。この設定の間違いは、実際にフレームが伝送されるまでなんら通知されることがないため、事前に検知することができない。また、設定間違いにより、フレームまたはパケットの廃棄が発生した場合も、カプセリングの方式の不一致により、フレームまたはパケットが正常に受信できなかったのか、伝送路の異常によりフレームまたはパケットが正常に検出できなかったのかを判別できないという問題がある。
【０００８】
開示の技術は、対向側の装置から送信されるフレームまたはパケットのスタッフモードに適合でき、対向装置のスタッフモードが不明でもデータを正常に受信できることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するため、開示技術は、フレームまたはパケットのデータに対するカプセリング、およびデカプセリングを行う機能を有する伝送装置において、入力されたデータに対するビットデスタッフィング処理を行うビットデスタッフ部と、前記データの複製データに対するバイトデスタッフィング処理を行うバイトデスタッフ部と、前記ビットデスタッフ部および前記バイトデスタッフ部のそれぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行うＦＣＳチェック部と、前記ビットデスタッフ部および前記バイトデスタッフ部のそれぞれにおけるコード変換結果と、前記ＦＣＳチェック部により正常なＦＣＳを有する前記データを検出した側のスタッフモードによって、対向側の伝送装置のスタッフモードを判定するモード判定部と、を有するデカプセリング部を備える。
【発明の効果】
【００１０】
開示の技術によれば、対向側の装置から送信されるフレームまたはパケットのスタッフモードに適合でき、対向装置のスタッフモードが不明でもデータを正常に受信できるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】伝送装置の構成例を示すブロック図である。
【図２】図１のデカプセリング部が行う処理を示すフローチャートである。
【図３】伝送装置の他の構成例を示すブロック図である。
【図４】ネゴシエーション時に対向装置に送信するデータの一例を示す図である。
【図５】図３に示す伝送装置における処理を示すフローチャートである。
【図６】伝送装置のスタッフモードの状態遷移を示す図である。
【図７】対向装置との間のネゴシエーションを示すシーケンス図である。（その１）
【図８】対向装置との間のネゴシエーションを示すシーケンス図である。（その２）
【図９】フレームのカプセリングを行う伝送装置を備えたネットワークの構成図である。
【発明を実施するための形態】
【００１２】
（実施の形態）
以下に添付図面を参照して、開示技術の好適な実施の形態を詳細に説明する。開示技術は、たとえば、ＥＯＳ、ＰＯＳ機能を有する伝送装置に対して適用できる。概要を説明すると、対向装置との間のネゴシエーション時に対向装置から入力されるデータ（フレームまたはパケット）のデカプセリング処理を行う際、この入力されたデータを複製し、ビットデスタッフィング処理と、バイトデスタッフィング処理を並列で行う。そして、それぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行い、デスタッフによるコード変換を行ったフレームまたはパケットで、かつ、正常なＦＣＳを検出した側のスタッフィングモードを、対向側の伝送装置のスタッフィングモードとして判定し、対向装置のスタッフモードが不明でもデータを正常に受信する。
【００１３】
図１は、伝送装置の構成例を示すブロック図である。伝送装置１００は、デカプセリング部１０１と、カプセリング部１０２とを有している。デカプセリング部１０１は、スタートフラグ検出部１１０、ビットデスタッフ（Ｂｉｔ  ｄｅ−Ｓｔｕｆｆ）処理部１１１、バイトデスタッフ（Ｂｙｔｅ  ｄｅ−Ｓｔｕｆｆ）処理部１１２、エンドフラグ検出部１１３ａ，１１３ｂ、ＦＣＳチェック部１１４ａ，１１４ｂ、ＭＵＸ（合成）部１１５、ヘッダチェック部１１６、スタッフモード判定部１１７を有する。
【００１４】
カプセリング部１０２は、スタートフラグ挿入部１２０、ヘッダ挿入部１２１、ＳＷ（切替）部１２２、ビットスタッフ処理部１２３、バイトスタッフ処理部１２４、セレクタ（ＳＥＬ）部１２５、ＦＣＳ生成部１２６、エンドフラグ挿入部１２７を有する。
【００１５】
対向装置からの受信信号は、ＳＤＨ／Ｓｏｎｅｔレイヤの終端と、Ｐａｔｈレイヤの終端が処理されて、デカプセリング部１０１に入力される。デカプセリング部１０１は、スタートフラグ検出部１１０によりスタートフラグを検出した後、入力信号を、複製し、ビットデスタッフ処理部１１１と、バイトデスタッフ処理部１１２にそれぞれ入力させる。ビットデスタッフ処理部１１１と、バイトデスタッフ処理部１１２は、並列に処理を行い、後段のエンドフラグ検出部１１３ａ，１１３ｂに信号を出力する。これらのデスタッフ処理で、コードの変換を行った場合は、スタッフモード判定部１１７に対し、コード変換を実施したフレームであることを示す「デスタッフ通知」を通知する。
【００１６】
エンドフラグ検出部１１３ａ，１１３ｂでは、エンドフラグを検出し、ＦＣＳチェック部１１４ａ，１１４ｂでは、ＦＣＳの演算を行い、エンドフラグの直前にあるＦＣＳ  Ｆｉｅｌｄと比較し、フレームの正常性を確認する。ＦＣＳチェック部１１４ａ，１１４ｂでは、ＦＣＳチェックの結果を「ＦＣＳ結果通知」として、スタッフモード判定部１１７へ通知する。ＦＣＳエラーが発生したフレームについては、フレーム廃棄を行い、後段のＭＵＸ部１１５へ転送する。ＭＵＸ部１１５では、ビットスタッフ側、バイトスタッフ側どちらかから、フレームを受信した場合は、そのままヘッダチェック部１１６へ転送し、ビットスタッフ側、バイトスタッフ側両方から受信した場合は、どちらか片方を転送し、もう一方は廃棄する。ヘッダチェック部１１６では、フレームのヘッダの内容をチェックし、正常であれば、後段のＥｔｈｅｒ／ＩＰ処理部（不図示）へ出力し、異常であれば、廃棄する。
【００１７】
スタッフモード判定部１１７では、各デスタッフィングモードからの「デスタッフ通知」、「ＦＣＳ結果通知」を基に、「デスタッフ通知」＝“デスタッフ実施”、かつ「ＦＣＳ結果通知」＝”ＦＣＳ正常”が通知されたデスタッフモードを、対向側の装置のスタッフモードとして判定する。スタッフモード判定部１１７は、スタッフモードの判定結果を、カプセリング部１０２のＳＷ部１２２とＳＥＬ部１２５に出力し、送信側のスタッフモードを変更する。
【００１８】
デスタッフによるコード変換が行われていないフレームの場合、両方のデスタッフの方式で正常なＦＣＳのフレームを検出する場合がある。この場合、スタッフモード判定部１１７は、どちらか一方のフレームを疎通させ、対向側の装置のデスタッフモードの判定は行わない。
【００１９】
カプセリング部１０２では、前段（不図示）のＥｔｈｅｒ／ＩＰ処理部から受信したフレームまたはパケットに対して、スタートフラグ挿入部１２０によりスタートフラグを挿入し、ヘッダ挿入部１２１で、ＬＡＰＳフレームヘッダを挿入する。ＳＷ部１２２では、スタッフモード判定部１１７から出力されたスタッフモードにしたがって信号をビットスタッフ処理部１２３、バイトスタッフ処理部１２４のどちらに出力するか切り替える。ビットスタッフ処理部１２３によるビットスタッフ（Ｂｉｔ  Ｓｔｕｆｆ）処理、あるいはバイトスタッフ処理部１２４によるバイトスタッフ（Ｂｙｔｅ  Ｓｔｕｆｆ）処理のそれぞれのモードにしたがったスタッフィングを行う。ＳＥＬ部１２５では、選択されたビットスタッフ処理部１２３、あるいはバイトスタッフ処理部１２４の出力をＦＣＳ生成部１２６に転送する。ＦＣＳ生成部１２６では、ＦＣＳをフレームに付与し、エンドフラグ挿入部１２７では、エンドフラグを付与して、対向側の装置に設けられた不図示のＰａｔｈ処理部、ＳＤＨ／Ｓｏｎｅｔ処理部に出力する。
【００２０】
図２は、図１のデカプセリング部が行う処理を示すフローチャートである。対向装置からの受信信号は、デカプセリング部１０１で受信される。そして、デカプセリング部１０１のスタートフラグ検出部１１０によりスタートフラグを検出する（ステップＳ２０１）。そして、ビットデスタッフ処理部１１１と、バイトデスタッフ処理部１１２におけるフラグ（バイトデスタッフＦｌａｇと、ビットデスタッフＦｌａｇ）をそれぞれ初期値０にする（ステップＳ２０２）。そして、スタートフラグ検出部１１０では入力信号を複製し、ビットデスタッフ処理部１１１におけるビットデスタッフ処理と、バイトデスタッフ処理部１１２におけるバイトデスタッフ処理を並列処理する。
【００２１】
ビットデスタッフ処理部１１１側では、ビットデスタッフ処理を行い（ステップＳ２０３）、このビットデスタッフ処理で、コードの変換を行ったか判断する（ステップＳ２０４）。コード変換を行った場合には（ステップＳ２０４：Ｙｅｓ）、ビットデスタッフ  Ｆｌａｇを１にし（ステップＳ２０５）、スタッフモード判定部１１７に対し、コード変換を実施したフレームであることを示す「ビットデスタッフ通知」を通知する。コード変換を行わない場合は（ステップＳ２０４：Ｎｏ）、ステップＳ２０６に移行する。ステップＳ２０５では、エンドフラグ検出部１１３ａによるエンドフラグの検出を行う。エンドフラグが検出されるまでの間は（ステップＳ２０６：Ｎｏ）、ステップＳ２０３に復帰して上記処理を継続する。エンドフラグが検出されれば（ステップＳ２０６：Ｙｅｓ）、ＦＣＳチェック部１１４ａによりＦＣＳの演算を行う（ステップＳ２０７）。
【００２２】
バイトデスタッフ処理部１１２側では、バイトデスタッフ処理を行い（ステップＳ２１３）、このバイトデスタッフ処理で、コードの変換を行ったか判断する（ステップＳ２１４）。コード変換を行った場合には（ステップＳ２１４：Ｙｅｓ）、バイトデスタッフＦｌａｇを１にし（ステップＳ２１５）、スタッフモード判定部１１７に対し、コード変換を実施したフレームであることを示す「バイトデスタッフ通知」を通知する。コード変換を行わない場合は（ステップＳ２１４：Ｎｏ）、ステップＳ２１６に移行する。ステップＳ２１５では、エンドフラグ検出部１１３ｂによるエンドフラグの検出を行う。エンドフラグが検出されるまでの間は（ステップＳ２１６：Ｎｏ）、ステップＳ２１３に復帰して上記処理を継続する。エンドフラグが検出されれば（ステップＳ２１６：Ｙｅｓ）、ＦＣＳチェック部１１４ｂによりＦＣＳの演算を行う（ステップＳ２１７）。
【００２３】
そして、ＦＣＳチェック部１１４ａ，１１４ｂでは、ＢｉｔとＢｙｔｅについてそれぞれＦＣＳチェックを行う。まず、ＦＣＳチェック部１１４ｂは、バイトデスタッフ処理側でのＦＣＳチェックについて、演算したＦＣＳをエンドフラグの直前にあるＦＣＳ  Ｆｉｅｌｄと比較し、フレームの正常性を確認する（ステップＳ２１８）。この際、ＦＣＳチェック部１１４ｂでは、ＦＣＳチェックの結果を「ＦＣＳ結果通知」として、スタッフモード判定部１１７へ通知する。ＭＵＸ部１１５は、バイトデスタッフ後のフレームが正常であれば（ステップＳ２１８：Ｙｅｓ）、このフレームを後段のＥｔｈｅｒ処理部に転送し、ビットデスタッフ処理したフレームは廃棄する（ステップＳ２１９）。また、スタッフモード判定部１１７は、バイトデスタッフＦｌａｇが１であるか判断し（ステップＳ２２０）、バイトデスタッフＦｌａｇが１であれば（ステップＳ２２０：Ｙｅｓ）、バイトスタッフモードと判定し（ステップＳ２２１）、ステップＳ２２８に移行する。バイトデスタッフＦｌａｇが１でなければ（ステップＳ２２０：Ｎｏ）、ステップＳ２２７に移行する。
【００２４】
一方、ステップＳ２１８により、バイトデスタッフに関しては正常でないフレームについては（ステップＳ２１８：Ｎｏ）、ビットデスタッフのＦＣＳチェック結果を判断する。ＦＣＳチェック部１１４ａによるビットデスタッフ処理側でのＦＣＳチェック結果により、フレームの正常性を確認する（ステップＳ２２２）。この際、ＦＣＳチェック部１１４ａでは、ＦＣＳチェックの結果を「ＦＣＳ結果通知」として、スタッフモード判定部１１７へ通知する。ＭＵＸ部１１５は、ビットデスタッフ後のフレームが正常であれば（ステップＳ２２２：Ｙｅｓ）、このフレームを後段のＥｔｈｅｒ処理部に転送し、バイトデスタッフ処理したフレームは廃棄する（ステップＳ２２３）。また、スタッフモード判定部１１７は、ビットデスタッフＦｌａｇが１であるか判断し（ステップＳ２２４）、ビットデスタッフＦｌａｇが１であれば（ステップＳ２２４：Ｙｅｓ）、ビットスタッフモードと判定し（ステップＳ２２５）、ステップＳ２２８に移行する。ビットデスタッフＦｌａｇが１でなければ（ステップＳ２２４：Ｎｏ）、ステップＳ２２７に移行する。
【００２５】
ところで、ステップＳ２２２による判断の結果が異常であれば（ステップＳ２２２：Ｎｏ）、バイトデスタッフおよびビットデスタッフのいずれのＦＣＳチェックの結果がいずれも異常であることに該当する。この場合には、ＭＵＸ部１１５は、バイトデスタッフで処理したフレーム、およびビットデスタッフで処理したフレームの両方を廃棄し（ステップＳ２２６）、スタッフモード判定部１１７は、モード判定を行わずスキップし（ステップＳ２２７）、ステップＳ２２８に移行する。
【００２６】
ステップＳ２２８では、処理終了（ステップＳ２２８：Ｙｅｓ）に至るまでの間は（ステップＳ２２８：Ｎｏ）、ステップＳ２０１に復帰してフレームを更新し、次のフレームに対して上記の処理を継続する。
【００２７】
スタッフモード判定部１１７によるスタッフモードの判定は、フレームの受信時に毎回行うことができる。このほか、下位レイヤの警報（Ａｌａｒｍ）がクリアされた後にスタッフモード判定を行い、一度、デスタッフによるコード変換を行ったフレームで、かつ、正常なＦＣＳを有するフレームを受信した以降については、下位レイヤの警報を検出しない間は、ＦＣＳエラーの受信の有無に関わらず変更しない、とすることもできる。
【００２８】
図３は、伝送装置の他の構成例を示すブロック図である。図１に示した構成とほぼ同じであるが、デカプセリング部１０１にはモードフレーム検出部３０１を追加し、カプセリング部１０２にはモードフレーム送出部３０２を追加している。これらモードフレーム検出部３０１と、モードフレーム送出部３０２以外の処理については、図１の構成と同様であり、同一の構成部の説明については省略する。
【００２９】
モードフレーム送出部３０２では、下位レイヤの警報（Ａｌａｒｍ）がクリアされた場合に、対向側の装置に対して、期待するスタッフィングの情報と、情報の正常性を確認するチェックコードを含むスタッフィングモードネゴシエーションフレームを送信する。
【００３０】
図４は、ネゴシエーション時に対向装置に送信するデータの一例を示す図である。モードフレーム送出部３０２は、対向装置とのネゴシエーション時には、図４に示すスタッフィングモードネゴシエーションフレーム４００を対向側の装置に送信する。対向側の装置は、モードフレーム検出出部３０１がこのスタッフィングモードネゴシエーションフレーム４００を検出する。このスタッフィングモードネゴシエーションフレーム４００は、一般的なフォーマットにしたがい、スタートフラグ、アドレス、コントロール、ＳＡＰＩ、ペイロード４０１、ＦＣＳ、エンドフラグを有する。そして、ペイロード部分に対してスタッフモード等を通知するデータを含んでいる。
【００３１】
すなわち、ペイロード４０１には、対向装置に期待するスタッフィングモードを示すリクエストスタッフモード４０２と、自装置がサポートしているスタッフィングモードを示すサポートスタッフモード４０３と、対向装置のスタッフィングモード判定のリセットを要求するスタッフモードリセット４０４と、対向装置からの要求に対する受諾、あるいは受託拒否を応答するリプライコード４０５と、情報の正常性を確認するチェックコード４０６が設けられる。なお、これら全てを含まず一部のみとしてもよい。たとえば、チェックコード４０６については、単純なキーワードでもよいし、情報領域全体に対するＣＲＣを算出する構成でもよい。
【００３２】
上記の各項目の設定値の一例を示す。
（１）リクエストスタッフモード４０２
０ｘ０００１：バイトスタッフモード要求（Ｂｙｔｅ  Ｓｔｕｆｆ  Ｍｏｄｅ）
０ｘ０００２：ビットスタッフモード要求（Ｂｉｔ  Ｓｔｕｆｆ  Ｍｏｄｅ）
それ以外    ：予備（Ｒｅｓｅｒｖｅ）
（２）サポートスタッフモード４０３
０ｘ０００１：バイトスタッフモード可能（Ｂｙｔｅ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｏｎｌｙ）
０ｘ０１００：ビットスタッフモード可能（Ｂｉｔ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｏｎｌｙ）
０ｘ０１０１：バイトおよびビットスタッフモード可能（Ｂｙｔｅ＆Ｂｉｔ  Ｓｔｕｆｆ  Ｍｏｄｅ  ｂｏｔｈ）
それ以外    ：予備（Ｒｅｓｅｒｖｅ）
（３）スタッフモードリセット４０４
０ｘ５５５５：モードリセット要求（Ｍｏｄｅ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ）
それ以外    ：未定義（Ｎｏｐ）
（４）リプライコード４０５
０ｘ０１０１：バイトスタッフモード受諾（Ａｃｃｅｐｔ  Ｂｙｔｅ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｒｅｑｕｅｓｔ）
０ｘ０１０２：ビットスタッフモード受諾（Ａｃｃｅｐｔ  Ｂｉｔ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｒｅｑｕｅｓｔ）
０ｘ０２０１：バイトスタッフモード受諾不可（Ｄｅｎｙ  Ｂｙｔｅ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｒｅｑｕｅｓｔ）
０ｘ０２０２：ビットスタッフモード受諾不可（Ｄｅｎｙ  Ｂｉｔ  Ｓｔｕｆｆ  Ｍｏｄｅ  Ｒｅｑｕｅｓｔ）
それ以外：予備（Ｒｅｓｅｒｖｅ）
（５）チェックコード４０６
リクエストスタッフモード４０２からリプライコード４０５のデータ範囲に対する３２ビットＣＲＣチェック結果
【００３３】
図３に示したカプセリング部１０２のモードフレーム送出部３０２は、スタッフィングモードネゴシエーションフレーム４００の送出時に、スタッフモード判定部１１７を介してＳＷ部１２２、ＳＥＬ部１２５にスタッフモード制御信号を入力し、スタッフィングモードを切り替える。これにより、スタッフィングモードネゴシエーションフレーム４００のうち、一つのフレームは、ビットスタッフィングで送信し、もう一つのフレームは、バイトスタッフィングモードで送信する。
【００３４】
一方、デカプセリング部１０１のモードフレーム検出部３０１側では、受信したフレームのチェックコード４０６と、内部の情報からスタッフィングモードネゴシエーションフレーム４００であることを判断し、情報をスタッフモード判定部１１７へ通知する。スタッフモード判定部１１７では、その情報から、スタッフモードを切り替える。スタッフィングモードネゴシエーションフレーム４００からの情報は、「デスタッフ通知」、「ＦＣＳ結果通知」によって判定されたスタッフモードよりも優先して処理される。リクエストスタッフモード４０２によりスタッフモードを設定した場合は、モードフレーム送出部３０２へ通知し、対向装置へ、スタッフィングモードネゴシエーションフレーム４００のリプライコード４０５を用いて受諾したことを通知する。また、スタッフモードリセット４０４でリセット要求を受信した場合は、スタッフモードの初期化を行い、再度、スタッフモードの検出を行う。
【００３５】
図５は、図３に示す伝送装置における処理を示すフローチャートである。上述したモードフレーム送出部３０２の処理を主に説明する。なお、図５に記載していない処理開始時の工程は図２のステップＳ２０１〜ステップＳ２１７と同様であり、図５には図２に記載のステップＳ２０７およびステップＳ２１７以降の処理について記載してある。
【００３６】
ステップＳ２０７あるいはステップＳ２１７の処理後、ＦＣＳチェック部１１４ａ，１１４ｂでは、ビットとバイトについてそれぞれＦＣＳチェックを行う。まず、ＦＣＳチェック部１１４ｂは、バイトデスタッフ処理側でのＦＣＳチェックについて、演算したＦＣＳをエンドフラグの直前にあるＦＣＳ  Ｆｉｅｌｄと比較し、フレームの正常性を確認する（ステップＳ５１８）。この際、ＦＣＳチェック部１１４ｂでは、ＦＣＳチェックの結果を「ＦＣＳ結果通知」として、スタッフモード判定部１１７へ通知する。
【００３７】
そして、ＦＣＳチェック部１１４ｂは、バイトデスタッフ後のフレームが正常であれば（ステップＳ５１８：Ｙｅｓ）、ビットデスタッフ処理したフレームは廃棄する（ステップＳ５１９）。そして、バイトデスタッフで処理したフレームのスタッフィングモードネゴシエーションフレーム４００の判定処理を行う（ステップＳ５２０）。そして、バイトスタッフ側でのチェックコード４０６の結果が正常であれば（ステップＳ５２１：Ｙｅｓ）、リクエストスタッフモード４０２の設定がバイトであるか判断する（ステップＳ５２２）。この結果がバイトであれば（ステップＳ５２２：Ｙｅｓ）、スタッフモード判定部１１７はバイトスタッフモードと判定し（ステップＳ５２３）、ステップＳ５３６に移行する。
【００３８】
ステップＳ５２１において、バイトスタッフ側でのチェックコード４０６の結果が異常であれば（ステップＳ５２１：Ｎｏ）、バイトデスタッフで処理したフレームを後段のＥｔｈｅｒ処理部（不図示）に転送し（ステップＳ５２４）、ステップＳ５３４の処理に移行する。
【００３９】
ステップＳ５２２において、リクエストスタッフモード４０２の設定がバイトでなければ（ステップＳ５２２：Ｎｏ）、次に、リクエストスタッフモード４０２の設定がビットであるか判断し（ステップＳ５２５）、ビットであれば（ステップＳ５２５：Ｙｅｓ）、スタッフモード判定部１１７はビットスタッフモードと判定し（ステップＳ５３１）、ステップＳ５３６の処理に移行する。ステップＳ５２５においてビットでなければ（ステップＳ５２５：Ｎｏ）、後述するステップＳ５３５の処理に移行する。
【００４０】
一方、ステップＳ５１８におけるＦＣＳチェックにより、バイトデスタッフに関しては正常でないフレームについては（ステップＳ５１８：Ｎｏ）、ビットデスタッフのＦＣＳチェック結果を判断する。ＦＣＳチェック部１１４ａによるビットデスタッフ処理側でのＦＣＳチェック結果により、フレームの正常性を確認する（ステップＳ５２６）。この際、ＦＣＳチェック部１１４ａでは、ＦＣＳチェックの結果を「ＦＣＳ結果通知」として、スタッフモード判定部１１７へ通知する。ＭＵＸ部１１５は、ビットデスタッフ後のフレームが正常であれば（ステップＳ５２６：Ｙｅｓ）、バイトデスタッフ処理したフレームは廃棄する（ステップＳ５２７）。そして、ビットデスタッフで処理したフレームのスタッフィングモードネゴシエーションフレーム４００の判定処理を行う（ステップＳ５２８）。そして、ビットスタッフ側でのチェックコード４０６の結果が正常であれば（ステップＳ５２９：Ｙｅｓ）、ステップＳ５２２以降の処理を実行する。
【００４１】
ステップＳ５２６による判断の結果が異常であれば（ステップＳ５２６：Ｎｏ）、バイトデスタッフおよびビットデスタッフのいずれのＦＣＳチェックの結果がいずれも異常であることに該当する。この場合には、ＭＵＸ部１１５は、バイトデスタッフで処理したフレーム、およびビットデスタッフで処理したフレームの両方を廃棄し（ステップＳ５３２）、ステップＳ５３５に移行する。
【００４２】
ステップＳ５２９によるビットスタッフ側でのチェックコード４０６の結果が異常であれば（ステップＳ５２９：Ｎｏ）、ビットデスタッフで処理したフレームを後段のＥｔｈｅｒ処理部（不図示）に転送し（ステップＳ５３３）、ステップＳ５３４の処理に移行する。
【００４３】
ステップＳ５３４では、バイトデスタッフＦｌａｇが１であるか判断し（ステップＳ５３４）、フラグ設定が１であれば（ステップＳ５３４：Ｙｅｓ）、上記ステップＳ５２３の処理に移行する。フラグ設定が１でなければ（ステップＳ５３４：Ｎｏ）、ビットデスタッフ  Ｆｌａｇが１であるか判断する（ステップＳ５３０）。フラグ設定が１であれば（ステップＳ５３０：Ｙｅｓ）、ステップＳ５３１の処理に移行する。一方、フラグ設定が１でなければ（ステップＳ５３０：Ｎｏ）、ステップＳ５３５の処理に移行する。
【００４４】
ステップＳ５３５では、スタッフモード判定部１１７は、モード判定を行わずスキップし（ステップＳ５３５）、ステップＳ５３６に移行する。
【００４５】
ステップＳ５３６では、処理終了（ステップＳ５３６：Ｙｅｓ）に至るまでの間は（ステップＳ５３６：Ｎｏ）、ステップＳ２０１（図２参照）に復帰してフレームを更新し、次のフレームに対して上記の処理を継続する。
【００４６】
図６は、伝送装置のスタッフモードの状態遷移を示す図である。状態は、初期状態ＳＴ０と、ビットスタッフ選択状態ＳＴ１と、バイトスタッフ選択状態ＳＴ２とがある。初期状態ＳＴ０からビットスタッフ選択状態ＳＴ１への遷移は、伝送装置１００がビットデスタッフィングの機能を有し、対向側の装置からＦＣＳが正常なフレームを受信し、かつ、対向側の装置からスタッフネゴシエーションフレーム４００を受信していないときに遷移する（ステップＳ６０１）。あるいは、対向側の装置からスタッフネゴシエーションフレーム４００を受信した場合には、リクエストスタッフモード４０２の設定がビットスタッフの設定のとき、優先的に遷移する。
【００４７】
初期状態ＳＴ０からバイトスタッフ選択状態ＳＴ２への遷移は、伝送装置１００がバイトデスタッフィングの機能を有し、対向側の装置からＦＣＳが正常なフレームを受信し、かつ、対向側の装置からスタッフネゴシエーションフレーム４００を受信していないときに遷移する（ステップＳ６０２）。あるいは、対向側の装置からスタッフネゴシエーションフレーム４００を受信した場合には、リクエストスタッフモード４０２の設定がバイトスタッフの設定のとき、優先的に遷移する。
【００４８】
ビットスタッフ選択状態ＳＴ１からは、初期状態ＳＴ０にしか遷移できない。加えて、この遷移の際には、下位レイヤからの警報（Ａｌａｒｍ）か、スタッフネゴシエーションフレーム４００を受信し、かつスタッフモードリセット４０４がモードリセット要求に設定されている場合に遷移できる（ステップＳ６０３）。
【００４９】
バイトスタッフ選択状態ＳＴ２からも初期状態ＳＴ０にしか遷移できない。加えて、この遷移の際には、下位レイヤからの警報（Ａｌａｒｍ）か、スタッフネゴシエーションフレーム４００を受信し、かつスタッフモードリセット４０４がモードリセット要求に設定されている場合にだけ遷移する（ステップＳ６０３）。
【００５０】
図７は、対向装置との間のネゴシエーションを示すシーケンス図である。図３に示した伝送装置を装置Ａとし、対向側の伝送装置を装置Ｂとしている。そして、これら装置Ａ，Ｂは、いずれも上述したスタッフィングモードネゴシエーション機能をサポートしているものとする。
【００５１】
そして、対向側の装置Ｂから送信されたスタッフィングモードネゴシエーションフレーム４００をモードフレーム検出部３０１が検出する。この際、装置Ｂは、リクエストスタッフモード４０２の設定がビットスタッフ（ステップＳ７０１）と、バイトスタッフ（ステップＳ７０２）であり、モードフレーム送出部３０２は、ビットスタッフィングされた一つのフレームと、バイトスタッフィングされた一つのフレームとを装置Ａに送信する。この場合、装置Ａは、スタッフィングモードを初期状態から対応可能な一つのスタッフモードに切り替える（ステップＳ７０３）。ここでは、リクエストスタッフモード４０２がビットスタッフの設定であるため、装置Ａのスタッフモード判定部１１７は、ビットスタッフ状態に切り替える。
【００５２】
そして、装置Ａのモードフレーム送出部３０２は、対向する装置Ｂに対してスタッフィングモードネゴシエーションフレーム４００のリプライコード４０５をビットスタッフモード受諾に設定し、ビットスタッフィングされたフレームを送信する（ステップＳ７０４）。装置Ｂのモードフレーム検出部３０１は、このスタッフィングモードネゴシエーションフレーム４００のリプライコード４０５のビットスタッフモード受諾を受信し、スタッフモード判定部１１７は、スタッフィングモードを初期状態からビットスタッフモードに状態を切り替える（ステップＳ７０５）。
【００５３】
図４に示すペイロード４０１中に、’０ｘ７Ｅ’や、’０ｂ１１１１１’が存在しないフレームでスタッフィングが必要ないフレームであれば、バイトスタッフと、ビットスタッフの結果は一致するので、これらバイトスタッフと、ビットスタッフ処理したフレームを個別に送る必要はない。しかし、フレームの種別によっては、ＬＡＰＳ、ＨＤＬＣヘッダ内に必ず’０ｂ１１１１１’が存在するものもあるため、双方のスタッフで送信する機能を備えている。
【００５４】
図８は、対向装置との間のネゴシエーションを示すシーケンス図である。図３に示した伝送装置を装置Ｂとし、この装置Ｂは、上述したスタッフィングモードネゴシエーション機能をサポートしている。一方、装置Ａは、スタッフィングモードネゴシエーション機能をサポートしておらず、バイトスタッフィング機能だけを有する従来装置であるとする。
【００５５】
そして、初期状態にある装置Ｂがスタッフィングモードネゴシエーションフレーム４００を装置Ａへ送信したとする。この際、装置Ｂは、リクエストスタッフモード４０２の設定がビットスタッフ（ステップＳ８０１）と、バイトスタッフ（ステップＳ８０２）であり、ビットスタッフィングされたフレームと、バイトスタッフィングされたフレームとを装置Ａに送信したとする。
【００５６】
しかし、装置Ａでは、スタッフィングモードネゴシエーションフレーム４００のペイロード４０１の中身が、通常のフレームではないため、装置Ａは、スタッフィングモードネゴシエーションフレーム４００を認識しない。そして、装置Ａが有するバイトスタッフィング機能でフレームを受信する。
【００５７】
また、装置Ａは、対向する装置Ｂに対して装置Ａが有するバイトスタッフィング機能によるフレームを送信し（ステップＳ８０３）、装置Ｂでは、モードフレーム検出部３０１が、バイトスタッフモードであることを認識し、モードを初期状態からバイトスタッフモードに切り替える（ステップＳ８０４）。
【００５８】
このように、複数のスタッフィングモードを有する装置Ｂは、従来の装置Ａとの間においても、問題なくフレームの送受信を行うことができる。なお、装置Ａの後段のＥｔｈｅｒ処理部（あるいはＩＰ処理部）では、スタッフィングモードネゴシエーションフレーム４００については、エラーフレームとして廃棄するため、他の通信に影響するようなことはない。
【００５９】
上記のように、対向側の装置との間で、スタッフモードとして期待する情報を含むフレームをやり取りすることで、対向側の装置との間のスタッフモードを一致させることができる。そして、正常なＦＣＳを検出した場合に、スタッフを判定することにより、上記構成を備えた装置間同士、あるいは上記構成の装置と従来装置との間においてもスタッフモードを一致させることができる。
【００６０】
そして、デカプセリング部１０１では、デスタッフしたフレームのペイロード４０１をチェックし、ペイロード４０１内のチェックコード４０６が正しければ、対向側の装置の期待するスタッフの情報（リクエストスタッフモード４０２）を読み出してカプセリング部１０２に通知する。カプセリング部１０２は、要求されたスタッフモードにしたがったスタッフモードに変更する。ここで、ペイロード４０１内に、チェックコード４０６、または期待するスタッフモードに関する情報がなければ、正常なＦＣＳを有するビットスタッフあるいはバイトスタッフされたスタッフモードに決定する。
【００６１】
また、対向側の装置に対して、受信したフレーム内の情報にしたがって、自装置のスタッフィングモードを設定したことを通知することにより、対向側の装置との間でのスタッフモードの不一致がないことを相互に確認できるようになる。また、対向側の装置に対して、スタッフモードの判定の初期化を要求するフレームを送信する機能により、自装置側のスタッフモードを変更する際に、対向側の装置を操作する等の手間を掛けずに対向側の装置のスタッフモードを容易に変更できる。
【００６２】
以上説明したように、開示技術によれば、入力されたデータに対するビットスタッフとバイトスタッフ処理を並列で行い、それぞれのスタッフ処理のＦＣＳ結果のうち正常な結果のスタッフ処理側を対向装置がデータ送信した際のスタッフモードであると判別できるようになり、対向装置のスタッフモードが不明でもデータを正常に受信できる。上記の説明では、伝送フレームを例に説明したが、伝送パケットに対しても同様に適用できる。この上記の伝送装置は、ＬＡＰＳ（Ｌｉｎｋ  Ａｃｃｅｓｓ  Ｐｒｏｃｅｄｕｒｅ  ｆｏｒ  ＳＤＨ）、またはＨＤＬＣ（Ｈｉｇｈ−Ｌｅｖｅｌ  Ｄａｔａ  Ｌｉｎｋ  Ｃｏｎｔｒｏｌ）によるフレームまたはパケットのカプセリング／デカプセリングを行う機能を有する伝送装置に適用することができる。
【００６３】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００６４】
（付記１）フレームまたはパケットのデータに対するカプセリング、およびデカプセリングを行う機能を有する伝送装置において、
入力されたデータに対するビットデスタッフィング処理を行うビットデスタッフ器と、  前記データの複製データに対するバイトデスタッフィング処理を行うバイトデスタッフ器と、
前記ビットデスタッフ器および前記バイトデスタッフ器のそれぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行うＦＣＳチェック器と、
前記ビットデスタッフ器および前記バイトデスタッフ器のそれぞれにおけるコード変換結果と、前記ＦＣＳチェック器により正常なＦＣＳを有する前記データを検出した側のスタッフモードによって、対向側の伝送装置のスタッフモードを判定するモード判定器と、
を有するデカプセリング器を備えたことを特徴とする伝送装置。
【００６５】
（付記２）前記対向側の伝送装置に送信するデータをカプセリングするカプセリング器を備え、
前記モード判定器は、判定した対向側の伝送装置のスタッフモードを前記カプセリング器へ通知し、
前記カプセリング器は、前記モード判定器により判定されたスタッフモードによりデータを送信することを特徴とする付記１に記載の伝送装置。
【００６６】
（付記３）前記カプセリング器は、
前記対向側の装置に要求するスタッフモードに関する情報と、当該スタッフモード情報の正常性を示すチェックコードを含むデータを送信するモードフレーム送出器を備えたことを特徴とする付記２に記載の伝送装置。
【００６７】
（付記４）前記モードフレーム送出器は、前記スタッフモードに関する情報をフレームあるいはパケットのペイロード部分に挿入することを特徴とする付記３に記載の伝送装置。
【００６８】
（付記５）前記モードフレーム送出器は、前記データをバイトスタッフ、およびビットスタッフのそれぞれでスタッフィングし、それぞれを前記対向側の装置へ送信することを特徴とする付記３または４に記載の伝送装置。
【００６９】
（付記６）前記デカプセリング器は、
対向側の装置から受信したデータに含まれる、要求されたスタッフモードに関する情報と、当該スタッフモード情報の正常性を示すチェックコードを検出するモードフレーム検出器を備え、
前記スタッフモード判定器は、前記モードフレーム検出器により検出された前記対向側の装置のスタッフモードを判定し、前記カプセリング器に当該スタッフモードへの変更を制御することを特徴とする付記３または４に記載の伝送装置。
【００７０】
（付記７）前記カプセリング器に設けられる前記モードフレーム送出器は、
対向側の装置から要求されたスタッフモードにしたがったスタッフモードの変更を行った場合、当該変更後のスタッフモードに関する情報を前記対向装置に通知することを特徴とする付記５に記載の伝送装置。
【００７１】
（付記８）前記カプセリング器に設けられる前記モードフレーム送出器は、スタッフモードの判定を初期化する要求を通知する機能を有することを特徴とする付記５または６に記載の伝送装置。
【００７２】
（付記９）フレームまたはパケットのデータに対するカプセリング、およびデカプセリングを行う機能を有する伝送装置の伝送方法において、
入力されたデータに対するビットデスタッフィング処理を行うビットデスタッフ工程と、
前記データの複製データに対するバイトデスタッフィング処理を行うバイトデスタッフ工程と、
前記ビットデスタッフ工程および前記バイトデスタッフ工程のそれぞれの出力に対して、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）処理を行うＦＣＳチェック工程と、
前記ビットデスタッフ工程および前記バイトデスタッフ工程のそれぞれにおけるコード変換結果と、前記ＦＣＳチェック工程により正常なＦＣＳを有する前記データを検出した側のスタッフモードによって、対向側の伝送装置のスタッフモードを判定するモード判定工程と、
を含むことを特徴とする伝送方法。
【符号の説明】
【００７３】
１００  伝送装置
１０１  デカプセリング部
１０２  カプセリング部
１１０  スタートフラグ検出部
１１１  ビットデスタッフ処理部
１１２  バイトデスタッフ処理部
１１３ａ，１１３ｂ  エンドフラグ検出部
１１４ａ，１１４ｂ  ＦＣＳチェック部
１１５  ＭＵＸ部
１１６  ヘッダチェック部
１１７  スタッフモード判定部
１２０  スタートフラグ挿入部
１２１  ヘッダ挿入部
１２２  ＳＷ部
１２３  ビットスタッフ処理部
１２４  バイトスタッフ処理部
１２５  ＳＥＬ部
１２６  ＦＣＳ生成部
１２７  エンドフラグ挿入部
３０１  モードフレーム検出部
３０２  モードフレーム送出部
４００  スタッフィングモードネゴシエーションフレーム
４０１  ペイロード
【図１】
0005471784.tif 000002
【図２】
0005471784.tif 000003
【図３】
0005471784.tif 000004
【図４】
0005471784.tif 000005
【図５】
0005471784.tif 000006
【図６】
0005471784.tif 000007
【図７】
0005471784.tif 000008
【図８】
0005471784.tif 000009
【図９】
0005471784.tif 000010