from pylibs.test import Test, Player, BwChange, DelayChange, TcpDump from pylibs.generic import PlainObject server_url = 'http://192.168.100.10:3000/static' bigbuckbunny8_url = server_url + '/bbb8/play_size.m3u8' # rates: 350k 470k 630k 845k 1130k 1520k 2040k 2750k, duration (s): ~600 settings = PlainObject() settings.video_label = 'bbb8' settings.video_url = bigbuckbunny8_url settings.kill_after = 700 settings.rtt = ('20ms', '80ms') settings.rtt_zfill = 4 settings.buffer_size = ('25%', '50%', '100%', '600%') #won't be given directly to tc_helper, but will pass through get_bdp_fraction settings.buffer_size_zfill = 4 settings.fairshare = range(600, 3001, 300) settings.aqm = ('droptail', 'ared', 'codel') settings.clients = (1, 2, 3) settings.algorithms = ('classic-119', 'bba2', 'bba3') settings.curl = ('yes', 'bandwidth') def get_curl_label(curl): if curl == 'yes': return 'keepalive' if curl == 'bandwidth': return 'keepalive_est' return 'close' def get_algocurl_tuples(algorithms, curl_tuple): tuples = [] for curl in curl_tuple: for algo in algorithms: