I'm building a SDN network with Ryu, openVswitch and OpenFlow.The problem i'm having is that my datapath doesn't answer messages that are for him, because the table-miss flow entry tells him to flood everything. This happens also for packets of neighbor solicitation, so the host never receives the neighbor advertisement e doesn't know how to speak with the datapath.How can i tell my datapath to answer this kind of messages? I'm trying to install a new flow entry but i don't know which should be the correct action.Thank you for your helpEdit:I'm talking about a general packet, from other hosts of the SDN. The communication between controller and datapath is ok.
The problem is that, for example, when datapath receives a neighbor solicitation it doesn't respond, but it sends a packet-in to the controller. I need to know how to make the datapath send the neighbor advertisement.
Table-miss flow entry Every flow table must support a table-miss flow entry to process table misses. The table-miss flow entry specifies how to process packets that were not matched by ot her flow entries in the flow table. The table-miss flow entry wildcards all match fields (all fields omitted) and has the lowest priority 0.
A method for selecting an optimal network device for reporting flow table misses upon expiry of a flow in a software defined network, comprising: selecting, from a plurality of software defined network (SDN) enabled devices, an SDN enabled device, for reporting a flow table miss upon expiry of a flow to an SDN controller, based on a pre-defined factor.2. The method of claim 1, further comprising associating a timeout period for a flow entry corresponding to the flow in each of the plurality of software defined network (SDN) enabled devices, including the selected SDN enabled device, in such a manner that the timeout period associated with the selected SDN enabled device is first to timeout.3.
The method of claim 1, further comprising deleting a flow entry corresponding to the flow from the selected SDN enabled device upon expiry of a previously determined timeout period to cause a packet matching the deleted flow entry in the software defined network to reach the SDN controller only from the selected SDN enabled device.4. The method of claim: 1, wherein the pre-defined factor is associated with one of the SDN controller, the plurality of SDN enabled devices, and the software defined network.5. The method of claim 4, wherein the pre-defined factor associated with the SDN controller is one of a packet interrupt servicing load at the SDN controller, and an application load at the SDN controller in the software defined network.6. The method of claim 4, wherein the pre-defined factor associated with the SDN enabled device includes a processing capability of the SDN enabled device to process a flow miss packet for reporting to the SDN controller.7. The method of claim 4, wherein the pre-defined factor associated with the software defined network is one of a distance between the SDN controller and each of the plurality of SDN enabled devices, a utilization rate of a respective control channel between the SDN controller and each of the plurality of SDN enabled devices, and a network infrastructure based factor.8.
A system to select an optimal network switch for reporting flow table misses upon expiry of a flow in a software defined network, comprising: a plurality of network switches; and an SDN controller to select, from the plurality of network switches, a network switch, for reporting a flow table miss for an existing flow to the SDN controller, based on a set of parameters.9. The system of claim 8, wherein each parameter in the set of parameters is associated with a weightage.10.
The system of claim 8, wherein a parameter in the set of parameters is a pre-computed parameter or a run-time parameter.11. A non-transitory machine-readable storage medium comprising instructions for selecting an optimal network device for reporting flow table misses upon expiry of a flow in a software defined network (SDN), the instructions executable by a processor to: identify, from a plurality of network devices, a network device, for reporting a flow table miss for a flow to an SDN controller, based on a pre-defined factor, wherein the plurality of network devices are on a network path assigned to the flow.12. The storage medium of claim 11, wherein the pre-defined factor includes a priority associated with the flow in the software defined network.13. The storage medium of claim 11, further comprising instructions to query only the identified network device for a flow parameter to decide regarding continuation or removal of the flow from the software defined network.14.
The storage medium of claim 11, further comprising instructions to associate a hard timeout period for a flow entry corresponding to the flow in each of the plurality of network devices, including the identified network device, in such a manner that the hard timeout period associated with the identified network device is first to timeout.15. The storage medium of claim 11, further comprising instructions to report the flow table miss for the flow from the identified network device to the SDN controller.