インターネットトラフィックが増大していく中で、通信環境の維持・向上に向けてIPv6の利用が広がりを見せています。IPoE接続でIPv4もサポートする技術をはじめとしたIPv4aaS(IPv4 as a Service)の普及もあり、IPv6は多くの環境で一般的に利用されるようになってきています。この状況を踏まえ、2022年12月に「IPv6 Summit in TOKYO 2022」が開催されました。
Jストリームからは、プロダクト企画部のN.T.さんが登壇し、「CDNにおけるIPv6対応とコンテンツ配信2022 〜CDN最新動向〜」というテーマで講演を行いました。当日は、2022年3月に実施したJストリームのCDNをIPv6対応させた際の実体験をもとに、IPv6対応で苦労した点や技術的成果についてお話しました。またIPv6普及の背景となるコンテンツ配信の最新動向についてもあわせて解説しました。今回の記事では、本講演を振り返るイベントレポートをお届けします。
N.T.プラットフォーム本部 インフラエンジニア(新卒入社・16年目)
学生の時からストリーミングに興味があり、自分で配信サーバを作ってライブ配信していました。自宅にサーバやネットワーク機器があり、そんな中で生活しています。2021年からは、動画プラットフォーム(J-Stream Equipmedia)やCDNサービス(J-Stream CDNext)などの自社開発プロダクトを取りまとめる部署に所属しています。2022年からは、一般社団法人IPoE協議会でのIPv6地理情報共有推進委員会幹事を務めています。
利用技術:BGP / OSPF / IPv6 / DNS / Cisco IOS / JUNOS / FRR / KVM / VMWare / シェルスクリプト / Ansible / Docker / raspberry pi / お家サーバ / GPU / NDI / SRT / ffmpeg
コンテンツ配信の基本構成とIPv6対応
――CDNとは?
CDNとは、データを効率よく最適に配信する仕組みのことです。エンドユーザーの近くにキャッシュサーバと呼ばれるCDNの配信サーバを多数設置し、オリジンサーバに置かれている大元のデータをキャッシュサーバが一時的に複製(キャッシュ)することで、エンドユーザーに配信するという仕組みになっています(図1)。
CDN設計で難しいとされるポイントは、大きく2つあります。ひとつは、いかにコンテンツをキャッシュしてキャッシュサーバから直接エンドユーザーに配信するかという点、そしてもうひとつは、ネットワーク的に一番近いキャッシュサーバへいかにエンドユーザーを誘導していくかという点です。
エンドユーザーは、インターネットを経由してキャッシュサーバへアクセスします。その際、キャッシュサーバでコンテンツがキャッシュされていれば直接配信し、キャッシュされていなければオリジンサーバへコンテンツを取りに行くという動作になります。オリジンサーバは、コンテンツプロバイダやCDN事業者がストレージと配信サーバというものを用意している場合が多いです。昨今は、「動画配信プラットフォーム」という形で動画配信サーバを含めたサービス提供する形も増えています。
一方、キャッシュサーバは、エンドユーザーへコンテンツを配信する役割を担います。ここでは、例えば、国内限定配信の場合であれば海外ユーザーからのアクセスを弾いたり、地域判別やセキュリティなどに関する様々なアプリケーション処理がなされます。Jストリームの場合、複数台の物理サーバで構成されたキャッシュサーバを1つのクラスタとして、各POPに配置しています。またPOPのインターネット接続には2種類あり、ひとつは自社のAS番号を持ち運用している拠点がありIXとISPを繋いでいるものです。もう一つは、大手データセンター事業者の中に置いているキャッシュサーバとなります。
そして、Jストリームが2022年3月に行ったCDNのIPv6対応ですが、エンドユーザーにとって一番手前となる部分、つまりキャッシュサーバをIPv6対応させました(図2)。
IPv6対応においてCDNを活用するメリットは、やはり簡単にIPv6対応が実現可能であるところだと思います。エンドユーザーから見ると、実際にコンテンツが配信されるのはキャッシュサーバからになりますので、そこがIPv6対応していればエンドユーザーとの通信は基本的にIPv6化できます。逆にオリジンサーバとの通信はIPv6でもIPv4でもできるという形で、あまり今の環境を変えずにIPv6対応ができるメリットがあります。
また、動画の美しさや、動画が再生中に止まることなくスムーズに視聴できるというような配信の視聴品質(QoE)が向上するのもエンドユーザーにとっての大きなメリットです。一方、ISP側のメリットとしては、設備投資を削減できる点が挙げられます。
CDNをIPv6対応させるポイント
ここでは、CDNのIPv6対応における4つの側面について解説したいと思います(図4)。
まず一つ目がネットワークです。この部分は多くの機械がIPv6に対応していますので、あとは設定を行っていくだけで大きな問題はありません。
2つ目がキャッシュサーバです。具体的には、サーバへIPv6のアドレスを付与するのですが、Jストリームでは大量のサーバを保有しているため、ロードバランサーや間のネットワークもIPv6対応させる必要がありました。このあたりは、今回IPv6対応に際して、新たに設計を変えた部分で、よりシンプルでスケールアウトしやすい構成にできたなと実感しています。
そして3つ目が、ロードバランサーです。ロードバランサーはいわゆるGSLBと呼ばれているDNSベースのものと、ローカルのロードバランサーがあります。JストリームはGSLBを使ってIPアドレスベースでトラフィックコントロールを行っているため、たとえば“IXで繋がっているISPさんに対して、このサーバを返す”といったロードバランスルールのIPv6対応も必要になりました。
そして4つ目が、アプリケーションです。ここはかなり苦労した部分です。アクセスログの処理や国内外判別、ACL(アクセスコントロールリスト)などの部分で、IPv6対応のための再設計と再開発が必要になりました。
上記4つの中で最もポイントだったと思うのは、ロードバランサーとアプリケーションの部分です。よかった点、特に大きな成果だと思われる点としては、ロードバランサーの構成をシンプルにしたことです。IPv4の場合はアドレスの数がかなり限られているため、アドレス節約のためにアドレス共有やLBを使ったロードバランスが必須となります(図5-左図部分)。
しかしIPv6はアドレス空間が広いというメリットがあるため、IPアドレスの共有を廃止し、ロードバランサーを介さずにソフトウェアベースでバランシングする形に再設計しました(図5-右図部分)。これによってかなりスケールアウトしやすい構成にすることができています。ボトルネックになってしまいがちなロードバランサーを外せたのは、かなり大きな効果だったと考えています。
一方で、苦労したのがアプリケーションサービスです。CDNに付随するアプリケーションサービスは、アドレス長が変わるため再設計・再開発が必要になりました。例としては、国内外判別というIPアドレスベースのジオコントロールシステムを再設計です。
これはまず、IPv6に対応したジオデータベースを探すところからのスタートでした。とはいえ、現在は複数の事業者がIPv6対応のジオデータベースを提供しているため特に問題はないかと思います。また、JストリームはIPoE協議会にも参画しており、より正確な地理情報データベースの構築にも協力しています。
その後、ジオIPの判定モジュールやアクセスログを処理するバックエンドシステムなどのIPv6対応を行い、負荷試験を実施しました。すると想定よりも処理に時間がかかったため、処理システムのサイジングを変更するなどの処置が必要になりました。
このような試行錯誤の末、JストリームにおけるCDNの付随部分もIPv6対応ができ、2022年3月より本格対応開始というゴールに到達しました。
コンテンツ配信2022
ここからは、少し話題を変えまして、昨今の配信ビジネスの動向や技術的な進化についてお話ししたいと思います。
特に注目すべき点としては、2つあります。
一つ目に挙げるのは、トラフィック増加です。トラフィックの増加やピーク性の強まりを、配信事業者として強く感じています。特にライブ配信です。今までインターネットでライブ配信できるコンテンツはある程度限られていましたが、昨今はOTT事業者がコンテンツを買ってインターネットで流すことが一般的になりました。その結果、1Tbpsを超えるような配信が日常的に起きています。
そして2つ目が、視聴品質(QoE)です。コンテンツは非常にリッチになってきているため、QoEをいかに担保していくかが大きな課題となっていると感じます。
――CDN事業者、OTT事業者に求められる「ネットワークの中立性」
総務省から出ているトラフィックの集計データによると、やはりコロナ禍で急激に増加し、その後も上昇を続けている状況です(※1)。この上昇が続くと、トラフィックを配信する側だけでなく、受ける側の負担もかなり増えていくことが予想されます。ネットワークの中立性についての研究は2018年くらいから国内でも活発に行われていますが、我々CDN事業者やOTT事業者は、この“ネットワークの中立性”を考慮した設備投資やトラフィックコントロールが求められていると考えています(図7)。
トラフィックが増えてくると、一つのCDNだけでは安定した配信が難しくなります。そこで最近注目されているのが、マルチCDNというソリューション。我々は、通信品質を考慮してCDNをセレクトしていく仕組みを持っています。
詳しく説明すると、動画の視聴プレイヤーにビーコンが仕込まれており、各CDNに配置されたビーコンをダウンロードした際にスループットやダウンロード時間が分かるようになっています。これをビッグデータ処理し、エンドユーザーがアクセスする際にどのCDNに割り振るかを選択する仕組みになっています。そのスコアを見てみると、ISPやケーブルテレビの事業者間、また地域によってスコアに差が出てきています(図8)。ただし一般的な話としては、QoEについてはやはりIPv6タイプのほうが有効であると考えています。
「オープンキャッシング」とは、簡単に言うと特定のISPのみをカバーしたCDNのことです。各ISPの中に共有のキャッシュサーバを置き、これを束ねたCDNです(図9)。この場合、全部のISPにキャッシュを置くことはできないため、カバレッジがある別のCDNを併用する形になり、マルチCDNの構成になっていきます。そして、もちろんオープンキャッシングに関してはIPv6対応していますので、先ほどのQoEの話も織り込み済みです。
オープンキャッシングについては、国内ネットワーク各社と共同でJストリームも2023年1月より実証実験を実施予定です(※2)。
オープンキャッシングの特徴はいろいろありますが、まずは複数のコンテンツプロバイダが共有するキャッシュサーバということ。簡単に言うとCDNの一種になります。このキャッシュサーバが特定のISPの中に置かれる形となるため、ISP側は自分達のネットワークの中だけにコンテンツ配信ができるようになります。
また、CP/CDN側のメリットとしては、まずIPv6に対応している点。そしてキャッシュの分散配置が可能になるため、最終的にはQoEの向上や配信遅延の削減ができるようになります。その一方、これまでのキャッシュの仕組みとは違い、カバレッジが100%にならないため、マルチCDNの制御が必要になります。
一方、ISP側のメリットとしては、キャッシュを自分達のネットワークの中に置けるため、上位回線のコスト削減やQoE向上が可能になることが挙げられます。
CDNの一番のメリットは、キャッシュを分散配置してエンドユーザーの近くからコンテンツを流せることです。これにより、ネットワークの公平性や視聴品質を担保できると考えています。
図10に「ISPに優しいコンテンツ配信」と「視聴品質向上」の両立に関する構成概念図を記載しました。これまでは、東京/大阪のIXや地域IXなどISPの近いところに設置するキャッシュサーバと、東京・大阪を中心とした大規模なデータセンター事業者からトランジットを経由して配信するという2パターンでした。しかし、今後はISP内に細かく設置するオープンキャッシングを用いることで、大規模配信とQoEの向上が両立が可能になります。
コンテンツ配信は、今後ますます盛り上がることが予想されます。コンテンツ配信IPv6時代におけるCDNについて、Jストリームでの差別化の方向性は、単純なコンテンツ配信だけは難しいと考えています。ジオコントロールやアドレスベースのACLをIPv6対応することでより高度なサービスができるよう注力していきたいと思います。
注:
※1:総務省|報道資料|我が国のインターネットにおけるトラヒックの集計・試算
※2:新しい Cache “オープンキャッシング” の実証実験開始(プレスリリース) ※Jストリームコーポレートサイトへリンクします
※在籍年数や役職を含む記載内容は、取材当時のものです。その後、状況が変化していることがあります。