WebSocketとは?wss://とws://の違い、ポート番号は443と80

30秒でわかる答え

WebSocketは、一度つないだら開けたままにして、ブラウザとサーバーのどちらからでも送れる通信の仕組みです。wss:// は暗号化したつなぎ先、ws:// は暗号化なしの書き方。関係は https:// と http:// と同じで、ポート番号は443と80です。

ユイ

チャットの画面を調べていたら、wss:// で始まる行がありました。https の打ちまちがいでしょうか

ピコ

まちがいじゃないよ。WebSocketっていう、開けたままの扉の住所なんだ

アドレスの先頭に付く wss:// は、暗号化されたWebSocketのつなぎ先を表す書き方です。暗号化なしが ws://、暗号化ありが wss://。関係は http:// と https:// と同じです。

WebSocketは、一度つないだら道を開けたままにして、ブラウザとサーバーのどちらからでも送れる通信の仕組みです。ユイが見つけたのが ws:// ではなく wss:// だったのにも、理由があります。

wssとは?ws://との違いとポート番号

2つの書き方を決めたのは、2011年に出たWebSocketの仕様書、RFC 6455です。

見る点ws://wss://
暗号化なしあり(TLS)
書かないときのポート番号80443
対になるWebの書き方http://https://
https:// のページからほとんどのブラウザが許さないつなげる

※ 1〜2行目はRFC 6455、3行目はブラウザ向けの仕様書(WebSockets Standard)、4行目はMDNの記載です。

RFC 6455は、wss で始まるつなぎ先を「secure(安全な)」と呼んでいます。https の s と同じ役目で、使う暗号化も同じTLSです。途中でのぞかれにくく、書きかえに気づけ、相手のサーバーを確かめられます。守る範囲はHTTPSと変わりません。だれがつないでよいか、だれに何を見せるかは、サービスの側が別に確かめます。

ポート番号は、同じコンピューターの中で届け先の窓口を分ける番号です(ポート番号とは)。サーバーの名前のすぐ後ろに :8443 のように書けば、別の番号も選べます。

ユイの見た行が wss:// だった理由は、4行目です。調べていたチャットは https:// のページでした。そこから ws:// へは、つながせてもらえません。

意外なのは、つながりやすさです。RFC 6455には、書かれた2011年の時点で、443番のほうが80番よりずっとつながりやすかった、とあります。安全なほうが、通りやすくもあったわけです。

では、開けたままの扉は、いつものページの通信と何が違うのでしょう。

TERM PRIMER

WebSocket|この記事に出てくる言葉

WebSocket
サーバーとブラウザをつなぎっぱなしにして、リアルタイムにやり取りするしくみです。
リアルタイム通信
チャットやライブ配信のように、ほぼその場で情報を届ける通信です。
HTTP
Webで「このページをください」というお願いと、データや結果を伝える返事をやり取りするためのルールです。
wss
WebSocketの通信を暗号化して行う方式です。
サーバー
データを保存したり、ほかの端末に届けたりする役割を持つコンピューターです。

WebSocketの双方向通信とは?HTTPとの違い

イト

チャットって、何もしてないのに相手のが出てくるよね。だれが「新しいのある?」って聞いてるの

マコト

いい所に気づいたね。ふつうのページは、こっちが聞かないかぎり返事が来ないんだ

HTTPの基本の形は、ブラウザがお願いを出し、サーバーが返事を返して1回が終わります(HTTPとは)。サーバーから先に送る番はありません。

そこで昔は、新着を知るために、ブラウザが何度も聞きに行きました。ポーリングという方法です。物語の第80話でイトが試すと、0.05秒おきに聞いた6秒間で、お願いは120回。119回は「変わっていません」という返事でした。

WebSocketは、最初に1回つないだら、その道を開けたままにします。開いているあいだは、ブラウザからもサーバーからも、相手を待たずに送れます。どちらからでも送れるので、双方向通信と呼びます。同じ6秒が、道を開く1回と、知らせ1通で済みました。

イトとユイとピコが、開いたままの連絡口を通る双方向の光を見ている
WebSocketは、一度つないだ道を開けたままにして、ブラウザとサーバーのどちらからでも送ります。
見る点HTTPの基本の形WebSocket
通信の形お願い1回に、返事1回一度つないだら、開けたまま
先に送れるのはブラウザだけブラウザとサーバーの両方
アドレスの先頭http://・https://ws://・wss://
向いている場面ページを開く、画像を取る、フォームを送るチャット、ゲーム、刻々と変わる数字

WebSocketはHTTPの新しい版ではなく、別の決まりごとです。それなのに、つなぎ始めの一言だけはHTTPで話します。

どうやってつなぐ?最初はHTTP、返事は101

  1. ブラウザが、HTTPのお願いに「WebSocketへ切りかえたい」と書いて送る(Upgrade: websocket)
  2. サーバーが受け入れると、返事の1行目は HTTP/1.1 101 Switching Protocols になる
  3. そこから同じ道の上で、どちらからでも送り合う
  4. 終わるときは、片方が「閉じます」の合図を送り、相手も同じ合図を返す

101は「決まりごとを切りかえます」という番号です。ページが開けたときの200ではありません。RFC 6455は、101以外の番号が返ったら切りかえは済んでいない、と決めています。

HTTPで始めるのは、Webの入口である80番と443番を、HTTPのサーバーと分け合って使うためです。WebSocketだけの新しい入口を作らずに済みます。

こうして開く扉の住所は、公開されている文書に、そのまま書いてあります。

WebSocketはどこで使われている?

RFC 6455が例に挙げるのは、チャット、ゲーム、株価の表示、何人もで同時に書きこむ編集画面です。どれも、サーバーの側で起きた変化を、すぐ画面に出したい場面です。

どこで公式の文書に書いてあること
Discordアプリやボットが出来事を受け取る入口は、暗号化したWebSocket。つなぎ先の例は wss://gateway.discord.gg/
Twitchチャットを読み書きするプログラムのつなぎ先は wss://irc-ws.chat.twitch.tv:443
OBS Studio外のアプリから配信ソフトを動かす入口がWebSocket。「ツール」→「WebSocket サーバー設定」で、最初のポート番号は4455
マインクラフト(Bedrock Edition)/connect(/wsserver)コマンドで、指定したWebSocketサーバーへつなぐ。チートを有効にした世界でだけ使える

※ どれも開発者向けの公式文書の記載です(2026年10月10日確認)。

Twitchの行の最後にある :443 が、ポート番号です。OBS Studioの入口は、パスワードで守るよう公式が強く勧めています。

WebSocketは運ぶ道で、チャットそのものではありません。保存、既読、通知は別の仕組みの担当です(チャットの仕組み)。画面を閉じているあいだの知らせも、プッシュ通知が受け持ちます。

画面を開いているあいだの扉なら、自分でのぞけます。

自分の画面で確かめるには?Chromeで見る手順

パソコンのChromeなら、開発者ツールでやり取りの中身まで見られます。手順はChromeの公式ドキュメントのとおりです。

  1. 調べたいページで F12 キーを押す(Macは Command+Option+I)
  2. 「ネットワーク」パネルを開き、ページを読み込み直す
  3. 種類のボタンから「WS」を選ぶ
  4. 「名前」の列でWebSocketの行を選び、「メッセージ」タブを開く
  5. 並んだやり取りを見る。送ったテキストは薄い緑、受け取ったテキストは白

※ 2024年7月更新の公式ドキュメントの手順です。出るのは直近の100件。記録されるのは開発者ツールを開いているあいだの通信なので、2で読み込み直します。

メッセージには、ログイン中の自分の情報が入っていることがあります。画面を写して、公開の場所に貼らないでください。

ポーリング・SSE・WebTransportとの使い分け

変化をすぐ知らせる方法は、WebSocketだけではありません。

仕組み送れる向き特徴
ポーリングブラウザが聞き、サーバーが答える間隔が長いと遅れ、短いと空振りが増える
Server-Sent Events(SSE)サーバーからブラウザへの一方向ニュースやSNSの新着のように、受け取るだけの更新に向く
WebSocket双方向対応するブラウザとサーバーが多い
WebTransport双方向HTTP/3の上で動く。順番どおりでなくても、届かなくてもよい送り方を選べる

※ 2〜4行目はMDNの説明によります。

選び方は、送る向きで決まります。受け取るだけならSSE、こちらからも送るならWebSocketです。

WebTransportは新顔で、最新のブラウザと端末でそろって使えるようになったのは2026年3月です。MDNは、多くの用途でWebSocketに置きかわっていく見込みだとしたうえで、幅広いブラウザに対応したいふつうの用途にはWebSocketを勧めています。方法の全体はリアルタイム通信とはで見渡せます。

ただ、開けたままにできるのは、道がつながっているあいだだけです。

開けたままの道が切れたら?

イト

開けたままなら、ずっとつながってるってこと?

ピコ

扉は開けておけても、そこまでの道が切れるんだ。スマホが眠ったり、電車で回線が変わったりね

切れていないかは、合図で確かめます。片方がPingという合図を送ると、相手はPongを返す決まりです。開発者ツールのメッセージ欄では、薄い黄色の行がこうした合図です。

切れたら、つなぎ直します。ここにも決まりがあります。RFC 6455は、最初のつなぎ直しを、でたらめに選んだ時間だけ待ってから始めるよう勧めています。目安は0〜5秒。失敗が続けば、待つ時間を延ばします。全員が同時につなぎ直すと、サーバーが攻撃を受けたのと同じ状態になるからです。

マコトとユイとピコが、途切れた連絡口と再接続の光の橋を確認している
道が切れたら、つなぎ直して、届かなかったぶんを取り直します。

つなぎ直しても、切れていたあいだの知らせは自動では戻りません。届かなかったぶんを取り直すのは、アプリの仕事です。チャットで、しばらく切れたあとに未読がまとめて出てくるのが、この取り直しです。

確認クイズ:wssとWebSocketを説明できる?

Q1. wssとは何ですか?

A. 暗号化されたWebSocketのつなぎ先を表す、アドレスの先頭の書き方です。暗号化なしは ws:// で、書かないときのポート番号は wss:// が443、ws:// が80です。

Q2. WebSocketは、HTTPと何が違いますか?

A. HTTPの基本の形は、お願い1回に返事1回です。WebSocketは一度つないだ道を開けたままにして、ブラウザとサーバーのどちらからでも送れます。つなぎ始めだけはHTTPを使い、返事の番号は101です。

Q3. httpsのページから、ws:// にはつなげますか?

A. ほとんどのブラウザで、つなげません。https:// のページからは wss:// を使います。

次にwss://を見かけたら

ユイは、さっきの行をもう一度開きました。先頭は wss://。「メッセージ」タブでは、何も押していないのに、白い行が1つ増えます。むこうから届いた知らせです。

打ちまちがいではありませんでした。暗号化された、開けたままの扉です。

あなたの画面で wss:// を見かけたら、s は暗号化、その先は開けたままの道、と読んでください。むこうからの知らせを、待っているところです。

WebSocketの参考資料

  • RFC 6455: The WebSocket Protocol(IETF / RFC Editor、2026-10-10閲覧)
  • WebSockets Standard(WHATWG、2026-10-10閲覧)
  • ネットワーク機能のリファレンス「WebSocket 接続のメッセージを分析する」(Chrome for Developers、2026-10-10閲覧)
  • Chrome DevTools を開く(Chrome for Developers、2026-10-10閲覧)
  • WebSocket クライアントアプリケーションを書く(MDN Web Docs、2026-10-10閲覧)
  • WebSocket API (WebSockets)(MDN Web Docs、2026-10-10閲覧)
  • ウェブトランスポート API(MDN Web Docs、2026-10-10閲覧)
  • EventSource(MDN Web Docs、2026-10-10閲覧)
  • Gateway(Discord Developer Documentation、2026-10-10閲覧)
  • IRC Concepts(Twitch Developers、2026-10-10閲覧)
  • obs-websocket(README)(OBS Project、2026-10-10閲覧)
  • obs-websocket 設定画面の日本語表示(ja-JP.ini)(OBS Project、2026-10-10閲覧)
  • /wsserver Command(Microsoft Learn(Minecraft: Bedrock Edition Creator Documentation)、2026-10-10閲覧)

内容の最終確認日:

この記事について

LAB WHITEBOARD

WebSocketを一文で説明してみよう

「WebSocketが一度つないだ道を開けたまま双方向に送る仕組みであること、wss:// と ws:// の違いとポート番号、HTTPとの違い、使われる場面を説明できるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。

編集部の実践ガイド

ウイルス対策ソフトの考え方と選び方

乗っ取りやフィッシングへの備えを、パスワード管理と合わせて整理します。

VPNは必要か+初心者向けの選び方

外出先のWi-Fiでログインする場面では、VPNの要否も確認できます。