MOHIT_125417
Jun 24, 2015Altostratus
What is Websocket
Dear Experts,
Recently got a requirement from my client to enable Websocket on few of the VIP.
Can someone help me to understand the concept of Websocket & how it works in loadbalancer.
Dear Experts,
Recently got a requirement from my client to enable Websocket on few of the VIP.
Can someone help me to understand the concept of Websocket & how it works in loadbalancer.
I believe that Wikipedia provides a very nice explanation:
https://en.wikipedia.org/wiki/WebSocket
Just as it says, WebSocket is a mechanism whereby a user-agent (typically a browser) uses a raw TCP data channel for communication with the server, rather than encapsulating the data in HTTP messages (though the channel is initiated via an HTTP Request and established after an appropriate HTTP Response).
The BIG-IP supports WebSocket traffic:
https://support.f5.com/kb/en-us/solutions/public/14000/700/sol14754.html
Indeed, even though the initial handshake is HTTP and subsequent data are not, if the Virtual Server has the tcp profile but not the http profile, the traffic will work as expected in any version of BIG-IP (assuming you expect that the traffic is all handled as a single, load-balanced TCP flow).
If you want to use the http profile, that'll work fine starting with 11.4.0. Before that, you need to employ an iRule:
https://support.f5.com/kb/en-us/solutions/public/14000/800/sol14814.html
In reading the articles, am I right in understanding that if you already have a TCP and HTTP profile in code 11.5.3 HF2 that a websocket connection would already work? And if not then I would need to implement an iRule that disables http if the Upgrade header is present?
I believe that Wikipedia provides a very nice explanation:
https://en.wikipedia.org/wiki/WebSocket
Just as it says, WebSocket is a mechanism whereby a user-agent (typically a browser) uses a raw TCP data channel for communication with the server, rather than encapsulating the data in HTTP messages (though the channel is initiated via an HTTP Request and established after an appropriate HTTP Response).
The BIG-IP supports WebSocket traffic:
https://support.f5.com/kb/en-us/solutions/public/14000/700/sol14754.html
Indeed, even though the initial handshake is HTTP and subsequent data are not, if the Virtual Server has the tcp profile but not the http profile, the traffic will work as expected in any version of BIG-IP (assuming you expect that the traffic is all handled as a single, load-balanced TCP flow).
If you want to use the http profile, that'll work fine starting with 11.4.0. Before that, you need to employ an iRule:
https://support.f5.com/kb/en-us/solutions/public/14000/800/sol14814.html
In reading the articles, am I right in understanding that if you already have a TCP and HTTP profile in code 11.5.3 HF2 that a websocket connection would already work? And if not then I would need to implement an iRule that disables http if the Upgrade header is present?