Patent ID: 8291487

Claim:
A network gateway, comprising: a plurality of central processing unit (CPU) cores in a multi-core processor; a memory module storing a plurality of network addresses; a network address selector for establishing a host side session with a host, for selecting a network address from the plurality of network addresses to result in a calculated first CPU core identity of a first CPU core of the multi-core processor being the same as a calculated second CPU core identity of a second CPU core of the multi-core processor, and for establishing a server side session with a server using the selected network address; and a dispatcher for: receiving a first data packet from the host side session, calculating the first CPU core identity using the first data packet, and assigning the first CPU core with the first CPU core identity to process the first data packet, wherein the processing of the first data packet by the first CPU core comprises: substituting a host network address in the first data packet with the selected network address; and sending the processed first data packet to the server side session; receiving a second data packet from the server side session, calculating the second CPU core identity using the selected network address in the second data packet, and assigning the second CPU core with the second CPU core identity to process the second data packet, wherein the processing of the second data packet by the second CPU core comprises: substituting the selected network address in the second data packet with the host network address; and sending the processed second data packet to the host side session.