13
WEBSOCKETS Rodrigo Constantin Ctenas Zaccara 6367629 Wednesday, November 23, 2011

WebSockets

Embed Size (px)

DESCRIPTION

Pequena apresentação de 15 minutos sobre WebSockets na disciplina de "programação para redes de computadores"

Citation preview

Page 1: WebSockets

WEBSOCKETSRodr igo Constant in Ctenas Zaccara

6367629

Wednesday, November 23, 2011

Page 2: WebSockets

STANDARDIZATION

• Internet Engineering Task Force

• Protocol

• World Wide Web Consortium

• JavaScript API

Wednesday, November 23, 2011

Page 3: WebSockets

PROTOCOL

Wednesday, November 23, 2011

Page 4: WebSockets

HANDSHAKE

• HTTP

• Connection: upgrade

• Upgrade: websocket

• Sec-WebSocket-* headers

Wednesday, November 23, 2011

Page 5: WebSockets

MESSAGE EXCHANGE

0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-------+-+-------------+-------------------------------+|F|R|R|R| opcode|M| Payload len | Extended payload length ||I|S|S|S| (4) |A| (7) | (16/63) |

|N|V|V|V| |S| | (if payload len==126/127) || |1|2|3| |K| | |+-+-+-+-+-------+-+-------------+ - - - - - - - - - - - - - - - +| Extended payload length continued, if payload len == 127 |+ - - - - - - - - - - - - - - - +-------------------------------+

| |Masking-key, if MASK set to 1 |+-------------------------------+-------------------------------+| Masking-key (continued) | Payload Data |+-------------------------------- - - - - - - - - - - - - - - - +: Payload Data continued ... :

+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +| Payload Data continued ... |+---------------------------------------------------------------+

Wednesday, November 23, 2011

Page 6: WebSockets

JAVASCRIPT API

Wednesday, November 23, 2011

Page 7: WebSockets

METHODS

• send

• Callback style

• onopen

• onclose

• onerror

• onmessage

Wednesday, November 23, 2011

Page 8: WebSockets

COMPARISON

Wednesday, November 23, 2011

Page 9: WebSockets

HTTP POOLING

• protocol overhead: 600 bytes

users Traffic (bytes) Traffic (Mbps)

1000 600000 4.5

10000 6000000 45

100000 60000000 450

Wednesday, November 23, 2011

Page 10: WebSockets

WEBSOCKET

• protocol overhead: 2 bytes

users Traffic (bytes) Traffic (Mbps)

1000 2000 0.019

10000 20000 0.19

100000 200000 1.9

Wednesday, November 23, 2011

Page 11: WebSockets

DEMO

Wednesday, November 23, 2011

Page 12: WebSockets

CONCLUSION

• WebSocket is the choice for web real time communication

• Very efficient network traffic

• Full duplex (connection always ready for client and server)

Wednesday, November 23, 2011

Page 13: WebSockets

WEBSOCKETSRodr igo Constant in Ctenas Zaccara

6367629

Wednesday, November 23, 2011