Patent ID: 7206864

Claim:
A server having a network protocol processing function, comprising: a host processor that processes user requests received through a network; a host memory storing, on a user basis, network setting information including: a port list in which network ports available to a user are described; an ARP table that indicates correspondences between IP addresses of other hosts connected to the same VLAN and MAC addresses; a routing table showing a next host to which a packet is to be transferred, with respect to an IP address of a given destination host; a TCP connection table including a source IP address, a destination IP address, a source port number, a destination port number, and VLAN-ID defined by IEEE802.1Q; and a connection list storing a pointer indicating the TCP connection table; and TOE equipment including: a network port connected to the network; a TOE processor for performing TCP/IP protocol processing; and a TOE memory holding at least information for identifying TCP connections, wherein the host processor creates the TCP connection table in network setting information of a certain user, registers a pointer to the TCP connection table in the connection list, establishes a TOP connection for the user, and passes a connection information block including at least a source P address, a destination IP address, a source port number, and a destination port number, and VLAN-ID defined by IEEE802.1Q, which are stored in the TOP connection information table, to the TOE equipment, wherein the TOE processor, based on information of the connection information block, newly creates a connection table in the TOE memory, registers a pointer to the connection table in the connection list, if data exists in a send socket buffer registered in the connection table, creates a TCP/IP packet from the data, stores VLAN-ID defined by IEEE802.1Q in a specific field of the packet, and sends the packet, and wherein, when receiving a packet, the TOE processor determines whether the pointer to the connection table is registered in the connection list, checks whether VLAN-ID, a source IP address, a destination IP address, a source port number, and a destination port number within the received packet match values registered in the connection table, and if all match, performs TCP receive processing for the received packet.