In my OpenFlow enabled switch, the incoming packets pass through multiple flow tables. The packet and its metadata are passed between the tables. Can I put one of the packet header values (e.g. 32 bit tcp source port) into the metadata field? Based on the installed flow entry, I can put fixed data into the metadata field but not packet related data such as value of tcp port etc.
One way is to send a packet-in msg to the controller with a cloned copy of the packet. The controller replies back with a flow mod where tcp source port value can be placed in the metadata field. But I want to do it without interacting with the controller. Is it possible?