Patent ID: 8891528

Claim:
A method for managing the capture of packets in a computing system, the method comprising: maintaining a buffer tail pointer in a memory of an instruction executing device; receiving a series of packets at the instruction executing device; for each received packet: prepending a header comprising a packet length and a packet pointer set to a current value of the buffer tail pointer; determining a next free memory location by adding the current value of the buffer tail pointer to the length of a previous packet identified by the buffer tail pointer; temporarily writing the packet and prepend header to the next free memory location in a circular packet buffer in a memory coupled to the instruction executing device; and setting the buffer tail pointer to the next free memory location; and upon receipt by the instruction executing device of a command to generate a packet capture file: creating a forward linked list by a process including, for each packet in the circular buffer: extracting from the prepend header of that packet the packet pointer to a previously stored packet; and overwriting the packet pointer to reference a subsequently stored packet; and storing the forward linked list in the packet capture file.