Content deleted Content added
Line 1:
{{short description|Device that forwards data packets between computer networks}}
{{About|the network device||Router (disambiguation)}}
{{Merge from|Wireless router|date=December 2024|discuss=Talk:Router (computing)#Merge}}
{{Use American English|date=June 2020}}
{{Multiple image
| image1 = ASR9006.jpg
| caption1 = Rack containing a service-provider–class router connected to multiple networks
| image2 = SpeedStream 6520 Derrière.JPG
| caption2 = A home–class router with wireless capabilities; many home routers like this example combine router, [[wireless access point]], [[network switch|switch]] and [[modem]] into one single unit (see also [[residential gateway]])
}}
A '''router'''{{efn|Pronounced {{IPAc-en|ˈ|r|uː|t|ər}} in [[British English]], {{IPAc-en|ˈ|r|aʊ|t|ər}} in [[American English|American]] and [[Australian English]].<ref>{{OED|router}}</ref>}} is a [[computer]] and [[networking device]] that [[Packet forwarding|forwards]] [[data packet]]s between [[computer network]]s, including [[internetworks]] such as the global [[Internet]].<ref>{{cite web |title=A Router is a Computer |url=http://cisco.num.edu.mn/CCNA_R&S1/course/module6/6.3.1.1/6.3.1.1.html |archive-url=https://web.archive.org/web/20220705091357/http://cisco.num.edu.mn/CCNA_R&S1/course/module6/6.3.1.1/6.3.1.1.html |archive-date=2022-07-05 |website=Cisco Network Academy}}</ref><ref name="Medhi">{{cite book
| last1 = Medhi
| first1 = Deepankar
| last2 = Ramasamy
| first2 = Karthik
| title = Network Routing: Algorithms, Protocols, and Architectures
| publisher = Elsevier
| date = 2007
| pages = 19
| language =
| url = https://books.google.com/books?id=IM-Y2W0RIF0C&dq=%22router+is+a+specialized+computer%22&pg=PA19
| doi =
| id =
| isbn = 9780120885886
}}</ref><ref name="Kundu">{{cite book
| last1 = Kundu
| first1 = Sudakshina
| title = Fundamentals of Computer Networks, 2nd Ed.
| publisher = PHI Learning
| date = 2009
| ___location = New Delhi
| pages = 85–86, 124
| language =
| url = https://books.google.com/books?id=OMoHmEQHosAC&q=router%20is%20a
| doi =
| id =
| isbn = 9788120334526
}}</ref>
Routers perform the "traffic directing" functions on the Internet. A router is connected to two or more data lines from different [[IP network]]s. When a data packet comes in on a line, the router reads the [[network address]] information in the packet header to determine the ultimate destination. Then, using information in its [[routing table]] or [[routing policy]], it directs the packet to the next network on its journey. Data packets are forwarded from one router to another through an [[internetwork]] until it reaches its destination [[Node (networking)|node]].<ref>{{cite web|url=http://www.tcpipguide.com/free/t_OverviewOfKeyRoutingProtocolConceptsArchitecturesP.htm|title=Overview Of Key Routing Protocol Concepts: Architectures, Protocol Types, Algorithms and Metrics|publisher=Tcpipguide.com|access-date=15 January 2011|url-status=live|archive-url=https://web.archive.org/web/20101220111345/http://tcpipguide.com/free/t_OverviewOfKeyRoutingProtocolConceptsArchitecturesP.htm|archive-date=20 December 2010}}</ref>
The most familiar type of [[Internet Protocol|IP]] routers are [[Residential gateway|home and small office routers]] that forward [[IP packet (disambiguation)|IP packet]]s<!--intentional link to disambig, could be either IPv4 or IPv6 packet--> between the home computers and the Internet. More sophisticated routers, such as enterprise routers, connect large business or ISP networks to powerful [[core router]]s that forward data at high speed along the [[optical fiber]] lines of the [[Internet backbone]].
Routers can be built from standard computer parts but are mostly [[embedded system|specialized purpose-built computers]]. Early routers used [[software]]-based forwarding, running on a [[CPU]]. More sophisticated devices use [[application-specific integrated circuit]]s (ASICs) to increase performance or add advanced filtering and [[Firewall (computing)|firewall]] functionality.
== History ==
[[File:ARPANET first router 2.jpg|thumb|upright=0.8|The first ARPANET router, the [[Interface Message Processor]], was delivered to UCLA August 30, 1969, and went online October 29, 1969.]]
The concepts of a ''switching node'' using software and an ''interface computer'' were first proposed by [[Donald Davies]] in 1966 for the [[NPL network]].<ref>{{Cite web |last=Davies |first=D. W. |date=1966 |title=Proposal for a Digital Communication Network |url=https://www.dcs.gla.ac.uk/~wpc/grcs/Davies05.pdf}}</ref><ref>{{cite web |last1=Roberts |first1=Dr. Lawrence G. |date=May 1995 |title=The ARPANET & Computer Networks |url=http://www.packet.cc/files/arpanet-computernet.html |url-status=live |archive-url=https://web.archive.org/web/20160324032800/http://www.packet.cc/files/arpanet-computernet.html |archive-date=24 March 2016 |access-date=13 April 2016 |quote=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.}}</ref><ref>{{Cite book |last=Pelkey |first=James |url=http://www.historyofcomputercommunications.info/Individuals/abstracts/donald-davies.html |title=Entrepreneurial Capitalism & Innovation: A History of Computer Communications 1968 - 1988 |date=2007 |quote=paper dated June 1966 ... introduced the concept of an “interface computer” to sit between the user equipment and the packet network. |access-date=2020-02-18}}</ref> The same idea was conceived by [[Wesley A. Clark|Wesley Clark]] the following year for use in the [[ARPANET]], which were named [[Interface Message Processor|''Interface Message Processors'']] (IMPs).<ref name=":2">{{cite web |last=Pelkey |first=James |title=4.7 Planning the ARPANET: 1967-1968 in Chapter 4 - Networking: Vision and Packet Switching 1959 - 1968 |url=https://historyofcomputercommunications.info/section/4.7/planning-the-arpanet-1967-1968/ |url-status=dead |archive-url=https://web.archive.org/web/20221223230647/https://historyofcomputercommunications.info/section/4.7/planning-the-arpanet-1967-1968/ |archive-date=December 23, 2022 |access-date=May 9, 2023 |work=The History of Computer Communications}}</ref> The first interface computer was implemented at the [[National Physical Laboratory (United Kingdom)|National Physical Laboratory]] in the United Kingdom in early 1969, followed later that year by the IMPs at the [[University of California, Los Angeles]], the [[Stanford Research Institute]], the [[University of California, Santa Barbara]], and the [[University of Utah School of Computing]] in the United States.<ref name=":22">{{Cite journal |last1=John S |first1=Quarterman |last2=Josiah C |first2=Hoskins |date=1986 |title=Notable computer networks |journal=Communications of the ACM |language=EN |volume=29 |issue=10 |pages=932–971 |doi=10.1145/6617.6618 |s2cid=25341056 |quote=The first packet-switching network was implemented at the National Physical Laboratories in the United Kingdom. It was quickly followed by the ARPANET in 1969. |doi-access=free}}</ref><ref>{{Cite conference |last=Scantlebury |first=Roger |date=2001 |title=A Brief History of the NPL Network |url=http://www.topquark.co.uk/conf/IAP2001.html |conference=Symposium of the Institution of Analysts & Programmers 2001 |archive-url=https://web.archive.org/web/20030807200346/http://www.topquark.co.uk/conf/IAP2001.html |archive-date=2003-08-07 |access-date=2024-06-13 |quote=The system first went 'live' early in 1969 |url-status=dead |website=}}</ref><ref>{{Cite AV media |url=https://www.inc.com/computerfreaks |title=Computer Freaks |date=June 22, 2023 |last=Haughney Dare-Bryan |first=Christine |type=Podcast |publisher=Inc. Magazine |series=Chapter Two: In the Air |minutes=35:55 |quote=Leonard Kleinrock: Donald Davies ... did make a single node packet switch before ARPA did}}</ref><ref name="C. Hempstead, W. Worthington">{{cite book |url=https://archive.org/details/EncyclopediaOf20thCenturyTechnologyAZMalestrom/page/n621/mode/2up?q=packet+switching |title=Encyclopedia of 20th-Century Technology |date=2005 |publisher=[[Routledge]] |isbn=9781135455514 |editor1-last=Hempstead |editor1-first=C. |pages=573–5 |access-date=2015-08-15 |editor2-last=Worthington |editor2-first=W.}}</ref> All were built with the [[Honeywell 316|Honeywell 516]]. These computers had fundamentally the same functionality as a router does today.
The idea for a router (called a ''[[Gateway (telecommunications)|gateway]]'' at the time) initially came about through an international group of computer networking researchers called the [[International Network Working Group]] (INWG).<ref>Davies, Shanks, Heart, Barker, Despres, Detwiler and Riml, "Report of Subgroup 1 on Communication System", INWG Note No. 1.</ref> These gateway devices were different from most previous [[packet switching]] schemes in two ways. First, they connected dissimilar kinds of networks, such as [[serial line]]s and [[local area network]]s. Second, they were [[connectionless]] devices, which had no role in assuring that traffic was delivered reliably, leaving that function entirely to the [[host (network)|hosts]].<ref>{{Cite journal |last=Edmondson-Yurkanan |first=Chris |date=2007 |title=SIGCOMM's archaeological journey into networking's past |url=https://dl.acm.org/doi/10.1145/1230819.1230840 |journal=Communications of the ACM |language=en |volume=50 |issue=5 |pages=63–68 |doi=10.1145/1230819.1230840 |issn=0001-0782 |quote=INWG#1: Report of Subgroup 1 on Communication System Requirements by Davies, Shanks, Heart, Barker, Despres, Detwiler, and Riml. They wrote: “It was agreed that interworkingbetween packet switching networks should not add complications to the hosts, considering that networks will probably be different and thus gateways between networks will be required. These gateways should be as uncomplicated as possible, whilst allowing as much freedom as possible for the design of individual networks”. INWG#1 clarified that gateways and simplicity were accepted concepts when INWG was formed.}}</ref> This particular idea, the [[end-to-end principle]], was contained in the work of Donald Davies.<ref name=":5">{{cite conference |last1=Davies |first1=Donald |last2=Bartlett |first2=Keith |last3=Scantlebury |first3=Roger |last4=Wilkinson |first4=Peter |date=October 1967 |title=A Digital Communication Network for Computers Giving Rapid Response at remote Terminals |url=https://people.mpi-sws.org/~gummadi/teaching/sp07/sys_seminar/how_did_erope_blow_this_vision.pdf |conference=ACM Symposium on Operating Systems Principles |archive-url=https://ghostarchive.org/archive/20221010/https://people.mpi-sws.org/~gummadi/teaching/sp07/sys_seminar/how_did_erope_blow_this_vision.pdf |archive-date=2022-10-10 |access-date=2020-09-15 |quote=It is thought that all users of the network will provide themselves with some kind of error control and that without difficulty this could be made to show up a missing packet. Because of this, loss of packets, if it is sufficiently rare, can be tolerated. |url-status=live}}</ref><ref name="Pelkey8.3">{{cite book |last=Pelkey |first=James |title=Entrepreneurial Capitalism and Innovation: A History of Computer Communications 1968–1988 |chapter=8.3 CYCLADES Network and Louis Pouzin 1971–1972 |quote=The inspiration for datagrams had two sources. One was Donald Davies’ studies. He had done some simulation of datagram networks, although he had not built any, and it looked technically viable. The second inspiration was I like things simple. I didn’t see any real technical motivation to overlay two levels of end-to-end protocols. I thought one was enough. |chapter-url=https://historyofcomputercommunications.info/section/8.3/CYCLADES-Network-and-Louis-Pouzin-1971-1972/}}</ref>
The concept was explored in practice by various groups, with the intention to produce a working system for [[internetworking]]. There were three notable contemporaneous programs. The first was an implementation directed by [[Louis Pouzin]] of the [[CYCLADES]] network, which was designed and developed during 1972-3.<ref name=":3">{{Cite journal |last1=Russell |first1=Andrew L. |last2=Schafer |first2=Valérie |date=2014 |title=In the Shadow of ARPANET and Internet: Louis Pouzin and the Cyclades Network in the 1970s |url=https://www.jstor.org/stable/24468474 |journal=Technology and Culture |volume=55 |issue=4 |pages=880–907 |doi=10.1353/tech.2014.0096 |issn=0040-165X |jstor=24468474}}</ref><ref>{{Cite book |last=Green |first=Lelia |url=https://www.worldcat.org/title/504280762 |title=The internet: an introduction to new media |date=2010 |publisher=Berg |isbn=978-1-84788-299-8 |series=Berg new media series |page=31 |oclc=504280762 |quote=The original ARPANET design had made data integrity part of the IMP's store-and-forward role, but Cyclades end-to-end protocol greatly simplified the packet switching operations of the network. ... The idea was to adopt several principles from Cyclades and invert the ARPANET model to minimise international differences.}}</ref><ref name="Bennett2009">{{cite web |last1=Bennett |first1=Richard |date=September 2009 |title=Designed for Change: End-to-End Arguments, Internet Innovation, and the Net Neutrality Debate |url=https://www.itif.org/files/2009-designed-for-change.pdf |access-date=11 September 2017 |publisher=Information Technology and Innovation Foundation |pages=7, 9, 11 |quote=Two significant packet networks preceded the TCP/IP Internet: ARPANET and CYCLADES. The designers of the Internet borrowed heavily from these systems, especially CYCLADES ... The first end-to-end research network was CYCLADES, designed by Louis Pouzin at IRIA in France with the support of BBN’s Dave Walden and Alex McKenzie and deployed beginning in 1972.}}</ref> The second was program at [[Xerox PARC]] to explore new networking technologies, which produced the [[PARC Universal Packet]] system. Some time after early 1974, the first Xerox routers became operational. Due to corporate intellectual property concerns, it received little attention outside Xerox for years.<ref>{{Citation |last=Taylor |first=Bob |title=Oral History of Robert (Bob) W. Taylor |date=October 11, 2008 |journal=Computer History Museum Archive |volume=CHM Reference number: X5059.2009 |page=28 |url=http://archive.computerhistory.org/resources/access/text/2013/05/102702015-05-01-acc.pdf}}</ref><ref>David Boggs, John Shoch, Edward Taft, Robert Metcalfe, [https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1094684 "Pup: An Internetwork Architecture"], IEEE Transactions on Communications, Volume 28, Issue 4, April 1980, pp. 612- 624.</ref> The third was a [[DARPA]]-initiated program, which began during 1973-4. This drew on the work of the other two programs,''<ref name="Cerf-1974">{{Cite journal |last1=Cerf |first1=V. |last2=Kahn |first2=R. |date=1974 |title=A Protocol for Packet Network Intercommunication |url=https://www.cs.princeton.edu/courses/archive/fall06/cos561/papers/cerf74.pdf |journal=IEEE Transactions on Communications |volume=22 |issue=5 |pages=637–648 |doi=10.1109/TCOM.1974.1092259 |issn=1558-0857 |quote=The authors wish to thank a number of colleagues for helpful comments during early discussions of international network protocols, especially R. Metcalfe, R. Scantlebury, D. Walden, and H. Zimmerman; D. Davies and L. Pouzin who constructively commented on the fragmentation and accounting issues; and S. Crocker who commented on the creation and destruction of associations.}}</ref>'' expanded significantly, and went on to create the [[TCP/IP]] architecture in use today.<ref>{{Cite IETF|rfc=1087|title=Ethics and the Internet|date=January 1989|quote=At great human and economic cost, resources drawn from the U.S. Government, industry and the academic community have been assembled into a collection of interconnected networks called the Internet.}}</ref><ref>{{Cite IETF|rfc=2555|title=30 Years of RFCs|date=7 April 1999|quote=Reflections - Joyce K. Reynolds: A very long time ago when I was dabbling in IP network number and protocol parameter assignments with Jon Postel, gateways were still "dumb", the Exterior Gateway Protocol (EGP) was in its infancy and TOPS-20 was in its heyday.}}</ref> [[University College London]] (UCL) provided a gateway between [[Internet in the United Kingdom#Early years|British research groups]] and the ARPANET from 1973 until the late 1980s, latterly using [[SATNET]].<ref name=":9">{{cite journal |last1=Kirstein |first1=P.T. |date=1999 |title=Early experiences with the Arpanet and Internet in the United Kingdom |journal=IEEE Annals of the History of Computing |volume=21 |issue=1 |pages=38–44 |doi=10.1109/85.759368 |s2cid=1558618}}</ref><ref>{{Cite IETF|title=Routing and Access Control in UK to US Services|ien=190}}</ref><ref>{{Cite paper |last=Kirstein |first=P. T. |date=December 1984 |title=The University College London International Computer Communications Interconnection Service |url=https://discovery.ucl.ac.uk/id/eprint/10076375/1/pub-102-D.pdf |journal=Internal Working Paper}}</ref>
The first true IP router was developed by [[Ginny Travers]] at [[BBN Technologies|BBN]], as part of that DARPA-initiated effort, during 1975–1976.<ref>{{Cite web |title=Virginia Travers |url=https://www.internethalloffame.org/inductee/virginia-travers/ |access-date=2024-06-16 |website=Internet Hall of Fame |language=en-US}}</ref><ref>{{cite web |date=21 December 2015 |title=Ms. Ginny Strazisar |url=http://www.ithistory.org/honor-roll/ms-ginny-strazisar |url-status=live |archive-url=https://web.archive.org/web/20171201034131/http://www.ithistory.org/honor-roll/ms-ginny-strazisar |archive-date=1 December 2017 |access-date=21 November 2017 |website=IT History Society}}</ref> By the end of 1976, three [[PDP-11]]-based routers were in service in the experimental prototype Internet.<ref>Craig Partridge, S. Blumenthal, [https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1603444 "Data networking at BBN"]; IEEE Annals of the History of Computing, Volume 28, Issue 1; January–March 2006.</ref> Mike Brecia, Ginny Travers, and Bob Hinden received the [[IEEE Internet Award]] for early IP routers in 2008.<ref>{{Cite web |title=IEEE INTERNET AWARD RECIPIENTS |url=https://corporate-awards.ieee.org/wp-content/uploads/internet-rl.pdf}}</ref>
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]].<ref>[https://www.pbs.org/cringely/pulpit/1998/pulpit_19981210_000593.html Valley of the Nerds: Who Really Invented the Multiprotocol Router, and Why Should We Care?] {{webarchive|url=https://web.archive.org/web/20160303172753/http://www.pbs.org/cringely/pulpit/1998/pulpit_19981210_000593.html|date=2016-03-03}}, Public Broadcasting Service, Accessed August 11, 2007.</ref><ref>[http://www.networkworld.com/supp/2006/anniversary/032706-routerman.html?t5 Router Man] {{webarchive|url=https://web.archive.org/web/20130605195255/http://www.networkworld.com/supp/2006/anniversary/032706-routerman.html?t5|date=2013-06-05}}, NetworkWorld, Accessed June 22, 2007.</ref><ref>David D. Clark, "M.I.T. Campus Network Implementation", CCNG-2, Campus Computer Network Group, M.I.T., Cambridge, 1982; pp. 26.</ref><ref>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.</ref> 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 [[minicomputer]]s served as routers. Modern high-speed routers are [[network processor]]s or highly specialized computers with extra [[hardware acceleration]] added to speed both common routing functions, such as packet forwarding, and specialized functions such as [[IPsec]] encryption. There is substantial use of [[Linux]] and [[Unix]] software-based machines, running [[Open-source software|open source]] routing code, for research and other applications. The [[Cisco IOS]] operating system was independently designed. Major router operating systems, such as [[Junos]] and [[NX-OS]], are extensively modified versions of Unix software.
== 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.<ref>{{cite web|title=Cisco Networking Academy's Introduction to Routing Dynamically|url=http://www.ciscopress.com/articles/article.asp?p=2180210&seqNum=4|publisher=Cisco|access-date=August 1, 2015|url-status=live|archive-url=https://web.archive.org/web/20151027133937/http://www.ciscopress.com/articles/article.asp?p=2180210&seqNum=4|archive-date=October 27, 2015}}</ref><ref name="Cisco 2022 u602">{{cite web | title=What Is Routing? | website=Cisco | date=2022-04-10 | url=https://www.cisco.com/c/en/us/products/routers/what-is-routing.html | access-date=2024-03-25| quote=
Routing tables can be created manually and "learned" by software as it observes network traffic, or they can be built according to [[routing protocols]].}}</ref>
The software that runs the router is composed of two functional processing units that operate simultaneously, called ''planes'':<ref>{{cite ietf |title=Requirements for Separation of IP Control and Forwarding |rfc=3654 |author=H. Khosravi & T. Anderson |date=November 2003}}</ref>
* [[Control plane]]: A router maintains a routing table that lists which route should be used to forward a data packet, and through which physical interface connection. It does this using internal pre-configured directives, called [[static route]]s, or by learning routes [[Dynamic routing|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 (computing)|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 ==
[[File:Adsl connections.jpg|thumb|right|A home or small office [[DSL router]] showing the [[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]][[File:Sprouter100g.jpg|thumb|A carrier class router with [[10 Gigabit Ethernet|10G]]/[[100 Gigabit Ethernet|40G]]/[[100G]] interfaces and redundant processor/power/fan modules]]
A router may have interfaces for multiple types of [[physical layer]] connections, such as copper cables, [[fiber optic]], or [[wireless]] transmission. It can also support multiple [[network layer]] transmission standards. Each network interface is used to enable data packets to be forwarded from one transmission system to another. Routers may also be used to connect two or more logical groups of computer devices known as [[subnets]], each with a unique [[network prefix]].
Routers may provide connectivity within enterprises, between enterprises and the Internet, or between [[internet service provider]]s' (ISPs') networks, they are also responsible for directing data between different networks.<ref>{{Cite web |title=Which networking component is responsible for directing data between different networks - ITEagers |url=https://iteagers.com/Computer%20Science/Computer%20Networking/446_Which-networking-component-is-responsible-for-directing-data-between-different-networks |access-date=2024-02-27 |website=ITEagers |language=en-GB}}</ref> The largest routers (such as the [[Cisco CRS-1]] or [[Juniper Networks|Juniper]] PTX) interconnect the various ISPs, or may be used in large enterprise networks.<ref>{{cite web|url=http://my-technet.com/index.php/cisco/setting-up-netflow-on-cisco-routers/|title=Setting uo Netflow on Cisco Routers|publisher=MY-Technet.com date unknown|access-date=15 January 2011|url-status=live|archive-url=https://web.archive.org/web/20110714141500/http://my-technet.com/index.php/cisco/setting-up-netflow-on-cisco-routers/|archive-date=14 July 2011}}</ref> Smaller routers usually provide connectivity for typical home and office networks.
All sizes of routers may be found inside enterprises.<ref name="port">{{cite web|url=http://social.technet.microsoft.com/wiki/contents/articles/windows-home-server-router-setup.aspx|title=Windows Home Server: Router Setup|publisher=Microsoft Technet 14 Aug 2010|access-date=15 January 2011|url-status=live|archive-url=https://web.archive.org/web/20101222175405/http://social.technet.microsoft.com/wiki/contents/articles/windows-home-server-router-setup.aspx|archive-date=22 December 2010}}</ref> 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.<ref>{{cite book
| last = Oppenheimer
| first = Pr
| title = Top-Down Network Design
| publisher = Cisco Press
| year = 2004
| ___location = Indianapolis
| isbn = 978-1-58705-152-4}}</ref> Some routers can connect to [[Data service unit]]s for [[Digital Signal 1|T1 connections]]<ref>{{cite book | url=https://books.google.com/books?id=SQ2WAAAAQBAJ&dq=data+service+unit+t1&pg=PT89 | title=A Practical Guide to Advanced Networking | isbn=978-0-13-335400-3 | last1=Beasley | first1=Jeffrey S. | last2=Nilkaew | first2=Piyasat | date=5 November 2012 | publisher=Pearson Education }}</ref><ref>{{cite book | url=https://books.google.com/books?id=tGi5xrjPsKoC&dq=data+service+unit+t1&pg=PA43 | title=Configuring Cisco AVVID | isbn=978-0-08-047673-5 | last1=Lawson | first1=Wayne | date=8 February 2001 | publisher=Elsevier }}</ref><ref>{{cite web | url=https://books.google.com/books?id=aDzmTlX49OQC&dq=data+service+unit+t1&pg=PA63 | title=Computerworld | date=23 January 1995 }}</ref> via serial ports.<ref>{{cite web | url=https://www.cisco.com/c/en/us/td/docs/routers/access/interfaces/ic/hardware/installation/guide/ser_hwic.html | title=Serial Interface Cards }}</ref><ref>{{cite web | url=https://www.cisco.com/c/en/us/td/docs/routers/access/interfaces/nm/hardware/installation/guide/ConntSer.html | title=Serial Network Modules }}</ref>
=== Access, core and distribution ===
[[File:OpenWRT 8.09.1 LuCI screenshot.png|thumb|A screenshot of the LuCI web interface used by [[OpenWrt]]. This page configures [[Dynamic DNS]].]]
The [[hierarchical internetworking model]] divides [[enterprise network]]s 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 (firmware)|Tomato]], [[OpenWrt]], or [[DD-WRT]].<ref>{{Cite web|title=SOHO Network Requirements Planning and Implementation|url=https://www.examcollection.com/certification-training/network-plus-soho-network-requirements-planning-and-implementation.html|access-date=2021-03-25|website=ExamCollection|language=en}}</ref>
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.<ref>{{Cite web|date=2021-02-25|title=How Do WiFi Extenders Work? Repeater, Booster, Extender?|url=https://ispfamily.com/how-do-wifi-extenders-work/|access-date=2021-03-25|website=ISP Family|language=en-US}}</ref>
In enterprises, a [[core router]] may provide 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.<ref>{{Cite web|title=Hierarchical Network Design Overview (1.1) > Cisco Networking Academy Connecting Networks Companion Guide: Hierarchical Network Design {{!}} Cisco Press|url=https://www.ciscopress.com/articles/article.asp?p=2202410&seqNum=4|access-date=2021-03-21|website=www.ciscopress.com}}</ref>
=== Security ===
External networks must be carefully considered as part of the overall security strategy of the local network. A router may include a [[Firewall (computing)|firewall]], [[VPN]] handling, and other security functions, or they may be handled by separate devices. Routers also commonly perform [[network address translation]] which restricts connections initiated from external connections but is not recognized as a security feature by all experts.<ref>{{cite web|url=http://www.safecomputing.umich.edu/protect-personal/download/nat_security.pdf|title=Security Considerations Of NAT|publisher=University of Michigan|archive-url=https://web.archive.org/web/20141018184244/http://www.safecomputing.umich.edu/protect-personal/download/nat_security.pdf|archive-date=October 18, 2014}}</ref> Some experts argue that [[Open-source software|open source]] routers are more secure and reliable than [[closed source]] routers because errors and potentially exploitable [[Vulnerability (computing)|vulnerabilities]] are more likely to be discovered and addressed in an open-source environment.<ref>{{cite press release|url=http://www.businesswire.com/news/home/20151014005564/en|title=Global Internet Experts Reveal Plan for More Secure, Reliable Wi-Fi Routers - and Internet|date=14 October 2015|url-status=live|archive-url=https://web.archive.org/web/20151020003515/http://www.businesswire.com/news/home/20151014005564/en|archive-date=2015-10-20}}</ref><ref>{{Cite web |date=2010-07-26 |title=Is Open Source Software More Secure than Proprietary Products? |url=https://www.govtech.com/security/Is-Open-Source-Software-More-Secure.html |access-date=2024-03-30 |website=GovTech |language=en}}</ref>
=== Routing different networks ===
Routers are also often distinguished on the basis of the network in which they operate. A router in a [[local area network]] (LAN) of a single organization is called an ''interior router''. A router that is operated in the [[Internet]] backbone is described as ''exterior router''. While a router that connects a LAN with the Internet or a [[wide area network]] (WAN) is called a ''border router'', or ''[[gateway router]]''.<ref>{{Cite book|title= Network+ Guide to Networks|author =Tamara Dean |publisher= Cengage Learning|year=2009 |isbn= 9781423902454|pages=272}}</ref>
=== Internet connectivity and internal use ===
Routers intended for ISP and major enterprise connectivity usually exchange routing information using the [[Border Gateway Protocol]] (BGP). {{IETF RFC|4098}} defines the types of BGP routers according to their functions:<ref name="RFC 4098">{{cite IETF |rfc=4098 |author=H. Berkowitz |display-authors=etal |title=Terminology for Benchmarking BGP Device Convergence in the Control Plane |date=June 2005}}</ref>
* ''Edge router or inter-AS border router:'' Placed at the edge of an ISP network, where the router is used to peer with the upstream IP transit providers, bilateral peers through [[IXP]], private peering (or even settlement-free peering) through [[Private Network Interconnect]] (PNI) via the extensive use of [[Exterior Border Gateway Protocol]] (eBGP).<ref>{{Cite web |title=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 |url=https://iteagers.com/Computer%20Science/Computer%20Networking/21274_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 |access-date=2024-02-27 |website=ITEagers |language=en-GB}}</ref>
* Provider Router (P): A Provider router is also called a ''transit-router'', it sits in an MPLS network and is responsible for establishing label-switched paths between the PE routers.<ref name=":0" />
* ''Provider edge router (PE):'' An MPLS-specific router in the network's access layer that interconnects with customer edge routers to provide layer 2 or layer 3 VPN services.<ref name=":0">{{Cite report |url=https://datatracker.ietf.org/doc/rfc4364/ |title=BGP/MPLS IP Virtual Private Networks (VPNs) |last1=Rekhter |first1=Yakov |last2=Rosen |first2=Eric C. |date=February 2006 |publisher=Internet Engineering Task Force |issue=RFC 4364}}</ref>
* ''Customer edge router'' (CE): Located at the edge of the subscriber's network, it interconnects with the PE router for L2VPN services, or direct layer 3 IP hand-off in the case of [[Dedicated line|Dedicated Internet Access]], if IP Transit services are provided through an MPLS core, the CE peers with the PE using eBGP with the public ASNs of each respective network. In the case of L3VPN services the CE can exchange routes with the PE using eBGP. It is commonly used in both service provider and enterprise or [[data center]] organizations.<ref name=":0" />
* [[Core router]]: Resides within an Autonomous System as a backbone to carry traffic between edge routers.<ref>{{cite web |url=http://www.juniper.net/techpubs/qrc/m160-qrc.pdf |title=M160 Internet Backbone Router |publisher=Juniper Networks |access-date=15 January 2011 |url-status=live |archive-url=https://web.archive.org/web/20110920213215/http://www.juniper.net/techpubs/qrc/m160-qrc.pdf |archive-date=20 September 2011}}</ref>
* Within an ISP: In the ISP's autonomous system, a router uses internal BGP to communicate with other ISP edge routers, other [[intranet]] core routers, or the ISP's intranet provider border routers.
* Internet backbone: The Internet no longer has a clearly identifiable backbone, unlike its predecessor networks. See [[default-free zone]] (DFZ). The major ISPs' system routers make up what could be considered to be the current Internet backbone core.<ref>{{cite web|url=http://www.telecomsportal.com/Assets_papers/Routers_&_Netman/Ironbridge_Virt_Bbone_Route.pdf|title=Virtual Backbone Routers|publisher=IronBridge Networks, Inc. September, 2000|access-date=15 January 2011|url-status=live|archive-url=https://web.archive.org/web/20110716203325/http://www.telecomsportal.com/Assets_papers/Routers_%26_Netman/Ironbridge_Virt_Bbone_Route.pdf|archive-date=16 July 2011}}</ref> ISPs operate all four types of the BGP routers described here. An ISP core router is used to interconnect its edge and border routers. Core routers may also have specialized functions in [[virtual private network]]s based on a combination of BGP and [[Multiprotocol Label Switching]] protocols.<ref>{{cite IETF |title= BGP/MPLS VPNs |rfc-2547 |author1=E. Rosen |author2=Y. Rekhter |date=April 2004}}</ref>
* Port forwarding: In some networks, that rely on legacy IPv4 and NAT, routers (often labeled as NAT boxes) are also used for [[port forwarding]] configuration between RFC1918 address space and their publicly assigned IPv4 address.<ref name="port"/>
* Voice, data, fax, and video processing routers: Commonly referred to as [[access servers]] or [[Gateway (telecommunications)|gateways]], these devices are used to route and process voice, data, video and fax traffic on the Internet. Since 2005, most long-distance phone calls have been processed as [[Internet Protocol|IP]] traffic ([[VOIP]]) through a voice gateway. Use of access server-type routers expanded with the advent of the Internet, first with dial-up access and another resurgence with voice phone service.
* Larger networks commonly use [[multilayer switch]]es, with layer-3 devices being used to simply interconnect multiple subnets within the same security zone, and higher-layer switches when [[firewall (computing)|filtering]], [[network address translation|translation]], [[load balancing (computing)|load balancing]], or other higher-level functions are required, especially between zones.
===Wi-Fi routers===
{{main|Wireless router}}
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.
== Forwarding ==
{{Further|Routing|IP routing}}
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,<ref>{{Cite web|title=Packet Forwarding and Routing on IPv4 Networks - System Administration Guide: IP Services|url=https://docs.oracle.com/cd/E23823_01/html/816-4554/gcvjj.html|access-date=2021-03-25|website=docs.oracle.com}}</ref> 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 (computer science)|state]] information associated with individual packets.<ref>{{cite web|last1=Roberts|first1=Lawrence|title=The Next Generation of IP - Flow Routing|url=http://www.packet.cc/files/FlowPaper/NextGenerationofIP-FlowRouting.htm|access-date=22 February 2015|date=22 July 2003|url-status=live|archive-url=https://web.archive.org/web/20150404030549/http://www.packet.cc/files/FlowPaper/NextGenerationofIP-FlowRouting.htm|archive-date=4 April 2015}}</ref> Once a packet is forwarded, the router does not retain any historical information about the packet.{{efn|In some router implementations, the forwarding action can increment a counter associated with the routing table entry for the collection of statistical data.}}
The routing table itself can contain information derived from a variety of sources, such as a [[default route|default]] or [[static route]]s that are configured manually, or dynamic entries from [[routing protocol]]s where the router learns routes from other routers. A default route is one that is used to route all traffic whose destination does not otherwise appear in the routing table; it is common – even necessary – in small networks, such as a home or small business where the default route simply sends all non-local traffic to the [[Internet service provider]]. The default route can be manually configured (as a static route); learned by dynamic routing protocols; or be obtained by [[DHCP]].{{efn|A router can serve as a DHCP client or as a DHCP server.}}<ref>{{cite web|author=David Davis|title=Cisco administration 101: What you need to know about default routes|url=http://www.techrepublic.com/article/cisco-administration-101-what-you-need-to-know-about-default-routes|date=April 19, 2007|url-status=bot: unknown|archive-url=https://web.archive.org/web/20140625042508/http://www.techrepublic.com/article/cisco-administration-101-what-you-need-to-know-about-default-routes/|archive-date=June 25, 2014|access-date=June 5, 2014}}</ref>
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.<ref>{{cite book|author=Diane Teare|title=Implementing Cisco IP Routing (ROUTE): Foundation Learning Guide|pages=330–334|publisher=[[Cisco Press]]|date=March 2013}}</ref>
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 [[Quality of service|QoS]], which is critical when [[Voice over IP]] is deployed, so as not to introduce excessive [[Latency (audio)|latency]].<ref>{{Cite book |last=Donahue |first=Gary A. |url=https://books.google.com/books?id=VqebAgAAQBAJ&dq=Network+Warrior+Voice+over+IP+is+a+udp&pg=PA419 |title=Network Warrior |date=2007-06-21 |publisher="O'Reilly Media, Inc." |isbn=978-0-596-10151-0 |language=en}}</ref>
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.<ref>{{cite book|author=Diane Teare|title=Implementing Cisco IP-Routing (ROUTE): Foundation Learning Guide|pages=330–334|publisher=[[Cisco Press]]|date=March 2013|chapter=Chapter 5: Implementing Path Control}}</ref>
Some of the functions may be performed through an [[application-specific integrated circuit]] (ASIC) to avoid the 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.<ref>{{Cite book |last1=Schudel |first1=Gregg |url=https://books.google.com/books?id=DZT7I2U58UoC&dq=that+cannot+be+handled+by+an+ASIC&pg=PT93 |title=Router Security Strategies: Securing IP Network Traffic Planes |last2=Smith |first2=David |date=2007-12-29 |publisher=Pearson Education |isbn=978-0-13-279673-6 |language=en}}</ref>
== See also ==
* [[Mobile broadband modem]]
* [[Modem]]
* [[Residential gateway]]
* [[Switch virtual interface]]
* [[Wireless router]]
==Notes==
{{Notelist}}
== References ==
{{Reflist}}
== External links ==
{{Commons category|Network routers}}
{{Wikibooks|Communication Networks/Routing}}
{{Wiktionary|router}}
{{Routing software}}
{{Authority control}}
[[Category:Computer networks engineering]]
[[Category:Routers (computing)| ]]
[[Category:Internet architecture]]
[[Category:Hardware routers]]
[[Category:Networking hardware]]
[[Category:Server appliance]]
|