Patent ID: 8856395

Claim:
A system comprising: a controller comprising: a processor; memory connected to the processor; and computer executable program code configured to execute on the processor, wherein: the controller memory is configured to store one or more Device Missing Delay timers; the computer executable program code is configured to: identify at least one Device Missing Delay incompatible SAS/SATA expander that is not capable of tracking Device Missing Delay timers for devices directly connected to the Device Missing Delay incompatible SAS/SATA expander; instantiate at least one Device Missing Delay timer associated with at least one device directly connected to the Device Missing Delay incompatible SAS/SATA expander; identify at least one device missing delay compatible SAS/SATA expander that is capable of tracking Device Missing Delay timers for devices directly connected to the Device Missing Delay incompatible SAS/SATA expander; prevent instantiation of Device Missing Delay timers associated devices directly connected to the Device Missing Delay compatible SAS/SATA expander; and receive signals form at least one expander indicating when a Device Missing Delay timer has expired; and at least one SAS/SATA expander comprising: a processor; memory connected to the processor; one or more PHYs connected to the processor; and computer executable program code configured to execute on the processor, wherein: the expander memory is configured to store one or more Device Missing Delay timers; and the computer executable program code is configured to: determining that a device has become disconnected from one or more of the one or more PHYs; start a Device Missing Delay timer associated with the at least one of the one or more PHYs associated with the disconnected device; and maintain a representation of a current network topology while at least one of the one or more device missing delay timers is running.