What is the meaning of \ x00 and \ xff in Websockets?

Why do messages that go through websites always start with \x00 and end with \xff , as in \x00Your message\xff ?

+4
source share
3 answers

This documentation may help ...

Excerpt from section 1.2: -

  Data is sent in the form of UTF-8 text. Each frame of data starts with a 0x00 byte and ends with a 0xFF byte, with the UTF-8 text in between. The WebSocket protocol uses this framing so that specifications that use the WebSocket protocol can expose such connections using an event-based mechanism instead of requiring users of those specifications to implement buffering and piecing together of messages manually. To close the connection cleanly, a frame consisting of just a 0xFF byte followed by a 0x00 byte is sent from one peer to ask that the other peer close the connection. The protocol is designed to support other frame types in future. Instead of the 0x00 and 0xFF bytes, other bytes might in future be defined. Frames denoted by bytes that do not have the high bit set (0x00 to 0x7F) are treated as a stream of bytes terminated by 0xFF. Frames denoted by bytes that have the high bit set (0x80 to 0xFF) have a leading length indicator, which is encoded as a series of 7-bit bytes stored in octets with the 8th bit being set for all but the last byte. The remainder of the frame is then as much data as was specified. (The closing handshake contains no data and therefore has a length byte of 0x00.) 
+3
source

The working specification has changed and no longer uses 0x00 and 0xFF as start and end bytes

http://tools.ietf.org/id/draft-ietf-hybi-thewebsocketprotocol-04.html

+2
source

I am not 100% sure, but I assume that this will mean the beginning and end of the message. Since x00 is a single-byte representation of 0, and xFF is a single-byte representation of 255

0
source

Source: https://habr.com/ru/post/1337706/


All Articles