Recommended
PDF
PDF
PPTX
Chromebook 「だけ」で WebRTCを動かそう
PDF
PDF
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PDF
WebRTC UserMedia Catalog: いろんなユーザメディア(MediaStream)を使ってみよう
PPT
PDF
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
PDF
WebSocket Protocol と Plack::Middleware::WebSocket
PDF
PPTX
PDF
【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」
PDF
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
PPTX
SCUGJ第18回勉強会:よろしい、ならばVMMだ
PPTX
WebRTC multitrack / multistream
PDF
【第5回】渋谷Unity技術勉強会 - WebPlayer面白いよ!
PDF
HTTP/2 in nginx(2016/3/11 社内勉強会)
PPT
PDF
Havana版 RDO-QuickStart-2 (140421-Havana-RDO-QuickStart-2.pdf)
PDF
配布用Cacti running with cherokee
PPTX
Interact2017:Windows Container "Overlay" Networking
PDF
Docker+CoreOS+GCEで自動スケール分散レイトレ
PDF
CROSS 2016 LT - 我々のIoTデバイスがこんなに多いはずが無い
ODP
PDF
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
PDF
Word press on conoha このべん #3
PDF
PDF
Firefox Security Features
PDF
いよいよ始められる Java EEでのWebSocket #jjug #jjug_ccc #ccc_r21
PDF
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
More Related Content
PDF
PDF
PPTX
Chromebook 「だけ」で WebRTCを動かそう
PDF
PDF
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PDF
WebRTC UserMedia Catalog: いろんなユーザメディア(MediaStream)を使ってみよう
PPT
PDF
Havana版 RDO-QuickStart-3 (140421-Havana-RDO-QuickStart-3.pdf)
What's hot
PDF
WebSocket Protocol と Plack::Middleware::WebSocket
PDF
PPTX
PDF
【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」
PDF
Havana版 RDO-QuickStart-4 (140421-Havana-RDO-QuickStart-4.pdf)
PPTX
SCUGJ第18回勉強会:よろしい、ならばVMMだ
PPTX
WebRTC multitrack / multistream
PDF
【第5回】渋谷Unity技術勉強会 - WebPlayer面白いよ!
PDF
HTTP/2 in nginx(2016/3/11 社内勉強会)
PPT
PDF
Havana版 RDO-QuickStart-2 (140421-Havana-RDO-QuickStart-2.pdf)
PDF
配布用Cacti running with cherokee
PPTX
Interact2017:Windows Container "Overlay" Networking
PDF
Docker+CoreOS+GCEで自動スケール分散レイトレ
PDF
CROSS 2016 LT - 我々のIoTデバイスがこんなに多いはずが無い
ODP
PDF
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
PDF
Word press on conoha このべん #3
PDF
PDF
Firefox Security Features
Similar to JavaプログラマのためのWebSocket概要
PDF
いよいよ始められる Java EEでのWebSocket #jjug #jjug_ccc #ccc_r21
PDF
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
PDF
WebSocket + Node.jsでつくるチャットアプリ
PDF
PDF
PDF
PDF
PDF
WebSocket Chat App Hands On on Microsoft Azure
PDF
PDF
PDF
Html5, Web Applications 2
PPTX
PPTX
SL囲む会東京5 Nodejs×Silverlightではまったこと
PDF
PlayFramework1.2.4におけるWebSocket
PDF
PDF
Janogia20120921 yoshinotakeshi
PDF
PPTX
PDF
PDF
Firefox os勉強会 2nd WEB屋さんがWEBアプリを作ってみた
More from Shumpei Shiraishi
PPTX
JavaScript使いのためのTypeScript実践入門
PPTX
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
PDF
WebRTCがビデオ会議市場に与えるインパクトを探る
PPTX
コンセプトのつくりかた - アイデアをかたちにする技術
PDF
PPTX
「1秒でわかる!アパレル業界ハンドブック」を読んで
PPTX
PPTX
PPTX
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
PPTX
PPTX
PPTX
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
PPTX
PDF
PPTX
PPTX
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
PPT
PPTX
PPTX
PPTX
Recently uploaded
PDF
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
PDF
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
PPTX
PDF
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
JavaプログラマのためのWebSocket概要 1. 2. 自己紹介
白石俊平と申します。
HTML5開発者コミュニティhtml5j.org管理人(会員
数5,000名超)
HTML5とか勉強会主催(毎月一回、100名を動員)
Google API Expert (HTML5)
Microsoft Most Valuable Professional (IE9)
Twitter: @Shumpei
著書:HTML5&API入門
3. 4. WebSocketとは何か?
リアルタイム・ウェブをもたらす技術として
非常に期待されている
実態は、TCP上に構築された双方向のソケッ
ト通信プロトコル
HTTPをベースにしているため、Webとの親和
性が非常に高い
Webブラウザからの利用を主眼としている
ファイアウォールを超えられる
5. WebSocketの動作原理
1. 通常のHTTP GETリクエストを用いて、サーバ
に接続
2. サーバがWebSocketに対応していれば、その接
続をそのままWebSocketの通信経路として「張
りっぱなし」にする。
Server Server
TCP
TCP
HTTP 双方向
GET 接 通信 接
続 続
6. クライアントとサーバの対称性
一度接続が確立してしまえば、クライアントと
サーバの間で役割やできることの違いはほとんど
ない
・テキスト送受信
・バイナリ送受信
・通信の圧縮
・ping
・...
クライアント サーバ
7. 8. 9. 10. 11. 仕様
プロトコル
IETFにより標準化(RFC6455)
JavaScript API
W3Cにより標準化(The
WebSocket API)
勧告候補というステータス
12. 13. WebSocketハンドシェイク
Upgradeヘッダ付きのGETリクエストに対し、
サーバが「101 Switching Protocols」で応答す
れば、接続確立
GET /chat HTTP/1.1 HTTP/1.1 101 Switching Protocols
Host: server.example.com Upgrade: websocket
Upgrade: websocket Connection: Upgrade
Connection: Upgrade Sec-WebSocket-Accept: YYY
Sec-WebSocket-Key: XXX Sec-WebSocket-Protocol: chat
Origin: http://example.com
Sec-WebSocket-Protocol: chat
Sec-WebSocket-Version: 13
14. フレームフォーマット
6-14バイトの小さなヘッダを付与
ペイロード長は最大2^64バイト
バイト長
1 2 3 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
R R R M
S S S A
FI V V V S
N 1 2 3 opcode K ペイロード長 拡張ペイロード長(ペイロード長が126の場合)
拡張ペイロード長(ペイロード長が127の場合)
拡張ペイロード長(ペイロード長が127の場合) マスクキー
マスクキー データ本体
データ本体…
15. プロトコルの拡張が可能
圧縮やマルチプレクサなどの拡張が提案され
ている
GET /chat HTTP/1.1 HTTP/1.1 101 Switching Protocols
Host: server.example.com Upgrade: websocket
Upgrade: websocket Connection: Upgrade
Connection: Upgrade Sec-WebSocket-Extensions: deflate-
Sec-WebSocket-Key: XXX frame
Origin: http://example.com Sec-WebSocket-Accept: YYY
Sec-WebSocket-Extensions: deflate-frame Sec-WebSocket-Protocol: chat
Sec-WebSocket-Protocol: chat
Sec-WebSocket-Version: 13
16. サブプロトコル
WebSocketは、接続確立後はシンプルなTCP
ソケット通信とみなすことが可能。
→WebSocket上で新たなプロトコルが構築さ
れることを当初から想定している
GET /chat HTTP/1.1 HTTP/1.1 101 Switching Protocols
Host: server.example.com Upgrade: websocket
Upgrade: websocket Connection: Upgrade
Connection: Upgrade Sec-WebSocket-Accept: YYY
Sec-WebSocket-Key: XXX Sec-WebSocket-Protocol: chat
Origin: http://example.com
Sec-WebSocket-Protocol: chat
Sec-WebSocket-Version: 13
17. 18. WebSocketのJavaScript API
WebSocket APIは比較的実装が進んでいる
IE Firefox Chrome Safari Opera iOS Android
Safari Browser
10.0 ○ ○ 6.0 12.1 6.0 ×
19. 20. 21. 22.