Bug-590: Packet loss on first time ping test 16/6316/3
authorFlavio Fernandes <ffernand@redhat.com>
Tue, 22 Apr 2014 15:39:36 +0000 (11:39 -0400)
committerFlavio Fernandes <ffernand@redhat.com>
Tue, 22 Apr 2014 18:05:46 +0000 (14:05 -0400)
commit5202e22213895b8e4fce9acb8dd9b35fbeb2a25d
tree5a525cc3580a540bd4a0d0a7243c0e20c399abc7
parentccebe1096fdf88a3c883bd55be4aa1b390947377
Bug-590: Packet loss on first time ping test

In this commit, we are addressing 2 issues that could cause the exception (ie first ip packet) to
be lost. What is observed with this bug is that the non-arp packet -- in this case the icmp packet --
is being 'exceptioned' to the SimpleForwarding code path because the node has not yet been programmed
with flows that would allow it to forward the packet to its destination w/out involving the controller.

Change #1: In cases when the src and dst ip are of hosts in the same node, the getRoute() call is going
to return 'null'. That is because the IRouting lookup will not find a path when src and dst nodes are
the same.

Change #2: When looking up the rulesDB, the key used was using the destHost and the node of the incoming
connector. It should be the destHost and the node of the destHost. Kudos go 100% to Giovanni on this.

Change-Id: I4861acd6ab6d7efe14b50d7537e4b920bffc8a75
Signed-off-by: Flavio Fernandes <ffernand@redhat.com>
opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/SimpleForwardingImpl.java