Можно ли динамически изменять характеристики ссылок во время эмуляции Mininet? - PullRequest
0 голосов
/ 03 июля 2018

В настоящее время я эмулирую простую сеть в Mininet, используя доступный API-интерфейс Python, с помощью нескольких учебных пособий по Интернету и других источников. Текущие эмуляции сети в Mininet поддерживают модификации ссылок только с использованием метода configLinkStatus () в классе Mininet .
Это разрешает только 2 состояния: - вверх и вниз
Другие характеристики, такие как задержка распространения, полоса пропускания и частота ошибок по битам, могут быть установлены только во время добавления канала.
Моя проблема содержит переключатели и хосты в движении, что, в свою очередь, вызывает динамические изменения в состоянии канала. Есть ли в Mininet решение изменить ссылки в соответствии с моими требованиями?

1 Ответ

0 голосов
/ 04 июля 2018

Да, вы можете. У вас есть несколько способов, которые могут вам помочь:

  • getNodeByName (node) - возвращает объект узла по его идентификатору. Это метод класса Mininet.
  • connectionsTo (dst) - это метод класса узла. Возвращает список ссылок из объекта исходного узла на узел destination .

Так, например, если вы хотите удалить alink из h1 в h2 (при условии, что net является объектом Mininet):

h1 = net.getNodeByName('h1') 
h2 = net.getNodeByName('h2') 

links = h1.connectionsTo(h2)
del links[int(index)]

где index будет номером ссылки, которую вы хотите удалить (если у вас более одной ссылки между узлами).

Для добавления ссылок вы используете метод addLink класса Mininet.

С помощью этих методов вы можете удалить и заново создать ссылку с новыми параметрами.

...