• No results found

One issue left open is the issue of landmark routing state and how that state grows if landmarks have local routing clusters.

Recall that in the original Cowen [17] scheme, landmarks do not keep a local routing cluster. Instead, each non-landmark node’s forwarding label (i.e. address), contains the output port of its landmark on the shortest path from the landmark to the node. This allows the landmark to avoid keeping routing state for the nodes it is the landmark for. When a packet arrives, the landmark can simply retrieve the destination label from the packet, then extract the output port from the label and use the output port to send the packet on its way. The need to retain a local cluster forwarding table is therefore eliminated.

This lack of local cluster state for landmarks is important to the proof of compactness for both the Cowen [17] and Thorup and Zwick [68] landmark selection schemes, as both schemes deal with any nodes with overly large local clusters by simply adding them to the landmark set.

The stateless approach of encoding the landmark output port into the node labels does not sit comfortably with a dynamic, distributed routing protocol for the Internet. The output port from the landmark to its associated nodes may change frequently. Encoding that port into nodes’ address labels would require they also change with the same frequency. Some of the nodes affected may be relatively far

5.4 Landmark State 125

away from their landmark and it may take a significant amount of time to communicate the change to them compared with the frequency of any landmark output port changes.

Having landmarks in a distributed scheme retain a local cluster routing table simplifies communication requirements considerably, as the Strowes [65] protocol does. The cost is that the cover of Cowen’s proof of compactness is lost. While the guarantee of compactness remains for non-landmark nodes, the guarantee of compactness for landmark state disappears, as landmarks now may have local clusters which are unbounded in size other than by the size of the network. In practice, landmarks with local routing tables may still have compact tables, even if the guarantee is not there.

The potential for nodes having non-compact routing tables when landmarks must keep local cluster state is increased by the initial selection of landmarks without any regard to the size of the clusters that are produced and then dealing with any remaining nodes with overly large local clusters by simply making them also be landmarks. Cowen [17] and Thorup and Zwick [68] did so because it was

convenient and simple for their proofs.

Ideally the ˜O (Ni) landmark set would be chosen to avoid creating overly large

local routing clusters in the first place, or at least minimise them, and so minimise the potential for non-compact state to arise at landmarks. Graphs exist for which it is impossible to select landmarks so as to avoid non-compact local cluster routing tables, if landmarks must have local clusters. A goal of finding a scheme that could pick landmarks in a way that would avoid overly large clusters for any possible graph is therefore not realisable.

However, computer networks do not spring into existence without intervention. Rather, computer networks are constructed. Their construction is shaped by various goals, and constrained by practicalities. What matters is having a routing scheme that gives the builders of distributed, computer networks adequate control over their routing tables, so they can shape their growing network in a way that best meets their goals and constraints.

That is, while a landmark selection protocol for a distributed Cowen Landmark Routing scheme with landmark local clusters may not be able to produce compact routing for all nodes, on all graphs, it is possible with only minor restrictions for computer networks to be built in a way that allows for distributed, compact routing.

The problem of overly large clusters and landmark state in a distributed Cowen Landmark Routing protocol where landmarks keep local cluster routing tables thus

can be addressed in practical terms by giving the constituent operators, or nodes, of a network the ability to control the size of their local clusters. If nodes can control which other remote nodes must be in their local cluster, then nodes can control the growth of their local cluster routing tables. Nodes could decide for themselves the cost and worth of having a path to a remote node in their local cluster routing table, without fear of breaking routing, in a way that is not possible with BGP today. For a landmark, refusing to store a route to a remote node in the landmark’s local cluster routing table would imply that the remote node could not associate itself with that landmark.

Such a selective admittance ability for local cluster routing tables would allow the network to grow in a way such that the existing nodes could ensure the structure of that growth is consistent with all nodes, including landmarks, having compact routing tables.

A selective admittance capability for local clusters raises the possibility that a new node may wish to add an edge, but find its new neighbour refuses to add the new node to its cluster. This may leave that new node in a position where no traffic can be routed to it. Alternatively, a new node may have no problem having its nearer nodes route to it, but still find it can not associate with any of the nearest

landmarks because the clusters of the landmarks, or of nodes on the shortest paths from those landmarks, are full, which would mean the new node is not globally reachable. Such issues may be considered to be beyond the scope of a routing scheme.

Issues of joining a network in a way that allows a node to still be sure of finding a landmark may be viewed as a resource negotiation or economic issue, in that it is up to the new node to find its place in the network in an economical way. E.g., a new node may need to negotiate with prospective neighbours to discover and select an appropriate link, with the required guarantees of available local cluster routing table slots needed for global reachability. While it may be possible to specify an automated protocol that is appropriate in some situations (e.g. mobile ad-hoc networks), in other scenarios this process may require social constructs, such as business negotiations and contracts. Such social and business constructs are already normal and required for nodes to add links to others on the Internet. Abrogating that responsibility in a Cowen Landmark Routing protocol for the Internet is therefore acceptable.

In conclusion, an ability for nodes to be selective about their local cluster routing tables would allow all those nodes that wish to have compact routing tables to have them. Further, it would provide a policy tool to landmarks and other nodes that would give them control over which other nodes may use them for landmark