xref: /aosp_15_r20/external/cronet/net/websockets/README.md (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# WebSocket protocol
2*6777b538SAndroid Build Coastguard Worker
3*6777b538SAndroid Build Coastguard WorkerThis directory contains the implementation of
4*6777b538SAndroid Build Coastguard Worker[the WebSocket protocol](https://tools.ietf.org/html/rfc6455).
5*6777b538SAndroid Build Coastguard Worker
6*6777b538SAndroid Build Coastguard Worker## Design docs
7*6777b538SAndroid Build Coastguard Worker
8*6777b538SAndroid Build Coastguard Worker* [WebSocketBasicHandshakeStream design
9*6777b538SAndroid Build Coastguard Worker  memo](https://docs.google.com/document/d/1r7dQDA9AQBD_kOk-z-yMi0WgLQZ-5m7psMO5pYLFUL8/edit).
10*6777b538SAndroid Build Coastguard Worker  Some details have changed, but still a mostly-accurate description of
11*6777b538SAndroid Build Coastguard Worker  Chromium's current implementation.
12*6777b538SAndroid Build Coastguard Worker* [WebSocket Throttling
13*6777b538SAndroid Build Coastguard Worker  Design](https://docs.google.com/document/d/1a8sUFQsbN5uve7ziW61ATkrFr3o9A-Tiyw8ig6T3puA/edit)
14*6777b538SAndroid Build Coastguard Worker  discusses how we enforce WebSocket connection throttling. Also contains
15*6777b538SAndroid Build Coastguard Worker  detailed discussion of how WebSockets integrate with the socket pools. Dates
16*6777b538SAndroid Build Coastguard Worker  from 2014, but still mostly relevant.
17*6777b538SAndroid Build Coastguard Worker* [WebSockets over
18*6777b538SAndroid Build Coastguard Worker  HTTP/2](https://docs.google.com/document/d/1ZxaHz4j2BDMa1aI5CQHMjtFI3UxGT459pjYv4To9rFY/edit).
19*6777b538SAndroid Build Coastguard Worker  Current as of 2019 description of WebSocket over H/2 implementation.
20*6777b538SAndroid Build Coastguard Worker* [WebSocket + Network Service + WebRequest
21*6777b538SAndroid Build Coastguard Worker  API](https://docs.google.com/document/d/1L85aXX-m5NaV-g223lH7kKB2HPg6kMi1cjrDVeEptE8/edit):
22*6777b538SAndroid Build Coastguard Worker  design for how extension callbacks are called when the network service is
23*6777b538SAndroid Build Coastguard Worker  enabled.
24*6777b538SAndroid Build Coastguard Worker* [WebSocket HTTP Auth
25*6777b538SAndroid Build Coastguard Worker  Design](https://docs.google.com/document/d/129rLtf5x3hvhP5rayLiSxnEjOXS8Z7EnLJgBL4CdwjI/edit).
26*6777b538SAndroid Build Coastguard Worker  This document is very low on detail, but can serve as an overview of how auth
27*6777b538SAndroid Build Coastguard Worker  works for WebSockets.
28*6777b538SAndroid Build Coastguard Worker* [Per-renderer WebSocket
29*6777b538SAndroid Build Coastguard Worker  throttling](https://docs.google.com/document/d/1aw2oN5PKfk-1gLnBrlv1OwLA8K3-ykM2ckwX2lubTg4/edit).
30*6777b538SAndroid Build Coastguard Worker  While the algorithm described in this document is still used, the code has
31*6777b538SAndroid Build Coastguard Worker  moved around significantly due to network servicification.
32*6777b538SAndroid Build Coastguard Worker* [WebSocket Protocol Stack in
33*6777b538SAndroid Build Coastguard Worker  chrome/net](https://docs.google.com/document/d/11n3hpwb9lD9YVqnjX3OwzE_jHgTmKIqd6GvXE9bDGUg/edit).
34*6777b538SAndroid Build Coastguard Worker  Early design doc for the current implementation. Mostly of historical interest
35*6777b538SAndroid Build Coastguard Worker  only.
36