東京・大阪・石狩を結ぶ100Gbpsネットワーク 〜さくらのバックボーンネットワークの設計と運用(1)〜
さくらのナレッジをご覧の皆様、こんにちは。
当社でバックボーンネットワークの設計や運用、対外接続の交渉などを担当しております山口と申します。
バックボーンネットワークの設計や品質向上の取り組みについて連載にてご紹介していきたいと思います。初回は 石狩・東京・大阪 の3エリア間の新ネットワークの導入についてお伝えします。
はじめに
2019年1月中旬に、当社バックボーンネットワークの東京~大阪間を200Gbps(100Gbps x2)に増速、今まで直接の接続が無かった大阪~石狩間の100Gbpsネットワークの新規構築を行いました。また、これにあわせて単純に回線の増強を行うだけでなく、東京・大阪・石狩の3エリア間の接続をMPLSを利用した新バックボーンネットワークへ切り替えました。
今までのエリア間ネットワークの問題点
当社では、石狩、東京、大阪の3エリアにあるデータセンターで様々なサービスを提供しております。この3エリアは、それぞれ異なる自律システム(AS)でBGP接続されており、AS9370が東京、AS9371が大阪、AS7684が石狩で利用されています。2018年末までは各エリアは 図2 のような構成で接続されておりましたが、以下のような問題点がありました。
エリア間の回線障害時の経路変動による通信影響
各エリアはBGPにより数万~数十万の経路情報を交換しています。石狩~東京間または東京~大阪間の回線で障害が発生しBGPのセッションが切断されると、大きな経路の変動が発生するのと同時に、双方のルータでRIB/FIB(経路や転送先の制御表)の書き換わりが発生し、経路の書き換わりが終了するまで、一時的に通信が不安定になる事象が発生することがありました。
大規模な災害時のインターネット到達性への影響
各エリア間の接続は異なるルートを通る回線を利用しておりますが、大規模な災害などが発生し、2本とも回線が切断された場合、各エリアからインターネットへの到達性に問題が発生する可能性がありました。特に石狩の対外接続は上流トランジットのKDDI(40Gbps)のみとなっておりますので、東京への回線が全断すると輻輳が発生する可能性があり、リスクが大きい状況でした。
拠点間のLayer2閉域ネットワークの必要性
近年、複数エリアでのサービスの展開、サービスの多様化、エリア間のトラフィックの増加などにより、エリアを跨いでLayer2接続が可能な閉域網に対するニーズが拡大してきていました。
新ネットワークの設計と動作
新ネットワークではMPLSを利用しています。シグナリングプロトコルにはRSVP-TE、エリアを跨いだLayer2閉域網を実現するために Pseudo Wire Emulation Edge to Edge(以下PWE3)と呼ばれる技術を採用しました。課題を解決するための技術はいくつか考えられましたが、以下の点をポイントに利用する技術や製品の選定を行いました。
- 既存バックボーンネットワークに大きな構成変更を行わずに導入できること
- シンプルかつ最小限の構成で導入をはじめることが可能であること
- 今後の拡張に対して十分な拡張性を有し簡単に拡張が行えること
- 運用の負担にならない設計となっていること
当社のバックボーンネットワークは、長い歴史の中で複雑な制御を行っている部分もあるため、既存バックボーンネットワークの構成変更のリスクと初期投資を最小限に抑えて導入が行える方式であること、24時間365日の対応をおこなっている運用チームの負荷を増やさないことについて、特に重視をしました。
基本構成
MPLS網は既存のバックボーンネットワークからは完全に独立した閉域網となっています。東京・大阪・石狩の各エリアには2台ずつの合計6台のMPLSルータが存在し、 図3 のように全て100Gbps回線で接続されています。ネットワーク規模が比較的小さいため、全てのルータはPE(Provider Edge)となっており、P(Provider)ルータは存在しません。石狩~大阪については、現状トラフィックが少ない事などから、冗長化はせず1本の100Gbps回線のみの構成となっています。
通信キャリアなどが提供するVPNサービスでは、VPN識別用ラベルとしてMP-BGPが使われることがありますが、当社ではお客様に直接MPLSを利用したVPNサービスを提供していない(自社バックボーンや自社サービス用に利用目的や規模が限定されている)ことや、PWE3のみを利用していることから、現時点ではMP-BGPは利用していません。
PWE3で作成される仮想Layer2接続では、MPLSルータはフレームを転送するのみでCE(Customer Edge)側の経路やARPは学習しない構造となっています。また、8000Byteを超える大きなサイズのフレームについてもそのまま通過することができます。
パケットが通過する経路の設計
MPLS網内でラベルが付与されたパケットが通過する経路であるLSP(Label Switched Path)を確立する方法はいくつかありますが、当社ではEnd-to-Endでパスを指定するStricrt ERを利用しています。例えば、CE東京1~CE石狩1の場合は、図4 のようにPE東京1→PE石狩1を利用するパスとPE東京1→PE東京2→PE石狩2→PE石狩1を利用するパス、PE東京1→PE大阪1→PE石狩1を利用するパスの3つのパスを予め用意し、最短経路の方をPrimaryパスに、PE東京2とPE石狩2を経由するルートを1つめのSecondaryパスに、大阪を経由するルートを2つめのSecondaryパスに設定しています。この3つのLSPのパスにCE東京1~CE石狩1のPWE3仮想Layer2接続を紐付けています。正常時にはPrimaryパスのみに通信が流れます。
回線障害発生時の動作
Primaryパス側の回線に障害が発生した場合、GlobalRepairのPathProtection機能を利用し、Secondaryパス1のLSPに瞬時に切り替わります。リンクダウンを伴わない障害でも瞬時に断検知を行うためにLSPにはBFD(Bidirectional Forwarding Detection)の設定も行っています。障害時の切り替わりに掛かる時間は約1秒以内となっており、既存バックボーンネットワーク上では経路変動を発生させることなく迂回が可能となります。仮に、東京と石狩の間の回線が2本とも全断してしまった場合は、遠回りにはなりますが大阪を経由するSecondaryパス2のLSPへ切り替わることにより通信を継続することが可能となっています。
回線障害が復旧した場合、自動的にPrimaryのパスに切り戻されます。回線がUp/Downを繰り返すなど不安定な状態で復旧した場合にパスが何度も切り替わることを防ぐため、復旧は約10分間安定している場合にのみ行われます。
なお、CEルータ側で障害(インタフェースダウン等)が発生した場合は、残念ながら以前と変わらずエリア間のBGP断に伴う経路変動は避けられません。この場合に、対向CE側のインタフェースが上がり続けることにより迂回に時間が掛かることを防ぐため、対向側のリンクを自動的にダウンさせるPWE3のリンクパススルー機能を利用しています。
おわりに
新ネットワークの稼働開始により、エリア間の回線に障害が発生した際の通信影響が極小化すると共に、大阪~石狩間の直接接続により、両ゾーン間の通信において約3-4ms程度のレイテンシの減少が実現できるようになりました。また、定期的に発生する通信キャリアの回線メンテナンスなどの際、MPLSによる自動迂回を行うことにより、メンテナンス前後にBGP接続の切断や復旧などのオペレーションを行う必要が無くなり、運用チームの負荷の軽減にも大きく貢献しています。
当社では、お客様に安心して快適サービスをご利用いただくために、今後もネットワークの品質向上に関する取り組みを継続的に行って参ります。
※ 文中の遅延値や迂回時間などの数値につきましては、弊社サービスとして値を保証するものでないことをご承知おきください。