Cómo enviar paquetes desde el hardware (conmutador) al controlador en el conmutador OpenFlow

Aquí hay dos niveles diferentes.

  1. Enviar un paquete al controlador SDN por el hardware del conmutador: es lo mismo que enviar un paquete a cualquier destino. El paquete reenviará cualquier paquete que se dirija al controlador SDN, de la misma manera que reenvía los paquetes a cualquier otro destino. Si desea forzarlo, puede instalar una regla en el conmutador que envíe un paquete al controlador incluso si está dirigido a otro destino.
  2. Enviar un paquete DESDE EL INTERRUPTOR al controlador: esto lo realiza la CPU del Switch, que creará un paquete con el contenido deseado y colocará la dirección del controlador SDN como destino.
    1. Una forma de esto que sospecho que puede interesarle es la instalación “Packet_in” de OpenFlow. Si un paquete alcanza un conmutador OpenFlow y coincide con una regla con una acción “PacketIn” (y esta puede ser la regla predeterminada “nada más coincide”), el hardware enviará el paquete a la CPU del conmutador, que luego empacará el paquete entrante como la carga útil de un mensaje “PacketIn” de OpenFlow, y envíe este mensaje como uno o más paquetes IP dirigidos al controlador SDN. Estos paquetes IP salientes (puede que se necesite más de uno para contener todos los datos que se enviarán) pueden salir a través de un puerto “fuera de banda” directamente desde la CPU del conmutador o pasar de la CPU al hardware del conmutador como un Evento “Packet Out”, que hace que el hardware del conmutador reenvíe el paquete al controlador SDN por su dirección de destino, lo mismo si hubiera venido del exterior, como en el caso # 1