Esempio n. 1
0
def blackboxLTTest(file,
                   number_of_chunks=800,
                   seed=2,
                   chunk_size=0,
                   overhead=0.20,
                   scale=1.0):
    print(bcolors.OK + "Starting Blackbox Test with " + str(number_of_chunks) +
          " Chunks" + bcolors.ENDC)
    start = time.time()
    dist = RobustSolitonDistribution(S=number_of_chunks, seed=seed)
    algo_type.clear()
    algo_type.append("LT_" + str(number_of_chunks) + "_" +
                     str(dist.get_config_string()))
    encoder = LTEncoder(file, number_of_chunks, dist, chunk_size=chunk_size)
    encoder.set_overhead_limit(overhead)
    decoder = LTDecoder.pseudo_decoder(number_of_chunks)
    decoder.set_read_all_before_decode(True)

    result, dec_input, invalid_drop = blackbox(encoder, decoder, scale=scale)
    end = time.time() - start
    print(bcolors.BLUE + "Blackbox-Decode " +
          (bcolors.OK + "successful" if result else bcolors.ERR +
           "NOT successful") + bcolors.END + bcolors.BLUE + " after " +
          str(round(end, 4)) + " sec." + bcolors.ENDC)
    return [
        dist.get_config_string(),
        result,
        number_of_chunks,
        dec_input,
        invalid_drop,
        round(end, 4),
    ]
Esempio n. 2
0
def blackboxTest(file,
                 number_of_chunks=800,
                 droprate=0.02,
                 seed=2,
                 overhead=0.05):
    print("#### Starting Blackbox Test with " + str(number_of_chunks) +
          " Chunks and a droprate of " + str(droprate) + " ####")
    start = time.time()
    dist = RobustSolitonDistribution(S=number_of_chunks, seed=seed)
    # dist = IdealSolitonDistribution(S=number_of_chunks, seed=seed)

    # pseudo = LTBPDecoder.pseudo_decoder(number_of_chunks)
    encoder = LTEncoder(file, number_of_chunks,
                        dist)  # , pseudo_decoder=pseudo)
    decoder = LTDecoder.pseudo_decoder(number_of_chunks,
                                       read_all_before_decode=True)
    encoder.set_overhead_limit(overhead)
    result, numberOfEncodedPackets, dropedCount, solvedCount = blackbox(
        encoder, decoder, droprate=droprate)
    end = time.time() - start
    print("Blackbox-Decode " + ("successful" if result else "NOT successful") +
          " after " + str(round(end, 4)) + " sec.")
    return [
        dist.get_config_string(),
        result,
        numberOfEncodedPackets,
        dropedCount,
        solvedCount,
        round(end, 4),
        number_of_chunks,
    ]
Esempio n. 3
0
def blackboxLTTest(file, number_of_chunks=800, seed=2, chunk_size=0):
    print("Starting Blackbox Test with " + str(number_of_chunks) + " Chunks")
    start = time.time()
    dist = RobustSolitonDistribution(S=number_of_chunks, seed=seed)
    pseudo = LTBPDecoder.pseudo_decoder(number_of_chunks)
    encoder = LTEncoder(file,
                        number_of_chunks,
                        dist,
                        pseudo_decoder=pseudo,
                        chunk_size=chunk_size)
    decoder = LTDecoder.pseudo_decoder(number_of_chunks)

    result, numberOfEncodedPackets, dropedCount = blackbox(encoder, decoder)
    end = time.time() - start
    print("Blackbox-Decode " + ("successful" if result else "NOT successful") +
          " after " + str(round(end, 4)) + " sec.")
    return [
        dist.get_config_string(),
        result,
        numberOfEncodedPackets,
        dropedCount,
        round(end, 4),
        number_of_chunks,
    ]