3.

HDLC (High-level Data Link Control) 完全ガイド

編集
この記事の要点
  • HDLC (High-level Data Link Control) は ISO 標準のデータリンク層プロトコル(ISO/IEC 13239)
  • IBM の SDLC をベースに 1979 年 ISO 標準化。PPP / Frame Relay / X.25 の祖先
  • フレーム形式: Flag (0x7E) / Address / Control / Information / FCS (CRC-16) / Flag
  • フレーム種別: I-Frame(情報)/ S-Frame(監視)/ U-Frame(非番号制御)
  • 現代では Cisco HDLC(独自拡張)が WAN 専用線で使われるが、PPP が標準実装として主流

HDLC とは

HDLC (High-level Data Link Control) は、ISO によって標準化されたデータリンク層(OSI 第 2 層)のプロトコルです。1979 年に ISO 3309 / ISO 4335 として標準化され、現在は ISO/IEC 13239:2002 として規格化されています。

IBM が 1970 年代に開発した SDLC (Synchronous Data Link Control) をベースに、メーカー中立な標準として作られたのが HDLC で、後継として PPP, X.25 LAPB, ISDN LAPD, Frame Relay LAPF などが派生しました。

歴史と派生プロトコル

プロトコル用途
1975SDLC (IBM)SNA ネットワーク
1979HDLC (ISO)メーカー中立データリンク
1980LAPB (X.25)パケット交換 WAN
1988LAPD (ISDN)ISDN D チャネル
1990LAPF (Frame Relay)Frame Relay WAN
1994PPP (RFC 1661)HDLC ベースの汎用ダイヤルアップ / 専用線
1994Cisco HDLCCisco WAN 専用線(多重プロトコル拡張)

フレーム形式

+--------+---------+---------+-----------------+--------+--------+
| Flag   | Address | Control |   Information   |  FCS   | Flag   |
| 8 bit  | 8 / 16  | 8 / 16  |  可変長         | 16/32  | 8 bit  |
+--------+---------+---------+-----------------+--------+--------+
| 01111110 |       |         |                 |        |01111110|
| (0x7E) |         |         |                 |        | (0x7E) |
+--------+---------+---------+-----------------+--------+--------+

- Flag      : フレーム境界 (0x7E = 01111110)
- Address   : 宛先アドレス
- Control   : フレーム種別 (I/S/U)
- Information: ペイロード (上位層データ)
- FCS       : Frame Check Sequence (CRC-16 / CRC-CCITT)
- Flag      : フレーム末尾

ビットスタッフィング

Flag (01111110) はフレーム境界専用なので、ペイロード内に同じビット列が現れないよう ビットスタッフィングを行います:

  • 送信側: 連続 5 つの 1 のあとに 0 を挿入
  • 受信側: 連続 5 つの 1 のあとの 0 を削除
  • 例: 011111 0 11 → 元データ 0111111 1

フレーム種別 (I / S / U)

種別正式名用途Control 先頭ビット
I-FrameInformation Frameユーザーデータ伝送0
S-FrameSupervisory FrameACK / NAK / フロー制御10
U-FrameUnnumbered Frameリンク確立 / 切断 / リセット11

I-Frame の Control フィールド

8 bit Control (基本形式):
+---+---+---+---+---+---+---+---+
| 0 | N(S) (送信) | P/F | N(R) (受信) |
+---+---+---+---+---+---+---+---+

- N(S) : 送信シーケンス番号 (3 bit, 0-7)
- P/F  : Poll/Final bit
- N(R) : 次に期待する受信シーケンス番号 (累積 ACK)

S-Frame の種類

S-Frame意味
RR (Receive Ready)受信可能、N(R) で ACK
RNR (Receive Not Ready)一時停止要求
REJ (Reject)NAK、N(R) から再送要求
SREJ (Selective Reject)選択的再送要求

U-Frame の種類

U-Frame意味
SABM / SABME非同期平衡モード設定(リンク確立)
DISC切断要求
UA受信確認 (Unnumbered ACK)
FRMRフレームリジェクト(プロトコルエラー)
UI非番号情報フレーム(コネクションレス)

動作モード

  • NRM (Normal Response Mode): プライマリ - セカンダリ型。マルチドロップ専用線
  • ARM (Asynchronous Response Mode): セカンダリ側自律送信可。ほぼ使われない
  • ABM (Asynchronous Balanced Mode): ★ point-to-point 双方向対等。最も一般的。LAPB / PPP / Cisco HDLC が採用

HDLC vs PPP の歴史

PPP は基本的に HDLC のフレーム形式を流用しつつ、上位層プロトコルの識別(Protocol フィールド)と認証 / 設定ネゴシエーション(LCP / NCP)を追加したものです。

項目HDLC (純粋)Cisco HDLCPPP
標準ISO 13239Cisco 独自RFC 1661
マルチプロトコル×○(独自 Type)○(NCP)
認証××○(PAP / CHAP)
圧縮××○(CCP)
異機種相互接続Cisco-Cisco のみ

つまり Cisco - Cisco 間は HDLC、Cisco - 他社間は PPP が定石でした。

X.25 / Frame Relay / ATM との比較

プロトコル速度位置づけ
HDLCL2〜数 Mbps専用線基盤
X.25 (LAPB)L2/L3〜2 Mbps1980 年代パケット交換
Frame Relay (LAPF)L2〜45 Mbps1990 年代企業 WAN 主流
ATML2 (cell)〜622 Mbps〜10 Gbps1990-2000 年代基幹網
MPLSL2.510 Gbps〜現代の WAN / SD-WAN
Ethernet over MPLSL210/100 Gbps現代主流

Cisco ルータでの HDLC 設定例

Router(config)# interface Serial0/0/0
Router(config-if)# encapsulation hdlc
Router(config-if)# ip address 192.168.1.1 255.255.255.252
Router(config-if)# bandwidth 1544
Router(config-if)# no shutdown

! 確認
Router# show interfaces Serial0/0/0
Serial0/0/0 is up, line protocol is up
  Hardware is GT96K Serial
  Internet address is 192.168.1.1/30
  MTU 1500 bytes, BW 1544 Kbit/sec
  Encapsulation HDLC, loopback not set
  Keepalive set (10 sec)

! Cisco HDLC は keepalive で対向疎通確認
! 対向が他社ルータなら encapsulation ppp に変更

FCS と CRC

HDLC の FCS (Frame Check Sequence) は通常 CRC-16 (CRC-CCITT、多項式 x^16+x^12+x^5+1) を使い、ハードウェアで高速計算されます。高速回線では CRC-32 も使用。

現代における位置づけ

  • WAN 専用線: 一部のレガシー企業ネットワークで Cisco HDLC が残る
  • ISDN: D チャネルで LAPD(HDLC 派生)が現役(一部国で)
  • SDH / SONET: GFP-F フレーミングが HDLC 風
  • 通信機器内部: 制御プレーンで HDLC 派生プロトコルが使われることが多い
  • 新規構築: Ethernet / MPLS / SD-WAN が主流。HDLC は教科書知識

FAQ

Q: HDLC は今でも使われている?
A: 新規構築では PPP / Ethernet が主流。ただし古い専用線網や教科書知識として残ります。情報処理技術者試験ではよく出題されます。

Q: Cisco HDLC と ISO HDLC は互換性がある?
A: ありません。Cisco HDLC は独自に Type フィールドを追加してマルチプロトコル化しているため、他社機器とは PPP で接続する必要があります。

Q: なぜ PPP が標準になった?
A: HDLC は単一プロトコル前提だったのに対し、PPP は IP / IPX / AppleTalk 等の多重化、認証、圧縮を組み込んだため、ダイヤルアップ時代に広く普及しました。

Q: SDLC と HDLC の違いは?
A: SDLC は IBM 独自で SNA 専用。HDLC は ISO 標準でマルチベンダー対応。フレーム形式はほぼ同じ。

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. Ethernet
  2. PPPoE
  3. HDLC

最近更新/作成されたページ