Azureのネットワークがなぜ「遅い」といわれるのか

1.はじめに

今企業システムの一部としてAzureなどのクラウドを利用する多くの場合、クラウド内に仮想ネットワークを作成し、またオフィスや自宅など、各拠点から作成した仮想ネットワークに接続するための物理的な回線が必要となります。
具体的には、Azure内に作成した仮想ネットワークに自社用の仮想サーバーを展開してそこに必要なサーバーアプリケーションを利用可能状態にすることで、オフィスなどの各拠点から回線を通じて利用する流れになります。
今回は仮想ネットワークの概要にあわせてAzureのネットワークが「なぜ遅い」のかについて展開していきます。

2.仮想ネットワークの構築

1.VNet

「VNet」とは「Azure Virtual Network」の略称で、Azure上に自社ネットワークの構築ができるサービスになります。作成したVNet上に仮想マシン(VM)やサーバーアプリケーションをデプロイすることでシステム構築や運用が行えます。
複数のシステムをAzure上で運用していく場合、各システムの調節を運用フェーズに合わせる必要になるケースが多いため、VNetもまた複数台用意する必要がある

2.サブネット

「VNet」を構築したらその中には少なくとも1つの「サブネット」を指定します。加えてオンプレミス環境でのネットワーク設計と同じくして、アドレス空間を複数のサブネットに分割することが可能になります。サブネット管理には、VNet内の各サブネットのIPアドレスを毎時指定してアクセスするという方法とドメイン名を設定してDNSサービスで名前解決させてアクセスする方法の2パターンがありますが、後者のDNSサービスを利用してアクセス、管理の方法がAzure標準搭載であるため利用するに越したことはありません。

3.「処理が遅い」と体感的に感じる理由

1.「レイテンシ」

社内システムのみならず、Webサイトのような外部システムの運営を円滑に稼働させ継続させるためにもネットワークの性能を把握しておくことは「サーバーの処理能力を把握しておく」ことです。それがシステムの安定した稼働へと繋がります。
その中でネットワークの性能を示す指標として「レイテンシ」というものがあります。「レイテンシ」とは、データ転送における指標です。転送要求が出されてから実際にデータが届くまでの通信の遅延時間を指します。ネットワークの種類や構成によってその値は変化しますが一般的には「ms(ミリ秒)」の単位で表示されます。

2.レイテンシが起きる原因

レイテンシが起きる原因は様々であり、なかでも、サーバーやネットワークなどのインフラからアプリケーションと広範囲に至る原因が挙げられます。そのため、少しでもシステムの動作が遅いと体感的に感じた場合は、原因をある程度予測してから調べた方がいいです。以下は代表的な原因になります。

  • メモリ使用量
  • Webアプリケーションにおいてのレイテンシ発生の原因としては、「利用可能な物理メモリの容量が不足、足りなくなっている」ということです。メモリは作業デスクのような役割を担っているため、何かしらの重たい作業処理を実行した影響でメモリの使用量が急増して発生するということがあります。

  • CPUの使用率
  • CPUの使用率が高く、あるいは急増した場合、システム稼働が維持できずサーバーの処理性能が低下してレイテンシが発生してしまう可能性があります。上段の「メモリ使用量」と「CPUの使用率」の2項目は、サーバー処理性による発生要因として分類されています。これらの要因が継続して発生した場合、原因の発生源はサーバーだけでなくアプリケーションにまで及んでいる可能性があります。

  • アプリケーションやプログラムの設定
  • 上段2項目で問題がなかった場合、サーバー上で稼働するアプリケーションやプログラムの設定に原因があると考えられます。この場合は、アプリケーションやプログラムの設定を見直すひつようがあり、どの処理段階で遅延が発生しているのかを明確にする必要があります。また、アプリケーションの構成が複雑である場合、レイテンシが複数のアプリケーションを跨いで発生する可能性があります。

  • ネットワーク接続
  • 上段3項目が適切であった場合、サーバーに接続するネットワーク、および接続先との依存関係でレイテンシが発生する要因となっている可能性があります。たとえば、ネットワークを介してデータの読み書きを行っているシステムでは、「システム間でボトルネックを起こしていないか」を確認する必要があります。

4.Azureへ移行する際に危惧すること

1.データセンターの場所

数あるクラウドサービスの中で「Azure」は、世界各所に複数のデータセンターと呼ばれる顧客のサーバー機などのIT機器を設置・収容する場所を提供し、安定的に運用できるよう、さまざまなサービスを提供する施設 を自由選べる利点があります。
それは「システムのバックアップや同期などによって、大規模障害に備えられる」という大きなメリットがあります。一般的にデータセンターは火災や地震などの災害によってIT機器が停止してしまわないようにする対策が施されています。加えて、立地も災害に見舞われにくい場所であったり、火災時の対処のみならず耐震・免震などの対地震構造が施されています。
ただし「自由に選べる」という理由でオフィスなど拠点から遠い場所を選んでしまったり、経由するルーターが多かったりするとデータ転送が遅くなり、結果としてスループットの低下を招きます。

2.データセンターとの距離=遅延

オフィスや自宅などのユーザー拠点からデータセンターまでの距離が離れていると、距離の分だけデータ転送が「遅く」なります。
ネットワーク世界での「遅い」というのは「あるデータのパケットが、クライントとサーバー間のネットワークを、『往復』するのにかかった時間」を指します。 ポイントとなるのは「往復」という言葉になります。「ネットワークの遅延」=「行きと帰りにかかった時間の合計時間」を言います。ことWAN回線上での遅延は、端末間における「物理距離」がデータ転送時の遅延を招いています。この原因は「伝搬遅延」と呼ばれ、ケーブルで結ばれたある地点から、ある地点にパケットを送った時にかかる、「物理的な時間」のことを指しています。この「伝搬遅延」が大きい場合、仮に広帯域の回線を用いたとしてもTCP/IP通信では、データ転送速度がそれほど出はしません。原則としてTCP/IP通信は、データが一つ一つ宛先に届いたかどうか確認してから次のデータを送っているため、衛星を利用したIP通信などでは、特にこれは顕著です。

3.スループットの保証

「スループット」とは、上段の項目で説明した「レイテンシ」と同様で機器や伝送路などの性質を表す指標として使用され、主に単位時間あたりに電装できるデータや信号の量を指します。
スループットの値が高いほど、非右側で大容量の情報をやり取りできるだけでなく、接続に対しても迅速な対応ができます。しかし、遅延時間を示す「レイテンシ」が大きいとスループットは低下します。つまり、スループットが良好であっても、レイテンシが大きいと「性能が悪化した」と体感的に利用者は感じてしまうわけです。レイテンシが大きい原因の一連としては人工衛星を介した通信や国際間海底通信ケーブルによる通信などさまざまです。

5.まとめ

スループットとレイテンシの関係性は、「システムの安定稼働」において切っても切り離せない関係にあります。レイテンシが大きいと、スループットの低下を引き起こすだけでなくサービスを利用する側からすれば「遅い」と体感的に感じてしまいます。
クラウドサービスを利用することは、コストや管理面でも社内システムを扱うよりも優れているが「ネットワーク」の観点から「Azure」を導入する際は、データセンターの場所、遅延とスループット、接続性、セキュリティーの4点に注意しながら検討をしましょう。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です