Router (computing)

Source: Wikipedia, the free encyclopedia.

Rack containing a service-provider–class router connected to multiple networks

A router

internetwork (e.g. the Internet) until it reaches its destination node.[8]

A router is connected to two or more data lines from different

routing policy
, it directs the packet to the next network on its journey.

The most familiar type of IP routers are home and small office routers that simply forward IP packets between the home computers and the Internet. More sophisticated routers, such as enterprise routers, connect large business or ISP networks up to the powerful core routers that forward data at high speed along the optical fiber lines of the Internet backbone.

A carrier class router with 10G/40G/100G interfaces and redundant processor/power/fan modules

Routers can be built from standard computer parts but are mostly specialized purpose-built computers. Early routers used software-based forwarding, running on a CPU. More sophisticated devices use application-specific integrated circuits (ASICs) to increase performance or add advanced filtering and firewall functionality.

Operation

When multiple routers are used in interconnected networks, the routers can exchange information about destination addresses using a routing protocol. Each router builds up a routing table, a list of routes, between two computer systems on the interconnected networks.[9][10]

The software that runs the router is composed of two functional processing units that operate simultaneously, called planes:[11]

  • static routes, or by learning routes dynamically using a routing protocol. Static and dynamic routes are stored in the routing table. The control-plane logic then strips non-essential directives from the table and builds a forwarding information base
    (FIB) to be used by the forwarding plane.
  • Forwarding plane: This unit forwards the data packets between incoming and outgoing interface connections. It reads the header of each packet as it comes in, matches the destination to entries in the FIB supplied by the control plane, and directs the packet to the outgoing network specified in the FIB.

Applications

telephone socket (left, white) to connect it to the internet using ADSL, and Ethernet
jacks (right, yellow) to connect it to home computers and printers.

A router may have interfaces for multiple types of

network prefix
.

Routers may provide connectivity within enterprises, between enterprises and the Internet, or between

Cisco CRS-1 or Juniper PTX) interconnect the various ISPs, or may be used in large enterprise networks.[13]
Smaller routers usually provide connectivity for typical home and office networks.

All sizes of routers may be found inside enterprises.[14] The most powerful routers are usually found in ISPs, academic and research facilities. Large businesses may also need more powerful routers to cope with ever-increasing demands of intranet data traffic. A hierarchical internetworking model for interconnecting routers in large networks is in common use.[15] Some routers can connect to Data service units for T1 connections[16][17][18] via serial ports.[19][20]

Access, core and distribution

A screenshot of the LuCI web interface used by OpenWrt. This page configures Dynamic DNS.

The

enterprise networks
into three layers: core, distribution, and access.

Access routers, including small office/home office (SOHO) models, are located at home and customer sites such as branch offices that do not need hierarchical routing of their own. Typically, they are optimized for low cost. Some SOHO routers are capable of running alternative free Linux-based firmware like Tomato, OpenWrt, or DD-WRT.[21]

Distribution routers aggregate traffic from multiple access routers. Distribution routers are often responsible for enforcing quality of service across a wide area network (WAN), so they may have considerable memory installed, multiple WAN interface connections, and substantial onboard data processing routines. They may also provide connectivity to groups of file servers or other external networks.[22]

In enterprises, a

collapsed backbone interconnecting the distribution tier routers from multiple buildings of a campus, or large enterprise locations. They tend to be optimized for high bandwidth, but lack some of the features of edge routers.[23]

Security

External networks must be carefully considered as part of the overall security strategy of the local network. A router may include a

closed source routers because errors and potentially exploitable vulnerabilities are more likely to be discovered and addressed in an open-source environment.[25][26]

Routing different networks

Routers are also often distinguished on the basis of the network in which they operate. A router in a

Internet connectivity and internal use

Routers intended for ISP and major enterprise connectivity usually exchange routing information using the

RFC 4098 defines the types of BGP routers according to their functions:[28]

Wi-Fi routers

Wi-Fi routers combine the functions of a router with those of a wireless access point. They are typically devices with a small form factor, operating on the standard electric power supply for residential use. Connected to the Internet as offered by an Internet service provider, they provide Internet access through a wireless network for home or office use.

History

The first ARPANET router, the Interface Message Processor, was delivered to UCLA August 30, 1969, and went online October 29, 1969.

The concept of an interface computer was first proposed by

connectionless devices, which had no role in assuring that traffic was delivered reliably, leaving that function entirely to the hosts. This particular idea, the end-to-end principle, had been previously pioneered in the CYCLADES network.[37]

The idea was explored in more detail, with the intention to produce a prototype system as part of two contemporaneous programs. One was the initial

BBN, as part of that DARPA-initiated effort, during 1975–1976.[40] By the end of 1976, three PDP-11-based routers were in service in the experimental prototype Internet.[41]

The first multiprotocol routers were independently created by staff researchers at MIT and Stanford in 1981 and both were also based on PDP-11s. Stanford's router program was led by William Yeager and MIT's by Noel Chiappa.[42][43][44][45] Virtually all networking now uses TCP/IP, but multiprotocol routers are still manufactured. They were important in the early stages of the growth of computer networking when protocols other than TCP/IP were in use. Modern routers that handle both IPv4 and IPv6 are multiprotocol but are simpler devices than ones processing AppleTalk, DECnet, IPX, and Xerox protocols.

From the mid-1970s and in the 1980s, general-purpose

NX-OS
, are extensively modified versions of Unix software.

Forwarding

The main purpose of a router is to connect multiple networks and forward packets destined either for directly attached networks or more remote networks. A router is considered a

layer-3 device because its primary forwarding decision is based on the information in the layer-3 IP packet, specifically the destination IP address. When a router receives a packet, it searches its routing table to find the best match between the destination IP address of the packet and one of the addresses in the routing table. Once a match is found, the packet is encapsulated in the layer-2 data link frame for the outgoing interface indicated in the table entry. A router typically does not look into the packet payload,[46] but only at the layer-3 addresses to make a forwarding decision, plus optionally other information in the header for hints on, for example, quality of service (QoS). For pure IP forwarding, a router is designed to minimize the state information associated with individual packets.[47] Once a packet is forwarded, the router does not retain any historical information about the packet.[b]

The routing table itself can contain information derived from a variety of sources, such as a

A router can run more than one routing protocol at a time, particularly if it serves as an autonomous system border router between parts of a network that run different routing protocols; if it does so, then redistribution may be used (usually selectively) to share information between the different protocols running on the same router.[49]

Besides deciding to which interface a packet is forwarded, which is handled primarily via the routing table, a router also has to manage congestion when packets arrive at a rate higher than the router can process. Three policies commonly used are tail drop, random early detection (RED), and weighted random early detection (WRED). Tail drop is the simplest and most easily implemented: the router simply drops new incoming packets once buffer space in the router is exhausted. RED probabilistically drops datagrams early when the queue exceeds a pre-configured portion of the buffer, until reaching a pre-determined maximum, when it drops all incoming packets, thus reverting to tail drop. WRED can be configured to drop packets more readily dependent on the type of traffic.

Another function a router performs is traffic classification and deciding which packet should be processed first. This is managed through QoS, which is critical when Voice over IP is deployed, so as not to introduce excessive latency.[50]

Yet another function a router performs is called policy-based routing where special rules are constructed to override the rules derived from the routing table when a packet forwarding decision is made.[51]

Some of the functions may be performed through an application-specific integrated circuit (ASIC) to avoid overhead of scheduling CPU time to process the packets. Others may have to be performed through the CPU as these packets need special attention that cannot be handled by an ASIC.[52]

See also

Notes

  1. ^ Pronounced /ˈrtər/ in British English, /ˈrtər/ in American and Australian English.[1]
  2. ^ In some router implementations, the forwarding action can increment a counter associated with the routing table entry for the collection of statistical data.
  3. ^ A router can serve as a DHCP client or as a DHCP server.

References

  1. ^ "router". Oxford English Dictionary (Online ed.). Oxford University Press. (Subscription or participating institution membership required.)
  2. ^ "A Router is a Computer". Cisco Network Academy. Archived from the original on 2022-07-05.
  3. ^ Josef Ungerman. "Anatomy of Internet Routers" (PDF). Cisco, CCIE #6167.
  4. ^ "Anatomy of a router". NetworkLife. 2009-01-14. Retrieved 2024-03-25.
  5. ^ "How Does a Router Work?". Cisco. 2019-06-28. Retrieved 2024-03-25. Routers use what's called a "metric value," or preference number. If a router has the choice of two routes to the same location, it will choose the path with the lowest metric. The metrics are stored in a routing table.
  6. .
  7. .
  8. ^ "Overview Of Key Routing Protocol Concepts: Architectures, Protocol Types, Algorithms and Metrics". Tcpipguide.com. Archived from the original on 20 December 2010. Retrieved 15 January 2011.
  9. ^ "Cisco Networking Academy's Introduction to Routing Dynamically". Cisco. Archived from the original on October 27, 2015. Retrieved August 1, 2015.
  10. routing protocols
    .
  11. .
  12. ^ "Which networking component is responsible for directing data between different networks - ITEagers". ITEagers - Prepare youself. Retrieved 2024-02-27.
  13. ^ "Setting uo Netflow on Cisco Routers". MY-Technet.com date unknown. Archived from the original on 14 July 2011. Retrieved 15 January 2011.
  14. ^ a b "Windows Home Server: Router Setup". Microsoft Technet 14 Aug 2010. Archived from the original on 22 December 2010. Retrieved 15 January 2011.
  15. .
  16. .
  17. .
  18. ^ "Computerworld". 23 January 1995.
  19. ^ "Serial Interface Cards".
  20. ^ "Serial Network Modules".
  21. ^ "SOHO Network Requirements Planning and Implementation". ExamCollection. Retrieved 2021-03-25.
  22. ^ "How Do WiFi Extenders Work? Repeater, Booster, Extender?". ISP Family. 2021-02-25. Retrieved 2021-03-25.
  23. ^ "Hierarchical Network Design Overview (1.1) > Cisco Networking Academy Connecting Networks Companion Guide: Hierarchical Network Design | Cisco Press". www.ciscopress.com. Retrieved 2021-03-21.
  24. ^ "Security Considerations Of NAT" (PDF). University of Michigan. Archived from the original (PDF) on October 18, 2014.
  25. ^ "Global Internet Experts Reveal Plan for More Secure, Reliable Wi-Fi Routers - and Internet" (Press release). 14 October 2015. Archived from the original on 2015-10-20.
  26. ^ "Is Open Source Software More Secure than Proprietary Products?". GovTech. 2010-07-26. Retrieved 2024-03-30.
  27. .
  28. .
  29. ^ "What is the primary role of a router placed at the edge of an ISP network engaging in peering with upstream IP transit providers through eBGP - ITEagers". ITEagers - Prepare youself. Retrieved 2024-02-27.
  30. ^ a b c Rekhter, Yakov; Rosen, Eric C. (February 2006). BGP/MPLS IP Virtual Private Networks (VPNs) (Report). Internet Engineering Task Force.
  31. ^ "M160 Internet Backbone Router" (PDF). Juniper Networks. Archived (PDF) from the original on 20 September 2011. Retrieved 15 January 2011.
  32. ^ "Virtual Backbone Routers" (PDF). IronBridge Networks, Inc. September, 2000. Archived (PDF) from the original on 16 July 2011. Retrieved 15 January 2011.
  33. ^ E. Rosen; Y. Rekhter (April 2004). BGP/MPLS VPNs.
  34. ^ Roberts, Dr. Lawrence G. (May 1995). "The ARPANET & Computer Networks". Archived from the original on 24 March 2016. Retrieved 13 April 2016. Then in June 1966, Davies wrote a second internal paper, "Proposal for a Digital Communication Network" In which he coined the word packet,- a small sub part of the message the user wants to send, and also introduced the concept of an interface computer to sit between the user equipment and the packet network.
  35. ^ Pelkey, James. "4.7 Planning the ARPANET: 1967-1968 in Chapter 4 - Networking: Vision and Packet Switching 1959 - 1968". The History of Computer Communications. Archived from the original on December 23, 2022. Retrieved May 9, 2023.
  36. ^ Davies, Shanks, Heart, Barker, Despres, Detwiler and Riml, "Report of Subgroup 1 on Communication System", INWG Note No. 1.
  37. ^ Bennett, Richard (September 2009). "Designed for Change: End-to-End Arguments, Internet Innovation, and the Net Neutrality Debate" (PDF). Information Technology and Innovation Foundation. pp. 7, 11. Retrieved 11 September 2017.
  38. ^ Vinton Cerf, Robert Kahn, "A Protocol for Packet Network Intercommunication", IEEE Transactions on Communications, Volume 22, Issue 5, May 1974, pp. 637 - 648.
  39. ^ David Boggs, John Shoch, Edward Taft, Robert Metcalfe, "Pup: An Internetwork Architecture" Archived 2008-09-11 at the Wayback Machine, IEEE Transactions on Communications, Volume 28, Issue 4, April 1980, pp. 612- 624.
  40. ^ "Ms. Ginny Strazisar". IT History Society. 21 December 2015. Archived from the original on 1 December 2017. Retrieved 21 November 2017.
  41. ^ Craig Partridge, S. Blumenthal, "Data networking at BBN"; IEEE Annals of the History of Computing, Volume 28, Issue 1; January–March 2006.
  42. ^ Valley of the Nerds: Who Really Invented the Multiprotocol Router, and Why Should We Care? Archived 2016-03-03 at the Wayback Machine, Public Broadcasting Service, Accessed August 11, 2007.
  43. ^ Router Man Archived 2013-06-05 at the Wayback Machine, NetworkWorld, Accessed June 22, 2007.
  44. ^ David D. Clark, "M.I.T. Campus Network Implementation", CCNG-2, Campus Computer Network Group, M.I.T., Cambridge, 1982; pp. 26.
  45. ^ Pete Carey, "A Start-Up's True Tale: Often-told story of Cisco's launch leaves out the drama, intrigue", San Jose Mercury News, December 1, 2001.
  46. ^ "Packet Forwarding and Routing on IPv4 Networks - System Administration Guide: IP Services". docs.oracle.com. Retrieved 2021-03-25.
  47. ^ Roberts, Lawrence (22 July 2003). "The Next Generation of IP - Flow Routing". Archived from the original on 4 April 2015. Retrieved 22 February 2015.
  48. ^ David Davis (April 19, 2007). "Cisco administration 101: What you need to know about default routes". Archived from the original on June 25, 2014. Retrieved June 5, 2014.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  49. ^ Diane Teare (March 2013). Implementing Cisco IP Routing (ROUTE): Foundation Learning Guide. Cisco Press. pp. 330–334.
  50. .
  51. ^ Diane Teare (March 2013). "Chapter 5: Implementing Path Control". Implementing Cisco IP-Routing (ROUTE): Foundation Learning Guide. Cisco Press. pp. 330–334.
  52. .

External links