# WebSocket carried inside HTTP/2

WebSocket inside HTTP/2 (RFC 8441 extended CONNECT) over TLS 1.3, with permessage-deflate; two compressed messages share one compression window.

- What success looks like: Every WebSocket message, inflated.
- What error it exposes: No RFC 8441 support, or a lost deflate context.
- Kind: synthetic (generated, no real traffic)
- Protocols: WebSocket, HTTP/2, HPACK, TLS 1.3
- Keys: embedded in h2-websocket-rfc8441.pcapng as a Decryption Secrets Block, and in h2-websocket-rfc8441.keys.txt as an NSS key log
- Expected decoded output: h2-websocket-rfc8441.expected.json (JSON), confirmed by an independent decoder before publication
- Regenerate: cargo run -p keel-engine --example h2ws_rfc8441_gen -- --variant deflate --name h2ws_rfc8441 --out <dir>
- Licence: Creative Commons Attribution 4.0 International (CC BY 4.0), for the released capture and expected-output files only. Attribution: Shorenet Ltd.
- Download all: h2-websocket-rfc8441.zip holds these files, the licence text (LICENCE.txt) and their SHA-256 (SHA256SUMS)

## Files

- h2-websocket-rfc8441.pcapng
- h2-websocket-rfc8441.keys.txt
- h2-websocket-rfc8441.expected.json
- h2-websocket-rfc8441.md
