Reliable Blast UDP


Introduction

          Reliable blast UDP has two goals. The first is to keep the network pipe as full as possible during bulk data transfer. The second goal is to avoid TCP's per-packet interaction so that acknowledgements are not sent per window of transmitted data, but aggregated and delivered at the end of a transmission phase.

More about Reliable Blast UDP?


QUANTA classes used

    QUANTAnet_rbudpSender_c

                When the QUANTAnet_rbudpSender_c instance is created in the sender, a TCP server is established to wait for the connection request from the QUANTAnet_rbudpReceiver_c. Once the TCP connection is established for signalling, the QUANTAnet_rbudpSender_c connects to the UDP server inside the QUANTAnet_rbudpReceiver_c.

    QUANTAnet_rbudpReceiver_c

                The QUANTAnet_rbudpReceiver_c instance will try to establish a TCP connection to the QUANTAnet_rbudpSender_c first. Then it will create a UDP server to receive the UDP blasts.


Usage

 1. To send the data
          You should always start the sender first. To start the sender type

          usend <receiver> <size of memeory (MBytes)> <sending rate (Kbps)>

 2. To receive the data
           urecv <sender> <size of memory (MBytes)>

  The size of memeory should be consistent in the sender and receiver data. The size should be smaller than the minimum of the physical memeory of the sender and the receiver. For example, if you want to send 100 MBytes data from prusin.sl.startap.net to 145.146.0.65, and you want want the set the sending rate of the first pass to 300 Mbps, you should type

    usend 145.146.0.65 100 300000

on prusin. Then type

    urecv prusin.sl.startap.net 100

on the receiver side.

Output

    On the Receiver side :

     tryin to connect ... TCP
     TCP connected

    On the Sender side :

    totalNumberofPackets: 68871
    usecsPerPacket: 38
    sending UDP packets
    First blast


for more information: Post your questions online on the Quanta forum page.