SlideShare a Scribd company logo
1 of 33
1. 문서 목적 및 범위




2. 개요 및 필요성
구현현황(오픈소스) :
                                       pywebsocket ,
Web Socket API (Web application WG)    phpwebsocket,
                                       jWebSocket,
                                       web-socket- ruby,
                                       Socket.IO-node


                                      기타 :
                                      응용 방안: W3C Web&TV,…
                                      신규 표준 아이템? mobility..
                                                Web RFID API
WebSockets




http://tools.ietf.org/wg/hybi/   http://www.w3.org/TR/websockets/
Network comunication




 2007
                        API




 WHATWG
                  Web Socket API

                 Server-Sent Events
                                        W3C




  Web App WG
                    HTML5 Web
                     Messaging




API
                 Network information




Device
                        API
                   Web real-time



WG
WRT
                 communication API
                                       IETF
                                       HyBI




                Web socket protocol


                       DASH
                                        MPEG




                  AHS(Adaptive HTTP
                  Streaming)
                                        3GPP




                      WRAPI
                 (Web-Runtime API)
                OpenCM(Connection
                                       CD




                 Management) API
                                       OMA




               MobSocNet
               (MSN Enabler)
응용 분야 및 요구사항
구현 방안
                        Application
        Native

                        TCP/UDP/RTP




                 HTML     Web App
        Web
                 HTTP       ???
HTML Protocol 동작 개요 : Polling
HTML 1.0 vs HTML 1.1 : : Polling




         Connectionless
         Stateless -> (해결) Server-side
Web Page                   Web Application
Text-based Protocol         Two-Way Connection,
Connectionless, stateless   Dynamic, Real-time,…
Polling                     Push
(참고) Long Polling vs HTTP Streaming
 ( 원본 : @Kuruma )
Goal : Two-Way Communication
This specification defines an API that enables Web pages to
use the WebSocket protocol for two-way communication
with a remote host.
a socket that works anywhere across the web
Bidirectional
TCP-based independent App protocol
1. Script Execution

2. HTTP Handshake
 •   Port80, 443

3. WebSocket Data Transfer


@Kuruma
1. WebSocket(url [, protocol])

2. Event Handlers
 •   Onopen
 •   Onmessage
 •   Onerror
 •   onclose

3. Methods
 •   Boolean send(data)
 •   Void close()                @Kuruma
HTTP     TCP
                     HTTP Upgrade Request
                                            HTTP
1     Client                                Server




GET /chat HTTP/1.1
Host: example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Origin: http://example.com
Sec-WebSocket-Version: 6
HTTP     TCP
                             HTTP Upgrade Request
                                                          HTTP
  1    Client                                             Server


       HTTP     TCP                                       HTTP
  2    Client                                             Server
                      HTTP Switching Protocols Response




HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
HTTP     TCP
                                 HTTP Upgrade Request
                                                                  HTTP
1   Client                                                        Server


    HTTP     TCP                                                  HTTP
2   Client                                                        Server
                          HTTP Switching Protocols Response



    Web      TCP   WebSocket Messages                             Web
3   Socket                                                        Socket
                                           WebSocket Messages




                                            Binary or UTF8
                                            Messages or streams
 Websocket Protocol 기능 보완
 . 보안, 세션관리, Binary Data…
http://tools.ietf.org/wg/hybi/
http://www.w3.org/TR/websockets/




http://www.slideshare.net/rmoriz/pushing-the-web-websockets
( 원본 : @Kuruma )
W3C      W3C        W3C API
                          API      API        Third
                          First    Second     Draft
                          Draft    Draft




JAN                                                      IETF HyBi   IETF v00   IETF v01   IETF v02    IETF v03   IETF v04    IETF v05     IETF v06             ~80 drafts       APR
2009      First
                    [Revs 02 – 76]                       WG                                                                                                     so far and       2011
          Working                                        Adopts                                                                                                 still changing
          Draft


       1/9/09          4/23/09 10/29/09   12/22/09                   5/23/10    9/1/10     9/24/10    10/17/10     1/11/11 2/8/11        2/9/11       2/25/11    3/11/11

                                            Implemented                    Breaking change                  Potential Security Issue Identified
                                            in browsers v.75               WebSockets v.76                  WebSockets disabled
Ws
Ws
Ws

More Related Content

What's hot

Spring + WebSocket integration
Spring + WebSocket integrationSpring + WebSocket integration
Spring + WebSocket integrationOleksandr Semenov
 
Websockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalableWebsockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalableGareth Marland
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSocketsGunnar Hillert
 
Asynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and JavaAsynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and JavaJames Falkner
 
Real time web (Orbited) at BCNE3
Real time web (Orbited) at BCNE3Real time web (Orbited) at BCNE3
Real time web (Orbited) at BCNE3Alex Kavanagh
 
Websockets at tossug
Websockets at tossugWebsockets at tossug
Websockets at tossugclkao
 
WebRTC + Socket.io: building a skype-like video chat with native javascript
WebRTC + Socket.io: building a skype-like video chat with native javascriptWebRTC + Socket.io: building a skype-like video chat with native javascript
WebRTC + Socket.io: building a skype-like video chat with native javascriptMichele Di Salvatore
 
vlavrynovych - WebSockets Presentation
vlavrynovych - WebSockets Presentationvlavrynovych - WebSockets Presentation
vlavrynovych - WebSockets PresentationVolodymyr Lavrynovych
 
Realtime web application with java
Realtime web application with javaRealtime web application with java
Realtime web application with javaJeongHun Byeon
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)Peter Lubbers
 
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersWebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersViktor Gamov
 
HTML5 WebSocket Introduction
HTML5 WebSocket IntroductionHTML5 WebSocket Introduction
HTML5 WebSocket IntroductionMarcelo Jabali
 
Server-Sent Events (real-time HTTP push for HTML5 browsers)
Server-Sent Events (real-time HTTP push for HTML5 browsers)Server-Sent Events (real-time HTTP push for HTML5 browsers)
Server-Sent Events (real-time HTTP push for HTML5 browsers)yay w00t
 

What's hot (20)

Intro to WebSockets
Intro to WebSocketsIntro to WebSockets
Intro to WebSockets
 
The HTML5 WebSocket API
The HTML5 WebSocket APIThe HTML5 WebSocket API
The HTML5 WebSocket API
 
Web sockets in Java
Web sockets in JavaWeb sockets in Java
Web sockets in Java
 
Spring + WebSocket integration
Spring + WebSocket integrationSpring + WebSocket integration
Spring + WebSocket integration
 
Websockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalableWebsockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalable
 
WebSockets in JEE 7
WebSockets in JEE 7WebSockets in JEE 7
WebSockets in JEE 7
 
Websockets and SockJS, Real time chatting
Websockets and SockJS, Real time chattingWebsockets and SockJS, Real time chatting
Websockets and SockJS, Real time chatting
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
 
Asynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and JavaAsynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and Java
 
Php push notifications
Php push notificationsPhp push notifications
Php push notifications
 
Real time web (Orbited) at BCNE3
Real time web (Orbited) at BCNE3Real time web (Orbited) at BCNE3
Real time web (Orbited) at BCNE3
 
Websockets at tossug
Websockets at tossugWebsockets at tossug
Websockets at tossug
 
WebRTC + Socket.io: building a skype-like video chat with native javascript
WebRTC + Socket.io: building a skype-like video chat with native javascriptWebRTC + Socket.io: building a skype-like video chat with native javascript
WebRTC + Socket.io: building a skype-like video chat with native javascript
 
vlavrynovych - WebSockets Presentation
vlavrynovych - WebSockets Presentationvlavrynovych - WebSockets Presentation
vlavrynovych - WebSockets Presentation
 
Realtime web application with java
Realtime web application with javaRealtime web application with java
Realtime web application with java
 
WebSockets with Spring 4
WebSockets with Spring 4WebSockets with Spring 4
WebSockets with Spring 4
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
 
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersWebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
 
HTML5 WebSocket Introduction
HTML5 WebSocket IntroductionHTML5 WebSocket Introduction
HTML5 WebSocket Introduction
 
Server-Sent Events (real-time HTTP push for HTML5 browsers)
Server-Sent Events (real-time HTTP push for HTML5 browsers)Server-Sent Events (real-time HTTP push for HTML5 browsers)
Server-Sent Events (real-time HTTP push for HTML5 browsers)
 

Similar to Ws

Jsp & Ajax
Jsp & AjaxJsp & Ajax
Jsp & AjaxAng Chen
 
Camelone-2012 HTML5 WebSocket ActiveMQ/Camel
Camelone-2012 HTML5 WebSocket ActiveMQ/CamelCamelone-2012 HTML5 WebSocket ActiveMQ/Camel
Camelone-2012 HTML5 WebSocket ActiveMQ/CamelCharles Moulliard
 
Codecamp iasi-26 nov 2011-web sockets
Codecamp iasi-26 nov 2011-web socketsCodecamp iasi-26 nov 2011-web sockets
Codecamp iasi-26 nov 2011-web socketsCodecamp Romania
 
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsCodecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsFlorin Cardasim
 
WebSockets On Fire
WebSockets On FireWebSockets On Fire
WebSockets On FireJef Claes
 
Web sockets - Pentesting
Web sockets - Pentesting Web sockets - Pentesting
Web sockets - Pentesting Vandana Verma
 
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Marcin Bielak
 
Websocket vs SSE - Paris.js - 24/06/15
Websocket vs SSE - Paris.js - 24/06/15Websocket vs SSE - Paris.js - 24/06/15
Websocket vs SSE - Paris.js - 24/06/15streamdata.io
 
Connected Web Systems
Connected Web SystemsConnected Web Systems
Connected Web SystemsDamir Dobric
 
WebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! FrameworkWebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! FrameworkFabio Tiriticco
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Alex carcea, radu macovei a story of how java script joined the big league
Alex carcea, radu macovei   a story of how java script joined the big leagueAlex carcea, radu macovei   a story of how java script joined the big league
Alex carcea, radu macovei a story of how java script joined the big leagueCodecamp Romania
 
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)Ericom Software
 
Server-Side Programming Primer
Server-Side Programming PrimerServer-Side Programming Primer
Server-Side Programming PrimerIvano Malavolta
 

Similar to Ws (20)

Jsp & Ajax
Jsp & AjaxJsp & Ajax
Jsp & Ajax
 
Camelone-2012 HTML5 WebSocket ActiveMQ/Camel
Camelone-2012 HTML5 WebSocket ActiveMQ/CamelCamelone-2012 HTML5 WebSocket ActiveMQ/Camel
Camelone-2012 HTML5 WebSocket ActiveMQ/Camel
 
Websocket
WebsocketWebsocket
Websocket
 
Codecamp iasi-26 nov 2011-web sockets
Codecamp iasi-26 nov 2011-web socketsCodecamp iasi-26 nov 2011-web sockets
Codecamp iasi-26 nov 2011-web sockets
 
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsCodecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
 
Cometdの紹介
Cometdの紹介Cometdの紹介
Cometdの紹介
 
WebSockets On Fire
WebSockets On FireWebSockets On Fire
WebSockets On Fire
 
Web sockets - Pentesting
Web sockets - Pentesting Web sockets - Pentesting
Web sockets - Pentesting
 
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
 
Websocket vs SSE - Paris.js - 24/06/15
Websocket vs SSE - Paris.js - 24/06/15Websocket vs SSE - Paris.js - 24/06/15
Websocket vs SSE - Paris.js - 24/06/15
 
Connected Web Systems
Connected Web SystemsConnected Web Systems
Connected Web Systems
 
WebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! FrameworkWebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! Framework
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Servlet by Rj
Servlet by RjServlet by Rj
Servlet by Rj
 
Websocket shanon
Websocket shanonWebsocket shanon
Websocket shanon
 
Alex carcea, radu macovei a story of how java script joined the big league
Alex carcea, radu macovei   a story of how java script joined the big leagueAlex carcea, radu macovei   a story of how java script joined the big league
Alex carcea, radu macovei a story of how java script joined the big league
 
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
 
111214 node conf
111214 node conf111214 node conf
111214 node conf
 
Server-Side Programming Primer
Server-Side Programming PrimerServer-Side Programming Primer
Server-Side Programming Primer
 

Recently uploaded

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Ws

  • 1.
  • 2. 1. 문서 목적 및 범위 2. 개요 및 필요성
  • 3. 구현현황(오픈소스) : pywebsocket , Web Socket API (Web application WG) phpwebsocket, jWebSocket, web-socket- ruby, Socket.IO-node 기타 : 응용 방안: W3C Web&TV,… 신규 표준 아이템? mobility.. Web RFID API
  • 4.
  • 5. WebSockets http://tools.ietf.org/wg/hybi/ http://www.w3.org/TR/websockets/
  • 6. Network comunication 2007 API WHATWG Web Socket API Server-Sent Events W3C Web App WG HTML5 Web Messaging API Network information Device API Web real-time WG WRT communication API IETF HyBI Web socket protocol DASH MPEG AHS(Adaptive HTTP Streaming) 3GPP WRAPI (Web-Runtime API) OpenCM(Connection CD Management) API OMA MobSocNet (MSN Enabler)
  • 7. 응용 분야 및 요구사항
  • 8. 구현 방안 Application Native TCP/UDP/RTP HTML Web App Web HTTP ???
  • 9. HTML Protocol 동작 개요 : Polling
  • 10. HTML 1.0 vs HTML 1.1 : : Polling Connectionless Stateless -> (해결) Server-side
  • 11.
  • 12. Web Page Web Application Text-based Protocol Two-Way Connection, Connectionless, stateless Dynamic, Real-time,… Polling Push
  • 13. (참고) Long Polling vs HTTP Streaming ( 원본 : @Kuruma )
  • 14. Goal : Two-Way Communication
  • 15. This specification defines an API that enables Web pages to use the WebSocket protocol for two-way communication with a remote host.
  • 16. a socket that works anywhere across the web Bidirectional TCP-based independent App protocol
  • 17. 1. Script Execution 2. HTTP Handshake • Port80, 443 3. WebSocket Data Transfer @Kuruma
  • 18. 1. WebSocket(url [, protocol]) 2. Event Handlers • Onopen • Onmessage • Onerror • onclose 3. Methods • Boolean send(data) • Void close() @Kuruma
  • 19.
  • 20.
  • 21.
  • 22. HTTP TCP HTTP Upgrade Request HTTP 1 Client Server GET /chat HTTP/1.1 Host: example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Sec-WebSocket-Origin: http://example.com Sec-WebSocket-Version: 6
  • 23. HTTP TCP HTTP Upgrade Request HTTP 1 Client Server HTTP TCP HTTP 2 Client Server HTTP Switching Protocols Response HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
  • 24. HTTP TCP HTTP Upgrade Request HTTP 1 Client Server HTTP TCP HTTP 2 Client Server HTTP Switching Protocols Response Web TCP WebSocket Messages Web 3 Socket Socket WebSocket Messages Binary or UTF8 Messages or streams
  • 25.  Websocket Protocol 기능 보완 . 보안, 세션관리, Binary Data…
  • 27.
  • 28.
  • 29. ( 원본 : @Kuruma )
  • 30. W3C W3C W3C API API API Third First Second Draft Draft Draft JAN IETF HyBi IETF v00 IETF v01 IETF v02 IETF v03 IETF v04 IETF v05 IETF v06 ~80 drafts APR 2009 First [Revs 02 – 76] WG so far and 2011 Working Adopts still changing Draft 1/9/09 4/23/09 10/29/09 12/22/09 5/23/10 9/1/10 9/24/10 10/17/10 1/11/11 2/8/11 2/9/11 2/25/11 3/11/11 Implemented Breaking change Potential Security Issue Identified in browsers v.75 WebSockets v.76 WebSockets disabled

Editor's Notes

  1. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  2. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  3. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  4. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  5. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  6. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  7. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  8. Long Polling : COMET technique, (http://en.wikipedia.org/wiki/Comet_(programming)) W3C, Server-Sent Event SpecificationHidden iFrame
  9. HTTP Live Streaming (also known as HLS) is an HTTP-based media streamingcommunications protocol implemented by Apple Inc. as part of their QuickTime X and iPhone software systems. It works by breaking the overall stream into a sequence of small HTTP-based file downloads, each download loading one short chunk of an overall potentially unbounded transport streamQuickTime Player
  10. HTTP Live Streaming (also known as HLS) is an HTTP-based media streamingcommunications protocol implemented by Apple Inc. as part of their QuickTime X and iPhone software systems. It works by breaking the overall stream into a sequence of small HTTP-based file downloads, each download loading one short chunk of an overall potentially unbounded transport streamQuickTime Player
  11. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  12. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  13. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  14. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser
  15. Real Time Web - web apps (Twitter, Facebook, Stock Tickers, Games) - its HARD to push information to a browser