Produkt white
Overview

Electronic content distribution is one of the most popular uses for today’s computer networks. Examples of electronic content distribution include software distribution, enterprise-wide business data delivery, Internet/Intranet information “push,” multimedia file distribution, web site content replication, and database replication.

Historically, electronic content distribution has been performed using point-to-point file transfer protocols such as FTP which were designed for the network environments of the 1980’s. Wide adoption of client/server technology, the advent of the World Wide Web, and the proliferation of richer and more bandwidth-hungry content such as image, voice, and video have pushed point-to-point transfer protocols such as FTP to the limit. Today’s network applications demand a more efficient and scalable approach. To satisfy the needs of today's complex, heterogeneous networks, a file transfer protocol must:

1. Deliver large amounts of data to thousands of receivers simultaneously and reliably.

2. Offer optimal performance over all network infrastructures: LAN, WAN, terrestrial, satellite.

3. Operate efficiently alongside other network applications.

StarBurst Software developed the Multicast File Transfer Protocol (MFTP) to support today’s network environment and today’s networked applications. With MFTP, large data files are delivered simultaneously and reliably to thousands of receivers over any multicast-capable network infrastructure. Furthermore, MFTP consumes significantly fewer sender resources and network bandwidth when compared with point-to-point protocols such as FTP. Committed to an open solution, StarBurst, in collaboration with Cisco Systems, has submitted MFTP to the IETF as an Internet Draft. Background

Today, most information delivery over TCP/IP networks is accomplished using TCP, one of the two transport layers provided in the TCP/IP protocol suite. HTTP Web traffic, FTP file transfers, and e-mail all run over TCP. All TCP traffic is unicast, that is it has one source and one destination. UDP is an alternative transport to TCP which is suited for applications that are not point-to-point in nature.

IP Multicast is a new networking technology for sending data to multiple destinations simultaneously over UDP. Unlike broadcast, which sends data to all destinations, multicast sends data to many but not necessarily all destinations.

TCP provides a high level of service: error correction, packet ordering and port multiplexing. Applications operating over TCP do not need to provide any level of error control; they simply have to accumulate data as it arrives and manipulate it based on the application.

UDP provides only minimal services of error detection and port multiplexing. If a packet is detected in error, it is simply discarded. Packets may be received out of order, and if so, are simply delivered to the application out of order. UDP is ideal for lightweight applications such as embedded SNMP agents where minimal overhead is paramount.

MFTP operates over UDP offering efficient data delivery to multiple network recipients. MFTP employees a highly efficient Negative Acknowledgment scheme to guarantee delivery and overcome the inherently unreliable characteristics of UDP. Today’s Information Delivery Mechanisms

Today’s information delivery mechanisms such as HTTP for web data transfer and FTP for file transfer depend on TCP for guaranteed delivery. HTTP and FTP run over TCP as shown in Figure 1.

TCP-based Applications

Figure 1: TCP-based Applications

TCP corrects data on-the-fly based on the concept of sliding windows. The transmitter sends out a window’s worth of data before requiring an acknowledgment. For maximum efficiency the window size (i.e. the time to send out a window’s worth of data) should match the round trip network delay. If this matches, the transmitter will not have to wait for acknowledgments but can continue to send data continuously. This is illustrated in Figure 2 for a window size of eight. If the acknowledgment for segment 1 arrives concurrent with the sending of segment 8, the transmitter can immediately continue to send segment 9 without stopping.

The Concept of Sliding Windows

Figure 2: The Concept of Sliding Windows

TCP uses dynamic windowing, where the window size is calculated and set dynamically based on measurements of round trip delay and other parameters such as receive buffer size. However, the delays incurred in satellite data networks are often beyond the limit of window size, resulting in transfer inefficiency, especially at high transmit rates.

FTP requires the setup of two TCP virtual circuits, one for control and one for the actual data transfer. The control virtual circuit is used for log in and transfer setup. Data is transferred over the second virtual circuit.

Hosts with multitasking operating systems, such as Unix workstations or Windows NT/95 PCs, can support multiple HTTP or FTP connections simultaneously as shown in Figure 3. This method does not scale to many receivers. Each destination vies for precious network bandwidth. Furthermore, the source often cannot support more than 50 simultaneous FTP sessions.

Multiple Concurrent FTP Sessions

Figure 3: Multiple Concurrent FTP Sessions

Additionally, TCP uses a congestion avoidance technique known as slow start. Upon the start of a session, a minimal window of data, usually 512 bytes, is sent. The sender then waits for a positive acknowledgment (ACK) from the receiver at which time it sends two times the minimal window, then four times etc. until the network is filled with data. This process to get to steady state can be time consuming on high delay networks such as satellite, where the round trip delay approaches 0.6 seconds. This can mean it takes multiple seconds to reach steady state, and with small sessions, steady state is never reached.

The effect of errors or missed packets can also be severe. A negative acknowledgment (NAK) causes the window to shrink, possibly back to the beginning, depending on conditions. Thus, TCP traffic is often not able to be transferred at the highest rate possible in the network. The StarBurst MFTP Solution

StarBurst Software pioneered a reliable IP multicast protocol for non-real-time one-to-many data delivery. The Multicast File Transfer Protocol (MFTP) provides an efficient, reliable, and scalable alternative to protocols such as FTP. StarBurst offers a comprehensive product family which leverages the benefits of MFTP.

MFTP is rate based, i.e. the user at the sender defines a rate which is limited by the sender application. This is preferable to the windowing technique used by TCP in many situations. For example, the user can set the rate to be a small fraction of the bandwidth in the network, ensuring that the transmission occurs in the background without significantly impacting other traffic. TCP traffic, in contrast, attempts to utilize all network bandwidth.

MFTP uses the non-real-time properties of the data transmission to achieve virtually identical performance in all kinds of TCP/IP networks, including satellite and wireless, which can have very large delays as well as LANs with very little delay. It also offers efficient performance in the face of errors or dropped packets.

MFTP provides a group setup protocol for defining and managing data receivers, plus a protocol governing the reliable transfer of data. MFTP is highly scalable, capable of handling up to 50,000 simultaneous receivers in a group. How Does It Work?

There are three basic entities defined in the MFTP protocol; the frame, which has the same meaning for MFTP as for other protocols, the block, which consists of a number of packets, usually thousands or possibly even tens of thousands, and a pass, which consists of transmission of the whole data entity on the first pass, and missing pieces on subsequent passes. Receivers are obliged to send acknowledgments about the previous block at block boundaries. A selective reject negative acknowledgment indicates those frames within the block that are missing or in error.

Unlike conventional protocols, the MFTP sender does not stop and wait for acknowledgments before continuing transmission. Rather, it transmits continuously until the whole data entity has been transmitted, at which point it sends another “pass” consisting of only those frames that were negatively acknowledged. A third or fourth pass may be required to complete error free transmission to all receivers. This is illustrated in Figure 4.

StarBurst MFTP Passes

Figure 4: StarBurst MFTP Passes

For example, packet 251 in block 1, frames 286 and 294 in block 2, and frames 101 and 290 in block 4 are negatively acknowledged during Pass 1 and retransmitted in Pass 2 as illustrated in Figure 4. Thus, in this case, the second pass consists of the resending of five frames.

The concepts of not stopping and multiple passes result in optimal data transfer efficiency. The sender is transmitting the data entity (file) virtually all of the time so that speeds can approach theoretical limits, and only bad frames are resent. Performance is virtually independent of network round trip delay, important for low speed wireline, satellite, and wireless networks. MFTP Versus Multiple FTP Sessions: Performance Analysis

Multiple FTP sessions can be used to send files simultaneously to a small number of receivers. However, the performance (i.e., the speed of transfer) is only about 1/N as great as if StarBurst MFTP is used, where N is the number of receivers.

With multiple FTP sessions, the file is replicated and sent N times from the sender to the receivers. Note however that the effective upper limit of the number of simultaneous FTP transfers from one sender is 50. Even within this range, there are significant differences in the time to send a file using multiple FTP sessions versus using MFTP as shown in Figure 5. File Size Transfer Rate # Recipients Multiple FTP MFTP 1 Mbyte 56 Kbps 20 57 min. 2.6 min. 1 Mbyte 56 Kbps 100 4.8 hrs. 2.8 min. 100 Mbyte 256 Kbps 50 52 hrs. 1 hr. 100 Mbyte 256 Kbps 1000 43 days 1.3 hrs.

Figure 5: Multiple FTP Sessions vs. MFTP

Notes:

* Times are approximate based on moderate network frame loss rate. * Network is assumed to support transfer rate to all recipients. * One FTP server may not be able to support the number of simultaneous sessions indicated.

If the number of receivers is thousands, the use of FTP over TCP becomes impractical, whereas the use of MFTP with a multicast IP network infrastructure experiences little change, as shown in Figure 6. Normalized Transfer Rate

Figure 6: Normalized Transfer Rate--Multiple FTP Sessions vs. MFTP (shown graphically) Group Models

MFTP includes a mechanism for setting up the groups of recipients to whom data is sent. MFTP defines three group models; Closed, Open Limited, and Open Unlimited. Any one of these can be selected at the sender.

In the Closed model, the sender defines the members of the group and directs them to join using an Announce message. Members then Register with the sender that they are available and ready to receive. If not all members directed to join are available, transmission starts without them after a user defined time-out. However, the sender maintains a record of missed receivers.

After successful completion of the transfer, receivers send Done messages back to the sender. In effect, this is one positive acknowledgment at the end of the transfer. The transfer process continues until Done messages are received from all participating receivers or until a pre-defined time-out occurs. Transfers can be rescheduled to receivers who did not participate or complete the first transfer.

In the Open Limited model, the sender does not define the group. The Announce acts as an “advertisement” and any potential group members who wish to receive that content join. When they join, they Register as in Closed groups so the sender learns the members of the group. After registration, operation continues as in Closed groups. Open Limited Groups allow senders to initiate transfers without knowledge of sender addresses.

The Open Unlimited model is similar to Open Limited except there is no registration process. The sender does not know who joins, and thus cannot monitor and track who has received the data and who has not. The Open Unlimited model reduces network overhead in cases where positive confirmation is not necessary. MFTP—An Open Protocol

MFTP has been offered to the Internet community as an Internet Draft, and can be downloaded from ftp://ietf.org/internet-drafts/draft-miller-mftp-spec-02.txt or from the StarBurst web site: http://www.starburstsoftware.com. StarBurst is committed to open standards and has offered MFTP to the Internet community for this purpose. Conclusion

MFTP is a highly efficient and scalable approach for the non-real-time distribution of information from one to many recipients. In many cases, it is the only practical approach. With MFTP, large data files are delivered simultaneously and reliably to thousands of receivers over any IP multicast-capable network infrastructure. Furthermore, MFTP consumes significantly fewer sender resources and network bandwidth when compared with point-to-point protocols such as FTP.
New Softwares
Platforms and availability
AutoSync enables network managers to schedule simultaneous synchronization of content such as video, audio
StarBurst customers include automotive companies such as General Motors, Ford, Chrysler and Honda;
Newsletter Signup
Contact : 01-234-567800
Email :