A network system comprising: a flow table; a packet transfer processing unit configured to receive a packet for multicast transmission and process the packet based on the flow table; and a loop-back processing unit configured, when receiving a packet for multicast transmission from the packet transfer processing unit, to return said packet to said packet transfer processing unit, the flow table comprising a plurality of flow entries each defining a) a match condition indicating a multicast address as a destination address and b) an action including a destination port, said plurality of flow entries being at least a first flow entry which defines a first match condition and a first action including a first destination port, and a second flow entry which defines a second match condition that is identical to the first match condition and a second action including a second destination port that is different from the first destination port, wherein the transfer processing unit is configured, when a multicast address of a first packet matches a multicast address of the first match condition defined by the first flow entry, i) to rewrite a header of the first packet based on the first action of the first flow entry, ii) to obtain a second packet by copying the rewritten first packet, iii) to transmit the rewritten first packet to the first destination port, and iv) to transmit the second packet to the loop-back processing unit, the loop-back processing unit is configured to receive the second packet from the transfer processing unit, and to return the second packet to the transfer processing unit, and the transfer processing unit is further configured, when a multicast address of the second packet from the loop-back processing unit matches a multicast address of the second match condition defined by the second flow entry, v) to rewrite a header of the second packet based on the second action of the second flow entry, and vi) to transmit the rewritten second packet to the second destination port. a flow table; a packet transfer processing unit configured to receive a packet for multicast transmission and process the packet based on the flow table; and a loop-back processing unit configured, when receiving a packet for multicast transmission from the packet transfer processing unit, to return said packet to said packet transfer processing unit, the flow table comprising a plurality of flow entries each defining a) a match condition indicating a multicast address as a destination address and b) an action including a destination port, said plurality of flow entries being at least a first flow entry which defines a first match condition and a first action including a first destination port, and a second flow entry which defines a second match condition that is identical to the first match condition and a second action including a second destination port that is different from the first destination port, wherein the transfer processing unit is configured, when a multicast address of a first packet matches a multicast address of the first match condition defined by the first flow entry, i) to rewrite a header of the first packet based on the first action of the first flow entry, ii) to obtain a second packet by copying the rewritten first packet, iii) to transmit the rewritten first packet to the first destination port, and iv) to transmit the second packet to the loop-back processing unit, the loop-back processing unit is configured to receive the second packet from the transfer processing unit, and to return the second packet to the transfer processing unit, and the transfer processing unit is further configured, when a multicast address of the second packet from the loop-back processing unit matches a multicast address of the second match condition defined by the second flow entry, v) to rewrite a header of the second packet based on the second action of the second flow entry, and vi) to transmit the rewritten second packet to the second destination port.