发明名称 |
Hardware method for detecting timeout conditions in a large number of data connections |
摘要 |
Tracking several open data connections is difficult with a large number of connections. Checking for timeouts in software uses valuable processor resources. Employing a co-processor dedicated to checking timeouts uses valuable logic resources and consumes extra space. In one embodiment, a finite state machine implemented in hardware increases the speed connections can be checked for timeouts. The finite state machine stores a last accessed time stamp for each connection in a memory, and loops through the memory to compare each last accessed time stamp with a current time stamp of the system minus a global timeout value. In this manner, the finite state machine can efficiently find and react to timed out connections. |
申请公布号 |
US9118565(B1) |
申请公布日期 |
2015.08.25 |
申请号 |
US201414551496 |
申请日期 |
2014.11.24 |
申请人 |
EMC Corporation |
发明人 |
McLamb Jeffrey T. |
分类号 |
G06F3/00;G06F5/00;H04L12/26 |
主分类号 |
G06F3/00 |
代理机构 |
Hamilton, Brook, Smith & Reynolds, P.C. |
代理人 |
Hamilton, Brook, Smith & Reynolds, P.C. |
主权项 |
1. A method comprising:
performing a timestamp analysis by:
a) when a status property of a location indicated by a memory pointer is active
reading a last accessed timestamp corresponding to the location indicated by the memory pointer;determining whether a timeout has occurred based on the last accessed timestamp, a current timestamp and a stored time out value; andif a timeout has occurred, and the location of the memory pointer is active, (i) notifying a higher communication layer, and (ii) updating the status property of the location indicated by the memory pointer to inactive; andb) incrementing the memory pointer; and if an incoming data packet is received, handling the incoming data packet by:
a) processing the incoming data packet with an incoming data handler configured to process the incoming data packet in the higher communication layer;b) updating the status property of the location indicated by the memory pointer to active, and setting the last accessed timestamp in one of a plurality of locations in a memory buffer. |
地址 |
Hopkinton MA US |