要約

  • 2018年12月27日早朝、CenturyLinkのデンバー拠点にあるスイッチングモジュールが4個の不正な管理パケットを生成した。FCCによれば、CenturyLinkと機器メーカーのInfineraは、パケットがどのように、なぜ生成されたのかを特定できなかった。
  • パケットにはブロードキャスト宛先、有効なヘッダーとチェックサム、失効条件がないという性質があり、サイズも64バイトを超えていた。そのため管理チャネルの限定的なフィルターを通過し、各ノードが再送を繰り返して、処理能力を奪い同期を崩すフィードバックループが生じた。
  • 独自のノード間管理チャネルは初期設定で有効だった。CenturyLinkはその存在を知っていたが、設定も利用もしていなかった。「未使用」は管理上の意図を示すだけで、稼働中のネットワークにおける無効化を意味しなかった。
  • CenturyLinkは12,100,108件の通話が遮断または劣化したと推計した。FCCが別に示したIP・DSLの利用者集団や、連邦・ワシントン州記録の911影響は定義と対象が重複するため、合算して架空の総数を作ってはならない。
  • 連邦調査は$500,000の同意判決による和解で終結したが、委員会による適法・違法の法的認定ではない。ワシントン州公益事業運輸委員会が後に公表した$1,315,000の州命令は、別の管轄と事実関係に属する。

4個のパケットが全米規模の結果を生んだ

事故は2018年12月27日早朝、デンバーにあるCenturyLinkの光ファイバー伝送ノードで始まった。FCCの技術報告書によると、スイッチングモジュールが自発的に4個の不正な管理パケットを生成した。ここで分かっている事実と分かっていない事実を分ける必要がある。機器で異常が起きたことは記録に裏付けられているが、CenturyLinkとInfineraは、モジュールがパケットを生成した正確な仕組みや理由を突き止められなかった。公開資料から内部欠陥を断定することはできない。

4個のパケットは、危険な属性を同時に備えていた。宛先はブロードキャストで、ヘッダーとチェックサムは有効、失効条件はなく、サイズは64バイトを上回っていた。管理チャネルにはサイズに基づくフィルターがあったものの、対象パケットはそのしきい値を超えていたため通過した。有効なヘッダーとチェックサムは形式上の正しさを装い、失効条件の欠如は、一度入ったパケットが循環を続ける余地を作った。

したがって「4個しかなかった」という見方は安全性を示さない。発生地点での個数と、ネットワークが複製を始めた後の個数は別物である。パケットを受け取った各ノードは、送信元を含むすべての隣接ノードへ再びブロードキャストした。隣接ノードも同じ動作を行った。最初の4個は、自己強化するループへの入力となった。

正当な運用価値のない管理トラフィックが処理資源を消費し、内部同期を乱した。同期を失ったノードは、顧客トラフィックを経路制御し、伝送する能力も失った。公開記録上、この仕組みはBGPリークでも、経路ハイジャックでも、DNS障害でも、サイバー攻撃でもない。独自のノード間管理チャネルと、それに依存する伝送ノードの挙動が組み合わさった障害だった。

CenturyLinkの影響を受けた伝送網では、複数州にまたがる障害が約37時間続いた。FCCの技術記録は、音声、IP、伝送サービスへの全米規模の影響を記述している。他の通信事業者も自社サービス経路の一部としてCenturyLinkの伝送設備を利用していたため、一社の内部障害が複数事業者の利用者側に現れ、緊急サービスの依存関係にも波及した。

規模の大きさに目を奪われると、制御可能だった連鎖を見失う。モジュールがパケットを生成し、チャネルが受け入れ、ノードが再送し、ループが処理能力を消費し、同期が失われ、経路制御と伝送が止まった。この一つ一つに、局所的な機器異常を全国的な通信障害へ拡大させないための制御点があり得た。

「未使用」でも稼働ネットワークの一部だった

FCC報告書でもっとも重要な事実は、単純なものかもしれない。独自のノード間管理チャネルは初期設定で有効だった。CenturyLinkはチャネルの存在を知っていたが、設定も利用もしていなかった。この記述が矛盾して見えるのは、「未使用」と「無効」を同じ状態と考える場合だけである。事故は両者が違うことを示した。

管理台帳は、ある機能に用途がないと記載できる。設計図からその経路を省くことも、手順書に呼び出し方法を書かないこともできる。しかし、コードと機器が有効な状態なら、トラフィック到来時の挙動は文書では変わらない。チャネルはパケットを受け入れ、高速再経路化の挙動を実行した。稼働ネットワークの現実では、障害を広げるだけの活動性を保っていた。

ここにインフラ説明責任の中心がある。文書は意図の証拠であり、設定と観測された挙動は運用状態の証拠である。両者が食い違えば、パケットは稼働状態に従う。台帳のラベルを参照することはない。

同じ問題は多くのネットワークに潜む。役割を終えたレガシーサービスが有効なまま残る。通常使わない制御機能が、変更する積極的な理由がないために何度も更新をまたいで生き残る。正規のトラフィックがないはずのチャネルは、通常監視の対象から外されやすい。その無関心が危険を増すこともある。正常時の基準がない経路では、異常な流量が別の機能を壊すまで見えないからだ。

機能を無効化したという記録だけでは不十分である。命令が全対象機器に届いたか、再起動や交換後も有効か、初期設定で復活しないかを確かめる必要がある。ハードウェアとソフトウェアの世代が混在すれば、同じ名称の制御でも実装が異なる。予備ノードの投入やベンダー更新で危険な既定値が戻る可能性もある。継続的な観測証拠は、一度きりの是正宣言より強い。

この障害が突き付ける問いは具体的だ。事故前に、どの試験なら、どのノードもこの管理チャネルで失効しないトラフィックをブロードキャストできないと証明できただろうか。答えが「使う予定がなかった」だけなら、その制御は稼働ネットワークに届いていなかった。

形式上の有効性は運用上の安全性ではない

管理チャネルのフィルターは、一定サイズ以下のトラフィックを拒否するものだった。問題のパケットは64バイトより大きく、通過した。ヘッダーとチェックサムも有効だった。これらは一部の表面的な条件を検査するにすぎず、送信が許可されているか、拡散が有限か、安全に処理できるかを証明しない。

チェックサムは、伝送中に内容が偶発的に変わっていないことを示せる。しかし、送信元がそのパケットを生成すべきだったか、全受信ノードが処理すべきか、再送が必ず終わるかは分からない。構文上正しいヘッダーが運用意図について語ることはさらに少ない。この事故では、パケット形式の妥当性とネットワーク挙動の破壊性が同時に存在した。

失効条件がなかったことは特に重大である。繰り返し転送される流量には、寿命を制限する仕組みが要る。一般的な転送では、ホップ上限などが同じトラフィックの永久循環を防ぐ。FCCが記した管理パケットには、この故障モードを止める有効な同等策がなかった。フィードバックループが始まると、内部に自然な終点が存在しなかった。

ブロードキャスト動作も危険を広げた。点対点の管理通信ならメッセージは想定相手に限られる。ブロードキャスト宛先は、接続する全ノードを参加させる。各受信者がさらに全隣接ノードへ送る設計では、増幅は仕組みに組み込まれている。厳格な受入条件、流量制限、失効条件がなければ、その性質が不正トラフィックの増幅器になる。

だからといって、サイズのしきい値を一つ変えれば十分という教訓ではない。別のしきい値は今回の4個を止めても、別の有効らしいパターンを通すかもしれない。持続的な制御は、送信元の認証、許容するメッセージ種別、最大流量、複製範囲、寿命、同期を失わずに破棄できる条件、顧客サービス用の処理能力との分離を組み合わせて考える。

保証の焦点は、前回と同じ特徴を検知することではなく、失敗を封じ込めることにある。次の異常管理トラフィックがどんな形であっても、経路制御、伝送、復旧に必要な資源を奪えない状態を作ることが目的である。

再送が自己増幅型の障害へ変わった

この障害は、4個のパケットがデンバーから地図上を移動しただけではない。各ノードの反応が、すでに過負荷を生む入力をさらに作るフィードバックシステムだった。負荷が増えるほど同期が悪化し、同期が悪化するほど経路制御と伝送能力が失われた。遠隔可視性も消え、診断と制御がより難しくなった。

その違いはレジリエンステストに直結する。通常の部品試験は、一台の装置が一つの不正入力に安全に対処できるかを問う。ネットワーク試験は、隣接装置がどう反応するか、その反応が元の装置へ戻るか、全体の挙動が収束するかまで問わなければならない。単体で正しく動く装置も、群として接続されると危険な増幅に参加し得る。

高速再経路化は本来、サービスを維持するためにある。ある経路や相手が失われても、管理トラフィックを別経路で運べる。しかし、トラフィックそのものが故障なら、速度と到達性は保護動作を伝播動作へ変える。一つの利用不能経路を避ける設計が、全利用可能経路に同じ危険な入力を運ばせることがある。

事業者は、切替が成功する場合だけでなく、望ましくない挙動も試験すべきである。予期しないブロードキャストを止めるか、重複を抑えるか、直前に送った隣接ノードから戻る同一パケットを識別するか、ストーム中も時刻・同期・管理用の処理能力を残せるか、ある地域の故障を別地域が自動的に越えない境界があるかを確認する必要がある。

図面は地域、ノード、回線を示しても、同一管理ドメインが全地域をまたぐかを示さないことがある。設定表は流量制限を列挙しても、持続する異常トラフィック下の挙動を証明しない。机上演習は遠隔アクセスが残ると仮定しがちだが、そのアクセス自体が試験対象の基盤に乗っている場合がある。

FCC記録が示す基準はより厳しい。ネットワークが実際に広げる障害、実際に枯渇させる資源、劣化中にも残る制御経路で評価する。継続性とは図面上の冗長回線数ではない。接続されたシステムが悪い状態を封じ込め、重要トラフィックを運び続けられるという観測結果である。

復旧手段も同じ障害範囲に入った

CenturyLinkが重大事象を認識したのは、12月27日午前3時56分(米東部標準時)、顧客からの問い合わせを受けた後だった。その時点では過負荷ノードに遠隔接続できず、技術者を現地へ派遣して直接操作する必要があった。通常ならネットワークを観察し制御する仕組みが、ネットワークとともに失われた。

複雑な基盤で繰り返される弱点がここにある。復旧面が本番網に依存しているのに、独立しているかのように扱われる。平常時の故障なら遠隔管理は便利だが、管理ストームでは顧客トラフィックと同じ処理能力、回線、同期に依存することがある。アクセス経路が依存関係を共有すれば、サービスと復旧手段を同時に失う。

現地派遣は復旧時計の性質を変える。対象拠点を特定し、安全に移動し、入室し、現地状態を把握し、別拠点のチームと調整しなければならない。復旧時間はコマンドを作る速さだけでは決まらず、距離、拠点への到達性、ノード数が事故の一部になる。

デンバーのスイッチングモジュールは27日午後9時02分に特定され、撤去された。これで新しいパケットの発生元は止まったが、すでに循環していたパケットは消えず、ノードは複製を続けた。「故障機器を外した」ことと「ネットワークが復旧した」ことは、分散システムの挙動によって別の時点になった。

技術者はその後、ノードが対象パケットを確認応答する方法を変え、独自管理チャネルを無効化した。28日午前5時07分までにネットワークの大部分が正常化し、午前11時30分に遠隔可視性が戻った。同日午後11時36分までに全影響ノードが復旧した。FCCは、バックボーンが29日午後0時01分に安定したとし、影響サービスでは残作業が続いたと記している。

これらは別々の節目であり、一つの「復旧時刻」に圧縮してはならない。新たな障害入力の停止、循環状態の抑制、大部分のサービス回復、遠隔可視性の回復、全ノードの復旧、バックボーンの安定化は、それぞれ異なる問いに答える。運用中から区別できる観測系が必要である。

影響数は足し算ではなく定義で読む

CenturyLinkは、障害中に12,100,108件の通話が遮断または劣化したと推計した。FCCはほかに、約250,000のIPサービス利用者が影響を受けた、または受けた可能性があること、110万のDSL利用者が一部時間帯にサービスを失ったこと、さらに260万がサービス劣化を経験した可能性があることを報告した。いずれも重大だが、一つの合計を構成する数字ではない。

通話推計は、一定の方法で数えた試行またはイベントである。利用者数は、契約、回線、場所、サービス関係を数えることがある。「サービス喪失」と「劣化した可能性」も異なる。一人が複数回通話し、複数サービスを利用することもあり、集団は重複する。足し合わせれば、どの資料にもない固有人数を作ることになる。

CenturyLinkの直接利用者と、同社の伝送に依存した他社の影響を分ける場合も同じである。上流の伝送分析と下流事業者のサービス分析に同じ利用者が現れる可能性があり、それを二人と数えることはできない。

定義を厳密にすることは障害を小さく見せるためではない。どの対策が効いたかを判断するためである。音声保護なら遮断された通話試行、ブロードバンドなら継続時間と可用性、緊急通報なら端から端までの着信と位置情報を測る必要がある。大きな見出し数字一つでは、改善した制御を特定できない。

良い事故記録は、分子、分母、単位、時間窓、データ制約を残し、実際の障害と潜在的な露出を分ける。複数の数字が同じ報告書にあるという理由だけで、不確実性を確実な合計へ変えてはならない。

911は多層の依存関係を露呈した

FCCは複数の役割から911への影響を調べた。CenturyLink自身が対象911サービス提供者として負っていた役割では、転送済みの911通話11件が二次公共安全応答拠点(PSAP)に届かず、15のPSAPに自動位置情報が届かなかった。前者は通話配送、後者は緊急センターが使う位置情報という、別々の失敗である。

他の通信事業者やサービス提供者も、CenturyLinkの伝送に依存していたため911への影響を報告した。これらは別事業者の記録で、対象と定義も異なる。CenturyLinkの対象事業者としての11通話、15 PSAPという数字にまとめてはならない。

FCC技術報告書は、事業者とPSAPから生命または財産への被害報告はなかったとしている。これは調査に報告された範囲を示すだけで、誰も被害を受けなかった証明ではない。失敗した試行がすべて無害だったことや、位置情報欠落に危険がなかったことも意味しない。

ワシントン州の後続記録は、州固有の義務と別の時間窓を扱った。ワシントン州公益事業運輸委員会は2023年6月、州内で約50時間続いた障害中に少なくとも13,000件の911通話が失敗したことに関連する州法違反について、$1,315,000を科す命令を公表した。この数値は同委員会に帰属させ、FCCの全国数値と置き換えたり足したりしてはならない。ここで用いた公開資料だけでは、あらゆる上訴や後続審査が現在すべて終結したかも確認できない。

緊急通信では、責任の所在が分散していても結果はつながる。一社が伝送を運用し、別会社が通話を発信し、別のサービスが位置情報を提供し、PSAPが最終結果を受け取る。各社の個別監視が正常でも、発信者が正しい宛先へ有用な情報とともに到達したかを端から端まで見られないことがある。

継続性の証拠は組織境界を越えなければならない。回線やインターフェースの稼働だけでなく、緊急通話がPSAPへ完了したか、位置情報が届いたか、障害通知が間に合ったか、代替経路が同じ管理ドメインに依存していないかを示す必要がある。ある階層が正常と表示されていても、緊急通報と位置情報が最終到達先まで届いたことの証明にはならない。

法的結果はそれぞれの姿勢を保つ

FCC執行局はその後、$500,000の和解金を含む同意判決で調査を解決した。文書は、この解決が委員会による適法または違法の法的認定を構成しないと明記している。これを裁決済みの罰金と呼べば、その違いを消してしまう。

ワシントン州委員会の2023年発表は、別の法的手続、管轄、州固有の事実に基づく。$1,315,000の命令は、州の帰属と州内911件数を保ったまま説明すべきである。連邦と州の結果を一つの未区分な制裁額にまとめると、記録の正確性を損なう。

Lumen Technologiesは2022年のForm 10-Kでも、この障害をめぐる手続に触れた。同社は、故障した第三者製ネットワーク管理カードが障害を引き起こしたと考えていると記載した。これは重要な会社見解だが、あくまで帰属を明示すべき信念である。機器事象、有効だが未設定のチャネル、不十分なフィルタリング、ネットワーク伝播が組み合わさったというFCCの広い説明に置き換わるものではない。

技術的説明責任と法的責任は関係するが、同一ではない。技術報告書は機構を特定し、対策を勧告しても、すべての法的責任を割り当てるとは限らない。同意判決は裁決なしに調査を終えられる。会社提出書類は経営陣の見解を述べても、原因を独立に証明しない。州当局の認定は、その権限内の事実を扱うもので、全国事故全体を定義しない。

対策は対象とする故障に照らして試す

事故後、CenturyLinkとInfineraは複数の変更を報告した。未使用管理チャネルの無効化、製品指針の変更、監視の追加、イーサネットのパケット制御改善、メモリー・プロセッサー監査の拡充である。CenturyLinkは顧客通知の改善も説明した。

これらは実際の故障箇所に対応する。チャネルを無効化すれば既知の伝播経路を外せる。パケット制御は異常流量を抑え、資源監査は同期崩壊前の消費増加を見つけられる。通常使わない経路も監視すれば、異常を早く捉えられる。通知の改善は、依存事業者や公共安全機関の対応を早める。

ただし、対策一覧は現在の有効性を独立に証明しない。それぞれに観測可能な試験が要る。チャネル無効化は、全機器の再起動、交換、ソフトウェア更新を越えて維持されなければならない。パケット制御は異常管理流量を止めながら、正当な復旧メッセージを妨げてはならない。資源監視は遠隔アクセスが残るうちに警報し、通知手順は依存事業者やPSAPと実際に演習される必要がある。

試験は部品だけでなく相互作用を再現すべきである。危険な挙動は、パケット属性、ブロードキャスト、失効条件の欠如、処理圧力、同期依存が組み合わさって生じた。一台の隔離ノードに一つの不正パケットを送るだけでは、フィルターの動作は分かっても、機器群のフィードバックループを見落とす。代表的なトポロジーで増幅するか、封じ込め境界が止めるかを試す方が有用である。

復旧演習では、通常の遠隔アクセスを意図的に取り除くべきだ。過負荷ノードへログインできると仮定した計画は、FCCが記した条件を試していない。帯域外経路か、現実的な現地派遣計画が必要で、認証情報、入室、工具、人員、判断権限が広域障害中にも使えると示さなければならない。

最後はサービス成果で評価する。プロセッサー指標が戻っても、音声通話が失敗し、伝送顧客が切断されたまま、911位置情報が届かない可能性はある。技術テレメトリーと端末間のサービス検証が一致して初めて、復旧を完了と呼べる。

経営判断に必要な継続性の証拠

第一は、実際の機能状態である。休止中または独自の管理チャネルが有効か、それをどう測ったか、初期設定への復帰を何が防ぐかを機器群全体で示す。設定意図と観測挙動を区別しなければならない。

第二は、制御の上限である。可能な範囲で管理トラフィックの送信元を認証し、許容メッセージ、流量、重複、寿命を定める。各制御が失敗した場合に、同期や顧客転送用の処理能力まで消費するかも実証する。

第三は、トポロジーを意識した試験である。一台では安全に見える機能が、多数接続で増幅する場合がある。循環、複数隣接、異なる機器世代、現実的な地域接続を含め、収束するか再送を続けるかを記録する。

第四は、独立した復旧アクセスである。遠隔制御経路が本番網と共有する電力、伝送、処理、ソフトウェア、時刻同期の依存を明らかにする。完全な独立が無理なら、現地対応を必要とする拠点数を抑える封じ込めと派遣計画を測定しておく。

第五は、依存サービスの端末間継続性である。音声、ブロードバンド、伝送、緊急通報には異なる指標が必要だ。911では、正しいPSAPへの完了、位置情報の配送、通知の適時性、代替経路の性能が意味を持つ。装置可用性の集計では答えられない。

第六は、節目の明確化である。検知、発生源の特定、新規入力の停止、循環状態の除去、可視性の回復、ノード復旧、サービス安定、残作業完了を分ける。一つの「解決済み」時刻では、利用者や緊急対応者がいつ完全な状態へ戻ったかが見えない。

証拠は組織とベンダーの境界を越えて保存される必要もある。2018年にネットワークを運用したのはCenturyLinkで、Lumen Technologiesは後に2022年Form 10-Kで関連手続を記録した。機器は第三者製で、他社は伝送に依存し、規制記録は後から作られた。社名変更、カード交換、契約終了で、継続性の履歴まで失ってはならない。

公開記録には限界がある

FCC報告書は詳細だが、すべてを答えてはいない。デンバーモジュールが4個のパケットをどのように、なぜ生成したかは確定していない。その後の全対策が現在も全機器で有効だという独立検証も示していない。報告されなかった被害が存在しないとは証明できず、全国影響の数値を固有人数へ換算することもできない。

後の法的文書にも固有の限界がある。連邦同意判決は和解で、適法・違法の委員会裁決ではない。ワシントン州命令は州の義務、州内影響、別の時間窓を扱う。Lumenの提出書類は第三者製カードについて会社の信念を記すが、規制当局の機器・設定の複合説明を置き換えない。

限界を守ることは証拠を弱めない。責任ある記述が確実に言える範囲を定める。4個の不正パケットが生成され、生成機構は不明のままだった。初期設定で有効なチャネルが受け入れて複製し、ループが資源を消費して同期を壊し、経路制御と伝送を止めた。遠隔復旧も失われ、重複するサービス関係と通話事象が影響測定に入り、緊急サービスの依存が記録された形で破綻した。

妨害、個人の過失、単一ベンダー原因を推測すれば劇的にはなるが、説明力は落ちる。問うべきなのは、原因を完全には特定できない部品異常が、なぜ稼働中の制御を越えてここまで遠くへ伝わったのかである。

長く残る教訓は稼働状態にある

CenturyLinkの2018年障害は、長さと全米規模で記憶される。しかし、より永続的な教訓は、管理上の認識と運用上の事実の差だ。使う予定のない管理チャネルが有効だった。少数のパケットは形式上有効に見えたが、挙動は安全でなかった。発生元を取り除いてもネットワークは故障を複製し続けた。遠隔管理は存在したが、それが解決すべき負荷の中で利用不能になった。

すべての差が同じ基準を指す。インフラは、ラベル、図面、対策の約束ではなく、観測できる稼働状態によって信頼されるべきである。どの機能が有効か、障害がどう広がりどこで止まるか、どの制御経路が残るか、重要サービスが端から端まで完了するかを、事業者は示さなければならない。

規制記録は、出来事、数値、時系列、和解、義務を保存する重要な台帳である。しかし記録がトラフィックを運ぶわけではない。その実務的価値は、稼働ネットワークへの試験を作ることにある。異常管理流量が有限で、無効化したチャネルが復活せず、復旧アクセスが独立し、通常伝送を失っても緊急通信が続くと、現在の事業者は証明できるだろうか。

これは「故障部品を交換した」という説明より厳しいが、はるかに有用である。部品はまた壊れる。全国の継続性は、次の故障をネットワークが封じ込め、4個のパケットを共有された沈黙への経路にしないかどうかで決まる。

出典