||It has been suggested that this article be merged with IP forwarding algorithm. (Discuss) Proposed since July 2014.|
||This article provides insufficient context for those unfamiliar with the subject. (April 2011)|
IP forwarding also known as Internet routing is a process used to determine which path a packet or datagram can be sent. The process uses routing information to make decisions and is designed to send a packet over multiple networks.
Generally, networks are separated from each other by routers. For packets to travel between networks, they must be “routed” from one network to another. These routers contain a routing table that can contain specific instructions on how to send packets to a destination network (known as a route), or a set of generic instructions on where to send packets that do not match any of the other specified routes (called a default route), or both. These routes can either be hard-coded into the router by the network administrator (called a static route), or learned dynamically via a routing protocol. These routes give the routers instructions on how to utilize the physical network infrastructure that is in place to get packets to their destination, regardless of the number of hops that they must take to get there.
Ideally, IP forwarding algorithms would take into account a datagram's length, the type of service specified in the datagram's header, and the network load to determine the best path to send a packet to its intended destination. In general, most routing software determines its route through a shortest path algorithm. However, there are other routing protocols that use other factors (known as metrics) to determine the best path. Each path is given a “cost,” and the algorithms within a router’s operating system use this cost to determine where and how to send the packets. The calculation of these costs can include the bandwidth or utilization of the link between routers, or the speed that the connection is operating at. Different protocols are also used for different applications (for example, protocols such as Open Shortest Path First are generally used for routing packets between subnetworks within an organization’s network, and protocols such as Border Gateway Protocol are used for routing outside of them).
In addition to calculating route cost, routing protocols also broadcast and share their known routes to other routers. This functionality comes with several benefits. Instead of requiring a network administrator to program each individual router with the relevant routes, he or she would only need to program a small number of routers (from which the other would learn the programmed routes). This has the added flexibility of being able to recover from an outage automatically. If a route becomes unavailable for some reason, the routing protocol can detect this and automatically send packets over an alternate route. This functionality can be invaluable in situations where network redundancy is required.
- Comer, Douglas E. (2000). Internetworking with TCP/IP (4 ed.). Prentice Hall: Upper Saddle River, NJ.
|This computer networking article is a stub. You can help Wikipedia by expanding it.|