Plots

Mahimahi

/sfq_96_50/nimbus.bundler_qlen=100/b=poisson.CAIDA.84.cubic_c=iperf.cubic.1+cbr.32/ NO ECMP

/sfq_96_50/nimbus.bundler_qlen=100/b=poisson.CAIDA.84.cubic_c=iperf.cubic.1+cbr.32/ 1 QUEUE

/sfq_96_50/nimbus.bundler_qlen=100/b=poisson.CAIDA.84.cubic_c=iperf.cubic.1+cbr.32/ 2 QUEUES

/sfq_96_50/nimbus.bundler_qlen=100/b=poisson.CAIDA.84.cubic_c=iperf.cubic.1+cbr.32/ 4 QUEUES

Results

TODO

Config

[topology]
    [topology.sender]
        name = "pd1"
        ifaces = [{dev = "em2", addr = "192.168.1.1"}]
    [topology.inbox]
        name = "pd6"
        ifaces = [
            {dev = "em2", addr = "192.168.1.6"},
            {dev = "10gp1", addr = "10.1.1.6"},
        ]
        listen_port = 28316
        self = true
    [topology.outbox]
        name = "pd5"
        ifaces = [{dev = "10gp1", addr = "10.1.1.5"}]
    [topology.receiver]
        name = "pd5"
        ifaces = [{dev = "10gp1", addr = "10.1.1.5"}]

[sysctl]
"net.ipv4.tcp_rmem" = "4096 87380   6291456"
"net.ipv4.tcp_wmem" = "4096 16384   4194304"
"net.core.wmem_max" = "212992"
"net.core.rmem_max" = "212992"

[parameters]
initial_sample_rate = 128
bg_port_start = 5000
bg_port_end = 6000
qdisc_buf_size = "15mbit"
fifo_downlink = { queue = "codel", args="target=100,interval=5,packets=2000" }
fifo_uplink = { queue = "droptail" }

[structure]
bundler_root = "~/bundler-project/evaluation"

[distributions]
CAIDA_CDF = "~/bundler-scripts/CAIDA_CDF"

[ccp]
    [ccp.nimbus]
        repo = "https://github.com/ccp-project/nimbus.git"
        branch = "queue-control"
        commit = "latest"
        language = "rust"
        target = "target/debug/nimbus"
        [ccp.nimbus.args]
            flow_mode = "Delay"
            loss_mode = "Bundle"
            bw_est_mode = "false"
            bundler_qlen_alpha=100
            bundler_qlen_beta=10000
            use_switching= "true"
            pass_through = "false"
            #bundler_qlen = 150

    [ccp.const]
        repo = "https://github.com/ccp-project/const.git"
        branch = "fb"
        commit = "latest"
        language = "rust"
        target = "target/release/ccp_const"

[experiment]
seed      = [1]#,3,4,5]#6,7,8,9,10]
sch       = ['sfq']
alg       = [
    #{ name = "nobundler" }
    { name = "nimbus", bundler_qlen = [100] },
]
rate      = [96]
rtt       = [50]
bdp       = [3]
ecmp      = [ # for workconserving and perflow: 0=false, 1=true
    {},
    { workconserving = 0, perflow = 1, queues = 1, mean_jitter = 0 },
    { workconserving = 0, perflow = 1, queues = 2, mean_jitter = 0 },
    { workconserving = 0, perflow = 1, queues = 4, mean_jitter = 0 },
]

bundle_traffic = [
     [{source = 'poisson', conns = 200, reqs = 70000, alg = 'cubic', dist = 'CAIDA_CDF', backlogged = 0, load = '7/8', start_delay = 0, start_port=5000}],
     #[{source = 'iperf', alg = 'cubic', flows = 1, length = 180, port = 5000, start_delay = 0}],
]

cross_traffic = [
    [
     {source = 'iperf', alg = 'cubic', flows = 1, length = 60, port = 8002, start_delay = 30},
     {source = 'cbr', length = 60, port = 8001, rate = 32, cwnd_cap=1000, start_delay = 90},
    ]
]