![]() ![]() |
| Protocols |
|
Windows Media Services supports three transport protocols: User Datagram Protocol (UDP), Transmission Control Protocol (TCP), and Hypertext Transfer Protocol (HTTP). UDP is not a session-based protocol. It is often called a connectionless transport protocol. Only unicast UDP is discussed in this section. UDP and TCP run on top of Internet Protocol (IP) networks. Applications that use UDP typically rely on other mechanisms to guarantee packet delivery. This has several implications that make UDP-based communication especially applicable to streaming media. Because UDP provides very few error recovery services, it is an efficient and direct way to send and receive datagrams over an IP network. UDP does not provide guaranteed delivery, but it is useful when TCP would be too complex, too slow, or unnecessary. Packets that are not recovered in time to be useful are left out. This allows content to degrade gracefully. TCP is a connection or session-oriented protocol. Each client connection to the server requires a session set-up and breakdown. TCP sessions ensure that packet delivery is completed without intervention from the application using the data. TCP is a more reliable transport that has higher overhead and is more complex than other protocols. Processor utilization and the additional bandwidth required for session setup, maintenance, and breakdown can affect servers. For the client, TCP adds reliability, which can adversely affect the user experience. If the server is operating under a heavy load, or if there is latency or heavy congestion on the network, TCP causes the client to wait for all packets to be delivered before continuing. If packet delivery is delayed long enough, the player can pause and re-buffer, although it would continue if UDP was used. In addition to standard transport protocols, Windows Media Services uses three protocols to transfer information between services and to transfer unicast data: HTTP, Media Stream Broadcast Distribution (MSBD) and Microsoft Media Server (MMS) protocol. HTTP is a TCP-based protocol, and is used to distribute streams between Windows Media Encoder and Windows Media Services. MSBD is also a TCP-based protocol and is used to distribute (or transfer) streams between servers. MSBD is useful for testing client/server connectivity and the quality of Windows Media Services content, but it should not be used as the main method of receiving content. Windows Media Encoder can support a maximum of 50 HTTP clients; Windows Media server components can support a maximum of five MSBD clients. The main method of connectivity between Windows Media Encoder and Windows Media Server should be HTTP. The MMS protocol is used to transfer unicast data. When a client connects by using MMS, protocol rollover is used to obtain the best connection. In the attempt to connect with MMS, the UDP protocol is primarily used. If the connection is not negotiated successfully, the client then attempts to connect with the TCP protocol. If that protocol cannot negotiate a good connection, the client then attempts a connection with HTTP. In this way, an instance of Windows Media Player will find the most efficient way to stream audio and/or video from a Windows Media server.
|
| Back |