Hello All, I am trying to implement an application similar to the NAT.
Whenever a packet comes on port 1, it is sent to the controller and the also to port 2 with a few fields changed. The controller adds another flow-table entry so that the packet from port 2 goes to port 1 without going to the controller. I am trying to test it with TCP and this is what is happening. 1. The syn packet goes from the port 1 to the controller and port 2. The controller makes an entry in the flowtable so that the packet from port 2 should go directly to port 1. 2. The server at port 2 replies with synack. The synack instead of going to port 1, comes to the controller (Even though there is a flow-table entry for this). However, the synack for the retransmitted syn goes through the switch without coming to the controller. As both the actions - controller making an entry and server at port 2 sending synack are asynchronous, somehow the synack from port 2 is arriving before a flow-table entry is made. I am not sure, if this is true and if this is true, is there any way I can make the flow-table entry before the packet from port 2 arrives? Thanks!! Rohan
