本願は、制御コードブロックの伝送を保証し、通信精度を向上させることができるコードブロックストリームの送受信方法、コードブロックストリームの送信方法、および通信装置を提供する。
第1の態様によれば、コードブロックストリームの受信方法が提供される。方法は、受信デバイスによって、伝送ネットワークから、第1のレートモードであり、複数のコードブロックを含むコードブロックストリームを受信する段階と、受信デバイスによって、コードブロックストリームから、ターゲットコードブロックを決定する段階であって、ターゲットコードブロックは、コードブロックストリームのパケット間ギャップで受信デバイスによって受信されたコードブロックであり、ターゲットコードブロックは、第1のターゲットコードブロックを含み、第1のターゲットコードブロックは、データ型のコードブロックであり、および/または、ターゲットコードブロックは、第2のターゲットコードブロックを含み、第2のターゲットコードブロックは、終端型のコードブロックである段階と、受信デバイスによって、ターゲットコードブロックを、第2のレートモードにある、オーダーセット型のコードブロックに修正する段階と、を含む。
ターゲットコードブロックは、第1のレートモードのコードブロックストリームの送信デバイスが、第2のレートモードであり、クライアントデバイスから送信された受信コードブロックストリームのオーダーセット型のコードブロックを修正した後に生成されたコードブロックである。
オーダーセット型のコードブロックはパケット間ギャップで伝送されるため、送信デバイスは、オーダーセット型のコードブロックを、データ型のコードブロックまたは終端型のコードブロックに修正して、伝送ネットワークによって認識可能としてもよい。このように、受信デバイスは、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックが、オーダーセット型のコードブロックに基づいて修正されたと決定でき、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックをオーダーセット型のコードブロックに戻して修正することをさらに実行してもよい。これは、伝送ネットワークを用いてオーダーセット型のコードブロックを伝送できることを保証できるだけでなく、受信デバイスがオーダーセット型のコードブロックを確実に認識することも保証でき、これにより、通信精度を向上させることができる。
本願では、第1のレートモードにおけるコードブロックストリームは、物理コーディングサブレイヤPCSで処理(例えば、エンコードまたはデコード)され、伝送ネットワーク(例えば、FlexEをサポートするネットワーク)で伝送されるイーサネット信号(例えば、高速イーサネット信号)に含まれるコードブロックストリーム(または、ビットコードブロックストリームまたはビットストリーム)であってもよい。
また、第2のレートモードにおけるコードブロックストリームは、PCSで処理されるコードブロックストリーム(またはビットコードブロックストリームまたはビットストリーム)であってもよく、クライアントデバイスと伝送デバイス(例えば、伝送ネットワークのイングレスデバイスまたはエグレスデバイス)に前に伝送されるイーサネット信号(例えば、中低速イーサネット信号)に含まれてもよい。
また、送信デバイスが送信する第1のレートモードのコードブロックストリームは、送信デバイスが第2のレートモードのコードブロックストリームに対してトランスコードなどの処理を実行した後に生成されてもよい。
受信デバイスは、伝送ネットワークにおける第1のレートモードのコードブロックストリーム(または第1のレートモードのコードブロックストリームを含むイーサネット信号)のエグレスデバイスであってもよい。具体的には、イーサネット信号は、伝送ネットワークからイーサネット信号のデスティネーションネットワーク(イーサネット信号のデスティネーションクライアントデバイスを含む)に、エグレスデバイスを用いて流れる。
送信デバイスは、伝送ネットワークにおける第1のレートモードのコードブロックストリーム(または第1のレートモードのコードブロックストリームを含むイーサネット信号)のイングレスデバイスであってもよい。具体的には、イーサネット信号は、イーサネット信号のソースネットワーク(イーサネット信号のソースクライアントデバイスを含む)から、イングレスデバイスを用いて伝送ネットワークに流れる。
本願では、第2のレートモードに対応するレートは、第1のレートモードに対応するレートより小さいまたはこれと等しい。
「第2のレートモードに対応するレートが第1のレートモードに対応するレートより小さいまたはこれと等しい」は、第1のレートモードにある信号であって、高速モードの信号として使用される信号が、低速モードにある信号であって、第2のレートモードの信号を含む1または複数の信号を集約して取得される場合として理解されてよい。
あるいは、「第2のレートモードに対応するレートが第1のレートモードに対応するレートより小さいまたはこれと等しい」は、第1のレートモードの信号によって含まれ得るスロットの量が、第2のレートモードの信号によって含まれ得るスロットの量よりも大きい場合として理解されてよい。
限定の代わりの例として、第1のレートモードは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードを含んでもよい。
あるいは、伝送ネットワークは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードのイーサネット物理リンクを含んでもよく、または伝送ネットワークは、40Gbps、100Gbps、200Gbps、または400Gbpsのレートのイーサネット物理インタフェースモードをサポートしてもよい。
あるいは、伝送ネットワーク内の伝送デバイスは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードに基づいてイーサネット信号を転送する。
第1のレートモードにおけるコードブロックストリーム(または第1のレートモードにおけるコードブロックストリームを含むイーサネット信号)の伝送量は、40Gbps、100Gbps、200Gbps、または400Gbpsであってもよい。
あるいは、第1のレートモードにおけるコードブロックストリームを含むイーサネット信号は、40G BASE-Rモードにおけるイーサネット信号、100G BASE-Rモードにおけるイーサネット信号、200G BASE-Rモードにおけるイーサネット信号、または400G BASE-Rモードにおけるイーサネット信号であってもよい。
限定の代わりの例として、第2のレートモードは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードを含んでもよい。
あるいは、クライアントデバイスと伝送ネットワークのイングレスデバイスまたはエグレスデバイスとの間のリンクは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードのイーサネット物理リンクを含んでもよく、または、クライアントデバイスは、5Gbps、10Gbps、または25Gbpsのレートを有するイーサネット物理インタフェースモードをサポートしてもよい。
あるいは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードに基づいて、クライアントデバイスと伝送ネットワークのイングレスデバイスまたはエグレスデバイスとの間でイーサネット信号が転送される。
第2のレートモードにおけるコードブロックストリーム(または第2のレートモードにおけるコードブロックストリームを含むイーサネット信号)の伝送量は、5Gbps、10Gbps、または25Gbpsであってもよい。
あるいは、第2のレートモードのコードブロックストリームを含むイーサネット信号は、5G BASE-Rモードの信号、10G BASE-Rモードの信号、または25G BASE-Rモードの信号であってもよい。
オプションで、コードブロックストリームのコードブロックは、64ビットのコードブロックであってもよく、またはコードブロックストリームのコードブロックは、66ビットのコードブロックであってもよい。
また、オーダーセット型のコードブロックは、オーダーセット(order set, O)コードブロックとも呼ばれてよい。
例えば、Oコードブロックは、(コードブロック型フィールド(block type field))に保持される情報が0×2dであるコードブロックを含んでいてもよい。
別の例として、Oコードブロックは、コードブロック型フィールドに保持される情報が0×55であるコードブロックを含んでもよい。
Oコードブロックの同期ヘッダフィールド(sync header field)に保持されるビットは10である。
ビット「10」は、2進数(0b)ビットとして理解されてもよく、または、値「10」として理解されてもよい。繰り返しを避けるため、以下では、同一事例または詳細な事例の説明を省略する。
オプションで、受信デバイスによって、ターゲットコードブロックを修正する段階は、受信デバイスによって、第2のターゲットコードブロックのコードブロック型フィールド内に保持された情報を、オーダーセット型に対応するコードブロック型情報に修正する段階を含む。
例えば、Tコードブロックは、コードブロック型フィールドに保持される情報が以下のうち少なくとも1つの情報であるコードブロックを含んでもよい。 0×87、0×99、0×AA、0×B4、0×CC、0×D2、0×E1、および0×FF。
具体的には、受信デバイスによって、ターゲットコードブロックのコードブロック型フィールドに保持される情報を修正する段階は、受信デバイスによって、第2のターゲットコードブロックのコードブロック型フィールドに保持される情報を、0×87、0×99、0×AA、0×B4、0×CC、0×D2、0×E1、および0×FFのうちの1つから0×2dまたは0×55に修正する段階を含む。
オプションで、受信デバイスによって、第2のターゲットコードブロックのコードブロック型フィールド内に保持される情報を、オーダーセット型に対応するコードブロック型の情報に修正する段階は、受信デバイスによって、マッピング関係に基づいて、第1の終端型の第2のターゲットコードブロックのコードブロック型フィールド内に保持される情報を、第1のオーダーセット型に対応する情報に修正する段階であって、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型との間の1対1のマッピング関係を示すために使用され、第1のオーダーセット型は第1の終端型に対応し、第1の終端型は少なくとも2つの終端型のうちのいずれか1つである段階、を含む。
オプションで、受信デバイスによって、第2のターゲットコードブロックのコードブロック型フィールド内に保持される情報を、オーダーセット型に対応するコードブロック型情報に修正する段階は、受信デバイスによって、少なくとも2つの終端型のコードブロックと少なくとも2つのオーダーセット型のコードブロックとの間の1対1のマッピング関係を決定する段階と、第2のターゲットコードブロックが第1の終端型のコードブロックである場合、受信デバイスによって、マッピング関係に基づいて、ターゲットコードブロックのコードブロック型フィールドに保持される情報を、第1のオーダーセット型のコードブロックに対応する情報に修正する段階であって、第1のオーダーセット型のコードブロックは、マッピング関係によって示された第1の終端型のコードブロックに対応するオーダーセット型のコードブロックであり、第1の終端型のコードブロックは、少なくとも2つの終端型のコードブロックのうちのいずれか1つである段階、を含む。
例えば、コードブロック型フィールドに保持される情報が0×2dであるOコードブロックは、コードブロック型フィールドに保持される情報が0×E1であるTコードブロックに対応していてもよい。
別の例として、コードブロック型フィールドに保持される情報が0×55であるOコードブロックは、コードブロック型フィールドに保持される情報が0×FFであるTコードブロックに対応していてもよい。
また、Tコードブロックの同期ヘッダフィールドに保持されるビットは10である。
受信デバイスによって、ターゲットコードブロックを修正する段階は、受信デバイスによって、第1のターゲットコードブロックの同期ヘッダフィールドに保持される情報を、オーダーセット型に対応する同期ヘッダ情報に修正する段階を含む。
データ型のコードブロックは、データ(data, D)コードブロックと呼ばれてもよい。
この場合、オプションで、具体的には、受信デバイスによって、ターゲットコードブロックのコードブロック型フィールドに保持される情報を修正する段階は、受信デバイスによって、第1のターゲットコードブロックのコードブロック型フィールドに保持される情報を01から10まで修正する段階を含む。
Dコードブロックの同期ヘッダフィールドに保持されるビットは01である。
具体的には、受信デバイスによって、ターゲットコードブロックの同期ヘッダフィールドに保持された情報を、オーダーセット型のコードブロックに対応する情報に修正する段階は、受信デバイスによって、ターゲットコードブロックの同期ヘッダフィールドに保持された情報を、01から10まで修正する段階を含む。
また、パケット間ギャップ(inter packet gap, IPG)は、フレーム間ギャップと呼ばれてもよく、2つのイーサネットデータパケット間の伝送時間間隔を指す。
各データパケットは複数のコードブロックを含み、データパケットの最初のコードブロックはSコードブロックであってもよく、データパケットの最後のコードブロックはTコードブロックであってもよい。
オプションで、受信デバイスによって、コードブロックストリームからターゲットコードブロックを決定する前に、方法は、受信デバイスによって、コードブロックストリーム内の開始型のコードブロックに基づいて、パケット間ギャップの終端位置を決定する段階と、受信デバイスによって、コードブロックストリーム内の終端型のコードブロックに基づいて、パケット間ギャップの開始位置を決定する段階と、をさらに含む。
具体的には、任意のIPG(IPG#1と表記される)は、2つのデータパケット(データパケット#1とデータパケット#2と表記される)の間に位置していてもよい。伝送シーケンスにおいてデータパケット#1がデータパケット#2の前に位置すると仮定すると、IPG#1の開始位置は、データパケット#1の終端位置によって決定されてもよく、具体的には、IPG#1の開始位置は、データパケット#1のTコードブロックを使用して決定されてもよい。言い換えれば、イーサネット(登録商標)内のデバイスがデータパケット#1のTコードブロックを受信する場合、IPG#1が開始されたとみなされることができる。また、IPG#2の終端位置は、データパケット#2の開始位置によって決定してもよく、具体的には、データパケット#1のTコードブロックを用いてIPG#1の開始位置を決定してもよい。言い換えれば、イーサネット内のデバイスがデータパケット#2のSコードブロックを受信した場合には、IPG#1が終了したものとみなされることができる。
例えば、ターゲットコードブロックがデータ型のコードブロック(第1のターゲットコードブロック)を含む場合、イーサネット信号中の各Tコードブロックはパケットの終端を表し、したがって、Tコードブロックの位置に基づいてフレーム間ギャップの開始位置が決定されてもよい。
この場合、オプションで、受信デバイスによって、イーサネット信号からターゲットコードブロックを決定する段階は、受信デバイスによって、ターゲットコードブロックとして、第1のパケット間ギャップ指示情報の値が予め設定された第1の値である期間内に受信されるデータ型のコードブロックを決定する段階であって、受信デバイスが開始型のコードブロックを受信する場合、第1のパケット間ギャップ指示情報が予め設定された第2の値に設定され、受信デバイスが終端型のコードブロックを受信する場合、第1のパケット間ギャップ指示情報が第1の値に設定される段階を含む。
あるいは、オプションで、受信デバイスによって、イーサネット信号からのターゲットコードブロックを決定する段階は、受信デバイスによって、Tコードブロックの後に位置するコードブロックをターゲットコードブロック(第1のターゲットコードブロック)として決定する段階を含む。
あるいは、オプションで、受信デバイスによって、イーサネット信号からのターゲットコードブロックを決定する段階は、受信デバイスによって、Sコードブロックの前に位置するコードブロックをターゲットコードブロック(第1のターゲットコードブロック)として決定する段階を含む。
別の例として、ターゲットコードブロックが終端型のコードブロック(第2のターゲットコードブロック)を含む場合、Oコードブロックが修正されるように制御された後に、イーサネット信号中のいくつかのTコードブロックが生成されてもよい。この場合、フレーム間ギャップの開始位置は、Sコードブロックの後の第1のTコードブロックの位置に基づいて決定されてもよい。
この場合、受信デバイスによって、コードブロックストリーム内の終端型のコードブロックに基づいてパケット間ギャップの開始位置を決定する段階は、受信デバイスによって、コードブロックストリーム内の第1の終端型のコードブロックに基づいてパケット間ギャップの開始位置を決定する段階であって、第1の終端型のコードブロックは終端型の第1のコードブロックであり、伝送シーケンス内の開始型のコードブロックの後に位置する段階を含む。
オプションで、受信デバイスによって、イーサネット信号からターゲットコードブロックを決定する段階は、受信デバイスによって、受信デバイスが開始型のコードブロックを受信した場合に、第1のパケット間ギャップ指示情報の値が予め設定された第1の値である期間内に受信される終端型のコードブロックをターゲットコードブロック(第2のターゲットコードブロック)として決定する段階と、第1のパケット間ギャップ指示情報の値が予め設定された第2の値に設定され、第1のパケット間ギャップ指示情報の値が第2の値である期間内に受信デバイスが終端型のコードブロックを受信した場合に、第1のパケット間ギャップ指示情報を第1の値に設定する段階と、を含む。
第2の態様によれば、コードブロックストリームの受信方法が提供される。方法は、送信デバイスによって、第2のレートモードにある複数のコードブロックのコードブロックストリームに基づいて、第1のレートモードのコードブロックストリームを決定する段階であって、第2のレートモードのコードブロックストリームにおけるオーダーセット型のコードブロックがデータ型のコードブロックに修正され、および/または、第2のレートモードのコードブロックストリームにおけるオーダーセット型のコードブロックが終端型のコードブロックに修正される段階と、送信デバイスによって、第1のレートモードのコードブロックストリームを伝送ネットワークに送信する段階と、を含む。
オーダーセット型のコードブロックは、パケット間ギャップで送信されるため、送信デバイスは、オーダーセット型のコードブロックを、データ型のコードブロックまたは終端型のコードブロックに修正して、伝送ネットワークによって認識可能としてもよい。このように、受信デバイスは、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックが、オーダーセット型のコードブロックに基づいて修正されたと決定でき、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックをオーダーセット型のコードブロックに戻してさらに修正してもよい。これは、伝送ネットワークを使用してオーダーセット型のコードブロックを伝送することを保証できるだけでなく、受信デバイスがオーダーセット型のコードブロックを確実に認識することも保証でき、これにより、通信精度を向上させる。
本願では、第1のレートモードにおけるコードブロックストリームは、物理コーディングサブレイヤPCSで処理(例えば、エンコードまたはデコード)され、伝送ネットワーク(例えば、FlexEネットワーク)で伝送されるイーサネット信号(例えば、高速イーサネット信号)に含まれるコードブロックストリーム(または、ビットコードブロックストリームまたはビットストリーム)であってもよい。
また、第2のレートモードにおけるコードブロックストリームは、PCSで処理され、クライアントデバイスと伝送デバイス(例えば、伝送ネットワークのイングレスデバイスまたはエグレスデバイス)に前に伝送されるイーサネット信号(例えば、中低速イーサネット信号)に含まれるコードブロックストリーム(またはビットコードブロックストリームまたはビットストリーム)であってもよい。
また、送信デバイスが送信する第1のレートモードのコードブロックストリームは、送信デバイスが第2のレートモードのコードブロックストリームに対してトランスコードなどの処理を実行した後に生成されてもよい。
受信デバイスは、伝送ネットワークにおける第1のレートモードのコードブロックストリーム(または第1のレートモードのコードブロックストリームを含むイーサネット信号)のエグレスデバイスであってもよい。具体的には、イーサネット信号は、伝送ネットワークからイーサネット信号のデスティネーションネットワーク(イーサネット信号のデスティネーションクライアントデバイスを含む)に、エグレスデバイスを用いて流れる。
送信デバイスは、伝送ネットワークにおける第1のレートモードのコードブロックストリーム(または第1のレートモードのコードブロックストリームを含むイーサネット信号)のイングレスデバイスであってもよい。具体的には、イーサネット信号は、イーサネット信号のソースネットワーク(イーサネット信号のソースクライアントデバイスを含む)から、イングレスデバイスを用いて伝送ネットワークに流れる。
本願では、第2のレートモードに対応するレートは、第1のレートモードに対応するレートより小さいまたはこれと等しい。
「第2のレートモードに対応するレートが第1のレートモードに対応するレートより小さいまたはこれと等しい」は、第2のレートモード内にある信号であって、高速モードの信号として使用される信号が、低速モードにある信号であって、第1のレートモードの信号を含む1または複数の信号を集約して得られる場合として理解され得る。
あるいは、「第2のレートモードに対応するレートが第1のレートモードに対応するレートより小さいまたはこれと等しい」は、第2のレートモードの信号によって含まれ得るスロットの量が、第1のレートモードの信号によって含まれ得るスロットの量よりも大きい場合として理解されてもよい。
限定の代わりの例として、第1のレートモードは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードを含んでもよい。
あるいは、伝送ネットワークは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードのイーサネット物理リンクを含んでもよく、または伝送ネットワークは、40Gbps、100Gbps、200Gbps、または400Gbpsのレートのイーサネット物理インタフェースモードをサポートしてもよい。
あるいは、伝送ネットワーク内の伝送デバイスは、40G BASE-Rモード、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードに基づいてイーサネット信号を転送する。
第1のレートモードにおけるコードブロックストリーム(または第1のレートモードにおけるコードブロックストリームを含むイーサネット信号)の伝送量は、40Gbps、100Gbps、200Gbps、または400Gbpsであってもよい。
あるいは、第1のレートモードにおけるコードブロックストリームを含むイーサネット信号は、40G BASE-Rモードにおけるイーサネット信号、100G BASE-Rモードにおけるイーサネット信号、200G BASE-Rモードにおけるイーサネット信号、または400G BASE-Rモードにおけるイーサネット信号であってもよい。
限定の代わりの例として、第2のレートモードは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードを含んでもよい。
あるいは、クライアントデバイスと伝送ネットワークのイングレスデバイスまたはエグレスデバイスとの間のリンクは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードのイーサネット物理リンクを含んでもよく、または、クライアントデバイスは、5Gbps、10Gbps、または25Gbpsのレートを有するイーサネット物理インタフェースモードをサポートしてもよい。
あるいは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードに基づいて、クライアントデバイスと伝送ネットワークのイングレスデバイスまたはエグレスデバイスとの間でイーサネット信号が転送される。
第2のレートモードにおけるコードブロックストリーム(または第2のレートモードにおけるコードブロックストリームを含むイーサネット信号)の伝送量は、5Gbps、10Gbps、または25Gbpsであってもよい。
あるいは、第2のレートモードのコードブロックストリームを含むイーサネット信号は、5G BASE-Rモードの信号、10G BASE-Rモードの信号、または25G BASE-Rモードの信号であってもよい。
オプションで、コードブロックストリーム内のコードブロックは、64B/66Bのコードブロックであってもよく、または、任意のMビット/Nビットのコードブロックであってもよく、ここで、MはNより小さいまたはこれと等しい。
また、オーダーセット型のコードブロックは、Oコードブロックと呼ばれることもある。
例えば、Oコードブロックは、コードブロック型フィールドに保持される情報が0×2dであるコードブロックを含んでいてもよい。
別の例として、Oコードブロックは、コードブロック型フィールドに保持される情報が0×55であるコードブロックを含んでもよい。
Oコードブロックの同期ヘッダフィールドで保持されるビットは10である。
オプションで、オーダーセット型のコードブロックのコードブロック型フィールドに保持される情報は、終端型に対応するコードブロック型情報に修正される。
例えば、Tコードブロックは、コードブロック型フィールドに保持される情報が以下のうち少なくとも1つの情報であるコードブロックを含んでもよい。 0×87、0×99、0×AA、0×B4、0×CC、0×D2、0×E1、および0×FF。
具体的には、この方法には、送信デバイスによって、0×2dまたは0×55~0×87、0×99、0×AA、0×B4、0×CC、0×D2、0×E1、および0×FFのうちの1つまでのオーダーセット型のコードブロックのコードブロック型フィールドに保持される情報を修正する段階が含まれる。
オプションで、送信デバイスによって、第2のレートモードにある複数のコードブロックのコードブロックストリームに基づいて、第1のレートモードにあるコードブロックストリームを決定する段階は、送信デバイスによって、マッピング関係に基づいて、第1のオーダーセット型のコードブロックのコードブロック型フィールド内に保持される情報を、第1の終端型に対応する情報に修正する段階であって、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型との間の1対1のマッピング関係を示すために使用され、第1のオーダーセット型は第1の終端型に対応し、第1のオーダーセット型は少なくとも2つのオーダーセット型のうちのいずれか1つである段階を含む。
例えば、コードブロック型フィールドに保持される情報が0×2dであるOコードブロックは、コードブロック型フィールドに保持される情報が0×E1であるTコードブロックに対応していてもよい。
別の例として、コードブロック型フィールドに保持される情報が0×55であるOコードブロックは、コードブロック型フィールドに保持される情報が0×FFであるTコードブロックに対応していてもよい。
また、Tコードブロックの同期ヘッダフィールドに保持されるビットは10である。
オプションで、オーダーセット型のコードブロックの同期ヘッダフィールドに保持される情報は、データ型に対応する同期ヘッダ情報に修正される。
具体的には、方法は、受信デバイスによって、オーダーセット型のコードブロックの同期ヘッダフィールドに保持される情報を、データ型に対応する同期ヘッダ情報に修正する段階を含む。
また、データ型のコードブロックは、データ(data, D)コードブロックと呼ばれてもよい。
Dコードブロックの同期ヘッダフィールドに保持されるビットは01である。
具体的には、この場合、受信デバイスによって、オーダーセット型のコードブロックの同期ヘッダフィールドに保持された情報を、データ型に対応する同期ヘッダ情報に修正する段階は、受信デバイスによって、オーダーセット型のコードブロックの同期ヘッダフィールドに保持された情報を、10から01まで修正する段階を含む。
また、パケット間ギャップIPGは、フレーム間ギャップと呼ばれてもよく、2つのイーサネットデータパケット間の伝送時間間隔を指す。
各データパケットは複数のコードブロックを含み、データパケットの最初のコードブロックはSコードブロックであってもよく、データパケットの最後のコードブロックはTコードブロックであってもよい。
第3の態様によれば、第1の態様または第2の態様における方法の様々な段階を実行するように構成されたユニットと、第1の態様または第2の態様の様々な実施形態とを含む、通信装置が提供される。
設計では、通信装置は通信チップであり、通信チップは、情報またはデータを送信するように構成された入力回路またはインタフェースと、情報またはデータを受信するように構成された出力回路またはインタフェースとを含んでもよい。
別の設計では、通信装置は、通信デバイス(例えば、イングレスデバイスまたはエグレスデバイス)であり、通信チップは、情報またはデータを送信するように構成された送信機と、情報またはデータを受信するように構成された受信機とを含んでもよい。
第4の態様によれば、トランシーバ、プロセッサ、およびメモリを含む通信デバイスが提供される。プロセッサは、トランシーバを制御して信号を送受信するように構成され、メモリは、コンピュータプログラムを記憶するように構成され、プロセッサは、メモリからコンピュータプログラムを呼び出してコンピュータプログラムを動作させるように構成されていることから、通信デバイスは、第1の態様の方法または第1の態様の可能な実施形態のいずれか1つを実行する。
オプションで、1または複数のプロセッサがあり、1または複数のメモリがある。
オプションで、メモリはプロセッサと統合されていてもよいし、または、メモリおよびプロセッサは別々に配置されていてもよい。
限定の代わりの例として、通信デバイスは、エンコーディングデバイスを含んでいてもよい。
第5の態様によれば、トランシーバ、プロセッサ、およびメモリを含む通信デバイスが提供される。プロセッサは、トランシーバを制御して信号を送受信するように構成され、メモリは、コンピュータプログラムを記憶するように構成され、プロセッサは、メモリからコンピュータプログラムを呼び出してコンピュータプログラムを動作するように構成されているので、通信デバイスは、第2の態様または第2の態様の可能な実施形態のいずれか1つの方法を実行する。
オプションで、1または複数のプロセッサがあり、1または複数のメモリがある。
オプションで、メモリはプロセッサと統合されていてもよいし、または、メモリおよびプロセッサは別々に配置されていてもよい。
限定の代わりの例として、通信デバイスは、デコーディングデバイスを含んでもよい。
第6の態様によれば、入力回路、出力回路、および処理回路を含むプロセッサが提供される。処理回路は、入力回路を使用して信号を受信し、出力回路を使用して信号を伝送するように構成されていることから、プロセッサは、第1の態様および第2の態様の方法、および第1の態様および第2の態様の可能な実施形態のいずれか1つを実行する。
特定の実施形態のプロセスにおいて、プロセッサはチップであってもよく、入力回路は入力ピンであってもよく、出力回路は出力ピンであってもよく、処理回路はトランジスタ、ゲート回路、トリガ、様々な論理回路などであってもよい。入力回路によって受信された入力信号は、受信機であってもよいがそれに限定されないデバイスによって受信されて入力され、出力回路によって出力された信号は、送信機であってもよいがそれに限定されないデバイスによって出力され、送信機によって送信され、入力回路と出力回路は同一の回路であってもよく、回路は異なる瞬間に入力回路と出力回路として別々に使用される。プロセッサおよび様々な回路の特定の実施形態は、本願の実施形態において限定されない。
第7の態様によれば、メモリとプロセッサとを含む処理装置が提供される。プロセッサは、メモリに記憶された命令を読み取り、受信機を使用して信号を受信し、および送信機を使用して信号を伝送して、第1の態様および第2の態様の方法、および第1の態様および第2の態様の可能な実施形態のいずれか1つを実行するように構成されている。
オプションで、1または複数のプロセッサがあり、1または複数のメモリがある。
オプションで、メモリはプロセッサと統合されていてもよいし、または、メモリおよびプロセッサは別々に配置されていてもよい。
特定の実施形態では、メモリは、非一時的(non-transitory)メモリであってもよく、例えば、リードオンリメモリ(read only memory、ROM)であってもよい。メモリおよびプロセッサは、同一のチップに統合されていてもよいし、または、異なるチップに別々に配置されていてもよい。本発明の実施形態では、メモリの種類やメモリおよびプロセッサの配置方法は、特に限定されない。
第8の態様によれば、プロセッサおよびメモリを含むチップが提供される。メモリは、コンピュータプログラムを記憶するように構成され、プロセッサは、メモリからコンピュータプログラムを呼び出してコンピュータプログラムを動作させるように構成される。コンピュータプログラムは、第1の態様および第2の態様の方法、および第1の態様および第2の態様の可能な実施形態のいずれか1つを実装するために用いられる。
第9の態様によれば、コンピュータプログラム製品が提供される。コンピュータプログラム製品は、コンピュータプログラム(コードまたは命令とも呼ばれる)を含み、コンピュータプログラムが動作される場合、コンピュータは、第1の態様および第2の態様の方法、および第1の態様および第2の態様の可能な実施形態のいずれか1つを実行することが可能である。
第10の態様によれば、コンピュータ可読媒体が提供される。コンピュータ可読媒体は、コンピュータプログラム(コードまたは命令とも呼ばれる)を記憶しており、コンピュータプログラムがコンピュータ上で動作される場合、コンピュータは、第1の態様および第2の態様の方法、および第1の態様および第2の態様の可能な実施形態のいずれか1つを実行することが可能である。
本願の解決手段によれば、オーダーセット型のコードブロックがパケット間ギャップで伝送されるため、送信デバイスは、オーダーセット型のコードブロックを、伝送ネットワークによって認識可能なデータ型のコードブロックまたは終端型のコードブロックに修正することができる。このようにして、受信デバイスは、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックが、オーダーセット型のコードブロックに基づいて修正されたと決定でき、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックをオーダーセット型のコードブロックに戻して修正することをさらに実行してもよい。これは、伝送ネットワークを用いてオーダーセット型のコードブロックを伝送できることを保証することだけでなく、受信デバイスがオーダーセット型のコードブロックを確実に認識することも保証でき、これにより、通信精度を向上させる。
以下、添付図面を参照して、本願の技術的解決手段を説明する。
図1は、本願におけるイーサネットシステム100の一例を示す概略図である。
本願の実施形態では、通信システムは、少なくとも3つのクライアントデバイスを含む。例えば、図1に示すように、通信システムは、複数のクライアントデバイス110を含んでもよい。
さらに、本願の実施形態では、複数のクライアントデバイス110は、伝送ネットワーク(これは、転送ネットワークとも呼ばれてよい)を使用して互いに通信してもよい。
限定の代わりの例として、本願の実施形態では、伝送ネットワークは、例えば、光通信ネットワークであってもよい。
本願の実施形態では、伝送ネットワークは、複数の伝送デバイス120を含んでもよい。
本願では、各クライアントデバイス110は、1または複数の伝送デバイス120に通信可能に接続されてもよい。
図2は、伝送ネットワークの構造の一例を示す概略図である。
図2に示すように、伝送ネットワークは、ネットワークエッジ(provider edge, PE)デバイスと、ネットワーク(provider, P)デバイスとを含んでもよい。
Pデバイスは、ネットワーク側インタフェース(network to network interface,NNI)を有する。NNIインタフェースは、伝送ネットワークの通信プロトコルに応じたデータを伝送するように構成されている。NNIインタフェースは、共通イーサネットインタフェース(例えば、100G BASE-Rモードインタフェース)を含んでもよく、またはNNIインタフェースは、FlexEインタフェースを含んでもよい。
NNIに加えて、PEデバイスは、ユーザ側インタフェース(user network interface, UNI)がさらに配置されている。UNIインタフェースは、PEデバイスとクライアントデバイスとの間のデータ伝送に使用される。
イーサネット信号の場合、イーサネット信号のソースクライアントデバイスに接続されているPEデバイスは、イーサネット信号のイングレスデバイス(またはイングレス伝送デバイス)と呼ばれ、イーサネット信号のデスティネーションクライアントデバイスに接続されているPEデバイスは、イーサネット信号のエグレスデバイス(またはエグレス伝送デバイス)と呼ばれてもよい。
ソースクライアントデバイスがデスティネーションクライアントデバイスに信号を送信する場合、ソースクライアントデバイスは、信号を生成して、信号をソースクライアントデバイスに通信可能に接続された伝送デバイスに伝送してもよいことから、伝送デバイスは、信号のターゲットクライアントデバイスに信号をルーティング(または転送)してもよい。
また、伝送ネットワーク内の送信元クライアントデバイスのためのイングレス伝送デバイスは、信号をさらに処理(例えば、転送処理またはカプセル化処理)して、信号を伝送ネットワーク内で伝送可能な信号に変換し、伝送ネットワーク内のデスティネーション受信デバイスに信号を送信するように構成された別の伝送デバイス(例えば、ターゲットクライアントデバイスのためのイングレス伝送デバイス)に信号を送信してもよい。
また、伝送デバイスは、別の伝送デバイスまたはクライアントデバイスから、伝送デバイスに通信可能に接続されたクライアントデバイスに送信する必要のある信号をさらに受信し、その信号を処理(例えば、トランスコード処理またはデカプセル化処理)して、その信号をクライアントデバイスが認識可能な信号に変換し、処理された信号をクライアントデバイスに伝送することから、クライアントデバイスが受信した信号を解析して、その信号に保持されているデータを取得できるようにしてもよい。
また、本願の実施形態では、任意の2つのクライアントデバイス間で伝送された信号は、1つの伝送デバイスを使用して処理されて転送されてもよいし、または、複数の伝送デバイスを使用して処理されて転送されてもよい。これは本願では特に限定されない。
図1に示されるクライアントデバイスの量と伝送デバイスの数は、説明のための例に過ぎないことを理解されたい。これは本願では特に限定されない。
本願の実施形態では、クライアントデバイスは、例えば、パーソナルコンピュータなどのクライアントデバイスであってもよく、クライアントデバイスは、イーサネット(登録商標)または光ファイバなどの媒体を用いて通信を行うことができる。
本願の実施形態では、クライアントデバイスは、代わりにネットワークデバイスであってもよい。ネットワークデバイスは、ユーザ機器に様々なサービスを提供するサーバであってもよく、例えば、ソフトウェア定義ネットワーク(software defined network, SDN)サーバ、ワールドワイドウェブ(Web)サーバ、ファイル転送プロトコル(file transfer protocol, FTP)サーバ、キーエンタープライズアプリケーションサーバと別のキータスクサーバ(例えば、ファイアウォールサービスを提供するサーバ)、または、通信(communication technology, CT)分野のサービス処理ユニット(service process unit, SPU)などであってもよい。
本願の実施形態では、伝送デバイスは、ゲートウェイデバイス、スイッチ、またはルータなどのデバイスであってもよい。
本願の実施形態では、クライアントデバイスは、信号の送信端であってもよく、または、信号の受信端であってもよい。
送信端クライアントデバイスは、イーサネットプロトコルの仕様に従って、受信端イーサネットデバイスによって認識できるクライアントイーサネット信号を生成してもよい。また、送信端クライアントデバイスは、クライアントイーサネット信号を、伝送ネットワーク内の送信端クライアントデバイスに通信可能に接続されているイングレスト伝送デバイスに送信してもよい。
イングレス伝送デバイスは、イーサネットプロトコルの仕様に従って、クライアントイーサネット信号を、伝送ネットワーク内の伝送デバイスによって認識できる転送イーサネット信号にカプセル化してもよい。
伝送ネットワークは、転送イーサネット信号を、受信端クライアントデバイスに通信可能に接続されているエグレス伝送デバイスにルーティングする。
エグレスト伝送デバイスは、クライアントイーサネット信号を復元し、クライアントイーサネット信号をクライアントデバイスに送信するために、転送イーサネット信号をデカプセル化してもよい。
以下、図3を参照して、クライアントイーサネット信号について説明する。
クライアントイーサネット信号は、中低速イーサネット信号であってもよいし、または、クライアントイーサネット信号のインタフェースモードは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードであってもよい。
また、中低速イーサネット信号は、中低速イーサネットの64ビット(bit, B)/66Bのコードブロック(block)で構成されていてもよい。
中低速イーサネットの64B/66Bコードブロックは、2ビットの同期ヘッダフィールド(sync header field)と、8バイト(64ビット)のコードブロックペイロード(block payload)とを含んでもよい。
また、中低速イーサネット64B/66Bのコードブロックは、データコードブロック(data block)と制御コードブロック(control block)とを含んでいてもよい。
また、制御コードブロックは、Oコードブロックと呼ばれるオーダーセット(ordered set, O)型のコードブロック、Sコードブロックと呼ばれる開始(started)型のコードブロック、Tコードブロックと呼ばれる終了(terminated)型のコードブロックを含んでいてもよい。
本願では、制御コードブロックの同期ヘッダフィールドに保持された情報(具体的には、2ビット文字)は、10を含んでもよい。
本願では、制御コードブロックのコードブロックペイロードは、1バイトのコードブロック型フィールド(block type field)を含んでもよい。
具体的には、本願では、1つのコードブロックは、2ビットの同期ヘッダフィールド、8ビット(1バイト)のコードブロック型フィールド、および56ビット(7バイト)のペイロードフィールド(payload field)を含んでもよい。
図3は、中低速イーサネットの64B/66Bコードブロックのコーディング形式の一例を示す概略図である。図3に示すように、例えば、Oコードブロックのコードブロック型フィールドに保持される情報(特に、16進数文字)は、0×2dおよび0×55を含んでもよいが、これに限定されない。
ここで、「0×」は、0×に続く値が16進数であることを示すために使用される場合がある。以下、同一または同様の場合の説明は省略する。
以下、理解と区別を容易にするために、コードブロック型フィールドに保持される情報が0×2dであるコードブロックを0×2dコードブロックと呼び、コードブロック型フィールドに保持される情報が0×55であるコードブロックを0×55コードブロックと呼ぶ。
図3に示す中低速イーサネットの64B/66Bコードブロックのコーディング形式は、単に説明のための一例であり、本願はこれに限定されないことを理解されたい。先行技術では、中低速イーサネットで使用することができるコードブロックのための他のコーディング形式は、全て本願の保護範囲に含まれ、例えば、エラー(error)コードブロック、アイドル(idle)コードブロック、および低電力アイドル(low power idle、LPI)コードブロックが挙げられる。
また、中低速イーサネットのコードブロック64B/66Bのコーディング処理は、送信端クライアントデバイスの物理コーディングサブレイヤ(physical coding sublayer, PCS)エンティティで行われてもよい。
物理コーディングサブレイヤは、リコンシリエーションサブレイヤ(reconciliation sublayer, RS)と物理媒体アクセスサブレイヤ(physical medium attachment sublayer, PMAS)との間に配置されている。
物理コーディングサブレイヤは、うまく定義されたイーサネット(登録商標)MAC機能を既存のコーディングと物理レイヤ信号システムの機能にマッピングするために使用される。また、物理コーディングサブレイヤは、ラインコーディングやサイクルレダンダンシーチェック(cyclic redundancy check, CRC)チェックコーディングに使用される。
これに対応して、中低速イーサネットのコードブロック64B/66Bのデコーディング処理は、受信端クライアントデバイスの物理コーディングサブレイヤエンティティで実行されてもよい。
本願では、中低速イーサネットのコードブロック64B/66Bによって構成されるイーサネット信号は、複数のデータパケット(packets)を含んでいてもよい。
図4は、前述の構造を有するイーサネットコードストリームの一例を示す図である。図4に示すように、各データパケットは、1つのSコードブロック、複数のDコードブロック、および1つのTコードブロックを含んでもよい。
Sコードブロックはデータパケットの開始を示すために使用され、Tコードブロックはデータパケットの終了を示すために使用される。
また、本願では、隣接する2つのデータパケット間に時間間隔を設けてもよく、その時間間隔をパケット間ギャップまたはフレーム間ギャップと呼ぶこともある。
図4に示すように、パケット間ギャップには、Oコードブロックなどが伝送されてもよい。
また、クライアントイーサネット信号のコーディング処理やデコーディング処理は、先行技術のこれらと同様のものであってもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
以下、図5を参照して、転送イーサネット信号について説明する。
伝送ネットワークで伝送される高速イーサネット信号は、FlexEクライアント(client)と呼ばれることもある。
FlexEクライアントは、ユーザーデータをカプセル化し、FlexEインタフェース用に定義されたデータ伝送方法でデータを伝送するために使用される。1つのFlexEクライアントは、1つのユーザのデータストリームを搬送してもよい。
具体的には、例えば、イーサネットシステムにおいて、伝送パイプ帯域幅のハードアイソレーションを実施するために、時分割多重化(time division multiplexing、TDM)モードでスロットを分割でき、1つのサービスデータストリームを1または複数のスロットに割り当て、それにより、様々なレートのサービスのマッチングを実施してもよい。
1つのFlexEグループ(Group)は、同一のレート(例えば、100G BASE-R、200G BASE-R、または400G BASE-R)を有する1または複数のバンドリングされた物理リンクインタフェースを含んでもよく、各FlexEグループは、1または複数のFlexEインスタンス(Instance)を保持する。
具体的には、本願では、転送イーサネット信号は、高速イーサネット信号であってもよく、または、転送イーサネット信号のインタフェースモードは、100G BASE-Rモード、200G BASE-Rモード、または400G BASE-Rモードであってもよい。
FlexEインスタンスは、FlexEクライアントを保持するユニットであってもよく、各FlexEインスタンスは、例えば、100Gbpsのレートをサポートしてもよい。
FlexEグループに対応するスロット割り当てテーブルをFlexEスロットカレンダ(calendar)と呼び、1つのFlexEクライアントに対応するスロットマッピングテーブルをサブスロット割り当てテーブル(sub-calendar)と呼び、各スロットの粒度は5Gbまたは25Gbである。1つのFlexEグループのカレンダは、1または複数のサブカレンダによって構成され、各サブカレンダは、対応するFlexEクライアントにこれらのスロットをいかに割り当てるかを示す。FlexEクライアントは、FlexEグループ上で特定されたFlexEインスタンス内の特定されたスロット(1または複数のスロット)で伝送されるクライアントデータストリームを表し、1つのFlexEグループは複数のFlexEクライアントを保持してもよい。
1つのFlexEクライアントは、1または複数のユーザサービスデータストリーム(MACクライアント)に対応してもよく、FlexEシム(Shim)は、FlexEクライアントからMACクライアントへのデータ適応および変換を提供してもよい。
例えば、4つの物理インタフェース(例えば、100G BASE-R物理インタフェース)を横断するFlexEグループでは、各物理インタフェースは、20個の5Gbサブスロットを有していてもよい。したがって、FlexEグループは、20×4のサブスロット(サブカレンダ)を有している。
また、高速イーサネット信号は、高速イーサネットの64ビット(bit, B)/66Bのコードブロック(block)で構成されていてもよい。
高速イーサネットの64B/66Bコードブロックは、2ビットの同期ヘッダフィールドと8バイトのコードブロックペイロードを含んでもよい。
また、高速イーサネット64B/66Bのコードブロックは、データコードブロック(data block)と制御コードブロック(control block)とを含んでいてもよい。
また、制御コードブロックは、Oコードブロック、Sコードブロック、およびTコードブロックを含んでもよい。
本願では、制御コードブロックの同期ヘッダフィールドに保持された情報(具体的には、2ビット文字)は、10を含んでもよい。
本願では、制御コードブロックのコードブロックペイロードは、1バイトのコードブロック型フィールドを含んでもよい。
図5は、高速イーサネットの64B/66Bコードブロックのコーディング形式の一例を示す概略図である。図5に示すように、例えば、Oコードブロックのコードブロック型フィールドに保持される情報(特に、16進数文字)は、0×4Bを含んでもよいが、これに限定されない。
図5に示す高速イーサネットの64B/66Bコードブロックのコーディング形式は、説明のための一例に過ぎず、本願はこれに限定されないことを理解されたい。先行技術では、中低速イーサネットで使用することができるコードブロックのための他のコーディング形式は、全て本願の保護範囲に含まれ、例えば、エラーコードブロック、アイドルコードブロック、および低電力アイドルコードブロックが挙げられる。
また、中低速イーサネットの64B/66Bコードブロックから高速イーサネットの64B/66Bコードブロックへの変換(またはカプセル化)処理、または、中低速イーサネット信号から高速イーサネット信号へのカプセル化処理は、イングレス伝送デバイスの物理コーディングサブレイヤエンティティで実行されてもよい。
これに対応して、高速イーサネットの64B/66Bコードブロックから中低速イーサネットの64B/66Bコードブロックへの変換(またはデカプセル化)処理、または高速イーサネット信号から中低速イーサネット信号へのカプセル化処理は、エグレス伝送デバイスの物理コーディングサブレイヤエンティティで実行されてもよい。
本願では、中低速イーサネットの64B/66Bコードブロックによって構成されるイーサネット信号と同様に、高速イーサネットの64B/66Bコードブロックによって構成されるイーサネット信号は、複数のデータパケットを含んでいてもよい。
図4に示すように、各データパケットは、1つのSコードブロック、複数のDコードブロック、および1つのTコードブロックを含んでもよい。
Sコードブロックはデータパケットの開始を示すために使用され、Tコードブロックはデータパケットの終了を示すために使用される。
また、本願では、隣接する2つのデータパケット間に時間間隔を設けてもよく、その時間間隔をパケット間ギャップまたはフレーム間ギャップと呼ぶこともある。図4に示すように、パケット間ギャップには、Oコードブロックなどが伝送されてもよい。
図3および図5に示すように、中低速イーサネット信号(またはクライアントイーサネット信号)のコーディングフォーマットにおける0×2dコードブロックまたは0×55コードブロックのようないくつかのOコードブロックは、高速イーサネット信号(または転送イーサネット信号)のコーディングフォーマットには存在しない。
0×2dコードブロックまたは0×55コードブロックが伝送ネットワークに入った場合、伝送デバイスが0×2dコードブロックまたは0×55コードブロックを認識できないため、伝送エラーが生じる。
これに鑑み、本願では、伝送エラーを回避するために、以下のような処理プロセスを用いる場合がある。
図6は、本願におけるイーサネット信号伝送プロセス200の一例を示す概略的相互作用図である。
図6に示すように、S210において、クライアントデバイス#Aは、イーサネット信号#Aを生成してもよい。イーサネット信号#Aは、中低速イーサネット信号であってもよく、具体的には、イーサネット信号#Aのインタフェースモードは、5G BASE-Rモード、10G BASE-Rモード、または25G BASE-Rモードであってもよい。
図7は、イーサネット信号#AのPCSレイヤコードブロックストリームの構造の一例を示す図である。図7に示すように、イーサネット信号#AのPCSレイヤコードブロックストリームは、複数のデータパケットを含んでもよく、送信シーケンスにおいて互いに隣接する2つのデータパケット間にパケット間ギャップがあり、0×2dコードブロック(図7の「O1」で示される)、0×4Bコードブロック(図7の「O2」で示される)、0×55コードブロック(図7の「O3」で示される)などのOコードブロック、およびアイドルコードブロック(図7の「I」で示される)が、パケット間ギャップに存在してもよい。
なお、図7に示すコードブロックストリームの構造は、説明のための一例に過ぎず、本願はこれに限定されないことに留意されたい。例えば、0×2dコードブロックと0×55コードブロックのうちの1つのみがパケット間ギャップに存在してもよい。
また、0×4Bのコードブロックは、中低速イーサネット信号と高速イーサネット信号の両方に存在するため、本願で修正が必要なコードブロックには0×4Bのコードブロックは含まれない。
また、イーサネット信号#Aを生成するプロセスは、先行技術と同様であってもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
S220において、クライアントデバイス#Aは、クライアントデバイス#Aに通信可能に接続されたPEデバイスにイーサネット信号#Aを送信してもよい。以下では、理解と区別を容易にするために、PEデバイスをイングレスPEデバイス#Bと表記する。
S230において、イングレスPEデバイス#Bは、イーサネット信号#Aに含まれ、伝送ネットワーク(具体的には、各伝送デバイス)が認識できないコードブロック(具体的には、0×2dコードブロックおよび/または0×55コードブロック)を、伝送ネットワークが認識できるコードブロックに変換するために、イーサネット信号#Aを修正してもよい。
限定の代わりの例として、本願では、以下のような修正方法を挙げることができる。方法1
イーサネット信号#AのPCSレイヤコードブロックストリームに0×2dコードブロックが含まれている場合、イングレスPEデバイス#Bは、0×2dコードブロックをDコードブロックに修正してもよい。
図8は、方法1の修正プロセスにおけるコードブロック0×2dの変化を示す概略図である。図8に示すように、イングレスPEデバイス#Bは、制御型コードブロックに対応する情報(例えば、「10」)からデータ型コードブロックに対応する情報(例えば、「01」)まで、コードブロック0×2dの同期ヘッダフィールドに保持されている情報を修正してもよい。
イーサネット信号#AのPCSレイヤコードブロックストリームが0×55コードブロックを含む場合、イングレスPEデバイス#Bは、0×55コードブロックをDコードブロックに修正してもよい。
図9は、方法1の修正プロセスにおける0×55のコードブロックの変化を示す概略図である。図9に示すように、イングレスPEデバイス#Bは、コードブロック0×55の同期ヘッダフィールドに保持されている情報を、制御型コードブロックに対応する情報(例えば、「10」)からデータ型コードブロックに対応する情報(例えば、「01」)に修正してもよい。
図10は、図7に示したイーサネット信号のPCSレイヤコードブロックストリームの変化を示し、方法1に基づいて修正が行われた後に得られるものである。図10に示すように、方法1に基づいて修正が行われた後、低速イーサネット信号のPCSレイヤコードブロックストリーム中の0×2dコードブロックおよび/または0×55コードブロックがDコードブロックに変換される。方法2
イーサネット信号#AのPCSレイヤコードブロックストリームが0×2dコードブロックを含む場合、イングレスPEデバイス#Bは、0×2dコードブロックをTコードブロックに修正してもよい。
具体的には、イングレスPEデバイス#Bは、0×2dコードブロックのコードブロック型フィールドに保持されている情報を、0×2dコードブロックに対応する情報(例えば、「0×2d」)から、Tコードブロックに対応する情報(例えば、「0×87」、「0×99」、「0×AA」、「0×B4」、「0×CC」、「0×D2」、「0×E1」、および「0×FF」のいずれかの情報)に修正してもよい。
イーサネット信号#AのPCSレイヤコードブロックストリームが0×55コードブロックを含む場合、イングレスPEデバイス#Bは、0×55コードブロックをTコードブロックに修正してもよい。
具体的には、イングレスPEデバイス#Bは、コードブロック0×55のコードブロック型フィールドに保持されている情報を、コードブロック0×55に対応する情報(例えば、「0×55」)から、Tコードブロックに対応する情報(例えば、「0×87」、「0×99」、「0×AA」、「0×B4」、「0×CC」、「0×D2」、「0×E1」、および「0×FF」のいずれかの情報)に修正してもよい。
0×2dコードブロックと0×55コードブロックの両方が、実際の伝送においてイーサネット信号に存在する可能性があることに留意されたい。したがって、この場合、0×2dコードブロックのコードブロック型フィールドに保持される情報と0×55コードブロックのコードブロック型フィールドに保持される情報とが、同一のTコードブロックに対応する情報(Tコードブロック#1と表記)に修正された場合には、エグレスPEデバイスは、受信したイーサネット信号中のTコードブロック#1を0×2dコードブロックまたは0×55コードブロックに復元すべきかを決定することができない。なお、エグレスPEデバイスは、イーサネット信号#Aのデスティネーションクライアントデバイスと通信可能に接続されたPEデバイスであってもよい。以下では、理解と区別を容易にするために、PEデバイスをエグレスPEデバイス#Cと表記する。
これに鑑み、本願では、エグレスPEデバイス#CとイングレスPEデバイス#Bとの間にマッピング関係#Aを予め記憶しておいてもよい。
なお、マッピング関係#Aは、0×2dコードブロックとTコードブロック(Tコードブロック#aと表記される)との対応関係を示すために使用されてもよく、マッピング関係#Aは、0×55コードブロックと別のTコードブロック(Tコードブロック#bと表記される)との対応関係を示すために使用されてもよい。
具体的には、イングレスPEデバイス#Bは、マッピング関係#Aの指示に基づいて、0×2dのコードブロックのコードブロック型フィールドに保持されている情報を、0×2dのコードブロックに対応する情報(例えば、「0×2d」)から、Tコードブロック#aのコードブロック型フィールドに対応する情報に修正してもよい。
限定の代わりの例として、Tコードブロック#aは、T6コードブロックであってもよく、具体的には、Tコードブロック#aは、コードブロック型フィールドに対応する情報が「0×E1」であるコードブロックであってもよい。
T6コードブロックのデータを保持するために使用できるバイト数が比較的大きいため、0×2dコードブロックをT6コードブロックに修正することで、修正したコードブロックの情報の紛失を確実に防止することができ、これにより、本願の効果をさらに向上させることができる。
列挙されたTコードブロック#aの具体例は、単に説明のための一例に過ぎず、本願はこれに限定されないことを理解されたい。Tコードブロック#aは、Tコードブロック#aがTコードブロック#bと異なることが確保されたと仮定して、T0~T7コードブロックのいずれかであってもよい。
図11は、方法2の修正プロセスにおけるコードブロック0×2dの変化を示す概略図である。図11に示すように、イングレスPEデバイス#Bは、コードブロック0×2dのコードブロック型フィールドに保持されている情報を「0×2d」から「0×E1」に修正してもよい。
オプションで、図12に示すように、本願では、イングレスPEデバイス#Bは、0×2dコードブロック内の「O4」バイトで保持される情報を、T6コードブロック内の「D0」バイトに代わりにシフトしてもよく、0×2dコードブロックの「D5」バイトで保持される情報をT6コードブロックの「D1」バイトにシフトしてもよく、0×2dコードブロック内の「D6」バイトで保持される情報をT6コードブロック内の「D2」バイトにシフトしてもよく、0×2dコードブロック内の「D7」バイトで保持される情報をT6コードブロック内の「D3」バイトにシフトしてもよい。
また、イングレスPEデバイス#Bは、前述の修正に基づいて生成されるコードブロックT6の「D4」、「D5」、「D6」、および「D7」バイトに、「0」などの特定のビットをさらに満たしてもよい。
また、0×2dコードブロックの「O4」バイトに保持される情報に含まれるビット数が1バイトよりも少ないため、0×2dコードブロックの「O4」バイトに保持される情報は、T6コードブロックの「D0」バイトの一部のビットのみを占有し、0×2dコードブロックの「D5」バイトに保持される情報は、「D0」バイトの他のビットとT6コードブロックの「D1」バイトの一部のビットを占有し、0×2dコードブロックの「D6」バイトに保持される情報は、T6コードブロックの「D1」バイトの他のビットと「D2」バイトの一部のビットを占有し、0×2dコードブロックの「D7」バイトに保持される情報は、T6コードブロックの「D2」バイトの他のビットと「D3」バイトの一部のビットを占有する。
また、この場合、コードブロックT6のバイト「D3」の他のビット(具体的には、コードブロック0×2dのバイト「D7」に保持される情報が満たされていないビット)に、「0」などの特定のビットを満たしてもよい。
結果として、本願では、図12に示すように、イングレスPEデバイス#Bは、0×2dコードブロック内の「O4」バイト、「D5」バイト、「D6」バイト、および「D7」バイトに保持される情報を、T6コードブロック内の「D0」バイト、「D1」バイト、「D2」バイト、「D3」バイトに代わりにシフトしてもよく、シフト後のビット間の位置関係は、シフト前のビット間の位置関係と同一である。
限定の代わりの例として、Tコードブロック#bは、T7コードブロックであってもよく、具体的には、Tコードブロック#bは、コードブロック型フィールドに対応する情報が「0×FF」であるコードブロックであってもよい。
T7コードブロックのデータを保持するために使用できるバイト数が比較的大きいため、0×55のコードブロックをT7コードブロックに修正することで、修正したコードブロックの情報の紛失を確実に防止することができ、これにより、本願の効果をさらに向上させることができる。
列挙されたTコードブロック#bの具体例は、単に説明のための一例に過ぎず、本願はこれに限定されないことを理解されたい。Tコードブロック#bは、Tコードブロック#aがTコードブロック#bと異なることが確保されたと仮定して、T0~T7コードブロックのいずれかであってもよい。
図13は、方法2の修正プロセスにおける0×55のコードブロックの変化を示す概略図である。図13に示すように、イングレスPEデバイス#Bは、コードブロック0×2dのコードブロック型フィールドに保持された情報を「0×55」から「0×FF」に修正してもよい。
マッピング関係#Aは、伝送ネットワーク内の管理デバイスによって決定され、各伝送デバイスに配信されてもよく、または、マッピング関係#Aが予め通信システムまたは通信プロトコルで特定されていてもよく、または、マッピング関係#AがイングレスPEとエグレスPEとの間のネゴシエーションにより決定されてもよく、または、マッピング関係#Aがユーザまたは管理者によってイングレスPEとエグレスPEとに入力されてもよく、または、マッピング関係#Aが製造業者またはオペレータによってイングレスPEとエグレスPEとに構成されてもよいことに留意されたい。これは本願では特に限定されない。
図14は、図7に示すイーサネット信号のPCSレイヤコードブロックストリームの変化を示すものであり、方法2に基づいて修正が行われた後に得られるものである。図14に示すように、方法2に基づいて修正が行われた後、低速イーサネット信号のPCSレイヤコードブロックストリーム内の0×2dコードブロックおよび/または0×55コードブロックがTコードブロックに変換される。方法3
イーサネット信号#AのPCSレイヤコードブロックストリームが0×2dコードブロックが含む場合、イングレスPEデバイス#Bは、0×2dコードブロックをDコードブロックに修正してもよい。
イーサネット信号#AのPCSレイヤコードブロックストリームが0×55コードブロックを含む場合、イングレスPEデバイス#Bは、0×55コードブロックをTコードブロックに修正してもよい。方法4
イーサネット信号#AのPCSレイヤコードブロックストリームが0×2dコードブロックを含む場合、イングレスPEデバイス#Bは、0×2dコードブロックをTコードブロックに修正してもよい。
イーサネット信号#AのPCSレイヤコードブロックストリームが0×55コードブロックを含む場合、イングレスPEデバイス#Bは、0×55コードブロックをDコードブロックに修正してもよい。
方法3および方法4において、各コードブロックの修正プロセスは、方法1または方法2に記載の処理と同様の処理であってもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
本願では、エグレスPEデバイス#Cは、前述した修正されたコードブロックを復元する必要があるため、復元の精度を保証するために、エグレスPEデバイス#Cが使用する復元方法は、イングレスPEデバイス#Bが使用する修正方法に対応する必要がある(例えば、復元方法と修正方法が互いに逆の処理である)ことに留意されたい。
限定の代わりの例として、本願では、イングレスデバイス#Aが使用する修正方法は、予め通信システムまたは通信プロトコルで特定されていてもよく、または、イングレスデバイス#Aが使用する修正方法は、エグレスPEデバイス#CとイングレスPEデバイス#Bとの間のネゴシエーションにより決定されていてもよく、または、イングレスデバイス#Aが使用する修正方法は、伝送ネットワークの管理デバイスにより決定されてイングレスPEデバイス#Bに配信され、管理デバイスは、修正方法に対応した復元方法をエグレスPEデバイス#Cに配信してもよい。
また、S240において、イングレスPEデバイス#Bは、修正されたイーサネット信号#Aに基づいて、伝送ネットワーク内を伝送するための高速イーサネット信号(例えば、FlexEクライアントがサポートするイーサネット信号)を生成してもよい。以下では、理解と説明を容易にするために、高速イーサネット信号をイーサネット信号#Bと呼ぶ。また、イングレスPEデバイス#Bは、伝送ネットワークを使用して、イーサネット信号#BをエグレスPEデバイス#Cに送信してもよい。処理は、先行技術のそれと同様であってもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
S250において、エグレスPEデバイス#Cは、受信したイーサネット信号#BのPCSレイヤコードブロックストリームから、イングレスPEデバイス#Bによって修正されたコードブロックを決定してもよい。以下では、理解と区別を容易にするために、コードブロックをコードブロック#Aと表記する。
コードブロック#Aは、イングレスPEデバイス#BがOコードブロック(例えば、0×2dコードブロックまたは0×55コードブロック)を修正した後に生成され、そのOコードブロックはIPG内に存在するからである。したがって、エグレスPEデバイス#Cは、イーサネット信号#BのPCSレイヤコードブロックストリームのフレーム間ギャップに基づいてコードブロック#Aを決定してもよい。
コードブロック#Aは、Dコードブロックのみを含んでいてもよく(ケース1)、または、コードブロック#Aは、Tコードブロックのみを含んでいてもよい(ケース2)。前述の異なる場合では、フレーム間ギャップを決定する方法が異なる。以下では別途、前述の場合におけるエグレスPEデバイス#Cによるフレーム間ギャップを決定する処理について詳細に説明する。ケース1
コードブロック#Aは、Dコードブロックのみを含んでいてもよい。イングレスPEデバイス#Bは、0×2dコードブロックまたは0×55コードブロックをDコードブロックに修正するか、または、イングレスPEデバイス#Bは、0×2dコードブロックまたは0×55コードブロックをTコードブロックに修正しないことが理解されてもよい。
この場合、イーサネット信号#BのPCSレイヤコードブロックストリーム内のTコードブロックは、イーサネット信号#AのPCSレイヤコードブロックストリーム内の全てのTコードブロックとなる。具体的には、イーサネット信号#BのPCSレイヤコードブロックストリームの各Tコードブロックは、Tコードブロックが属するデータパケットの終端を示してもよい。あるいは、イーサネット信号#BのPCSレイヤコードブロックストリームの各Tコードブロックは、Tコードブロックの後に位置するパケット間ギャップの開始を決定してもよい。
例えば、エグレスPEデバイス#Cは、イーサネット信号#BのPCSレイヤコードブロックストリームにおけるTコードブロックとSコードブロックに基づいて、イーサネット信号#BのPCSレイヤコードブロックストリームにおけるパケット間ギャップを決定してもよく、具体的には、任意のパケット間ギャップ(例えば、パケット間ギャップ#1)が以下の条件を満たしている。
また、パケット間ギャップ#1は、伝送シーケンスにおいて互いに隣接するデータパケット#1とデータパケット#2との間に位置するか、または、パケット間ギャップ#1は、データパケット#1のTコードブロックとデータパケット#2のSコードブロックとの間に位置する。
したがって、エグレスPEデバイス#Cは、コードブロック#Aとして、パケット間ギャップで受信したDコードブロックを決定してもよい。
別の例として、エグレスPEデバイス#Cは、Tコードブロックを受信した後、Sコードブロックを受信するまでの間、コードブロック#Aとして、Tコードブロックの後に受信したDコードブロックを決定してもよい。
別の例として、図15は、エグレスPEデバイス#Cの処理プロセスの一例を示す図である。図15に示すように、エグレスPEデバイス#Cは、IPG情報を記憶してもよく、IPG情報は、パケット間ギャップを決定するために使用されてもよい。
具体的には、Tコードブロックを受信した後、PEデバイス#Aは、IPG情報の値を、現在の期間がパケット間ギャップであることを示す値、例えば「1」に設定してもよい。
また、PEデバイス#Aは、Tコードブロックを受信した後、IPG情報の値を、現在の期間がパケット間ギャップではないことを示す値、例えば「0」に設定してもよい。
この場合、エグレスPEデバイス#Cは、コードブロック#Aとして、IPG情報の値が「1」である期間に受信したDコードブロックを決定してもよい。
オプションで、エグレスPEデバイス#Cが電源投入(または起動)された後、IPG情報の値を「1」に設定してもよい。したがって、イーサネット信号#Aの第1のデータパケットの前にパケット間ギャップが存在し、パケット間ギャップにOコードブロックが存在する場合に、エグレスPEデバイス#Cは、Oコードブロックに基づいて修正されたDコードブロックを確実に識別することができる。ケース2
コードブロック#AはTコードブロックを含んでもよく、コードブロック#AはTコードブロックのみを含んでもよいことが理解されてもよい。具体的には、イングレスPEデバイス#Bは、0×2dコードブロックまたは0×55コードブロックをTコードブロックに修正する。
あるいは、コードブロック#AはTコードブロックを含んでもよく、コードブロック#AはTコードブロックとDコードブロックの両方を含んでもよいことが理解されてもよい。具体的には、イングレスPEデバイス#Bは、0×2dコードブロックまたは0×55コードブロックのうちの1つをTコードブロックに修正し、イングレスPEデバイス#Bは、0×2dコードブロックまたは0×55コードブロックのうちの他方をDコードブロックに修正する。
この場合、イーサネット信号#BのPCSレイヤコードブロックストリームにおけるTコードブロックは、イーサネット信号#AのPCSレイヤコードブロックストリームにおけるTコードブロックと、Oコードブロックに基づいて生成されたTコードブロックとを含んでもよい。具体的には、イーサネット信号#BのPCSレイヤコードブロックストリーム中のいくつかのTコードブロックは、それぞれ、そのTコードブロックが属するデータパケットの終端を示してよく、他のTコードブロックは、それぞれ、データパケットの終端を示すことができない。あるいは、イーサネット信号#BのPCSレイヤコードブロックストリーム内のいくつかのTコードブロックは、それぞれ、Tコードブロックの後に位置するパケット間ギャップの開始を決定してよく、他のTコードブロックは、それぞれ、パケット間ギャップの開始を示すことができない。
例えば、エグレスPEデバイス#Cは、イーサネット信号#BのPCSレイヤコードブロックストリームにおけるTコードブロックとSコードブロックに基づいて、イーサネット信号#BのPCSレイヤコードブロックストリームにおけるパケット間ギャップを決定してもよく、具体的には、任意のパケット間ギャップ(例えば、パケット間ギャップ#1)が以下の条件を満たしている。
また、パケット間ギャップ#1は、伝送シーケンスにおいて互いに隣接するデータパケット#1とデータパケット#2との間に位置するか、または、パケット間ギャップ#1は、データパケット#1のTコードブロックとデータパケット#2のSコードブロックとの間に位置する。
データパケット#1のTコードブロックは、データパケット#2のSコードブロックの後の最初のTコードブロックである。
この場合、エグレスPEデバイス#Cは、コードブロック#Aとして、パケット間ギャップで受信したDコードブロックまたはTコードブロックを決定してもよい。
別の例として、エグレスPEデバイス#Cは、Sコードブロックを受信した後、Sコードブロックの後に最初のTコードブロックを決定し、コードブロック#Aとして、Sコードブロックを受信するまでの間、DコードブロックまたはTコードブロックの後に受信したTコードブロックを決定してもよい。
別の例として、図16は、エグレスPEデバイス#Cの処理プロセスの一例を示す図である。図16に示すように、エグレスPEデバイス#Cは、IPG情報を記憶してもよく、IPG情報は、パケット間ギャップを決定するために使用されてもよい。
具体的には、Sコードブロックを受信した後、PEデバイス#Aは、IPG情報の値を、現在の期間がパケット間ギャップではないことを示す値、例えば「0」に設定してもよい。
また、Tコードブロックを受信した後、PEデバイス#Aは、IPG情報の値が「0」の場合、IPG情報の値を、現在の期間がパケット間ギャップであることを示す値、例えば「1」に設定してもよい。
また、Tコードブロックを受信した後、PEデバイス#Aは、IPG情報の値が「1」である場合、IPG情報の値を、現在の期間がパケット間ギャップであることを示す値、例えば「1」に設定してもよい。
この場合、エグレスPEデバイス#Cは、コードブロック#Aとして、IPG情報の値が「1」である期間に受信したDコードブロックまたはTコードブロックを決定してもよい。
オプションで、エグレスPEデバイス#Cが電源投入(または起動)された後、IPG情報の値を「1」に設定してもよい。したがって、イーサネット信号#Aの第1のデータパケットの前にパケット間ギャップが存在し、パケット間ギャップにOコードブロックが存在する場合に、エグレスPEデバイス#Cは、Oコードブロックに基づいて修正されたDコードブロックを確実に識別することができる。
また、エグレスPEデバイス#Cは、コードブロック#Aに対して、コードブロック#Aをイーサネット信号#Aのコードブロック#Aに対応するコードブロック(具体的には、コードブロック0×2dおよび/またはコードブロック0×55)に復元するための復元処理を行う。
限定の代わりの例として、本願では、以下のような修正方法を挙げることができる。方法a
イングレスPEデバイス#Bが方法1の修正を行う場合、エグレスPEデバイス#Cは、コードブロック#Aをコードブロック0×2dまたはコードブロック0×55に修正してもよい。
図17は、方法aの修正プロセスにおけるコードブロック#aの変化を示す概略図である。図17に示すように、エグレスPEデバイス#Cは、コードブロック#Aの同期ヘッダフィールドに保持された情報を、データ型コードブロックに対応する情報(例えば「01」)から制御型コードブロックに対応する情報(例えば「10」)に修正してもよい。
方法aでは、コードブロック#Aは、0×2dコードブロックであってもよく、または、0×55コードブロックであってもよいことに留意されたい。これは本願では特に限定されない。方法b
イングレスPEデバイス#Bが方法2の修正を行う場合、エグレスPEデバイス#Cは、コードブロック#Aをコードブロック0×2d、または、コードブロック0×55に修正してもよい。
エグレスPEデバイス#Cは、コードブロック#Aのコードブロック型フィールドに保持された情報(例えば、「0×87」、「0×99」、「0×AA」、「0×B4」、「0×CC」、「0×D2」、「0×E1」、および「0×FF」のいずれかの情報)を、Tコードブロックに対応する情報(例えば、「0×2d」)から、0×2dコードブロックに対応する情報(例えば、「0×2d」)、または0×55コードブロックに対応する情報(例えば、「0×55」)に修正してもよい。
0×2dコードブロックと0×55コードブロックの両方が、実際の伝送においてイーサネット信号に存在する可能性があることに留意されたい。したがって、この場合、エグレスPEデバイス#Cは、Tコードブロックに対応する情報が0×2dコードブロックに対応する情報または、0×55コードブロックに対応する情報に修正されているかを決定することができない場合がある。
これに鑑み、本願では、マッピング関係#Aを、エグレスPEデバイス#CとイングレスPEデバイス#Bに予め記憶しておいてもよい。
なお、マッピング関係#Aは、0×2dコードブロックとTコードブロック(Tコードブロック#aと表記される)との対応関係を示すために使用されてもよく、マッピング関係#Aは、0×55コードブロックと別のTコードブロック(Tコードブロック#bと表記される)との対応関係を示すために使用されてもよい。
限定の代わりの例として、Tコードブロック#aは、T6コードブロックであってもよく、具体的には、Tコードブロック#aは、コードブロック型フィールドに対応する情報が「0×E1」であるコードブロックであってもよい。
T6コードブロックのデータを保持するために使用できるバイト数が比較的大きいため、0×2dコードブロックをT6コードブロックに修正することで、修正したコードブロックの情報の紛失を確実に防止することができ、これにより、本願の効果をさらに向上させることができる。
列挙されたTコードブロック#aの具体例は、単に説明のための一例に過ぎず、本願はこれに限定されないことを理解されたい。Tコードブロック#aは、Tコードブロック#aがTコードブロック#bと異なることが保証されたと仮定して、T0~T7コードブロックのいずれかであってもよい。
この場合、エグレスPEデバイス#Cは、マッピング関係#Aの指示に基づいて、Tコードブロック#aのコードブロック型フィールドに保持されている情報を、コードブロック0×2dに対応する情報(例えば、「0×2d」)に修正してもよい。
図18は、方法2の修正プロセスにおけるTコードブロック#aの変化を示す概略図である。図18に示すように、エグレスPEデバイス#Cは、イーサネット信号#Bのパケット間ギャップに位置するTコードブロック#aのコードブロック型フィールドに保持された情報を「0×E1」から「0×2d」に修正してもよい。
オプションで、図19に示すように、本願では、エグレスPEデバイス#Cは、T6コードブロック内の「D0」バイトに保持される情報を、0×2dコードブロック内の「O4」バイトにさらにシフトしてもよく、T6コードブロック内の「D1」バイトに保持される情報を、0×2dコードブロック内の「D5」バイトにシフトしてもく、T6コードブロックの「D2」バイトに保持される情報を0×2dコードブロックの「D6」バイトにシフトしてもよく、T6コードブロックの「D3」バイトに保持される情報を0×2dコードブロックの「D7」バイトにシフトしてもよい。
また、エグレスPEデバイス#Cは、前述の修正に基づいて生成されるコードブロック0×2dの「C0」、「C1」、「C2」、および「C03」バイトに特定のビットをさらに満たしてもよい。
限定の代わりの例として、Tコードブロック#bは、T7コードブロックであってもよく、具体的には、Tコードブロック#bは、コードブロック型フィールドに対応する情報が「0×FF」であるコードブロックであってもよい。
T7コードブロックのデータを保持するために使用できるバイト数が比較的大きいため、0×55のコードブロックをT7コードブロックに修正することで、修正されたコードブロックの情報が紛失することを確実に防止することができ、これにより、本願の効果をさらに向上させることができる。
列挙されたTコードブロック#bの具体例は、単に説明のための一例に過ぎず、本願はこれに限定されないことを理解されたい。Tコードブロック#bは、Tコードブロック#aがTコードブロック#bと異なることが保証されたと仮定して、T0~T7コードブロックのいずれかであってもよい。
図20は、方法bの修正プロセスにおけるT7コードブロックの変化を示す概略図である。図20に示すように、エグレスPEデバイス#Cは、T7コードブロックのコードブロック型フィールドに保持された情報を「0×FF」から「0×55」に修正してもよい。
なお、マッピング関係#Aは、伝送ネットワーク内の管理デバイスによって決定され、各伝送デバイスに配信されてもよく、または、マッピング関係#Aは、予め通信システムまたは通信プロトコルで特定されていてもよく、または、マッピング関係#Aは、イングレスPEとエグレスPEとの間のネゴシエーションにより決定されてもよく、または、マッピング関係#Aは、ユーザまたは管理者によってイングレスPEとエグレスPEとにが入力されてもよく、または、マッピング関係#Aは、製造業者またはオペレータによってイングレスPEとエグレスPEとに構成されてもよいことに留意されたい。これは本願では特に限定されない。方法c
イングレスPEデバイス#Bが方法cの修正を行う場合、エグレスPEデバイス#Cは、パケット間ギャップで受信したDコードブロックを0×2dコードブロックに修正し、パケット間ギャップで受信したTコードブロックを0×55コードブロックに修正してもよい。方法d
イングレスPEデバイス#Bが方法cの修正を行う場合、エグレスPEデバイス#Cは、パケット間ギャップで受信したDコードブロックを0×55のコードブロックに修正し、パケット間ギャップで受信したTコードブロックを0×2dのコードブロックに修正してもよい。
方法3および方法4において、各コードブロックの修正プロセスは、方法1または方法2に記載の処理と同様の処理であってもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
本願では、エグレスPEデバイス#Cは、前述した修正されたコードブロックを復元する必要があるため、復元の精度を保証するために、エグレスPEデバイス#Cが使用する復元方法は、イングレスPEデバイス#Bが使用する修正方法に対応する必要がある(例えば、復元方法と修正方法が互いに逆の処理を行う)ことに留意されたい。
限定の代わりの例として、本願では、イングレスデバイス#Aが使用する修正方法は、予め通信システムまたは通信プロトコルで特定されていてもよく、または、イングレスデバイス#Aが使用する修正方法は、エグレスPEデバイス#CとイングレスPEデバイス#Bとの間のネゴシエーションにより決定されていてもよく、または、イングレスデバイス#Aが使用する修正方法は、伝送ネットワークの管理デバイスにより決定されてイングレスPEデバイス#Bに配信され、管理デバイスは、修正方法に対応した復元方法をエグレスPEデバイス#Cに配信してもよい。
S260において、エグレスPEデバイス#Cは、クライアントデバイス#Dがイーサネット信号#Aに保持されている様々な情報をイーサネット信号#Cに基づいて取得できるように、前述の復元処理後に生成される信号(イーサネット信号#Cと表記される)をクライアントデバイス#Dに送信してもよい。
本願で提供される解決手段によれば、中低速イーサネット信号からOコードブロックを高速イーサネット信号に変換する処理を、情報を失うことなく完成させることができる。完全なコードワードトランスパレンシーは、元のコードブロックストリームの情報を失うことなく実装することができる。
また、前述のコードブロック変換プロセスは、トランスコード効率が1:1であり、追加のビットオーバーヘッドが不要であり、帯域幅の拡張が発生せず、伝送リソースが無駄にされていない。5GEがFlexEの5Gスロット(slot)を1つのみ占有し、10GEがFlexEの5Gスロットを2つだけ占有し、25GEがFlexEの5Gスロットを5つだけ占有することを実装することができる。
本願で提供される解決手段は、標準的なコードブロック処理メカニズム(例えば、IDLEベースのコードブロック調整メカニズム)に影響を与えることなく、10G BASE-R、25G BASE-R、および100G BASE-Rの既存のPCSレイヤコーディング仕様に準拠することができる。
本願で提供される解決手段によれば、クライアントデバイスからのイーサネット信号(具体的には、中低速イーサネット信号)は、伝送ネットワークにおいて、コードワードトランスパレント(codeword transparent)な方法で伝送することができ、ここで、コードワードは、バイナリコードの複数のビットのグループの組み合わせであり、コードワードトランスパレンシーは、ユーザクライアント信号を保持して伝送する伝送ネットワークが、コードワードを保持するデータストリームを伝送する場合に、ユーザクライアント信号のデータストリーム内の任意のコードワードの情報を紛失または改ざんしないことを示している。
前述した方法によると、図21は、本願の実施形態における通信装置10の概略図である。図21に示すように、装置10は、イングレス伝送デバイス(受信デバイス、例えば、エグレスPEデバイス)であってもよく、または、チップまたは回路、例えば、イングレス伝送デバイス内に配置可能なチップまたは回路であってもよい。
通信装置10は、処理ユニット11(処理ユニットの一例)と記憶ユニット12とを含んでいてもよい。記憶ユニット12は、命令を記憶するように構成され、処理ユニット11は、記憶ユニット12に記憶された命令を実行するように構成されていることから、通信装置10は、前述した方法において伝送デバイス(受信デバイス、例えば、エグレスPEデバイス#C)によって実行される段階を実装する。
さらに、装置10は、入力ポート13(通信ユニットの一例)および出力ポート14(通信ユニットの別の例)を含んでもよい。さらに、処理ユニット11、記憶ユニット12、入力ポート13、および出力ポート14は、制御および/またはデータ信号を伝送するために、内部接続パスを使用して互いに通信してもよい。記憶ユニット12は、コンピュータプログラムを記憶するように構成されている。処理ユニット11は、記憶ユニット12からコンピュータプログラムを呼び出してコンピュータプログラムを動作させ、入力ポート13を制御して信号を受信し、出力ポート14を制御して信号を送信するように構成されていてもよく、前述した方法において端末デバイスが実行する段階を実装するように構成されていてもよい。記憶ユニット12は、処理ユニット11に統合されていてもよいし、または、記憶ユニット12と処理ユニット11とが別々に配置されていてもよい。
オプションで、通信装置10が伝送デバイスである場合、入力ポート13は受信機であり、出力ポート14は送信機である。受信機と送信機は、同じ物理エンティティまたは異なる物理エンティティであってもよい。受信機と送信機が同じ物理エンティティである場合、受信機と送信機を総称してトランシーバと呼ぶことがある。
オプションで、通信装置10がチップまたは回路である場合、入力ポート13は入力インタフェースであり、出力ポート14は出力インタフェースである。
実施形態では、入力ポート13および出力ポート14の機能は、トランシーバ回路または専用のトランシーバチップを用いて実装されているとみなされてよい。処理ユニット11は、専用の処理チップ、処理回路、または処理ユニット、または汎用チップを用いて実装されているとみなされてよい。
別の実施形態では、本願の実施形態で提供される受信デバイスを実行するために、汎用コンピュータが使用されるとみなされてよい。言い換えれば、処理ユニット11、入力ポート13、出力ポート14の機能を実装するためのプログラムコードが記憶ユニット12に記憶されており、汎用処理ユニットが記憶ユニット12内のコードを実行することにより、処理ユニット11、入力ポート13、出力ポート14の機能が実装される。
実施形態では、入力ポート13は、第1のレートモードであり、複数のコードブロックを含むコードブロックストリームを伝送ネットワークから受信するように構成され、処理ユニット11は、コードブロックストリームからターゲットコードブロックを決定するように構成され、ここで、ターゲットコードブロックは、コードブロックストリームのパケット間ギャップで受信デバイスによって受信されたコードブロックであり、ターゲットコードブロックは、第1のターゲットコードブロックを含み、第1のターゲットコードブロックは、データ型のコードブロックであり、および/または、ターゲットコードブロックは第2のターゲットコードブロックを含み、第2のターゲットコードブロックは終端型のコードブロックであり、処理ユニット11は、ターゲットコードブロックを、第2のレートモードに対応するレートが第1のレートモードに対応するレートよりも少ない第2のレートモードにある、オーダーセット型のコードブロックに修正するように構成される。
オプションで、処理ユニット11は、コードブロックストリーム内の開始型のコードブロックに基づいてパケット間ギャップの終端位置を決定し、コードブロックストリーム内の終端型のコードブロックに基づいてパケット間ギャップの開始位置を決定するように構成されている。
オプションで、処理ユニット11は、コードブロックストリーム内の第1の終端型のコードブロックに基づいて、パケット間ギャップの開始位置を決定するように構成されており、ここで、第1の終端型のコードブロックは、終端型の第1のコードブロックであり、伝送シーケンス内の開始型のコードブロックの後に位置している。
オプションで、処理ユニット11は、第1のターゲットコードブロックの同期ヘッダフィールドに保持された情報を、オーダーセット型に対応する同期ヘッダ情報に修正し、および/または、第2のターゲットコードブロックのコードブロック型フィールドに保持された情報を、オーダーセット型に対応するコードブロック型情報に修正するように構成されている。
オプションで、処理ユニット11は、マッピング関係に基づいて、第1の終端型の第2のターゲットコードブロックのコードブロック型フィールドに保持される情報を、第1のオーダーセット型に対応する情報に修正するように構成され、ここで、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型と、第1のオーダーセット型との間の1対1のマッピング関係を示すために使用される。
前述に列挙された装置10におけるモジュールまたはユニットの機能および動作は、説明のための一例に過ぎない。装置10内のモジュールまたはユニットは、前述した方法において、伝送デバイス(例えば、エグレスPEデバイス#C)によって実行される動作または処理プロセスを実行するように構成されていてもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
本願の実施形態で提供される技術的解決手段に関連する概念、解釈、詳細な説明、および装置10に関連する他の段階については、前述した方法または他の実施形態における内容に関する説明を参照されたい。詳細については、本明細書では再度説明しない。
オーダーセット型のコードブロックは、パケット間ギャップで送信されるため、送信デバイスは、オーダーセット型のコードブロックを、伝送ネットワークによって認識可能なデータ型のコードブロックまたは終端型のコードブロックに修正してもよい。このようにして、受信デバイスは、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックが、オーダーセット型のコードブロックに基づいて修正されたと決定し、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックをオーダーセット型のコードブロックに戻して修正することをさらに実行してもよい。これにより、伝送ネットワークを使用してオーダーセット型のコードブロックを送信できることを保証するだけでなく、受信デバイスがオーダーセット型のコードブロックを確実に認識することも保証でき、通信精度を向上させることができる。
前述した方法によれば、図22は、本願の実施形態における通信装置30の概略図である。図22に示すように、装置30は、伝送デバイス(送信デバイス、例えば、イングレスPEデバイス#B)であってもよいし、または、チップまたは回路、例えば、ネットワークデバイス内に配置可能なチップまたは回路であってもよい。
装置30は、処理ユニット31と記憶ユニット32とを含んでもよい。記憶ユニット32は命令を記憶するように構成され、処理ユニット31は記憶ユニット32に記憶された命令を実行するように構成されているので、装置30は前述した方法で送信デバイスによって実行される段階を実行する。
さらに、装置30は、入力ポート33(通信ユニットの一例)および出力ポート33(処理ユニットの別の例)をさらに含んでもよい。
さらに、処理ユニット31、記憶ユニット32、入力ポート33、および出力ポート34は、制御および/またはデータ信号を伝送するために、内部接続パスを使用して互いに通信してもよい。
また、本願の実施形態で提供されるネットワークデバイスは、汎用コンピュータを用いて実装されるとみなされてよい。言い換えれば、処理ユニット31、入力ポート33、出力ポート34の機能を実装するためのプログラムコードが記憶ユニットに記憶されており、汎用処理ユニットが記憶ユニット内のコードを実行して処理ユニット31、入力ポート33、出力ポート34の機能を実装する。
記憶ユニット32は、コンピュータプログラムを記憶するように構成されている。
実施形態では、処理ユニット31は、記憶ユニット32からコンピュータプログラムを呼び出してコンピュータプログラムを動作させ、第2のレートモードである複数のコードブロックのコードブロックストリームに基づいて、第1のレートモードであるコードブロックストリームを決定するように構成されていてもよく、ここで、第2のレートモードに対応するレートが第1のレートモードに対応するレートよりも少なく、第2のレートモードのコードブロックストリームにおけるオーダーセット型のコードブロックがデータ型のコードブロックに修正され、および/または、第2のレートモードのコードブロックストリームにおけるオーダーセット型のコードブロックが終端型のコードブロックに修正され、出力ポート34は、第1のレートモードのコードブロックストリームを伝送ネットワークに送信するように構成されている。
オプションで、オーダーセット型のコードブロックの同期ヘッダフィールドに保持される情報は、データ型に対応する同期ヘッダ情報に修正される。
オプションで、オーダーセット型のコードブロックのコードブロック型フィールドに保持された情報は、終端型に対応するコードブロック型情報に修正される。
オプションで、処理ユニット31は、マッピング関係に基づいて、第1のオーダーセット型のコードブロックのコードブロック型フィールドに保持される情報を、第1の終端型に対応する情報に修正するように構成され、ここで、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型との間の1対1のマッピング関係を示すために使用され、第1のオーダーセット型は第1の終端型に対応し、第1のオーダーセット型は、少なくとも2つのオーダーセット型のうちのいずれか1つである。
装置30におけるモジュールまたはユニットの前述に列挙した機能および動作は、説明のための一例に過ぎない。装置30内のモジュールまたはユニットは、前述した方法において伝送デバイス(送信デバイス、例えば、イングレスPEデバイス#B)によって実行される動作または処理プロセスを実行するように構成されていてもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
本願の実施形態で提供される技術的解決手段に関連する概念、解釈、詳細な説明、および装置30に関連する他の段階については、前述した方法または他の実施形態における内容に関する説明を参照されたい。詳細については、本明細書では再度説明しない。
オーダーセット型のコードブロックはパケット間ギャップで送信されるため、送信デバイスは、オーダーセット型のコードブロックを、データ型のコードブロックまたは終端型のコードブロックに修正して、伝送ネットワークによって認識可能としてもよい。このようにして、受信デバイスは、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックが、オーダーセット型のコードブロックに基づいて修正されたと決定し、データ型のコードブロックまたはパケット間ギャップに位置する終端型のコードブロックをオーダーセット型のコードブロックに戻してさらに修正してもよい。これにより、伝送ネットワークを使用してオーダーセット型のコードブロックを送信することを保証できるだけでなく、受信デバイスがオーダーセット型のコードブロックを確実に認識することも保証でき、通信精度を向上させる。
図23は、本願における伝送デバイス(例えば、イングレス伝送デバイスまたはエグレス伝送デバイス)の一例の概略ブロック図である。
図23に示すように、伝送デバイスは、1または複数のクライアント側インタフェースボード41、スイッチングボード42、および1または複数のFlexE側インタフェースボード43を含む。
クライアント側インタフェースボード41は、外部インタフェース411と、トランスコーダ413と、内部インタフェース415とを含む。
また、FlexE側インタフェースボード43は、内部インタフェース431と、トランスコーダ433と、外部インタフェース435とを含む。
伝送デバイスがイングレスPEデバイスとしての機能を果たす場合、
外部インタフェース411は、クライアントデバイスから低速イーサネット信号(例えば、5Gps、10Gps、または25Gpsのレートの信号)を受信するように構成され、
トランスコーダ413は、低速イーサネット信号を高速イーサネット信号(例えば、40Gps、100Gps、200Gps、または400Gpsのレートの信号)に変換するように構成され、ここで、トランスコーダ413は、中低速イーサネット信号のPCSレイヤコードブロックストリーム内のコードブロックを高速イーサネット信号のPCSレイヤ伝送要件を満たすコードブロックストリームに変換するように特に構成され、
内部インタフェース415は、高速イーサネット信号をスイッチングボード42に送信するように構成され、
スイッチングボード42は、予め設定されたルーティングルールに従って、高速イーサネット信号を、高速イーサネット信号をエグレス伝送デバイスにルーティングすることができるFlexE側インタフェースボード43に転送するように構成され、
内部インタフェース431は、スイッチングボード42から高速イーサネット信号を受信するように構成され、
外部インタフェース435は、高速イーサネット信号を伝送ネットワーク、例えばFlexEネットワークに送信するように構成されている。
伝送デバイスがエグレスPEデバイスとしての機能を果たす場合、
外部インタフェース435は、伝送ネットワーク、例えばFlexEネットワークから高速イーサネット信号(例えば、40Gps、100Gps、200Gps、または400Gpsのレートの信号)を受信するように構成され、
トランスコーダ433は、高速イーサネット信号を中低速イーサネット信号(例えば、5Gps、10Gps、25Gps、または400Gpsのレートの信号)に変換するように構成され、ここで、トランスコーダ433は、高速イーサネット信号のPCSレイヤコードブロックストリーム内のコードブロックを、中低速イーサネット信号のPCSレイヤ伝送要件を満たすコードブロックストリームに変換するように特に構成され、
内部インタフェース431は、中低速イーサネット信号をスイッチングボード42に送信するように構成され、
スイッチングボード42は、予め設定されたルーティングルールに従って、中低速イーサネット信号を、中低速イーサネット信号をデスティネーションクライアントデバイスにルーティングすることができるクライアント側インタフェースボード41に転送するように構成され、
内部インタフェース415は、中低速イーサネット信号をスイッチングボード42から受信するように構成され、
外部インタフェース411は、中低速イーサネット信号をデスティネーションクライアントデバイスに送信するように構成されている。
なお、伝送デバイスがイングレスPEデバイスとしての機能を果たす場合、クライアント側インタフェースボード41(具体的には、クライアント側インタフェースボード41内の各モジュールまたはユニット)の動作が入力ポート13の動作に対応してよく、トランスコーダ413の動作が処理ユニット11の動作に対応してもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
例えば、フォワーダは、イーサネット信号のPCSレイヤコードブロックストリーム内のコードブロック内のオーダーセット型のコードブロックの同期ヘッダフィールドに保持された情報を、データ型に対応する同期ヘッダ情報に修正してもよい。
別の例として、フォワーダは、イーサネット信号のPCSレイヤコードブロックストリームのコードブロック内のオーダーセット型のコードブロックのコードブロック型フィールドに保持される情報を、終端型に対応するコードブロック型情報に修正してもよい。
具体的には、フォワーダは、マッピング関係に基づいて、第1のオーダーセット型のコードブロックのコードブロック型フィールドに保持される情報を、第1の終端型に対応する情報に修正してもよく、ここで、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型との間の1対1のマッピング関係を示すために使用され、第1のオーダーセット型は、第1の終端型に対応し、第1のオーダーセット型は、少なくとも2つのオーダーセット型のうちのいずれか1つである。
また、伝送デバイスがエグレスPEデバイスとしての機能を果たす場合、FlexE側インタフェースボード43(具体的には、FlexE側インタフェースボード43内の各モジュールまたはユニット)の動作が出力ポート34の動作に対応してよく、トランスコーダ433の動作が処理ユニット31の動作に対応していてもよい。繰り返しを避けるため、本明細書では詳細な説明を省略する。
例えば、トランスコーダは、コードブロックストリーム内の開始型のコードブロックに基づいて、パケット間ギャップの終端位置を決定してもよく、コードブロックストリーム内の終端型のコードブロックに基づいて、パケット間ギャップの開始位置を決定してもよい。
具体的には、フォワーダは、コードブロックストリーム中の第1の終端型のコードブロックに基づいて、パケット間ギャップの開始位置を決定してもよく、ここで、第1の終端型のコードブロックは、終端型であって、伝送シーケンス中の開始型のコードブロックの後に位置する第1のコードブロックである。
別の例として、トランスコーダは、第1のターゲットコードブロックの同期ヘッダフィールドに保持された情報を、オーダーセット型に対応する同期ヘッダ情報に修正してもよい。
別の例として、トランスコーダは、第2のターゲットコードブロックのコードブロック型フィールドに保持された情報を、オーダーセット型に対応するコードブロック型情報に修正してもよい。
具体的には、フォワーダは、マッピング関係に基づいて、第1の終端型の第2のターゲットコードブロックのコードブロック型フィールドに保持される情報を、第1のオーダーセット型に対応する情報に修正してもよく、ここで、マッピング関係は、少なくとも2つの終端型と少なくとも2つのオーダーセット型との間の1対1のマッピング関係を示すために使用され、第1のオーダーセット型は第1の終端型に対応し、第1の終端型は、少なくとも2つの終端型のうちのいずれか1つである。
本願では、イーサネット信号のPCSレイヤコードブロックストリームのコードブロックは、64ビット/66ビットのコードブロックを含んでもよい。
限定の代わりの例として、中低速イーサネット信号のPCSレイヤコードブロックストリームにおけるオーダーセット型のコードブロックには、コードブロック型フィールドで保持される情報が0×2dまたは0×55であるコードブロックが含まれている。
本願では、フォワーダ(流入、トランスコーダ413またはトランスコーダ433)は、プロセッサによって実装されてもよい。プロセッサは、主に次のように構成されている。通信プロトコルおよび通信データを処理すること、伝送デバイス全体を制御すること、ソフトウェアプログラムを実行すること、およびソフトウェアプログラムのデータを処理すること、例えば、前述した方法の実施形態に記載された動作を実行する際に伝送デバイスをサポートするように構成されている。メモリは、主にソフトウェアプログラムやデータを記憶するように構成されている。
端末デバイスの電源が投入された後、プロセッサは、記憶ユニット内のソフトウェアプログラムを読み取り、ソフトウェアプログラムの命令を解釈して実行し、ソフトウェアプログラムのデータを処理するようにしてもよい。
例えば、プロセッサは、ベースバンドプロセッサと中央処理デバイスとを含んでもよい。ベースバンドプロセッサは、主に通信プロトコルおよび通信データを処理するように構成され、中央処理デバイスは、主に端末デバイス全体を制御し、ソフトウェアプログラムを実行し、ソフトウェアプログラムのデータを処理するように構成されている。当業者であれば、ベースバンドプロセッサおよび中央処理デバイスは、互いに独立したプロセッサであってもよく、バスのような技術を用いて相互に接続されていることを理解するであろう。当業者であれば、端末デバイスは、異なるネットワーク規格に適応するための複数のベースバンドプロセッサを含んでもよく、端末デバイスは、端末デバイスの処理能力を高めるための複数の中央処理ユニットを含んでもよく、端末デバイスの構成要素は、様々なバスを使用して接続されてもよいことを理解するであろう。また、ベースバンドプロセッサは、ベースバンド処理回路またはベースバンド処理チップと表記されてもよい。また、中央処理デバイスは、中央処理回路または中央処理チップと表記されてもよい。通信プロトコルおよび通信データを処理する機能は、プロセッサに組み込まれていてもよく、または、プロセッサがソフトウェアプログラムを実行してベースバンド処理機能を実行するように、ソフトウェアプログラムの形式で記憶ユニットに記憶されていてもよい。
本願の実施形態におけるプロセッサは、中央処理デバイス(central processing unit, CPU)であってもよく、または、別の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor, DSP)、アプリケーション専用集積回路(application-specific integrated circuit, ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array, FPGA)または別のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネント、などであってもよいことが理解されたい。汎用プロセッサはマイクロプロセッサであってもよく、または、プロセッサは従来のプロセッサなどであってもよい。
また、本願の実施形態におけるメモリは、揮発性メモリまたは不揮発性メモリであってもよく、または揮発性メモリと不揮発性メモリとを含んでいてもよいことが理解されるべきである。不揮発性メモリは、リードオンリメモリ(read-only memory、ROM)、プログラマブルリードオンリメモリ(programmable ROM、PROM)、消去可能プログラマブルリードオンリメモリ(erasable PROM、EPROM)、電気的消去可能プログラマブルリードオンリメモリ(electrically EPROM、EEPROM)、またはフラッシュメモリであってよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory, RAM)であってもよい。例示的ではあるが、これに限定されるものではなく、多くの形態のランダムアクセスメモリ(random access memory, RAM)が使用されてもよく、例えば、スタティックランダムアクセスメモリ(static RAM, SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、同期ダイナミックランダムアクセスメモリ(synchronous DRAM, SDRAM)、ダブルデータレート同期ダイナミックランダムアクセスメモリ(double data rate SDRAM, DDR SDRAM)、エンハンスト同期ダイナミックランダムアクセスメモリ(enhanced SDRAM, ESDRAM)、同期リンクダイナミックランダムアクセスメモリ(synchlink DRAM, SLDRAM)、およびダイレクトランバスランダムアクセスメモリ(direct rambus RAM, DR RAM)であってもよい。
前述の実施形態の全てまたはいくつかは、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせを用いることにより実装され得る。実施形態を実装するためにソフトウェアが用いられる場合、前述の実施形態は、コンピュータプログラム製品の形態で全てまたは部分的に実施されてもよい。コンピュータプログラム製品は、1または複数のコンピュータ命令またはコンピュータプログラムを含む。コンピュータ命令またはコンピュータプログラムがコンピュータにロードされて実行される場合、本願の実施形態による手順または機能の全てまたは一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または別のプログラム可能な装置であってよい。コンピュータ命令は、コンピュータ可読記憶媒体内に記憶されてよい、または、コンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に伝送されてよい。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、またはデータセンターから別のウェブサイト、コンピュータ、サーバ、またはデータセンターに有線(例えば、赤外線、無線、マイクロ波)方法で伝送されてもよい。コンピュータ可読記憶媒体は、コンピュータからアクセス可能な任意の使用可能な媒体、または、1または複数の使用可能な媒体を統合する、サーバまたはデータセンターなどのデータ記憶デバイスであってよい。使用可能な媒体は、磁気媒体(例えば、フロッピディスク、ハードディスク、または磁気テープ)、光学媒体(例えば、DVD)、または半導体媒質であってよい。半導体媒質は、ソリッドステートドライブであってもよい。
本明細書における「および/または」という用語は、関連する対象物を説明するための対応関係のみを記載するものであり、3つの関係が存在し得ることを表すことを理解されたい。例えば、Aおよび/またはBとは、以下の3つのケースを表してよい。つまり、Aだけが存在する、AおよびBが両方との存在する、Bだけが存在するという3つのケースである。また、本明細書における記号「/」は、一般に、関連する対象物間の「または」の関係を示している。
前述のプロセスの連続番号は、様々な本願の実施形態において、実行順序を意味するものではないことを理解されたい。処理の実行順序は、処理の機能および内部論理に従って決定されるべきであり、複数の本願の実施形態の実装処理についてのいかなる限定と解釈されるべきではない。
当業者であれば、本明細書に開示された実施形態で説明された複数の例を組み合わせて、複数のユニットおよび複数のアルゴリズム段階が、電子的ハードウェアまたはコンピュータソフトウェアと電子的ハードウェアとの組み合わせによって実装され得ることを認識するであろう。これらの機能がハードウェアによって実行されるのか、または、ソフトウェアによって実行されるのかは、特定の用途および技術的解決手段の設計制約条件で決まる。当業者であれば、異なる方法を用いて、説明された機能を特定の用途ごとに実装するかもしれないが、その実装例が本願の範囲を超えるものとみなされるべきではない。簡便で簡潔な説明の目的のために、前述のシステム、装置およびユニットの詳細な動作プロセスについては、前述した方法の実施形態における対応するプロセスを参照することとし、ここで再度詳細を説明しないことが当業者によってより明確に理解され得る。本願において提供される複数の実施形態では、開示されたシステム、装置および方法が他の方法で実装されてよいことを理解されたい。例えば、説明された装置の実施形態は、単なる一例に過ぎない。例えば、ユニットへの分割は、論理的機能の分割に過ぎず、実際の実装では他の分割であってよい。例えば、複数のユニットまたは構成要素が組み合わされてよく、または、別のシステムに統合されてもよく、または、一部の機能が無視されてもよく、または、実行されなくてもよい。また、表示されたまたは記載された相互結合または直接結合または通信接続は、いくつかのインタフェースを用いて実装されてよい。複数の装置間または複数のユニット間の間接的な結合または通信接続は、電子的形態、機械的形態、または他の形態で実装されてよい。
別個の部分として説明されたユニットは、物理的に離れていてもよく、または、そうでなくてもよい。または、ユニットとして表示された部分が、物理的なユニットであってもそうでなくてもよく、1か所に配置されてもよく、または、複数のネットワークユニットに分散されてもよい。これらのユニットの一部または全てが、これらの実施形態の解決手段の目的を実現するために、実際の要件に基づいて選択されてよい。また、本願の実施形態における機能ユニットが1つの処理ユニットに統合されてもよく、または、各ユニットが物理的に単独で存在してもよく、または、2つまたはそれより多くのユニットが1つのユニットに統合される。これらの機能がソフトウェア機能ユニットの形態で実装され、別個の製品として販売されるかまたは使用される場合、これらの機能はコンピュータ可読記憶媒体に記憶されてよい。そのような理解に基づいて、基本的には本願の技術的解決手段、または先行技術に寄与する部分、または技術的解決手段の一部が、ソフトウェア製品の形態で実装されてよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、本願の実施形態において説明される方法の段階の全てまたはいくつかを実行するようコンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワークデバイスなど)に命令するための複数の命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリメモリ、ランダムアクセスメモリ、磁気ディスクまたは光ディスクのような、プログラムコードを記憶できる任意の媒体を含む。
前述の説明は、本願の単なる特定の実施形態に過ぎず、本願の保護範囲を限定することを意図してはいない。本願に開示された技術的範囲内に当業者により容易に想到されるあらゆる変形または置換は、本願の保護範囲に含まれるものとする。したがって、本願の保護範囲は特許請求の範囲の保護範囲に従うものとなる。