Introduction Ultimately transmitting and receiving information processes are about efficiently moving data from one location to another. If only small quantities of data are to be moved then the speed and efficiency of the connection is less significant than for large quantities of data, this applies to data transfers within a computer, across a LAN and more significantly across a WAN such as the Internet. Most data is stored in files. During a file’s transmission the sender splits it into a sequence of chunks or packets, each packet being sent individually. For example a serial port operating asynchronously sends each character as a separate packet, whilst a USB port sends a frame that may contain up to 1500 bytes of a file. The receiver must combine all the received packets back into a complete file. In general, the complete file cannot be displayed until the receiving process is complete. Such a system is fine for smaller files or files containing data that is not dependant on time. However, audio and video files are often large and furthermore they need to be displayed progressively over time. Waiting for an entire audio or video file to be received takes an unacceptable amount of time, thus when real time displaying is required such data is transferred using a system called streaming. This means the file is transmitted and received at a constant rate. Streaming allows the displaying process to commence whilst further packets are simultaneously being received. In this section we restrict our discussion to three examples of software applications specialising in the transfer of data, namely FTP client software, e-mail applications, and streaming media players and streaming servers. These applications operate at the application and presentation layers of the OSI model. |
