Google Compute Engineのネットワーク帯域が気になったので実測してみた。

Amazon EC2では[スペック毎に帯域の目安や最大が書いてある](https://aws.amazon.com/jp/ec2/instance-types/)のですが、GCEには特に見当たらなかったので実測してみました。

注：速度の保証をするものではありません。時間帯などによって多少なり変わると思われます。

## 測定する環境

・マシンタイプの一部と共有コアマシンタイプ全てを測定
・OSはUbuntu 18.04.3を使用
・リージョンは東京(asia-northeast1-b)
・測定日時は2019/12/17 23時～2019/12/18 1時

## 構築作業

[公式の方法](https://www.speedtest.net/apps/cli)だとIP割り当て国の関係で米鯖との間でしか計測できないようなので注意。
ConoHaなら公式の方法でもちゃんと日本鯖間で計測できました。

実際の構築は2行で終わります。

```bash
$ sudo apt install python3-pip -y
$ sudo -H pip3 install speedtest-cli
```

GCEでは基本的な環境構築くらいならインスタンス作成時点でほぼ終わっています。
Swapの作成、aptアプデ、あとは好みによりローカライゼーションくらいです。

SSHポートだけはデフォルトのままですが暗号鍵認証しか設定されていないので精神衛生上気になれば…ってくらい。
GCP自体に慣れないまま下手にやると詰みかけます。(1敗)

```bash
# aptアップデート
$ sudo apt update && sudo apt upgrade -y

# 日本語へのローカライゼーション
$ sudo apt install language-pack-ja -y
$ sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
$ sudo timedatectl set-timezone Asia/Tokyo

# 2GiBのSwap作成
$ sudo dd if=/dev/zero of=/swap bs=1M count=2048
$ sudo chmod 600 /swap && sudo mkswap /swap && sudo swapon /swap
$ echo "/swap           swap            swap    defaults        0 0" | sudo tee -a /etc/fstab
```

## 測定

日本鯖を探します。今回のお目当ては「OPEN Project (via 20G SINET)」。

```bash 
$ speedtest-cli --list | grep "Japan"
 6405) Allied Telesis Capital Corporation (Misawa, Japan) [9420.70 km]
 7139) SoftEther Corporation (Tsukuba, Japan) [9878.43 km]
14623) IPA CyberLab (Bunkyo, Japan) [9924.27 km]
15047) OPEN Project (via 20G SINET) (Tokyo, Japan) [9930.48 km]
20976) GLBB Japan (Tokyo, Japan) [9930.48 km]
24333) Rakuten Mobile , Inc (Tokyo, Japan) [9930.48 km]
28910) fdcservers.net (Tokyo, Japan) [9930.48 km]
21569) i3D.net (Tokyo, Japan) [9930.48 km]
18516) GIAM PING VIETPN.COM (Tokyo, Japan) [9930.48 km]
 6087) Allied Telesis Capital Corporation (Fussa-shi, Japan) [9947.36 km]
 8407) Allied Telesis Capital Corporation (Sagamihara, Japan) [9958.41 km]
24537) ymsr.cloud (Yamato, Japan) [9960.29 km]
 6766) JAIST(ino-lab) (Nomi, Japan) [10052.17 km]
 6368) gatolabo (Maibara, Japan) [10162.59 km]
24774) Local24 Inc., (Kyoto, Japan) [10218.60 km]
18709) extride inc (Hitoyoshi, Japan) [10749.62 km]
 6581) haza (Haebaru, Japan) [11464.04 km]
21118) GLBB Japan (Naha, Japan) [11464.99 km]
```

一番左に書いてあるのが測定鯖のIDです。(定期的に変わるそうです、上記は2019/12/17現在)
見つけたら狙い撃ちます。

```bash 
# IDが変更されていた場合には適宜変えてください
$ speedtest-cli --server 15047
Retrieving speedtest.net configuration...
Testing from Google Cloud (xxx.xxx.xxx.xxx)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by OPEN Project (via 20G SINET) (Tokyo) [9930.48 km]: 3.279 ms
Testing download speed................................................................................
Download: 3232.51 Mbit/s
Testing upload speed...............................................................................................
.......
Upload: 910.99 Mbit/s
```

この方法で測定(念のため複数回)し、検証しようってわけです。

## 結果

いずれも中央値になります。(ブレは多くとも±10%程度でした)

### 標準・共有マシンタイプ

| マシンタイプ | vCPU数(個) | メモリ(GB) | UP速度(Mbps) | DOWN速度(Mbps) |
| :-- | --: | --: | --: | --: |
| f1-micro      | 0.2 | 0.6 |  912.06 | 3368.78 |
| g1-small      | 0.5 | 1.7 |  898.33 | 3501.43 |
| n1-standard-1 |   1 | 3.5 | 1578.49 | 3655.92 |
| n1-standard-2 |   2 |   7 | 1350.70 | 1779.52 |
| n1-standard-4 |   4 |  15 | 1288.05 | 1567.64 |

### その他マシンタイプ

| マシンタイプ | vCPU数(個) | メモリ(GB) | UP速度(Mbps) | DOWN速度(Mbps) |
| :-- | --: | --: | --: | --: |
| n1-highmem-2 | 2 |  13 | 1343.02 | 1674.22 |
| n1-highmem-4 | 4 |  26 | 1231.74 | 1543.11 |
| n1-highcpu-2 | 2 | 1.8 | 1339.44 | 1616.29 |
| n1-highcpu-4 | 4 | 3.6 | 1201.50 | 1388.75 |

N2マシンシリーズはまだ日本鯖にないので検証していません。

## あとがき

f1-microは一部米リージョンに限り永年無料で使えるのですが、ネットワーク帯域の面から見るとかなりコスパが良く思えます。（測定先鯖は異なりますが、米リージョンでもほぼ同じ結果でした)
少なくとも日本のVPS業者には真似できないですね・・・。日本リージョンで使っても最小構成なら月600円しませんし。

あとAWSと違いマシンスペックに従って帯域が広くなるわけではないんですね。
高スペックなマシンほどコンピューティング用途での使用が想定されているようです。