4.2 Using MSBD for Server-Side Playlist Streaming
The following diagram shows a typical communication sequence between a client and server when streaming content from a server-side playlist.
Note When using the MSBD Protocol, the client does not have the capability to seek or skip to a new entry in a server-side playlist.

Figure 4: Client/server communication sequence when streaming from a server-side playlist
The client opens a TCP connection to the server and sends an MSB_MSG_REQ_CONNECT packet.
The server responds with an MSB_MSG_RES_CONNECT packet followed by an MSB_MSG_IND_STREAMINFO packet that describes the media stream.
The server sends one or more MSB_MSG_IND_PACKET packets, each of which contains one ASF packet. The packets are sent either over the TCP connection or by using UDP to an IP multicast group.
When the entry changes in the server-side playlist, the server sends a MSB_MSG_IND_STREAMINFO packet with a new wStreamId value. For more information, see section 2.2.6.
The server sends one or more MSB_MSG_IND_PACKET packets for the new playlist entry, each of which contains one ASF packet. The packets are sent either over the TCP connection or by using UDP to an IP multicast group.
The preceding two steps are repeated for all entries in the server-side playlist.
When the streams end, the server sends an MSB_MSG_IND_EOS packet that is followed by an empty MSB_MSG_IND_STREAMINFO packet.
During the preceding message exchange, the server periodically pings the client by using an MSB_MSG_REQ_PING packet. If the client does not respond to the MSB_MSG_REQ_PING packet with an MSB_MSG_RES_PING packet, the server closes the TCP connection. In other cases, the client is responsible for ending the session by closing the TCP connection.