Share PowerPoint. Anywhere!

Computer Science 2

Featured Animated Featured Animated
Download as Download Not Available PPT
Presentation Description

No description available

Views: 249
Like it  ( Likes) Dislike it  ( Dislikes)
Added: July 16, 2007 This presentation is Public
Presentation Category :Education
Tags Add Tags
Presentation StatisticsNew!
Views on authorSTREAM: 240 | Views from Embeds: 9
Others - 9 views
Presentation Transcript

Introduction to Internet : Introduction to Internet


Computer Networks : Computer Networks A computer network is a system for communication among two or more computers What amounts to “computers”? What kind of communication? – “digital” System: both software & hardware Examples? Our focus is on the Internet


History of the Internet : History of the Internet 61-72: development of packet switching 72-80: Proprietary networks and internetworking Multiple packet switching networks “Networks of networks”: earlier development of TCP, UDP, IP ALOHA, Ethernet 80-90: proliferation of networks Standardization of networking protocols TCP/IP, DNS etc NSF builds NSFNET as backbone, links 6 Supercomputer centers, 1.5 Mbps, 10,000 computers 90’s: Internet explosion 94: NSF backbone dismantled, multiple private backbones Emergence of World Wide Web (invented by Time Berners-Lee)


Internet “Hall of Fame” : Internet “Hall of Fame” Al Gore, former vice president of USA Vinton G. Cerf and Robert E. Kahn 2004 Turing Award winner “For pioneering work on internetworking, including the design and implementation of the Internet's basic communications protocols, TCP/IP, and for inspired leadership in networking” Turing lecture: http://www.acm.org/sigs/sigcomm/sigcomm2005/webcast.html David Clark et al “end2end arguments” Van Jacobson, TCP congestion control Robert Metcalfe, inventor of Ethernet …


Growth of the Internet : 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 Data available at: http://www.isc.org/


Growth of the Internet : Growth of the Internet Traffic on Internet (in TB/mo) 1990 1.0 1991 2.0 1992 4.4 1993 8.3 1994 16.3 1996 1,500 1997 2,500 - 4,000 1998 5,000 - 8,000 1999 10,000 - 16,000 2000 20,000 - 35,000 2001 40,000 - 70,000 2002 80,000 - 140,000 Andrew Odlyzko, “Internet traffic growth: Sources and implications”


Growth of the Internet : Growth of the Internet Internet bandwidth Nielsen’s law: 50% each year Projected


What is Next Big Thing? : What is Next Big Thing? I wish I have the answer Technology Wireless broadband networks Optical switching networks (?) Application VOIP Peer-to-peer applications Online gaming Sony’s EverQuest servers host 600,000 PC gamers


A Few Words on Networking Research : A Few Words on Networking Research Wireless System Research Group (WiSeR) http://coco.cs.uh.edu/~rzheng Information Theory Distributed Systems Grid Computing Computer Networking Combinatorics/ Graph theory Probability/ Stochastic techniques Protocol design Performance modeling, analysis System building Data structure, algorithms, complexity theory Application Domains Wireless Management Security


What will be covered? : What will be covered? Network architecture, services, apps TCP/IP Protocol details Algorithms Performance analysis Ethernet, Wireless networks Multimedia networks QoS scheduling Signaling Network security Basic knowledge Attacks and counter-measures Network management


What will not be covered? : What will not be covered? Socket programming (chap 2.7-2.9) Physical layer technologies (chap 1.4) Cellular networks Multicast routing (chap 4.7) ATM, frame relay, PPP (chap 5.7-5.8) The emphasis is no only on “how” but also “why” Knowledge base Reasoning behind the design


Logistics : Logistics Textbook, reference book Office hour Homework, project policy Grade Prerequisite test: What are the OSI-ISO layers? How is it related to the practice in the Internet? What is protocol? What is the difference between packet switching and circuit switching? Sockets


What’s the Internet: “nuts and bolts” view : What’s the Internet: “nuts and bolts” view End systems Host computer Network applications Access networks Local area networks communication links Network core: routers network of networks


What’s the Internet: “nuts and bolts” view : What’s the Internet: “nuts and bolts” view Protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, FTP, PPP Internet: “network of networks” loosely hierarchical public Internet versus private intranet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force local ISP company network regional ISP router workstation server mobile


Network Components (Examples) : Network Components (Examples) Fibers Coaxial Cable Links Interfaces Switches/routers Ethernet card Wireless card Large router Switch


Juniper Routers : Juniper Routers


Internet structure: network of networks : Internet structure: network of networks roughly hierarchical at center: “tier-1” ISPs (e.g., MCI, Sprint, AT&T, Cable and Wireless), national/international coverage treat each other as equals Tier 1 ISP Tier 1 ISP Tier 1 ISP


Tier-1 ISP: e.g., Sprint : Tier-1 ISP: e.g., Sprint Sprint US backbone network


Internet structure: network of networks : Internet structure: network of networks “Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier 1 ISP Tier 1 ISP Tier 1 ISP


Internet structure: network of networks : Internet structure: network of networks “Tier-3” ISPs and local ISPs last hop (“access”) network (closest to end systems) Tier 1 ISP Tier 1 ISP Tier 1 ISP


Internet structure: network of networks : Internet structure: network of networks a packet passes through many networks! Tier 1 ISP Tier 1 ISP Tier 1 ISP


Internet Architecture : Internet Architecture http://www.nap.edu/html/coming_of_age/ http://www.ietf.org/rfc/rfc1958.txt Packet switching over circuit switching “Hourglass” design End-to-end architecture Layering of functionality Distributed design, decentralized control Superior organizational process


The Network Core : The Network Core 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”


Network Core: Circuit Switching : Network Core: Circuit Switching Resources reserved for “call” on an end to end basis link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required


Network Core: Circuit Switching : Network Core: Circuit Switching network resources (e.g., bandwidth) divided into “pieces” pieces allocated to calls resource piece idle if not used by owning call (no sharing) dividing link bandwidth into “pieces” frequency division time division


Network Core: Circuit Switching Example : Network Core: Circuit Switching Example 1890-current: Phone network Fixed bit rate Mostly voice Not fault-tolerant Components extremely reliable Global application-level knowledge throughout network


Network Core: Packet Switching : Network Core: Packet Switching 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, 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


Network Core: Packet Switching : Network Core: Packet Switching A B C 10 Mbs Ethernet 1.5 Mbs 45 Mbs statistical multiplexing queue of packets waiting for output link


Network Core: Packet Switching Example : Network Core: Packet Switching Example 1981-current: Internet network Variable bit rate Mostly data Fault-tolerant Components not extremely reliable (versus phone components) Distributed control and management


Packet switching versus circuit switching : Packet switching versus circuit switching 1 Mbit link each user: 100Kbps when “active” active 10% of time circuit-switching: 10 users packet switching: with 35 users, probability > 10 active less that .004 Packet switching allows more users to use network! N users 1 Mbps link


Packet switching versus circuit switching : Packet switching versus circuit switching Great for bursty data resource sharing no call setup Excessive congestion: packet delay and loss protocols needed for reliable data transfer, congestion control Q: How to provide circuit-like behavior? bandwidth guarantees needed for audio/video apps still an unsolved problem (chapter 6) Is packet switching a “slam dunk winner?”


Hourglass design : Hourglass design


Hourglass design : Hourglass design D. Clark, “The design philosophy of the DARPA internet”, SIGCOMM 1988, August 16 - 18, 1988. http://www.acm.org/pubs/citations/proceedings/comm/52324/p106-clark/


Hourglass design : Hourglass design Only one protocol at the Internet level Minimal required elements at the narrowest point IP – Internet Protocol http://www.rfc-editor.org/rfc/rfc791.txt http://www.rfc-editor.org/rfc/rfc1812.txt Unreliable datagram service Addressing and connectionless connectivity Fragmentation and assembly Innovation at the edge Phone network: dumb edge devices, intelligent network Internet: dumb network, intelligent edge devices


Hourglass design : Hourglass design Simplicity allowed fast deployment of multi-vendor, multi-provider public network Ease of implementation Limited hardware requirements Eventual economies of scale Designed independently of hardware Hardware addresses decoupled from IP addresses IP header contains no data/physical link specific information Allows IP to run over any fabric


Hourglass design : Hourglass design Waist expands at transport layer Two dominant services layered above IP TCP – Transmission Control Protocol Connection-oriented service http://www.rfc-editor.org/rfc/rfc793.txt UDP – User Datagram Protocol Connectionless service http://www.rfc-editor.org/rfc/rfc768.txt


Hourglass design : Hourglass design TCP – Transmission Control Protocol Reliable, in-order byte-stream data transfer Acknowledgements and retransmissions Flow control Sender won’t overwhelm receiver Congestion control Senders won’t overwhelm network


Hourglass design : Hourglass design UDP – User Datagram Protocol Unreliable data transfer No flow control No congestion control


Hourglass design : Hourglass design Check out /etc/services on *nix or C:\WIN*\system32\services IANA http://www.iana.org/assignments/port-numbers What uses TCP? HTTP, FTP, Telnet, SMTP, NNTP, BGP What uses (mainly) UDP? SNMP, NTP, NFS, RTP (streaming media, IP telephony, teleconferencing), multicast applications Many protocols can use both


Hourglass design : Hourglass design Question? Are TCP, UDP, and IP enough? What other functionality would applications need?


Hourglass design : Hourglass design Security? Quality-of-service? Reliable, out-of-order delivery service? Handling greedy sources? Accounting and pricing support? IPsec, DiffServ, SCTP, ….


End-to-end principle : End-to-end principle J. H. Saltzer, D. P. Reed and D. D. Clark “End-to-end arguments in system design”, Transactions on Computer Systems, Vol. 2, No. 4, 1984 http://www.acm.org/pubs/citations/journals/tocs/1984-2-4/p277-saltzer/


End-to-end principle : End-to-end principle Where to put the functionality? In the network? At the edges? End-to-end functions best handled by end-to-end protocols Network provides basic service: data transport Intelligence and applications located in or close to devices at the edge Violate principle as a performance enhancement


End-to-end principle : End-to-end principle The good Basic network functionality allowed for extremely quick adoption and deployment using simple devices The bad New network features and functionality are impossible to deploy, requiring widespread adoption within the network IP Multicast, QoS


Layering : Layering Modular approach to network functionality Example: Link hardware Host-to-host connectivity Application


Layering Characteristics : Layering Characteristics Each layer relies on services from layer below and exports services to layer above Interface defines interaction Hides implementation - layers can change without disturbing other layers (black box) Examples Topology and physical configuration Routing Applications require no knowledge of this New applications deployed without coordination with network operators or operating system vendors


Protocols : Protocols Module in layered structure Set of rules governing communication between network elements (applications, hosts, routers) Protocols define: Interface to higher layers (API) Interface to peer Format and order of messages Actions taken on receipt of a message


Layering : Layering Host Host Application Transport Network Link User A User B Layering: technique to simplify complex systems


Layer Encapsulation : Layer Encapsulation Get index.html Connection ID Source/Destination Link Address User A User B


E.g.: OSI Model: 7 Protocol Layers : E.g.: OSI Model: 7 Protocol Layers Physical: how to transmit bits Data link: how to transmit frames Network: how to route packets Transport: how to send packets end2end Session: how to tie flows together Presentation: byte ordering, security Application: everything else


OSI Layers and Locations : OSI Layers and Locations Switch Router Host Host Application Transport Network Data Link Presentation Session Physical


Example: Transport Layer : Example: Transport Layer First end-to-end layer End-to-end state May provide reliability, flow and congestion control


Example: Network Layer : Example: Network Layer Point-to-point communication Network and host addressing Routing


Layering : Layering Is Layering always good? Sometimes.. Layer N may duplicate lower level functionality (e.g., error recovery) Layers may need same info (timestamp, MTU) Strict adherence to layering may hurt performance


Layering : Layering Need for exposing underlying layers for optimal application performance D. Tennenhouse and D. Clark. Architectural Considerations for a New Generation of Protocols. SIGCOMM 1990. Intel employees: Tennenhouse is a networking “rock star” and your head of research Application Layer Framing (ALF) Enable application to process data as soon as it can Expose application processing unit (ADU) to protocols Integrated Layer Processing (ILP) Layering convenient for architecture but not for implementations Combine data manipulation operations across layers


Distributed design and control : Distributed design and control Reliability from intelligent aggregation of unreliable components Alternate paths, adaptivity, lack of centralized control Each network owned and managed separately Exception: IP address allocation (ICANN)


Superior organizational process : Superior organizational process IAB/IETF process allowed for quick specification, implementation, and deployment of new standards Free and easy download of standards Rough consensus and running code 2 interoperable implementations Bake-offs http://www.ietf.org/ ISO/OSI Comparison to IETF left as an exercise