SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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 a 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 a 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
 

Último

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 

Último (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 

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

Notas del editor

  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