実装されている仕様

Fetch API は強力な Promise ベースの API で HTTP や HTTPS プロトコル経由でウェブサーバからコンテンツをダウンロードできます。これは Ajax 開発の心臓部であった以前の XMLHttpRequest API (まだ利用されていると思われますが) を置き換えるものです。

既定では、ブラウザはドメイン間 (正確にはオリジン、プロトコル・ドメイン・ポートの異なる組み合わせです) にわたるリクエストを一つのウェブページから行うことはできず、この規則によりユーザはあるウェブサイトから他のサイトの認証情報を悪用したりデータを盗んだりという危険から保護されます。サイトは Cross-Origin Resource Sharing (CORS) の機構を利用してこの規則の除外規定を行うことができ、より広い範囲のウェブアプリケーションやサービスに開放することができます。

XMLHttpRequest はクライアントからのネットワーク通信では有用でしたが、モバイルデバイスでのネットワーク利用の制約やネットワークアクセスによるバッテリ (や時にはユーザへの課金) への負荷を考慮するとサーバから始めるリクエストを利用した方がよい場合があります。Server-Sent Events API を利用すると (HTTP もしくはほかのプロトコル経由での) プッシュ通知から DOM イベントを発火させることができます。

IETF WebSocket protocol (RFC6455) を基とする WebSocket API は双方向で柔軟かつ、fetch や XMLHttpRequest よりも低負荷なネットワーク接続を実現します。

もちろん、ネットワーク接続を利用するうえで重要な点は、接続性が確保されているかと利用可能なネットワークの種類に依存しているという点です。HTML5 onLine DOM flag とその状態変更による online イベントは、ウェブ環境にとってネットワーク接続が利用不能な場合 (注: フラグはウェブ環境がオンラインになっているかどうかを判定するには信頼性に欠けます) に通知します。

Resource Timing API により、利用可能なネットワーク環境がさまざまなリソースを読み込むのにかかる時間にどのような影響があるかを計測できるようになり、ウェブアプリケーションにとってネットワーク環境に合わせて他の方法を取れるようになります。

機能仕様・グループ標準化段階現在の実装状況
Select browsers…
HTTP network APIFetch Standard
WHATWG
Living Standard
XMLHttpRequest Standard
WHATWG
Living Standard
Cross-domain requestsCORS protocol in Fetch Standard
WHATWG
Living Standard
Server-pushed requestsServer-Sent Events
HTML Working Group
廃止
Bidirectional connectionsWebSockets Standard
WHATWG
Living Standard
Offline detectiononLine DOM flag in HTML Standard
WHATWG
Living Standard
Network characteristicsResource Timing Level 2
Web Performance Working Group
勧告候補

仕様化が進行中の仕様

ウェブにおけるリアルタイム通信 (WebRTC) によりブラウザ間でリアルタイム性を持った直接の P2P 通信が実現されており、複数プレイヤーのゲームでのゲーム内通信を実現するのに最適です。送信されるのはデータ、音声、ビデオトラックなどです。WebRTC はゲームサーバとの通信においても WebSocket API の効率的な代替となりえます。

Streams 仕様はデータストリームを効率的に作成、構成、利用するための API です。モバイル環境ではネットワーク通信状況は変動し、帯域も制限を受けます。低レベル IO に直接アクセスできるとウェブアプリケーション内でデータを利用する部分 (メディアプレイヤーなど) へのネットワーク経由のデータの送信の通信制御が可能になり、Service Worker が以前にオンラインの際に取得してキャッシュしたデータからストリームを生成し画面の初期表示の高速化を行うなどといった、画面表示のパフォーマンス改善にもつながります。ストリームをキャンセルしダウンロードをいつでも止められる機構は他の部分でネットワーク帯域が今すぐ必要になったときに対応するといったことにも利用可能です。

Beacon API は未管理の HTTP リクエストのキューを作成可能にすることを目的とし、必お湯な時にブラウザが実行することでよりよいネットワーク最適化を実現可能にするためのものです。

プッシュ通知 (Push API) によりウェブアプリケーションはブラウザウィンドウの中で動作中かどうかによらずサーバからの通信を受信可能になります。IETF のウェブベースプッシュ通知 WG (Web-Based Push Notifications Working Group) はユーザエージェントにプッシュ通知を配信依頼する、新規プッシュ通知受信登録する、新規プッシュ通知を監視する (RFC 8030) ためのプロトコルを開発しています。

機能仕様・グループ標準化段階現在の実装状況
Select browsers…
Peer-to-peer communicationsWebRTC 1.0: Real-Time Communication Between Browsers
WebRTC Working Group
勧告
Low-level I/OStreams Standard
WHATWG
Living Standard
HTTP network APIBeacon
Web Performance Working Group
勧告候補
Server-pushed requestsPush API
Web Applications Working Group
草案

調査中の項目

ウェブバックグラウンド同期 API (Web Background Synchronization API) の初期の目的は Service Worker ベースで、ブラウザが起動しているかどうかによらないバックグラウンドでのウェブアプリケーションによるコンテンツの送受信を目的としています。

ネットワーク情報 API (Network Information API) ではネットワーク状況の取得を目標としていましたが作業が中断し、いまは Web Platform Incubator Community Group (WICG) で議論が行われています。