×

Hardware accelerator for a domain name server cache

  • US 9,215,205 B1
  • Filed: 04/20/2012
  • Issued: 12/15/2015
  • Est. Priority Date: 04/20/2012
  • Status: Active Grant
First Claim
Patent Images

1. A system for a hardware accelerator for a domain name server (DNS) lookup, comprising:

  • a domain name server (DNS) cache;

    a processor configured to;

    store a plurality of entries in the DNS cache, comprising;

    receive a DNS reply including an entry to be stored;

    determine whether a time to live (TTL) parameter of the received entry is less than a second threshold value, the second threshold value being greater than 0;

    in the event that the TTL parameter of the received entry is less than the second threshold value, omit storing the received entry in the DNS cache;

    determine whether the time to live (TTL) parameter of the received entry is greater than a third threshold value, the third threshold value being greater than or equal to each of a first threshold value and the second threshold value; and

    in the event that the TTL parameter of the received entry is greater than the third threshold value;

    reduce the TTL parameter of the received entry to correspond to the third threshold value; and

    store the received entry with the reduced TTL parameter;

    periodically perform a pre-fetch process on the plurality of entries stored in the DNS cache, wherein the performing of the pre-fetch process comprises;

    for each of the plurality of entries, determine whether a TTL parameter associated with a corresponding entry stored in the DNS cache is below the first threshold value;

    in the event that the TTL parameter associated with the corresponding entry stored in the DNS cache is below the first threshold value, mark the corresponding entry; and

    for each marked entry, update the each marked entry in the DNS cache, wherein the updated entry comprises an updated TTL value and an updated Internet Protocol (IP) address;

    execute a packet processing engine of a host device to identify a DNS request; and

    perform a DNS lookup in the DNS cache, wherein the performing of the pre-fetch process is separate from the performing of the DNS lookup; and

    perform cache management on the DNS cache, comprising to;

    determine whether an entry in the DNS cache satisfies a least frequently used (LFU) algorithm; and

    in the event that the entry satisfies the LFU algorithm, remove the entry from the DNS cache, wherein a TTL of each entry in the DNS cache is less than or equal to the third threshold value; and

    a memory coupled to the processor and configured to provide the processor with instructions.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×