Как заставить контроллер обнаруживать связь вниз или хост вниз в следующей топологии

Я пытаюсь обнаружить трафик, идущий к узлу (серверу), который не работает. Так, чтобы перенаправить его на рабочий сервер. Я планирую реализовать часть перенаправления в клик (nfv). Я запускаю контроллер с помощью следующей команды ./pox.py openflow.discovery forwarding.l2_learning, Как сделать так, чтобы контроллер обнаружил, что хост не работает / не работает связь. Топология, которую я использую

1 ответ

Я могу обнаружить хост с помощью следующего кода

from pox.core import core
import pox
import pox.lib.packet as pkt
from pox.lib.revent import *
from pox.openflow.discovery import Discovery
from pox.host_tracker import host_tracker
import pox.openflow.libopenflow_01 as of

class kj_host(EventMixin):
  def __init__ (self):
    def startup ():
      core.openflow.addListeners(self, priority=0)
      core.openflow_discovery.addListeners(self)
      core.host_tracker.addListeners(self)
      """ Here is the place where is created the listener"""
    core.call_when_ready(startup, ('openflow','openflow_discovery', 'host_tracker'))


  def _handle_HostEvent (self, event):
    """ Here is the place where is used the listener"""
    print "Host, switchport and switch...", event.entry

  def _handle_PacketIn(self, event):
    """ Packet processing """
def launch():
  from host_tracker import launch
  launch()
  core.registerNew(kj_host)

Я сохранил этот код в kj_host.py и помещен внутри /home/pox/pox/misc и я запускаю контроллер с помощью следующей команды ./pox.py openflow.discovery forwarding.l2_learning misc.kj_hostСсылка: 1) ответ от github2) ответ stackru

Другие вопросы по тегам