Add support for txqueuelen
This commit is contained in:
parent
549c548e7c
commit
0664442648
4 changed files with 12 additions and 3 deletions
8
mknet
8
mknet
|
@ -87,21 +87,23 @@ class Bandwidth:
|
|||
|
||||
|
||||
class LinkInfo:
|
||||
def __init__(self, bandwidth, latency, jitter = None, offset = None, limit = None, **kwargs):
|
||||
def __init__(self, bandwidth, latency, jitter = None, offset = None, limit = None, txqueuelen = None, **kwargs):
|
||||
self.bandwidth = Bandwidth(bandwidth)
|
||||
self.latency = Latency(latency, offset)
|
||||
self.jitter = Latency(jitter or 0)
|
||||
self.limit = limit
|
||||
self.txqueuelen = txqueuelen
|
||||
|
||||
def __eq__(self, o):
|
||||
return (isinstance(o, LinkInfo) and
|
||||
o.bandwidth == self.bandwidth and
|
||||
o.latency == self.latency and
|
||||
o.jitter == self.jitter and
|
||||
o.limit == self.limit)
|
||||
o.limit == self.limit and
|
||||
o.txqueuelen == self.txqueuelen)
|
||||
|
||||
def __str__(self):
|
||||
return f'LinkInfo{{bw: {self.bandwidth}, latency: {self.latency}, jitter: {self.jitter}, limit: {self.limit}}}'
|
||||
return f'LinkInfo{{bw: {self.bandwidth}, latency: {self.latency}, jitter: {self.jitter}, limit: {self.limit}, txqueuelen: {self.txqueuelen}}}'
|
||||
|
||||
class Server:
|
||||
def __init__(self, name, link):
|
||||
|
|
3
net.py
3
net.py
|
@ -56,6 +56,9 @@ def create_veth(name1, ns1, name2, ns2, ip = None, subnet=0, link=None):
|
|||
run_netns("exec", ns2, "ip", "link", "set", "dev", name2, "up")
|
||||
|
||||
if link:
|
||||
if link.txqueuelen:
|
||||
run_netns("exec", ns1, "ip", "link", "set", "dev", name1, "txqueuelen", str(link.txqueuelen))
|
||||
run_netns("exec", ns2, "ip", "link", "set", "dev", name2, "txqueuelen", str(link.txqueuelen))
|
||||
tc(ns1, name1, link)
|
||||
tc(ns2, name2, link, True)
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@ links:
|
|||
- &slow
|
||||
bandwidth: 1M
|
||||
latency: 500us
|
||||
txqueuelen: 10
|
||||
- &1000
|
||||
bandwidth: 1000M
|
||||
latency: 100us
|
||||
|
|
|
@ -5,16 +5,19 @@ links:
|
|||
- &1000
|
||||
bandwidth: 1000M
|
||||
latency: 100us
|
||||
txqueuelen: 10000
|
||||
- &vdsl
|
||||
bandwidth:
|
||||
up: 3M
|
||||
down: 55M
|
||||
latency: 50ms
|
||||
jitter: 10ms
|
||||
txqueuelen: 100
|
||||
- &fiber
|
||||
bandwidth: 400M
|
||||
latency: 10ms
|
||||
jitter: 3ms
|
||||
txqueuelen: 1000
|
||||
|
||||
zones:
|
||||
- &dc1
|
||||
|
|
Loading…
Reference in a new issue