Читать книгу Understanding Infrastructure Edge Computing - Alex Marcham - Страница 52

3.6.1 Routing

Оглавление

On the subject of routing, which is the process where a series of network endpoints use layer 3 information as well as other characteristics of the data in transit and of the network itself to deliver data from its source to its destination, there are two primary approaches to performing this process.

One approach is referred to as hop‐by‐hop routing. Using this routing methodology, the onus for directing data in transit on to the optimal path towards its destination is placed on each router (a term referring to an endpoint which makes a routing decision, based on layer 3 data and other knowledge of the network, in order to determine where to send data in transit) in the path. Each of these routers uses its own local knowledge of the state of the network to make its routing decisions.

Another approach is resource reservation. This approach aims to reserve a specific path through the network for data in transit. Although this approach may seem preferable (and is in some cases), historically it has been challenging to implement as the act of resource reservation across a network requires additional state to be maintained for each traffic flow at each network endpoint in the path from source to destination to ensure that the resource allocation is operating as expected. In cases where the entire network path between the source and destination is under the control of a single network operator, this methodology is more likely to be successful; a resource reservation scheme is easier to implement in this case as the network operator can be aware of all of the resources that are available on the path, compared to a path which involves multiple network operators who may not provide that level of transparency or may not wish to allocate available resources to the traffic.

Both of these approaches seek to achieve best path routing, where traffic is sent from its source to its destination using the combination of network endpoints and links, which results in the optimal balance of resource usage, cost, and performance. If both approaches have the same aim, why are there two approaches to begin with? First, the definition of what would make a particular path from source to destination the best path is not always as simple as the lowest number of hops or using the lowest latency links in the network; once factors such as cost are introduced, business logic and related considerations begin to influence the routing process, which is where resource reservation becomes more favourable in many cases. Second, there is a trade‐off between the ability of a single system which oversees the network to identify and reserve specific paths in a manner that provides enhanced functionality or performance compared to a hop‐by‐hop routing approach. Across a large network such as the internet, it is not uncommon for traffic to pass through a number of networks, many of which use hop‐by‐hop routing alongside others which use resource reservation internally.

One consideration is when a router receives traffic for which it does not know a specific route on which to send the traffic to reach its destination. In this case, a router will typically have a default route configured. This is a catch‐all route for destination networks that the router is unaware of, which often directs the traffic back to another router within the network in the hope that a route will be found for the traffic. The alternative is for the traffic to be dropped and a message be sent back to the source of the traffic indicating this. Should a situation arise where two routers are each other’s default route, traffic will not bounce between them forever; both IPv4 and IPv6 feature a time to live (TTL) field in their packet headers, which will result in the traffic being discarded if it becomes stuck in such a routing loop for a considerable period of time, protecting the network against unnecessary congestion caused by routing misconfiguration or any temporary conditions.

Understanding Infrastructure Edge Computing

Подняться наверх