GEOCAST Project Work Package WP2400:


Reliable Multicast Protocol Evaluation using ns

The subject of suitability and performance of reliable multicast transport protocols, especially via satellite networks, has generated a lot of research interest. Nevertheless, limited research has been done to analyse the performance of different reliable multicast transport techniques via satellite networks with persistent fades. As a motivation, in work package WP2400, we analysed performance of a selected set of Reliable Multicast Transport (RMT) protocols suited for satellite networks.

One of the main challenges facing different reliable multicast transport techniques is the ability to scale to large number of heterogeneous receivers. The suitability of satellite networks for large receiver coverage poses more challenges especially when receivers in a multicast group experience heterogeneous data transmission (i.e. with varying packet loss), and therefore in need of different packet retransmission. In this work package WP2400, we analysed (using ns simulation) the scalability of three sets of RMT protocols: analytical File Transfer Protocol (aFTP), Multicast File Transfer Protocol (MFTP) and Multicast File Transfer Protocol with Erasure Correction (MFTP/EC), based on performance for different receiver group sizes with varying file sizes, packet sizes and data transmission rates. Simulation conducted was based on GEOCAST Scenario I.


GEOCAST Scenario I

analytical File Transfer Protocol (aFTP)

aFTP is an analytical file transfer protocol, similar to Digital Fountain (DF) multicast protocol, used for transmitting data packets from a single source to several receivers. It relies on a carousel mode of transmission, where by source information, is transmitted repeatedly to receivers to guarantee reliability.

The protocol design and functionality assumes that:-
  • The sender transmits the same file in a carousel manner after each subsequent round or pass , for infinite number of times until all the receivers successfully get the whole file.

  • All receivers register to receive data packets at the same time and there is no feedback data (ACKs or NACKs) generated by receivers.

  • A receiver was regarded to have successfully received a complete file when all data packets have been received.

  • Time taken between the end and start of subsequent passes was negligible, and therefore each scheduled pass started immediately after the completion of the previous transmission pass.

  • All packets were transmitted at the set data rate and there was no delay or jitter over the link due to congestion (either at receiver or sender) and all transmitted packets experienced no other loss except loss due to fades over the satellite link channels.

  • Receivers experiencing packet loss, resumed file reception at the end of the fade duration until the whole file was successful received.

Multicast File Transfer Protocol (MFTP)

Multicast File Transport Protocol (MFTP), is a one-to-many reliable multicast protocol. As shown below, MFTP protocol operation consists of three phases:

  • announement/registration phase: where server sends periodic announcement packets containing file details and list of MFTP hosts, which can join the transfer

  • transfer phase: where server starts transmitting data using MTU size and transfer rate specified

  • completion phase: where the server issues a status request packet to all client requesting update, and terminates after an idle period when no more response is received from receiver.



Multicast File Transfer Protocol with Erasure Correction (MFTP/EC)

Multicast File Transport Protocol with Erasure Correction (MFTP/EC) is a continuous based ARQ reliable multicast protocol similar to MFTP. MFTP/EC uses erasure correction methods, based on Reed-Muller codes of order one (1), to perform loss recovery more efficiently than MFTP.

As shown in figure below, both MFTP/EC sender and receiver partition sets of data packets into n groups (blocks), where n > 10,000 and group consists of k packets each. Similar to MFTP, MFTP/EC sender interleaves encoded data packets from each block and transmit the encoded packets to receivers. MFTP/EC receivers experiencing loss, send back NACK-bitmaps after a complete file transmission, indicating the packets that were not received successfully. In the second and subsequent passes, the sender multicasts redundant repair packet, one for each NACKíed group. Ideally, this makes the recovery passes in MFTP/EC only last up to a fraction (1/k) of a full MFTP pass (though in general, MFTP/EC needs more passes than the basic MFTP protocol).

The efficiency of the MFTP/EC protocol is determined by the value of k. The higher the value of k, the more likely lost packets within a group can be repaired when redundant packets are received. However, this comes at a cost due to high processing power and disk read/write at the sender. Likewise, lower values of k reduce the gain in erasure correction. In the ns simulation work (conducted in work package WP2400), the value of k = 32 for MFTP/EC and in the extreme case k = 1, which operates effectively as MFTP.



ns Simulation Scenario


Related Resources

  • Download ns and C++ source code for aFTP protocol [tar, gz] and both MFTP & MFTP/EC protocols [tar, gz].

  • Research Paper: M.W. Koyabe, G. Fairhurst, Performance of Reliable Multicast Protocols via Satellite at EHF with Persistent Fades, presented at the 7th Ka-Band Utilization Conference, 26-28th September 2001, Santa Margherita Ligure, Genoa, Italy.

Go Back