Comparison of WebSocket implementations

The WebSocket protocol is implemented in different web browsers, web servers, and run-time environments and libraries acting as clients or servers. The following is a table of different features of notable WebSocket implementations.

Client (library) Server (library) Version compared Protocol (spec) version support Protocol test report License Implementation: language, environment API: language, environment Self-hosted server Text message support Binary message support API message-based API frame-based API streaming input-output Flow-control framework Automatic pongs for pings Automatic heartbeat pings Manual pings-pongs Frame size limit
Google Chrome 15[1] Yes No 15.0.874.8
12 Sep 2011
8 (10) Complex C++, WebKit JavaScript, HTML5 No Yes Yes Yes No No, No No Yes No No ≥ 16 MB
(memory-limited?)
Google Chrome 16[1] Yes No 16.0.912
13 Dec 2011
13 (17/RFC 6455) Complex C++, WebKit JavaScript, HTML5 No Yes Yes Yes No No, No No Yes No No ≥ 16 MB
(memory-limited?)
Mozilla Firefox 7[2] Yes No 7 beta
12 Sep 2011
8 (10) MPL, GPL, LGPL C++, Necko JavaScript, HTML5 No Yes No Yes No No, No No Yes No No < 16 MB
Mozilla Firefox 11[2] Yes No 11.0
13 Mar 2012
13 (17/RFC 6455) MPL, GPL, LGPL C++, Necko JavaScript, HTML5 No Yes Yes Yes No No, No No Yes No No < 2 GB
(memory-limited?)
Achex WS[3] Yes Yes 2.17
17 June 2014
RFC 6455 Commercial C++ C++, JavaScript Yes Yes Yes Yes Yes Yes Yes No No Yes 2^16
Kaazing WebSocket Gateway[4] Yes Yes 5.0 Dec 2014 RFC 6455 APL2 (Community Edition), commercial (Enterprise Edition) Java, JMS JavaScript, Flash/Flex, Silverlight, Objective-C & iOS, Java, Java & Android, .NET, Xamarin Yes Yes Yes Yes No Yes Yes Yes Yes No memory-limited, configurable
Lightstreamer[5] Yes Yes 7.4.7
12 Jun 2025
RFC 6455 Commercial, freeware Java JavaScript, Android, Java, Swift, iOS, macOS, tvOS, watchOS, visionOS, .NET Standard, C++, Python, Flash/Flex, Silverlight, J2ME Yes Yes No Yes No No Yes Yes Yes No Data driven, configurable
MigratoryData[6] Yes Yes 6.0.5
29 Aug 2021
RFC 6455 Commercial Java JavaScript, iOS, Android, Java, C++, .NET, PHP, Node.js, Python Yes Yes No Yes No No, No Yes Yes Yes No 263, configurable
Mongoose[7] Yes Yes 7.9
24 Jan 2023
RFC 6455 GPL, commercial C/C++ C/C++ Yes Yes Yes Yes Yes Yes Yes Yes No Yes 263, configurable
noPoll[8] Yes Yes 0.3.2
28 aug 2015
RFC 6455 LGPL 2.1 ANSI C ANSI C Yes Yes Yes Yes Yes Yes No Yes Yes Yes memory-limited, configurable
POCO C++ Libraries[9] Yes Yes 1.4.6
23 Sep 2014
RFC 6455 Boost C++, POCO C++ Libraries C++ Yes Yes Yes No Yes Yes No No No Yes memory-limited, configurable
PowerWebSockets[10] Yes Yes 15.176.5188
26 Jun 2015
RFC 6455 Test report[11] Commercial .NET .NET Framework, .NET Compact Framework, Xamarin. iOS, Xamarin.Android, Windows Phone, Silverlight, Mono Yes Yes Yes Yes No Yes Yes Yes Yes Yes memory-limited, configurable
QtWebSockets[12] Yes Yes 1.0
12 Nov 2013
RFC 6455 LGPL C++, Qt Qt Yes Yes Yes Yes Yes No Yes Yes Yes Yes memory-limited, configurable
RingSocket[13] No Yes 1.0
13 Sep 2019
RFC 6455 MIT C C Yes Yes Yes Yes No No Yes Yes No No unlimited/configurable
Resin[14] No Yes 4.026
29 Feb 2012
RFC 6455 GPL, commercial Java, C Java Yes Yes Yes No Yes No Yes No No memory-limited, configurable
WebSocketListener[15] No Yes 2.1.3
24 Nov 2014
RFC 6455 MIT .NET, Mono .NET, Mono Yes Yes Yes Yes No Yes Yes Yes Yes No Configurable
Wt[16] No Yes 3.2.0
30 Nov 2011
0,7,8,13 (17) [? Report] GPL, commercial C++, Boost Asio C++ Yes Yes No No No Yes Yes Yes No memory-limited, configurable
XSockets.NET[17] Yes Yes 5.* RFC 6455 Commercial .NET Server-languages: Windows (.NET), Unix-Linux (Mono)

Client-languages: JavaScript, .NET, Mono

Yes Yes Yes Yes No Yes Yes Yes Yes Yes memory-limited, configurable
RIWA Gateway[18] Yes Yes 2.01 RFC 6455 Commercial Java Java, Android, iOS, JavaScript Yes Yes Yes Yes No Yes No Yes No No memory-limited, configurable
μWebSockets[19] No Yes v0.14.0
28 Mar 2017
RFC 6455 Test report[20] Apache License 2.0 C++, epoll, Libuv, Boost Asio C++, JavaScript, Node.js Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes memory-limited, configurable, server focused missing client support[21]
Boost.Beast[22] Yes Yes 94
30 July 2017
RFC 6455 Test report[23] Boost C++, Boost Asio C++ Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes unlimited (packets streamed to user code), permessage-deflate also unlimited (chunked)
libwebsockets[24] Yes Yes 2.4
16 Oct 2017
RFC 6455 + RFC 7692 Test report[25] LGPL2 + SLE C, libuv, libev , libevent, poll, external poll loop integration, OpenSSL, mbedTLS C, HTML5, JavaScript Yes Yes Yes Yes Yes Yes, yes Yes Yes Yes Yes unlimited (packets streamed to user code), permessage-deflate also unlimited (chunked)
websocket++[26] Yes Yes 0.8.2
20 Apr, 2020
RFC 6455 BSD C++11 C++11 ? ? ? ? ? ? ? ? ? ? ?
facil.io[27] Yes Yes 0.7.1
18 May 2019
RFC 6455 MIT C C Yes Yes Yes Yes Yes Yes, yes Yes Yes Yes Yes configurable client to server limits. unlimited (chunked) server to client.
oatpp-websocket[28] Yes Yes 1.3.0
19 Nov 2021
RFC 6455 Apache License 2.0 C++11, Oat++ C++11, Oat++ Yes Yes Yes Yes Yes Yes Yes No No Yes unlimited (packets streamed to user code)

Notes

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.