JPH0817403B2 - デジタルデータ流中のパケットの境界を検出する方法および装置 - Google Patents

デジタルデータ流中のパケットの境界を検出する方法および装置

Info

Publication number
JPH0817403B2
JPH0817403B2 JP2216472A JP21647290A JPH0817403B2 JP H0817403 B2 JPH0817403 B2 JP H0817403B2 JP 2216472 A JP2216472 A JP 2216472A JP 21647290 A JP21647290 A JP 21647290A JP H0817403 B2 JPH0817403 B2 JP H0817403B2
Authority
JP
Japan
Prior art keywords
flag
data
packet
byte
data stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2216472A
Other languages
English (en)
Other versions
JPH03117250A (ja
Inventor
テオフィロ、カルビト、アンチェタ
アレクサンダー、バーマン
パオ‐チ、チャン
ロシュ、ゲラン
Original Assignee
インターナショナル、ビジネス、マシーンズ、コーポレーション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターナショナル、ビジネス、マシーンズ、コーポレーション filed Critical インターナショナル、ビジネス、マシーンズ、コーポレーション
Publication of JPH03117250A publication Critical patent/JPH03117250A/ja
Publication of JPH0817403B2 publication Critical patent/JPH0817403B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Multi Processors (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ通信の分野に関するものであり、とく
にデータのパケットの認識に関するものである。特に、
高速で伝送されるデータのパケットの識別のための方法
に関する。
〔従来の技術〕
通信プロトコルにおいては、特殊なパターンまたはフ
ラグによりパケットの境界が示されることが屡々ある。
そのようなプロトコルを用いる装置においては、受信し
たデータ流内でフラグを認識し、したがってそのデータ
流内のパケットの境界によりパケットを識別するために
フラグ検出器/パケット識別子を用いる。
従来は、受信したデータ中のフラグを識別するために
ビット指向プロトコルに直列アーキテクチャが用いられ
ていた。それらの装置においては、直列データ流を1度
に1ビット処理し、「シフトおよび比較」技術を用いる
ことによってフラグは検出されている。この直列アーキ
テクチャにはいくつかの限界がある。
〔発明が解決しようとする課題〕
第1に、高度な高速論理が用いられなければ、装置の
速度は直列論理技術の速度により制限される。たとえ
ば、進歩したショットキーTTL論理では、処理速度を50
〜70メガヘルツにできる。この制約は、パケット通信が
高速リンクを介して行われる装置では、システムのあい
路となることがある。
第2に従来の直列アーキテクチャは単一チャネルモー
ドで動作するだけである。フラグ検出は順次ビット法で
あるから、それは一般に1度に1つのデータパケットで
動作する。したがって、時分割多重(TDM)フォーマッ
トに従って複数のデータチャネルを含む高速リンクを用
いる装置においては、各チャネルに到達するデータを処
理するために別々のフラグ検出器を使用できる。そうす
るとデータリンクインターフェイスの価格が上昇し、そ
のインターフェイスの構成が複雑になり、チャネルの数
を変化できる装置の融通性が減ずる。
〔課題を解決するための手段および作用〕
本発明は直列データ流中のデータパケットの区切りフ
ラグを識別するものである。複数のビットを並列に評価
する処理技術により識別が行われる。すなわち識別は状
態マシンを用いた並列処理技術により比較的高速で行わ
れる。
本発明は、可変数のチャネルを有する複数のチャネル
データリンクに対して直接インターフェイスできる。ま
た、処理遅れが比較的小さい専用ハードウェアにより、
求められている全ての機能を実行できる。複数チャネル
リンクの別々のチャネルを介してデータは送られる。複
数チャネルリンクは所定の時間に対して1度に1つのチ
ャネルを選択し、選択されたチャネルからのデータ流を
フラグ検出器へ送ることを許す。
フラグ(所定のビットパターンより成る)は下記のよ
うにして識別される。
1)1度に所定数のビットずつ、デジタルデータ流がフ
ラグ検出器に入る。それらのビットのうちのいくつかを
フラグの部分とすることができる。
2)フラグ検出器は、フラグ検出器に入ったデータ中の
フラグの一部に対応することがあるビットの数の指示を
発生する。
3)デジタルデータ流からの付加データがフラグ検出器
に入る。
4)この付加データのいくつかのビットがフラグの残り
のビットを表わすものとすると、フラグ検出器はフラグ
が見つけられたことを指示する。
フラグの場所を基にして、パケットの初めと終りのバ
イト境界を決定できる。この情報を用いて、出力レジス
タが、パケットに対応するビットだけを格納または処理
のためのバッファなどの外部装置へ供給する。
〔実施例〕
本発明を詳しく説明する前に、本発明の説明に用いる
用語を以下に定義する。
時分割多重化−2種類またはそれ以上の信号に対して
引続く時間間隔を用いることにより、共通の経路を介し
て2種類またはそれ以上の信号を伝送するためのプロセ
ス。
フラグパターン−パケットの境界を決定するために用
いられる所定のビット列。
打ち切りパターン−現在のパケットに含まれている情
報を無視すべきであることを示すために用いられる所定
のビット列。
フラグ検出−データ流中のフラグパターンを識別する
ために用いるプロセス。
パケット検出−受信したビットが特定のパケットに属
するか否かを決定するために、そのバイトを評価するた
めに用いるプロセス。
この技術においては周知のように、バイトと呼ばれる
2進数の集りにまとめることによりデータは表される。
典型的な通信装置においては、データのバイトは連続し
て転送される。連続して転送されるデータバイトの群
(フラグを除く)がパケットとして定義される。
データ通信装置は時分割多重化された環境においてし
ばしば実現される。この環境においては、完全なデータ
パケットを1つの時間スロット中に送ることが困難なこ
とがある。1つのチャネルから出るパケット伝送がある
時間スロットが終わった時に留保され、後で伝送が再開
されることがしばしばある。その留保されている間に別
のチャネルからのパケット伝送が開始され、後で継続す
るために留保されるだけである。
パケットを取り扱う時は、各パケットの初めと終りの
正確な境界を知ることが望ましい。この情報を用いて、
1つのパケットからのデータのピットが異なるパケット
へ誤って割当てられることを阻止できる。フラグ機構を
用いることによりパケットの境界が決定される。データ
流中のフラグを識別することにより、パケット中の最初
のバイトがいつ受信されたかの指示と、パケット中の最
後のバイトがいつ受信されたかの指示が伝送装置へ与え
られる。
フラグ検出器はフラグ検出部とパケット識別部で構成
される。各部は状態マシンとして機能する。フラグ検出
部がデータ流を処理すると、そのフラグ検出部は種々の
状態をとる。各状態はデータ流の内容を示す。フラグ検
出部がフラグを探すと、フラグ検出部はこの情報をパケ
ット識別部へ送る。
パケットを分離するために用いられるフラグビットパ
ターンと、パケット中のデータの符号化とは所定の通信
プロトコルに従って決定される。本発明のこの実施例に
おいて用いられるフラグ検出メカニズムはLAPD、HDLC、
SDLCのような周知のプロトコルに適合する。それらのプ
ロトコルに従って、データ流中のフラグは6個またはそ
れ以上の連続する2進1を含む。実際のデータがフラグ
と解されることを防ぐために、データは予め処理してか
ら送る。この前処理過程は、フラグと間違えられるおそ
れがあるデータ値を符号化する。1つの例示的な種類の
符号化により、入力データ流中の連続する5個の1のあ
らゆる列と次に連続するビットの間に2進0が挿入され
る。パケットを受信した後で、連続する5個の2進1の
任意の列に続く2進0を除去することにより、この符号
化動作は逆にされる。
高速フラグ検出およびパケット識別は1つの機能とし
て説明できるが、説明を簡単にするために2の機能を分
け、別々のハードウェア部により行われるものとして説
明することにする。
本発明のこの実施例においては、フラグ検出機能を一
度に1バイトずつ行う部分にデータが入る。そのバイト
を構成する受信したビットは同時に評価されてフラグ
(またはそれの小部分)が受信されたかどうかを判定す
る。フラグは2つのバイトにまたがって分割できるか
ら、その評価を2個求められることがあり、したがって
フラグ検出のためには2つのマシンサイクルが用いられ
る。2バイトより小さいパケットは無効であるから、3
クロックサイクルにわたって有効なパケットが受信され
たかどうかをパケット識別部が判定する。有効なパケッ
トが受信されたとすると、そのパケットのためのデータ
であって、受信したデータ流から取出されたデータを取
扱い(先に概略を述べたプロトコル復号過程のような)
または記憶のために、引き続く段へ転送できる。
第1図には、本発明のフラグ検出のやり方を使用でき
る通信装置が示されている。データが一連のデータ通信
チャネルを介してこの装置へ供給される。各チャネルは
時分割マルチプレクサ101を介してこの装置へ結合され
る。マルチプレクサ101はそれが結合されている種々の
通信チャネルの間で周期的に切換えられる。ある所定の
時間だけ1つのデータチャネルが時分割マルチプレクサ
100により選択され、その後で別のチャネルが選択され
て、異なるデータ流を送ることができるようにする。あ
るデータ流がマルチプレクサ101を通ると、そのデータ
流はデータリンク100を介してフラグ検出器102へ送られ
る。そのフラグ検出器は入ってくるデータ流を評価し
て、それがフラグに対応するビットパターンを含むかど
うかを判定する。フラグが検出された後、第1の非フラ
グビットパターンが検出されると、特定のデータパケッ
トの伝送が始まったことをフラグ検出器は示す。そのチ
ャネルに対して次のフラグが検出されると、完全なデー
タパケットが受信されたことをフラグ検出器は示す。入
力データ流中のフラグの場所を基にして、パケットの始
りと終りに対して境界を決定できる。
フラグ検出器102により供給されたデータは処理要素1
04へ送られる。この処理要素は、たとえば、個々の各チ
ャネルにより用いられているプロトコルに従ってデータ
を復号できる。処理要素により復号されたデータは記憶
要素103へ加えられる。第1図に示すように、記憶要素1
03は複数のデータバッファを含む。1つのデータバッフ
ァが、時分割マルチプレクサ101により処理される各チ
ャネルに組合わされる。それらのバッファは復号された
データを保持する。それらのデータは別の処理要素(図
示せず)により使用でき、またはパケットに符号化し
て、通信チャネルを介してネットワークの他のデータ処
理装置へ送ることができる。
時分割マルチプレクサ101を通るデータ流は絶えず変
化するから、フラグ検出器102の動作は非常に複雑にさ
れる。TDMデータリンクはそれぞれ異なるデータ連度を
有する多くのチャネルを含むことができる。各チャネル
は異なるソースからくるから、各チャネルは別々に取扱
うべきであることが望ましい。しかし、各チャネルにフ
ラグ検出器を設ける代りに、TDMリンクの全てのチャネ
ルのために使用できるTDMフラグ検出器が開示される。
TDMフラグ検出器を多くのチャネルへ結合できるが、
1つの時間スロットにおいてはただ1つのチャネルが処
理される。各時間スロットにおける処理の中間結果が記
憶され、同じチャネルに属する次の時間スロットの時に
検索される。各時間スロットに対して、中間結果の記憶
は、各期間スロットに関連するチャネルを指定する(ス
ロット/チャネルマップ)ことにより制御される。TDM
リンクが再構成されるたびにその表は更新される。
フラグ検出器の設計は状態マシンの表現を基にする。
動作時には、フラグ検出器102は入力データの現在のバ
イトばかりでなく、入力データの以前に受信したバイト
の内容に関連する情報も用いる。フラグ検出器102はこ
の情報をチャネル状態の形で保持する。チャネル状態
は、データの引き続くバイトの間の関係を示す。
フラグ検出器102はフラグ検出とパケット識別の2つ
の機能を有する。フラグ検出は以前の入力データバイト
だけを知ることにより行うことができるが、境界とバイ
トの位置合わせのような他の機能(第2表を参照して後
で説明する)は2サイクル遅れを用いる。しかし、パケ
ット識別機能は3サイクルの遅れを要する。含まれてい
る状態の総数のために、フラグ検出機能とパケット識別
機能は解析および定式化が複雑である。「ビット」状態
マシンと「バイト」状態マシンとの2つの別々の論理状
態マシンへの分解は一層行いやすく、本発明のこの実施
例において用いられる。したがって、フラグ検出器は大
型の復号状態マシン、または2つのより小さい別々の状
態マシンとみなすことができる。しかし、外部接続を減
少し、伝播遅れを短くするために、実際の実現は復号状
態マシンを使用できる。当業者であれば、以下の説明か
らそのような復号状態マシンの設計と製造を容易に行う
ことができる。
フラグ検出器102の概略を示すブロック図が第2図に
示されている。フラグ検出器の入力信号と出力信号が、
2つの状態マシンから受信する情報、および2つの状態
マシンへ送られる情報に対応し、各状態マシンの内部計
算から状態が決定される。フラグ検出器内の2つの状態
マシンが情報を交換する。
本発明のこの実施例で用いられるフラグ検出部201
は、データ流中のフラグパターンを検出するために個々
のビット値とビット位置についての知識を用いる状態マ
シンである。本発明のこの実施例においては、フラグパ
ターン01111110が用いられる。フラグおよび実際のデー
タのいずれがチャネルを介して送られるかを決定するた
めにそのパターンが用いられる。並列化(バイトごと)
実現のために、連続する2つのバイトについての情報が
用いられる。これが行われる理由はフラグを2バイトで
受信することがあるからである。たとえば第1のバイト
中の3ビット(×××××011)と次のバイト中の残り
の5ビット(11110×××)で受信される。
フラグ検出部201にはDATAIN、DISTおよびBOUNDの3つ
の入力ポートがあることが示されている。DATAINは現在
のデータバイトが受信される入力ポートである。DISTは
前のバイト中の最後の「0」の位置についての情報を供
給する。BOUNDは受信したバイトの境界とフラグの間の
オフセット(もしあれば)を示す。
フラグ検出部201は5つの出力端子を有する。それら
の出力端子のうちの2つのFLAGとALIGNはパケット識別
部204へ結合される。FLAG信号はデータ流中でフラグが
検出されているかどうかを指定する。ALIGN信号は、最
後に受信したフラグパターンが受信したバイト境界に位
置を合わされたかどうかを示す。出力レジスタ203へ送
られる信号は受信された現在のデータバイト(DATAOU
T)と、前記BOUND信号と、ABORT信号とで構成される。A
BORTパターンが検出されるとABORT信号が発生される。
この信号は、バッファへ現在書込まれているデータのパ
ケットを捨てることができることを、第1図の記憶要素
103に知らせるために用いられる。
先に述べたようにDIST信号は前に受信したバイト中の
最後の「0」の位置を指定する。この信号は、データ中
のフラグパターンと打ち切りパターンを検出するために
用いられる。本発明のこの実施例においては、6個また
はそれ以上の連続する1の列を識別することにより検出
が行われる。このパターンはDIST信号と現在のバイト中
のビットから推理される。
受信したパケットの最初のバイトと最後のバイトは実
際のデータのいくつかのビットだけを含むことがあり、
他のビットはパケットの始めフラグの後のビットとパケ
ットの終りフラグの前のビットに対応することがある。
この例においては記憶素子103はフラグビットを有効な
データビットとして処理しないように知らされる。フラ
グパターンの最後のビットの位置と最初のビットの位置
に応じて、パケットの最初に受信したバイトと最後に受
信したバイトに1〜8個の有効なデータビットがある。
その理由は、フラグパターンはバイト中の任意のビット
位置でスタートできるからである。信号BOUNDはこの情
報を供給する。その情報はパケットの最初のバイトと最
後のバイトに対して重要であって、フラグパターンが検
出された時だけ更新される。最初のデータバイトを受信
したのと同時、またはその前であっても、フラグパター
ンが検出されるから、更新はパケットのスタート時にた
だちに行われる。パケットの終りフラグが検出されてか
ら1バイト時間後にフラグ検出を終らせることができる
から、パケットが終るとBOUND信号の更新か(フラグの
境界とバイトの境界が位置合わせられている時を除き)
1バイトの遅延後に通常行われる。
パケット識別部204への入力はフラグ検出部201からの
FLAG信号とALIGN信号を含む。パケット識別部204の状態
は、前の2つのバイト(フラグ(n−1)とフラグ(n
−2))中でフラグが検出されたかどうか、およびチャ
ネルが有効なデータバイトを3バイト前に(INF(n−
3))受信したかどうかを基にする。この情報を用い
て、不適切なパケット識別を避けるために、フラグまた
は実際のデータがデータチャネルを介して送られている
かどうかを判定する。
パケット識別部204により3つの出力信号STARTF、IN
F、ENDFが発生される。それらの出力信号は、供給され
ているデータバイトがパケットの最初のバイトか、パケ
ットの内側か、またはパケットの最後のバイトかをそれ
ぞれ示す。この情報は、入来パケットを正しく格納し、
関連するポインタを正しく更新するために記憶要素によ
り用いられる。パケット識別部204の出力信号は3バイ
ト時間の遅れで発生される。この遅れは、フラグの識別
に用いられる2バイトのためばかりでなく、無効のパケ
ット(すなわち、2バイト未満を含んでいるパケット)
を検出するために用いられる。多くの場合には、たとえ
ば、フラグが位置を合わされている(ALICN=1)とし
て検出され、かつ次のバイトがフラグパターンでないと
すると、STARTF=1信号を直ちに発生できる(ALICN=
1というケースは別に1バイトの遅れを要する)。本発
明のこの実施例においては、全遅延が3バイトになる結
果をもたらすのは2バイト最小バケットサイズ条件であ
る。
フラグ検出部の状態は、最後の「0」から終りバイト
の境界までの距離を与えるDISTと、最後に検出されたフ
ラグにより導入された終りバイトの境界に対するオフセ
ットを指定するBOUNDとの2つの値で構成される。出力
信号BOUNDについては下に説明する。状態値は現在の入
力データバイトの関数によって決まるだけであるから、
それの値は第1表に示されているDATAINで表される。
3個の正常な出力信号があり、その出力信号は、前の
バイト中の最後の「0」までの距離と、現在のバイト中
に存在する実際のデータパターンを用いることにより計
算される。しかし、出力信号BOUNDの値はフラグが更新
された時に更新されるだけである。したがって、バケッ
トの最初のバイトと最後のバイトにおいて修正されるだ
けである。それの値は他の任意の位置においては重要で
はない。
第2表はフラグ検出部201の出力信号の種々の値と、
状態と入力データ値に対するそれらの出力信号の関係と
を要約して示すものである。表示目的のために、前のデ
ータバイト(DATAIN(n−1))もその表に含まれてい
る。しかし、このデータは実際には呈示されない。とい
うのは、状態マシンのフラグ検出部201により用いられ
る唯一の情報は、DIST(n−1)により与えられている
データバイト中の最後の「0」の位置だからである。各
サイクルに発生される3個の出力信号はFLAG(n)、BO
UND(n−1)およびALICN(n−1)である。
FLAG(n)は現在のバイトに対するフラグ標識として
定義される。BOUND(n−1)は前のバイトのバイト境
界からのビットで表したオフセットとして定義される。
ALIGN(n−1)は前のバイトに対するバイト位置合わ
せ標識(位置合わせされているならばれる。=1)とし
て定義される。それらの信号は下の式により支配され
る。
FLAG(n)=f(DATAIN(n),DIST(n−1)) BOUND(n−1)=f(DATAIN(n),DIST(n−1)) ALICN(n−1)=f(BOUND(n−1)) ここに、nは現在のバイトであり、n−1は前のバイ
トである。
唯一の異常な出力はABORT信号であって、受信したデ
ータ中に7個またはそれ以上の連続する1のパターンが
ある時に、「1」にセットされる。この信号は、現在受
信しているパケットを捨てることができることを記憶装
置へ指示するために用いられる。ABORT信号に続く全て
の有効なデータバイトは、新しいパケットがスタートさ
れるまで単に無視される。
第3表にはABORT信号の真理値表が示されている。前
のデータバイトの値DATAIN(n−1)が呈示口的のため
に含まれている。ABORT(n)はスロットに対するABORT
パターンとして定義される。
この信号は(1)式により支配される。
ABORT(n)=f(DATAIN(n),DIST(n−1) パケット識別部204は2つの信号を介してフラグ検出
部201へ結合される。それらの信号は現在のバイト(FLA
G(n))に対するフラグ標識と、2サイクル前に受信
したバイト(ALIGN(n−2))に対する位置合わせ標
識とで構成される。位置合わせ標識は、パケット識別部
が、あるあいまいな状況においてパケットの境界につい
て正しい判定を行うことを主として助けるために用いら
れる。第2の機能として、2バイトより小さい全てのデ
ータパケットが検出され、無効であるとして捨てられる
ようにするために位置合わせ標識が用いられる。無効な
パケットの検出については後で第5図を参照して説明す
る。
パケット識別部204は状態マシンとして設計される。
入力状態、出力が第4表に要約して示されている。
第4表 状態: 入力: 出力: INF(n−3) Flag(n) STARTF(n−2) Flag(n−2) ALIGN(n−2) ENDF(n−2) Flag(n−1) INF(n−2) 各サイクルごとに受信した入力信号と以前の状態値を
用いて次の状態値を計算する。その状態は3つの値で構
成される。それらの値のうちの2つ、FLAG(n−1)と
FLAG(n−2)、は、最後のクロックサイクルと最後か
ら2番目のクロックサイクルでフラグが認識されたかを
それぞれ示す。第3の値INF(n−3)は、チャネルが
3クロックサイクル前に有効なデータを受信したかどう
かを指定する。FLAG標識の更新は入力信号に直接関連さ
せられ、INF標識は下記のようにして変えられる。
出力信号を計算するために入力信号と状態値が用いら
れる。2サイクル前に受信したバイトがパケットの内側
であるかまたは外側であるかを1つの出力信号INF(n
−2)が指定する(内側=1、外側=0)。この信号の
値が1であると、供給されたデータバイトが処理装置10
4へ送られる。さもないとこのバイトは捨てられる。他
の2つの出力信号STARTF(n−2)とENDF(n−2)
は、受信したバイトがパケット中の最初のバイトか、最
後のバイトかを、2サイクルの遅れの後で、指示する。
そのような遷移信号は、格納されているパケットのメモ
リ場所を識別するために、パケットを受信する記憶装置
103により典型的に用いられる。出力信号を示すタイミ
ングが第3図に示されている。
パケット識別部204の全体的な動作が第4図にプール
代数関係で示されている。
フラグ検出を行う方法のために、パケットに関連する
信号STARTFとENDFを利用できるまでに2サイクルの遅れ
がある。本発明の好適な実施例においては、装置は同期
させられ、信号STARTF、ENDFおよびINFが次段へ同時に
送られる。したがって、出力レジスタ203を加えること
が好ましい。その結果として第3のバイト遅れが生ず
る。その出力レジスタは、状態の計算中に状態マシンに
おける論理装置の種々の伝播遅れを補償する。
第4図の状態表は状態遷移図を用いることにより簡単
にできる。この図は、種々のバイトパターンが受信され
ている時にパケット識別の論理の流れを理解する助けと
なる。全部で8つの状態が用いられる。それらの状態の
うちの2つがチャネルの可能な正常状態(使用中または
遊び)に対応し、他の状態はチャネル状態における進行
中の変化を示す。状態遷移図が第5図に示されている。
それの解釈は第4表に示す情報を基にしている。
状態遷移図における各状態へ独特の定義が割当てられ
る。状態の数値とそれの記述的な解釈との間に直接の関
係が存在するが、本発明のこの実施例に用いられる実際
の関係は単なる例である。対応する任意の関係を使用で
きる。
状態は下記のように定義できる。
・011 この状態は遊び状態であり(連続するフラグだけが受
信される)、パケットの外側の正常な状態を表す。本発
明のこの実施例においては、状態図に対して初期状態で
あるとも仮定される。
・100 これはパケットの使用中状態または正常な状態であ
る。
・010,001,000, それらは遊び状態から使用中状態への遷移状態であ
る。誤り状態が存在しないとすると(データの2バイト
より小さい)、使用中状態と遊び状態の間に2つの可能
な遷移経路が存在する。第1の経路は位置が合わされて
いないフラグの場合に対応し、第2の経路は位置が合わ
された境界をとる。
1.011−>010−〉100(位置が合わされていない) 2.011−>010−>000−>100(位置が合わされている) 最短パケット長さが2バイトであるという条件に適合
することに失敗すると誤り状態へ遷移させられ、それか
らおそらく遊び状態011へ戻る。
・110、101、111、001、000. それらの状態は使用状態から遊び状態へ、および2バ
イトの最短条件が守られなかった時になる「誤り」状態
(001と110)への規則的な遷移状態である。正常な動作
条件の下においては、使用中状態から遊び状態へ、すな
わち、100−>101−>111−>011、の1つの経路がある
だけである。
誤りの回復を行うことができるやり方を実現すること
が望ましい。典型的な誤り回復は下記の状況で実現でき
る。
データ長が2バイトより短い時に、連続するが、位置
が合っていない2個のフラグの間に挿入された非フラグ
データを無視することにより、連続するが、位置が合っ
ていないフラグを検出する、 フラグ列中で伝送誤りを検出する。
上記誤り状態からの回復に加えて、状態マシンは1つ
の区切りモードで動作できる。すなわち、そのモード
は、1つのフラグが以前のパケットの終わりフラグおよ
び以後のパケットの開始フラグとして機能する場合のモ
ードである。1つの区切りプロトコルを用いる装置にお
ける状態遷移の典型的な例が第6図に示されている。
フラグ検出アーキテクチャは、時分割多重化された
(TDM)リンクインターフェイス、すなわち、内定の時
間間隔でデータを転送するためにデータチャネルが順次
選択されるようなインターフェイスまで延長できる。TD
Mリンクインターフェイスは複数のTDMチャネルを同時に
取扱うことができる。アーキテクチャの主な修正は、状
態レジスタと出力レジスタを含めた全てのレジスタをTD
Mレジスタで交換することである。TDMレジスタは、1つ
のTDMチャネルごとに1つずつ、複数の論理レジスタを
表す。それらのレジスタからデータと状態を検索でき、
かつ現在起動しているチャネルに従って各時間スロット
ごとに格納される。このTDMレジスタは、チャネル割当
てのために任意の時間スロットを指示できるRAMをベー
スとする構造を用いて実現することが好ましい。後で示
すように、高速動作を確実に行うためにパイプライン構
成を用いることもできる。
TDMレジスタの主なタスクは、与えられたチャネルに
関連する時間スロットが順次処理されるようにすること
であるが、それらの時間スロットが受信したデータ流中
で連続して起こらないことがある。したがって、各時間
スロットが終ると、現在のチャネルに関連する各時間ス
ロット情報が格納されて、そのチャネルに属する次の時
間スロットの始めに利用できるようにする。
この機能を実現するTDMレジスタを示すブロック図が
第7図に示されている。TDMレジスタは、各TDMレジスタ
に専用のTDM記憶素子705と、各チャネルに関連するスロ
ットを示すスロットチャネルマップ702との2つの基本
的な要素で構成される。スロットチャネルマップ702は
全てのTDMレジスタにより共用される。
TDMレジスタは、第1図の伝送リンク100を通じてデー
タが送られる各データチャネルに対して、TDMレジスタ
は第2図に示されているフラグ検出器のレジスタ202、2
03、205、206に値を保持する。TDM装置においては、各
チャネルに対するデータが複数ピットユニットで送られ
る。TDMマルチプレクサ101は所定の順序でチャネルを通
り、それぞれのデータユニットを伝送リンクを通じて送
る。新しい各データユニットが受信されると、フラグ検
出器の状態がTDM記憶素子の、前のチャネルのために留
保されているアドレスに格納され、新に受信したデータ
ユニットに対応するチャネルの状態を復旧するために別
の場所がアクセスされる。
TDM記憶素子705は、記憶素子の入力インターフェイス
および出力インターフェイスとして機能する一般的なレ
ジスタ703と704を含む。
TDMチャネルバッファ701は各チャネルに対するエント
リを有する。それの最新の状態と最新のデータ値(すな
わち、第2図のレジスタ202、203、205、206の内容)が
格納される。与えられたTDMチャネルバッファエントリ
の内容が、そのチャネルに属する各時間スロットの終り
に更新される。同様に、各時間スロットの初めに、起動
中のチャネルに対応する情報がTDM記憶素子の出力レジ
スタ704に置かれる。チャネルと時間スロットの間の対
応がスロットチャネルマップ702により与えられる。そ
のマップは、各クロックサイクルにおいて、関連するチ
ャネル番号を発生する。この番号は、記憶素子内の対応
するチャネルに割り当てられたアドレス空間データを書
込み、かつそのアドレス空間からデータを読出すための
アドレスとして用いられる。
高速動作を行えるようにするために、パイプライン構
造を用いて、TDMレジスタのチャネルバッファ装置に対
するアクセス時間の制約を小さくすることができる。TD
Mレジスタにより行われる4つの動作(入力、出力、デ
ータ検索、データ格納)を並列に実行するために予定を
立てることができる。それらの動作は、フラグ検出状態
遷移に対するサイクル時間に対応するサイクルで行われ
る。データと状態は対応するサイクルが始まる前にバッ
ファからフェッチされ、そのサイクルが終わった後で書
き戻され、入力動作と出力動作だけがサイクル自体の間
に行われる。各時間スロットに対する全ての動作、とく
にバッファへのデータの書込みとバッファからのデータ
の読出し、が3つのクロックサイクルにわたって行われ
る。パイプライン構成がないと、各読出し動作と各書込
み動作が1クロックサイクル内で行われる(第8図に示
すように)。そのような要求によりチャネルバッファの
アクセス時間要求が十分に長くなる。すなわち、等しい
性能を発揮させるためにはより高速のチャネルバッファ
を必要とする。
TDMレジスタの全体のパイプライン構成が第9図に示
されているタイミング図で示されている。読出し動作ま
たは書込み動作はクロックサイクルの半分以内で実行で
きると仮定する。CLOCKは各サイクルの始まった時に発
生されるタイミング信号を示す。INとOUTはTDMレジスタ
の入力ポートと出力ポートにそれぞれ存在する信号を示
す。BUFFER(WRITE、READ)はTDMチャネルバッファ701
におけるデータ格納動作とデータ検索動作を示す。同期
装置の実施例のために、各サイクルにおける入力信号と
出力信号は同じチャネルに対応する。他方、同じサイク
ル以内で行われるREAD動作とWRITE動作は同じチャネル
に属する必要はない。というのはそれの動作は種々の時
間スロットに組合わされるからである。
第10図のタイミング図はパイプライン構成のバッファ
動作の例である。この例に対しては、装置は8個の時間
スロットと4つのチャネル(A、B、C、D)だけ存在
すると仮定する。それらのチャネルには下記のように時
間スロットが割り当てられる。
第5表 チャネル 割当てられた時間スロット A 1、4、5 B 2 C 3、6 D 7、8 それらの時間スロットはデータのユニットに対応す
る。本発明のこの実施例においては、そのデータのユニ
ットは1バイトであると仮定する。
第10図に示すように、時間スロット1の開始の前の半
サイクル中に、チャネルAに関連するエントリィの内容
がTDMチャネルバッファ701から検索されることが開始さ
れ、出力レジスタ704へ送られる(第7図参照)。時間
スロット1の前半部分の開始時にデータを利用でき、デ
ータの入力は時間スロット1の後半部分中に起るだけで
ある。この遅れは計算と、状態情報およびデータ情報が
状態マシンへ送られた後で新しいデータ値を得るために
用いられる伝播時間とに対応する。入力データは入力レ
ジスタ703において受信され、時間スロット2の前半部
分中にTDMチャネルバッファへ書き戻される。類似の手
続きが時間スロット4に続くが、時間スロット5は特殊
な考察を要する。これは、時間スロット4と5が同じチ
ャネルに属する連続する時間スロットである事実により
ひき起される。そのような状況においては、チャネル状
態は時間スロット4が終った時に得たチャネルの状態と
データは、時間スロット5が始まった時に用意ができて
いるように、前もってフェッチすることができない。と
いうのは、その時にはTDMチャネルバッファ701にそれが
ちょうど書き戻されているからである。このタイミング
問題は、入力レジスタ703と出力レジスタ704の間に、連
続する時間スロットの場合に用いる直接接続を行うこと
により解決される。この例においては、スロット4の後
半のサイクル中に入力端子において次の状態とデータを
利用できるようになった時に、この情報は入力レジスタ
へ送られるばかりでなく、マルチプレクサ704Aへも送ら
れる。マルチプレクサ704Aは第7図に出力レジスタ704
の一部として示されている。これは、情報(以前に格納
された状態とデータ)がチャネルバッファからフェッチ
されるのと同時に起る。セットされた時間スロットチャ
ネルマップ702により発生された制御信号(CONSEC)
が、入力から直接来た信号を出力レジスタ704において
選択すべきことを指定する。この結果として更新された
正しい状態とデータ値が時間スロット5の初めにフラグ
検出器102へ送られる。
以上、本発明を実施例について説明したが、特許請求
の範囲への要旨範囲内で変更して上記のように実施でき
ることを意図するものである。
【図面の簡単な説明】
第1図は本発明に従ってフラグ識別機能をサポートでき
る通信装置のブロック図、第2図は第1図に示すフラグ
検出器の一例のブロック図、第3図は第2図に示されて
いるフラグ検出器のパケット識別部により発生される出
力信号のタイミング図、第4図は第2図に示されている
フラッグ検出器のパケット識別部中の状態と入力および
出力の間の関係を要約して示す図表、第5図は第2図に
示されているフラグ検出器のパケット識別部についての
状態遷移図、第6図は1つの区切りによりパケットの境
界が示されている装置のタイミング図、第7図はTDMレ
ジスタのブロック図、第8図は第7図に示されているTD
Mレジスタの1サイクル動作を示すタイミング図、第9
図は第7図に示されているTDMレジスタのパイプライン
動作を示すタイミング図、第10図はTDMレジスタの動作
を示すタイミング図である。 101……時分割マルチプレクサ、102……フラグ検出器、 103……記憶要素、104……処理要素、201……フラグ検
出器、202、203、205、206……レジスタ、204……パケ
ット識別部、701……TDMチャネルバッファ、702……ス
ロットチャネルマップ、704……出力レジスタ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロシュ、ゲラン アメリカ合衆国ニューヨーク州、ヨークタ ウン、ハイツ、4エイチ、シーニック、ビ ュー、ローシャンボー、ドライブ(番地な し) (56)参考文献 欧州特許323222(EP,A)

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】パケットが所定複数個のデータビット毎に
    区切られるデータ流中で所定のビットパターンにより識
    別されるパケット境界を検出する方法において、 a)第1の複数のデータビットを受信する過程と、 b)前記所定のビットパターンの一部をなす第1の部分
    が含まれているかを前記第1の複数のデータビットにつ
    いて検査する過程と、 c)前記第1の複数のデータビットに続く第2の複数の
    データビットを受信する過程と、 d)前記所定のビットパターンの残部をなす第2の部分
    が含まれているかを前記第2の複数のデータビットにつ
    いて検査する過程と、 e)前記所定のビットパターンの第1の部分の場所と、
    前記所定のビットパターンの第2の部分の場所とを基に
    してパケット境界を決定する過程と、 f)前記パケット境界と前記複数個のデータビットの境
    界とのオフセットを表す値を生成する過程と、 を備えた、デジタルデータ流中のパケットの境界を検出
    する方法。
  2. 【請求項2】パケット境界がデータ流中でパケットを区
    切り、バイト境界がパケット中で所定数の連続データビ
    ットの相次ぐ群を論理的に区切っているデータ流におい
    て、パケット境界とバイト境界との間の関係を決定する
    方法であって、 a)データ流中の連続データビットの第1の群から前記
    パケット境界を決定するフラグの一部をなす第1の部分
    を検出する過程と、 b)前記データビットの第1の群に続く第2の群から前
    記フラグの残部をなす第2の部分を検出する過程と、 c)前記第2の群中において前記第2の部分をなすビッ
    トの数を求めることにより、前記パケット境界とバイト
    境界との間のオフセットを決定する過程と、 を備えるパケット境界とバイト境界との間の関係を決定
    する方法。
  3. 【請求項3】パケットが所定複数個のデータビット毎に
    区切られるデータ流中で所定のビットパターンにより識
    別されるパケット境界を検出する装置において、 a)前記複数個のデータビットの群を順次受信する手段
    と、 b)前記所定のビットパターンの一部をなす第1の部分
    が含まれているかを前記第1の複数のデータビットにつ
    いて検査する手段と、 c)前記所定のビットパターンの残部をなす第2の部分
    が含まれているかを前記第2の複数のデータビットにつ
    いて検査する手段と、 d)前記所定のビットパターンの第1の部分の場所と、
    前記所定のビットパターンの第2の部分の場所とを基に
    してパケット境界を決定する手段と、 e)前記パケット境界と前記複数個のデータビットの境
    界とのオフセットを表す値を生成する手段と、 を備えた、デジタルデータ流中のパケットの境界を検出
    する装置。
  4. 【請求項4】パケット境界がデータ流中でパケットを区
    切り、バイト境界がパケット中で所定数の連続データビ
    ットの相次ぐ群を論理的に区切っているデータ流におい
    て、パケット境界とバイト境界との間の関係を決定する
    装置であって、 a)データ流中の連続データビットの第1の群から前記
    パケット境界を決定するフラグの一部をなす第1の部分
    を検出する手段と、 b)前記データビットの第1の群に続く第2の群から前
    記フラグの残部をなす第2の部分を検出する手段と、 c)前記第2の群中において前記第2の部分をなすビッ
    トの数を求めることにより、前記パケット境界とバイト
    境界との間のオフセットを決定する手段と、 を備えるパケット境界とバイト境界との間の関係を決定
    する装置。
JP2216472A 1989-09-18 1990-08-16 デジタルデータ流中のパケットの境界を検出する方法および装置 Expired - Lifetime JPH0817403B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US408984 1982-08-17
US07/408,984 US4974223A (en) 1989-09-18 1989-09-18 Parallel architecture for high speed flag detection and packet identification

Publications (2)

Publication Number Publication Date
JPH03117250A JPH03117250A (ja) 1991-05-20
JPH0817403B2 true JPH0817403B2 (ja) 1996-02-21

Family

ID=23618579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2216472A Expired - Lifetime JPH0817403B2 (ja) 1989-09-18 1990-08-16 デジタルデータ流中のパケットの境界を検出する方法および装置

Country Status (4)

Country Link
US (1) US4974223A (ja)
EP (1) EP0419805B1 (ja)
JP (1) JPH0817403B2 (ja)
DE (1) DE69023447T2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2232857B (en) * 1989-06-13 1993-09-01 Research Machines Ltd A flag counter circuit
US5189672A (en) * 1989-10-12 1993-02-23 Alcatel Cit Device for regulating the throughput of virtual circuits on an asynchronous time-division multiplex transmission channel
US5428614A (en) * 1990-09-26 1995-06-27 Shaver; Christopher J. Expected value data framer and method
US5455831A (en) * 1992-02-20 1995-10-03 International Business Machines Corporation Frame group transmission and reception for parallel/serial buses
US5267240A (en) * 1992-02-20 1993-11-30 International Business Machines Corporation Frame-group transmission and reception for parallel/serial buses
SE515101C2 (sv) * 1992-05-11 2001-06-11 Ericsson Telefon Ab L M Styrning vid utväxling av datapaket i nät
AU665072B2 (en) * 1992-05-21 1995-12-14 Alcatel N.V. TDM synchronous state machine
EP0602806B1 (en) * 1992-12-18 2001-07-04 Advanced Micro Devices, Inc. High-level data link controller (HDLC) receiver
FR2706105B1 (fr) * 1993-06-01 1995-08-11 Transpac Procédé et système de transmission d'informations auxiliaires sur une liaison bidirectionnelle de transmission de données numériques HDLC, et leur application au contrôle d'état de la liaison.
US5640398A (en) * 1995-11-01 1997-06-17 Pmc-Sierra, Inc. State machine architecture for concurrent processing of multiplexed data streams
US5978865A (en) * 1997-02-04 1999-11-02 Advanced Micro Devices, Inc. System for performing DMA transfers where an interrupt request signal is generated based on the value of the last of a plurality of data bits transmitted
US6519472B1 (en) * 1997-03-12 2003-02-11 Terence Brennan Trunked radio monitoring system
US6385670B1 (en) * 1998-06-01 2002-05-07 Advanced Micro Devices, Inc. Data compression or decompressions during DMA transfer between a source and a destination by independently controlling the incrementing of a source and a destination address registers
US6463070B1 (en) * 1999-08-27 2002-10-08 Tachyon, Inc. System and method for clock correlated data flow in a multi-processor communication system
US6594329B1 (en) * 1999-11-01 2003-07-15 Intel Corporation Elastic buffer
GB2386284A (en) * 2002-03-05 2003-09-10 Pa Consulting Services Packet data communications networks
US7000048B2 (en) * 2003-12-18 2006-02-14 Intel Corporation Apparatus and method for parallel processing of network data on a single processing thread
US20070064677A1 (en) * 2005-09-12 2007-03-22 Innomedia Pte Ltd. Packet media gateway with a secondary PSTN connection and method for time slot switching
US7924938B2 (en) 2007-09-24 2011-04-12 Wally Haas Context-sensitive overhead processor
US9575916B2 (en) 2014-01-06 2017-02-21 International Business Machines Corporation Apparatus and method for identifying performance bottlenecks in pipeline parallel processing environment
US9424160B2 (en) 2014-03-18 2016-08-23 International Business Machines Corporation Detection of data flow bottlenecks and disruptions based on operator timing profiles in a parallel processing environment
US9501377B2 (en) 2014-03-18 2016-11-22 International Business Machines Corporation Generating and implementing data integration job execution design recommendations

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2475827B1 (fr) * 1980-02-13 1987-05-29 Dauphin Jean Louis Systeme de commutation numerique a division du temps pour voies mic vehiculant la parole et des donnees en mode-paquet
FR2498855B1 (fr) * 1981-01-23 1988-08-05 Dauphin Jean Louis Systeme de commutation numerique a division du temps de canaux en mode-circuit et en mode-paquet
FR2535135B1 (fr) * 1982-10-21 1988-03-25 Servel Michel Systeme de synchronisation de multiplex numeriques de paquets
US4577314A (en) * 1983-03-31 1986-03-18 At&T Bell Laboratories Digital multi-customer data interface
JPS60152143A (ja) * 1984-01-20 1985-08-10 Fuji Xerox Co Ltd システムタイミング同期方式
JPS612435A (ja) * 1984-06-14 1986-01-08 Nec Corp 受信位置予測装置
CA1254981A (en) * 1986-02-18 1989-05-30 Lester Kirkland Communications switching system
DE3674196D1 (de) * 1986-04-17 1990-10-18 Ibm Leistungsfaehiges integriertes uebertragungsverfahren fuer daten und nichtkodierte information.
DE3674200D1 (de) * 1986-04-30 1990-10-18 Ibm Nichtkodierte information und begleitdaten-vermittlungsvorrichtung.
NZ220548A (en) * 1986-06-18 1990-05-28 Fujitsu Ltd Tdm frame synchronising circuit
US4780870A (en) * 1986-09-05 1988-10-25 American Telephone And Telegraph Company, At&T Bell Laboratories Packet switch
US4764919A (en) * 1986-09-05 1988-08-16 American Telephone And Telegraph Company, At&T Bell Laboratories Virtual PBX call processing method
JPH0728280B2 (ja) * 1986-10-17 1995-03-29 富士通株式会社 多重マルチフレ−ム同期検出回路
US4727558A (en) * 1987-02-12 1988-02-23 Dallas Semiconductor Corporation Method and apparatus for extracting a predetermined bit pattern from a serial bit stream
US4768192A (en) * 1987-04-01 1988-08-30 General Signal Corp. Frame synchronization detection system for time division multiplexed (TDM) digital signals
EP0323222A3 (en) * 1987-12-25 1990-10-17 Nec Corporation System for sending and receiving a hdlc data frame on a time-division multiplex transmission path

Also Published As

Publication number Publication date
EP0419805B1 (en) 1995-11-08
EP0419805A2 (en) 1991-04-03
JPH03117250A (ja) 1991-05-20
DE69023447T2 (de) 1996-06-20
US4974223A (en) 1990-11-27
DE69023447D1 (de) 1995-12-14
EP0419805A3 (en) 1991-10-23

Similar Documents

Publication Publication Date Title
JPH0817403B2 (ja) デジタルデータ流中のパケットの境界を検出する方法および装置
US4577314A (en) Digital multi-customer data interface
CA1266906A (en) Combined circuit switch and packet switching system
US5072449A (en) Packet framing using cyclic redundancy checking
CA1280217C (en) Method and apparatus for utilization of dual latency stations for performance improvement of token ring networks
EP0582537A2 (en) Transmission of high-priority, real-time traffic on low-speed communications links
JPH0337360B2 (ja)
JPS6359294B2 (ja)
GB1561369A (en) Binary data receiver
EP0405760B1 (en) System for synchronizing data frame groups in a serial bit stream
US20030219040A1 (en) Apparatus, method and storage medium for carrying out deskew among multiple lanes for use in division transmission of large-capacity data
JPH02226943A (ja) ハイレベルデータリンク制御手順フレームを解析し且つ処理するためのシステム
JP2873044B2 (ja) 非同期時分割通信網における信号メッセージの処理装置
US4567595A (en) Multiline error detection circuit
JPH02226926A (ja) 多重チャネルpcmタイプのリング上にhdlcフレームを伝送するためのシステム
US4510594A (en) Loop-around testing facilities for a multiline protocol controller
EP0372458A2 (en) Synchronous multiplex transmission apparatus
JPH0879230A (ja) フレーム同期信号のフレームの開始位置情報を伝送しかつ検出する伝送装置
US5517533A (en) Parallel implementation of run length coding apparatus and method
JPWO2004064351A1 (ja) 非同期伝送方法及びその回路
US5594728A (en) Realtime addressing for high speed serial bit stream
KR100231286B1 (ko) 패킷 라우터장치
EP0344915B1 (en) Apparatus and method for processing bit streams
US8315348B2 (en) Clock extraction circuit for use in a linearly expandable broadcast router
SU1347083A1 (ru) Устройство дл сопр жени ЭВМ с синхронными каналами передачи данных