さくらインターネット(田中邦裕社長)は3月17日、福岡大学と協力し単体で約10ギガビット/秒(約1300万リクエスト/秒)の高負荷に耐え、Stratum1 NTP(Network Time Protocol)サーバーとして働く専用デジタル回路を設計から開発したと発表した。また、開発サーバーで、FPGA(Field Programmable Gate Array)で動作させて提供する実験を開始している。

さくらインターネットのデータセンターで稼働するサーバー

 NTPは、スマートフォンなどを含む、ネットワークに接続される機器で、機器がもつ時計を正しい時刻へ同期するための通信プロトコル。NTPサーバーは、世界中の機器から到着する時刻同期のリクエストに対し、正しい時刻を応答し続ける役割をもっている。今日では単なる時刻合わせだけでなく、コンピューター・ネットワーク機器・IoT機器のソフトウェアアップデートのため、NTPサーバーのインフラ整備は欠かせないものとなっている。

 福岡大学は、公開NTPサービスを日本で初めて運用開始し、これまで多くのユーザーの利用を支えてきたが、現在はサーバー通信負荷が数百メガビット/秒の規模に増大し、その対策が急務となっていた。

 さくらインターネットでは、今後こうした需要が発生する可能性を踏まえ、福岡大学の協力のもと、高速な「FPGAベース・ハードウェアNTPサーバー(Stratum1)」を開発した。

 FPGAベース・ハードウェアNTPサーバー(Stratum1)は、汎用コンピューター上で動作するNTPサーバーソフトウェアに代わり、専用デジタル回路化されたNTPサーバーと、GNSS信号受信機(GPS/GLONASS/QZSSなどを含む)が生成する情報から基準周波数を作り出すGNSS同期周波数源回路を合わせた設計によって成り立っている。

 汎用コンピューター上で動作する典型的なNTPサーバーは、ネットワーク回線から受け取った通信パケットを一旦メモリなどに蓄積し、ソフトウェアで一つずつ解釈する方式で動作するが、今回開発したNTPサーバー専用回路はNTPリクエストを含む通信パケットを直接受信し、リアルタイムに応答パケットを作成することができるため、大きな高速化が可能となる。

 専用回路の動作には、高集積なデジタル回路を後から書き込んで専用チップのように動作させることのできるFPGAを搭載したサーバー向け拡張カード(FPGAカード)を用いている。FPGA上に該当回路設計を導入することで、専用チップの開発なしに同等の動作を実現できる。

 また、10Gbpsイーサネットへの直接アクセスと、時刻源として用いるGNSS信号受信を行うため、FPGAカードに追加装備できる子ボードのプリント基板(10GbE&GNSSコンボ増設カード)を自社設計して装備した。

 特定機能に特化した専用回路による構成とすることで、数十ワットクラスの消費電力で、約10ギガビット/秒のNTPサーバー回路と基準周波数回路をサーバーに装着されるPCI-Expressカード1枚にまとめることに成功した。

 開発に際しては、福岡大学NTPサーバーのバックアップ用回線を用い(19年9月~11月)、実運用環境に近い状況で、正しい応答を連続して返し続けられるよう試験とバグ修正を繰り返すことで品質の向上を図っている。