Abstract:
Systems and methods for hierarchical reference counting via sibling trees are provided. The hierarchical data structure, together with its associated operations, can efficiently maintain reference counts and significantly reduce input/output (IO) operations compared to traditional techniques. The data structure presented here is applicable to any directed acyclic graph (DAG-type) structure where reference counts are used. Various embodiments of the present invention use a data structure to maintain a “sibling pointer” (pointing to the sibling node as a way to avoid reference count updates) and a “sibling count.” When nodes in the tree diverge, the sibling pointer and sibling count are updated as opposed to directly manipulating the reference counts of the children of the diverging nodes. Various other embodiments can use additional entries or fields that allow for improved efficiency and advantages.
Abstract:
Methods, non-transitory computer readable media, and computing devices that managing network traffic in a storage system include parse one or more packets received from a client to identify header data, and wherein the parsing comprises identifying when the one or more packets is a read request or a write request. A server is identified based on the parsed one or more packets. One or more rules are modified in the parsed one or more packets to allow data exchange between the client and the identified server. The parsed one or more packets are transmitted with the modified one or more rules to the identified server, wherein data exchange is initiated between the client and the identified server based on the parsed one or more packets with the modified one or more rules.
Abstract:
Methods, non-transitory computer readable media, and computing devices that managing network traffic in a storage system include parse one or more packets received from a client to identify header data, and wherein the parsing comprises identifying when the one or more packets is a read request or a write request. A server is identified based on the parsed one or more packets. One or more rules are modified in the parsed one or more packets to allow data exchange between the client and the identified server. The parsed one or more packets are transmitted with the modified one or more rules to the identified server, wherein data exchange is initiated between the client and the identified server based on the parsed one or more packets with the modified one or more rules.
Abstract:
Systems and methods for hierarchical reference counting via sibling trees are provided. The hierarchical data structure, together with its associated operations, can efficiently maintain reference counts and significantly reduce input/output (IO) operations compared to traditional techniques. The data structure presented here is applicable to any directed acyclic graph (DAG-type) structure where reference counts are used. Various embodiments of the present invention use a data structure to maintain a “sibling pointer” (pointing to the sibling node as a way to avoid reference count updates) and a “sibling count.” When nodes in the tree diverge, the sibling pointer and sibling count are updated as opposed to directly manipulating the reference counts of the children of the diverging nodes. Various other embodiments can use additional entries or fields that allow for improved efficiency and advantages.