本稿ではIPA試験で必要とされる知識をまとめます。
HDLC手順とは
HDLC手順はHigh-level Data Link Controlの略称で,伝送効率を高めるために相手の応答を待たずにフレーム単位で連続して通信を行うことができる方式です。誤り検知にCRC(Cyclic Redundancy Check:巡回冗長検査)を利用するため信頼性も担保していますが,CRCはあくまでも誤り検知だけで誤り訂正の機能は有さないことに注意しましょう。
背景
従来から利用されているクライアント・サーバ間の伝送制御手順として,ベーシック手順(基本形データ伝送制御手順)が挙げられます。ベーシック手順はSYN符号01101000
でブロックの切れ目を識別して文字(キャラクタ)ごとにデータを送受信する手順であるため,伝送効率が悪いことが指摘されていました。さらに誤り検知ではパリティチェックを利用するため2ビット以上の誤りを検知できず,信頼性に欠けるという問題点もベーシック手順にはありました。また,原理的には文字コード以外のデータを送受信できませんでした。
HDLC手順はハイレベルデータリンク手順とも言われ,ベーシック手順の伝送効率の悪さおよび信頼性の低さを克服しようとするものです。フラグシーケンス01111110
を用いてフレームの切れ目を識別して1が5回続いたら0を挿入するというルールが定められているため,原理的に文字コード以外のデータを送受信することが可能になりました。誤り検知ではCRCを利用するため,連続したビットの誤りであるバースト誤りを検出することができます。
HDLC手順のフレーム構成
HDLC手順のフレーム構成は下図の通りです。
特徴は01111110
というフラグシーケンスがフレームの区切りを表すという点です。フレーム内部では1が6つ以上連続することは許されないため,5つ以上連続した場合には直後に0を挿入する必要があります。これに伴い受信側でも1が5つ連続した場合には,その直後の0は削除しなければならないことになっています。ゆえに,PPPやHDLCのフレームフォーマットでは0の挿入や削除でCPUに大きな負荷をかけてしまうというデメリットがあります。
コメント