Yima-2, The Second Phase
For the second phase of development, our design is based on MPEG-4, a more general standard, although similar to the QuickTime. The file format of MPEG-4 provides streaming information called a “hint track?which is similar in structure to QuickTime hint track. Our design of an MPEG-4 streaming server will give us greater control over streaming parameters such as bit-rate, packet size, and audio sampling rate. The second phase also incorporates a true distributed architecture thereby eliminating any single points of failure. Each server node will run identical pieces of software so that the entire multi-node Yima server will not depend on one specific node. Client requests can now be load balanced since connections can be made to any one of the server nodes since any node can act as a master node. In addition, fault tolerance on the node level can be incorporated since all nodes behave identically. Clients are able to control the delivery rate of streams by sending slowdown or speedup commands using Real-Time Streaming Protocol (RTSP) to the server. Thus clients can maintain a constant amount of data in their buffer by matching the media’s delivery rate to the media’s variable consumption rate. The dynamic control of the stream delivery rate is a mechanism which can also be used for a Super-Streaming policy as described later. The first phase uses a funnel approach where each server node sends data packets to the client via the master node. The second phase of Yima uses a fan-out design for the delivery of data packets. With fan-out, each server node sends data packets directly to the client. Fan-out eliminates the master node from becoming a bottleneck during the delivery of data packets to the client.
Hardware purchased for hosting Yima-2