520 likes | 596 Views
Goals: review key topics from intro networks course equalize backgrounds identify remedial work ease into course. Review (by yourself): overview error control flow control congestion control routing LANs addressing synthesis: “a day in the life” control timescales.
E N D
Goals: review key topics from intro networks course equalize backgrounds identify remedial work ease into course Review (by yourself): overview error control flow control congestion control routing LANs addressing synthesis: “a day in the life” control timescales Networking Review Readings: Review your csci5211 or csci4211 textbooks CSci5221: Introduction
What’s a Network: Key Features • Providing certain services • transport goods, mail, information or data • Shared resources • used by many users, often concurrently • Basic building blocks • nodes (active entities): process and transfer goods/data • links (passive medium): passive “carrier” of goods/data • Typically “multi-hop” • two “end points” cannot directly reach each other • need other nodes/entities to relay CSci5221: Introduction
network edge: millions of end-system devices: pc’s workstations, servers PDA’s, phones, toasters running network apps network core: routers, switches forwarding data packets: packet switching calls: circuit switching communication links fiber, copper, radio, … What’s a Network: “Nuts and Bolts” View router workstation server mobile local net regional net company net CSci5221: Introduction
Communication Network SwitchedCommunication Network BroadcastCommunication Network Packet-SwitchedCommunication Network Circuit-SwitchedCommunication Network Virtual Circuit Network Datagram Network A Taxonomy of Communication Networks • Communication networks can be classified based on the way in which the nodes exchange information: CSci5221: Introduction
Broadcast vs. Switched Communication Networks • Broadcast communication networks • Information transmitted by any node is received by every other node in the network • E.g., LANs (Ethernet, Wavelan) • Problem: coordinate the access of all nodes to the shared communication medium (Multiple Access Problem) • Switched communication networks • Information is transmitted to a sub-set of designated nodes • E.g., WANs (Telephony Network, Internet) • Problem: how to forward information to intended node(s) • Done by special nodes (e.g., routers, switches) running routing protocols CSci5221: Introduction
Data/Computer Networks • Delivery of information (“data”) among computers of all kinds • servers, desktops, laptop, PDAs, cell phones, ...... • General-Purpose • Not for specific types of data or groups of nodes, or using specific technologies • Utilizing a variety of technologies • “physical/link layer” technologies for connecting nodes • copper wires, optical links, wireless radio, satellite • or even “non-electronic” means: e.g., cars, postal services, humans -- e.g., recent “delay-tolerant networks” efforts for 3rd world countries CSci5221: Introduction
End-end resources reserved for “call” link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required Circuit Switching CSci5221: Introduction
each end-end data stream divided into packets user A, B packets share network resources each packet uses full link bandwidth resources used as needed, Bandwidth division into “pieces” Dedicated allocation Resource reservation Packet Switching resource contention: • aggregate resource demand can exceed amount available • congestion: packets queue, wait for link use • store and forward: packets move one hop at a time • transmit over link • wait turn at next link CSci5221: Introduction
“reliability” – no congestion, in order data in circuit-switching packet switching: better bandwidth use state, resources: packet switching has less state good: less control-plane processing resources along the way More dataplane (address lookup) processing failure modes (routers/links down): packet switching routing reconfigures sub-second timescale; circuit-switching: more complex recovery – need to involve all (downstream) switches on path Packet Switching vs Circuit Switching: Why? filled in during class! CSci5221: Introduction
The Internet • Global scale, general purpose, heterogeneous-technologies, public, computer network • Internet Protocol • Open standard: Internet Engineering Task Force (IETF) as standard body ( http://www.ietf.org ) • Technical basis for other types of networks • Intranet: enterprise IP network • Developed by the research community CSci5221: Introduction
Services Provided by the Internet • Shared access to computing resources • Telnet (1970’s) • Shared access to data/files • FTP, NFS, AFS (1980’s) • Communication medium over which people interact • Email (1980’s), on-line chat rooms (1990’s) • Instant messaging, IP Telephony (2000’s) • A medium for information dissemination • USENET (1980’s) • WWW (1990’s) • Replacing newspaper, magazine • Audio, video (2000’s): peer-to-peer systems • Replacing radio, telephony, TV, … CSci5221: Introduction
Origin of Internet? Started by U.S. research/military organizations: • Three Major Actors: • DARPA: Defense Advanced Research Projects Agency • funds technology with military goals • DoD: U.S. Department of Defense • early adaptor of Internet technology for production use • NSF: National Science Foundation • funds university CSci5221: Introduction
Brief History of the Internet • 70’s: started as a research project, 56 kbps, < 100 computers • 80-83: ARPANET and MILNET split, • 85-86: NSF builds NSFNET as backbone, links 6 Supercomputer centers, 1.5 Mbps, 10,000 computers • 87-90: link regional networks, NSI (NASA), ESNet(DOE), DARTnet, TWBNet (DARPA), 100,000 computers • 90-92: NSFNET moves to 45 Mbps, 16 mid-level networks • 94: NSF backbone dismantled, multiple private backbones • Today: backbones run at >10 Gbps, >300 millions computers in 150 countries CSci5221: Introduction
Growth of the Internet • Number of Hosts on the Internet: Aug. 1981 213 Oct. 1984 1,024 Dec. 1987 28,174 Oct. 1990 313,000 Oct. 1993 2,056,000 Apr. 1995 5,706,000 Jan. 1997 16,146,000 Jan. 1999 56,218,000 Jan. 2001 109,374,000 Jan. 2003 171,638,297 Jul 2004 285,139,107 Jul 2005 353,284,187 CSci5221: Introduction
Today’s Internet Internet: “networks of networks” at global scale! International lines NAP Internic 3G cellular networks regional network national network on-line services ISP ISP company university access via modem company LANs WiFi CSci5221: Introduction
MAE-West Exchange Point Pacific Bell Exchange Point Ameritech Exchange Point Sprint Exchange Point MAE-East Exchange Point Private Peering Private Peering Private Peering Private Peering Private Peering Private Peering Private Peering Private Peering InternetNetwork Leveraging Sprint’s SONET-based, gigabit switch Internet backbone CSci5221: Introduction
SprintNetwork DS3 OC3 OC12 OC48 Legend Click here for a closer look at theSprint network in Washington state Click here fora closer lookat the Sprintnetwork on theEast Coast Seattle Tacoma New York Stockton Cheyenne Chicago Pennsauken Relay Wash. DC San Jose Roachdale Kansas City Anaheim Click here fora closer lookat the Sprintnetwork inNorthern California Atlanta Fort Worth Pearl City in Hawaii is a future network location Orlando CSci5221: Introduction
CSci5221: Introduction OC1 (45 Mbps), OC2 (155 Mbps), …, OC192 (10 Gbps)
UUNET Global BackBone CSci5221: Introduction
UUNET North America Backbone CSci5221: Introduction
Fundamental Issues in Networking Networking is more than connecting nodes! • Naming/Addressing • How to find name/address of the party (or parties) you would like to communicate with • Address: bit- or byte-string that identifies a node • Types of addresses • Unicast: node-specific • Broadcast: all nodes in the network • Multicast: some subset of nodes in the network • Routing/Forwarding: • process of determining how to send packets towards the destination based on its address • Finding out neighbors, building routing tables CSci5221: Introduction
UUNET Europe CSci5221: Introduction
Other Key Issues in Networking • Detecting whether there is an error! • Fixing the error if possible • Deciding how fast to send, meeting user demands, and managing network resources efficiently • Make sure integrity and authenticity of messages, • …… CSci5221: Introduction
Fundamental Problems in Networking … What can go wrong? • Bit-level errors: due to electrical interferences • Packet-level errors: packet loss due to buffer overflow/congestion • Out of order delivery: packets may takes different paths • Link/node failures: cable is cut or system crash • Others: e.g., malicious attacks CSci5221: Introduction
Fundamental Problems in Networking What can be done? • Add redundancy to detect and correct erroneous packets • Acknowledge received packets and retransmit lost packets • Assign sequence numbers and reorder packets at the receiver • Sense link/node failures and route around failed links/nodes Goal: to fill the gap between what applications expect and what underlying technology provides Key Challenges in Internet: large, complex, decentralized, ever-evolving, distributed network of networks! CSci5221: Introduction
Key Performance Metrics • Bandwidth (throughput) • data transmitted per time unit • link versus end-to-end • Latency (delay) • time to send message from point A to point B • one-way versus round-trip time (RTT) • components Latency = Propagation + Transmit + Queue Propagation = Distance / c Transmit = Size / Bandwidth Delay Bandwidth Product: # of bits that can be carried in transit • Reliability, availability, … • Efficiency/overhead of implementation, …… CSci5221: Introduction
Network components: (edge/core) nodes and links Network Architecture and Structure How do we talk about “structure” of network and its architecture? • layered architecture • structure allows identification, relationship of complex system’s pieces: layered reference model for discussion • layer N builds on services provided by layer N-1 • Layer N provides service to layer N+1 • Notions of protocol, service and peer interfaces • physical topology, interconnection CSci5221: Introduction
human protocols: “what’s the time?” “I have a question” introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: machines rather than humans all communication activity in Internet governed by protocols What’s a Protocol? protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt CSci5221: Introduction
a human protocol and a computer network protocol: Hi TCP connection req. Hi TCP connection reply. Get http://gaia.cs.umass.edu/index.htm Got the time? 2:00 <file> time What’s a Protocol? CSci5221: Introduction
Protocols and Interfaces • Protocols: specification/implementation of a “service” or “functionality” • Each protocol object has two different interfaces • service interface: operations on this protocol • peer-to-peer interface: messages exchanged with peer CSci5221: Introduction
application: supporting network applications ftp, smtp, http transport: host-host data transfer tcp, udp network: routing of datagrams from source to destination ip, routing protocols link: data transfer between neighboring network elements ppp, ethernet physical: bits “on the wire” application transport network link physical Internet Protocol Stack CSci5221: Introduction
E.g.: transport take data from app add addressing, reliability check info to form “datagram” send datagram to peer wait for peer to ack receipt analogy: post office network link physical application transport network link physical application transport network link physical application transport network link physical application transport network link physical data data data ack Layering: Logical Communication transport transport CSci5221: Introduction
network link physical application transport network link physical application transport network link physical application transport network link physical application transport network link physical data data Layering: Physical Communication CSci5221: Introduction
Internet Hourglass Architecture CSci5221: Introduction
Implications of Hourglass A single Internet layer module: • Allows all networks to interoperate • all networks technologies that support IP can exchange packets • Allows all applications to function on all networks • all applications that can run on IP can use any network • Simultaneous developments above and below IP CSci5221: Introduction
Internet Names and Addresses • host and domain names • other “names”: email addresses, URLs, … • IP addresses: logical, with global reachability • IPv4: 32 bits, IPv6: 128 bits, “global” • two-level hierarchy: network part and host part • CIDR: network prefixes, e.g., 128.101.0.0/24 • Network Address Translation (NAT) complicates global reachability • MAC (and other physical-layer) addresses • used and understood by “native” physical technologies! According to Shoch (IEEE COMPCON’78) • name: identifies what you want • address: identifies where it is • route: identifies how to get there CSci5221: Introduction
network edge: applications and hosts network core: routers network of networks access networks, physical media: communication links A Closer Look at Network Structure: CSci5221: Introduction
end systems (hosts): run application programs e.g., WWW, email at “edge of network” client/server model client host requests, receives service from server e.g., WWW client (browser)/ server; email client/server peer-peer model: host interaction symmetric e.g.: Gnutella, KaZaA The Network Edge: CSci5221: Introduction
Goal: data transfer between end sys. handshaking: setup (prepare for) data transfer ahead of time Hello, hello back human protocol set up “state” in two communicating hosts TCP - Transmission Control Protocol Internet’s connection-oriented service TCP service[RFC 793] reliable, in-order byte-stream data transfer loss: acknowledgements and retransmissions flow control: sender won’t overwhelm receiver congestion control: senders “slow down sending rate” when network congested Network Edge: Connection-Oriented Service CSci5221: Introduction
Goal: data transfer between end systems same as before! UDP - User Datagram Protocol [RFC 768]: Internet’s connectionless service unreliable data transfer no flow control no congestion control App’s using TCP: HTTP (WWW), FTP (file transfer), Telnet (remote login), SMTP (email) App’s using UDP: streaming media, teleconferencing, Internet telephony Network Edge: Connectionless Service CSci5221: Introduction
Q: How to connect end systems to edge router? residential access nets institutional access networks (school, company) mobile access networks Keep in mind: bandwidth (bits per second) of access network? shared or dedicated? Access Networks and Physical Media CSci5221: Introduction
Typical home network components: ADSL or cable modem router/firewall Ethernet wireless access point wireless laptops to/from cable headend cable modem router/ firewall wireless access point Ethernet (switched) Example Access Net: Home Network CSci5221: Introduction
mesh of interconnected routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete “chunks” The Network Core CSci5221: Introduction
Goal: move data among routers from source to dest. Network Core: Routing datagram packet network: • destination address determines next hop • routes may change during session • analogy: driving, asking directions • No notion of call state virtual circuit network: • packet carries tag, tag determines next hop • fixed path (for call) determined at call setup time • routers maintain little per-call state; resources not allocated circuit-switched network: • call allocated time slots of bandwidth at each link • fixed path (for call) determined at call setup • switches maintain lots of per call state (what?): resource allocation CSci5221: Introduction
roughly hierarchical at center: “tier-1” ISPs (e.g., UUNet, BBN/Genuity, Sprint, AT&T), national/international coverage treat each other as equals NAP Tier-1 providers also interconnect at (public/private) Internet exchange points, or private peering links Tier-1 providers interconnect (peer) privately Internet Structure: Network of Networks Tier 1 ISP Tier 1 ISP Tier 1 ISP CSci5221: Introduction
“Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs IXP Tier-2 ISPs also peer privately with each other, interconnect at IXPs • Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet • tier-2 ISP is customer of tier-1 provider Tier-2 ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP Internet Structure: Network of Networks CSci5221: Introduction
“Tier-3” ISPs and local ISPs last hop (“access”) network (closest to end systems) Tier 3 ISP local ISP local ISP local ISP local ISP local ISP local ISP local ISP local ISP Local and tier- 3 ISPs are customers of higher tier ISPs connecting them to rest of Internet Tier-2 ISP Tier-2 ISP Tier 1 ISP NAP Tier 1 ISP Tier 1 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP Internet Structure: Network of Networks CSci5221: Introduction
a packet passes through many networks! Tier 3 ISP local ISP local ISP local ISP local ISP local ISP local ISP local ISP local ISP NAP Tier-2 ISP Tier-2 ISP Tier 1 ISP Try a traceroute! Tier 1 ISP Tier 1 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP Internet Structure: Network of Networks host/network edge: IP addresses, port no’s network core: intra-domain vs. inter-domain routing CSci5221: Introduction
Who Runs the Internet “nobody” really! • standards: Internet Engineering Task Force (IETF) • names/numbers: The Internet Corporation for Assigned Names and Numbers (ICANN) • operational coordination: IEPG(Internet Engineering Planning Group) • networks: ISPs (Internet Service Providers), NAPs (Network Access Points), …… • fibers: telephone companies (mostly) • content: companies, universities, governments, individuals, …; CSci5221: Introduction
Internet “Governing” Bodies • Internet Society (ISOC): membership organization • raise funds for IAB, IETF& IESG, elect IAB • Internet Engineering Task Force (IETF): • a body of several thousands or more volunteers • organized in working groups (WGs) • meet three times a year + email • Internet Architecture Board • architectural oversight, elected by ISOC • Steering Group (IESG): approves standards, • Internet standards, subset of RFC • RFC: “Request For Comments”, since 1969 • most are not standards, also • experimental, informational and historic(al) CSci5221: Introduction