1. In a communication system comprising two or more virtual private network (VPN) endpoints coupled together through a network, the network comprising a plurality of nodes interconnected through edges, a method for providing restoration for the network, the method comprising the steps of: determining a restoration topology for the network, wherein at least one of the VPN endpoints is adapted to communicate with multiple VPN endpoints through a single connection, wherein the restoration topology comprises backup edges corresponding to primary edges in the network, wherein said restoration topology is based on a hose model, wherein the network further comprises primary nodes, non-primary nodes and non-primary edges, and wherein the step of determining a restoration topology further comprises the step of adding additional backup edges for non-primary edges in the network, each of the additional backup edges connecting a primary node coupled to a non-primary edge with one or more least common ancestor nodes in the network portion; and wherein the step of determining a restoration topology further comprises the step of determining a restoration topology for the network by using a network portion comprising primary edges and primary nodes in the network, the primary edges and primary nodes used to connect the at least one VPN endpoint with other VPN endpoints, and wherein the network further comprises non-primary nodes and non-primary edges, and determining a root node of the network portion; wherein the root node is chosen such that any sequence of edges in the network portion from the root to any node in the network portion has a property that bandwidth in the sequences decreases; replacing a given primary edge with one or more of the backup edges if the given primary edge fails; and adding additional backup edges for non-primary edges in the network, each of the additional backup edges connecting a primary node coupled to a non-primary edge with one or more least common ancestor nodes in the network portion.