A method for offloading a secure protocol connection, involving
establishing the secure protocol connection between a host system and a
remote peer, offloading the secure protocol connection to a network
interface card (NIC) to obtain an offloaded secure protocol connection,
determining whether a packet is associated with the offloaded secure
protocol connection, and if the packet is associated with the offloaded
secure protocol connection, identifying the offloaded secure protocol
connection, performing cryptographic operations on the packet using at
least one secret key to obtain a processed packet, and returning a status
of the processed packet to the host system.