COP 3813 Introduction to Internet Computing Xingquan Hill

  • Slides: 56
Download presentation
COP 3813 Introduction to Internet Computing Xingquan (Hill) Zhu xqzhu@cse. fau. edu Introduction 1

COP 3813 Introduction to Internet Computing Xingquan (Hill) Zhu xqzhu@cse. fau. edu Introduction 1

Course topics q Introduction (3 hours) q XHTML (6 hours) q CSS (Cascading Style

Course topics q Introduction (3 hours) q XHTML (6 hours) q CSS (Cascading Style Sheets) (3 hours) q Client Side (12 hours) v Java. Script (6 hours) v Dynamic HTML (6 hours) q Server Side (12 hours) v PHP (6 hours) v Database (3 hours) v ASP. NET (3 hours) q XML (3 hours) Introduction 2

Textbook q Internet & World Wide Web How to Program (3 rd Edition), Prentice

Textbook q Internet & World Wide Web How to Program (3 rd Edition), Prentice Hall, 2004, ISBN: 0131450913. Introduction 3

Grading q Composition v Assignments 40% v Term project 20% v Quizzes 10% v

Grading q Composition v Assignments 40% v Term project 20% v Quizzes 10% v Final 30% q Scale v > 80% A v 70 -79% B v 50 -69% C v < 50% or cheating F q Late Policy v -2 pts/Day Introduction 4

Office hour, TA & Questions q Course homepage vhttp: //www. cse. fau. edu/~xqz hu/cop

Office hour, TA & Questions q Course homepage vhttp: //www. cse. fau. edu/~xqz hu/cop 3813. html Office hour v Tuesday, Thursday, 3: 30 -5: 00 PM, S&E 366 v q Questions v xqzhu@cse. fau. edu v 561 -297 -3168 v Emails or question notes, I will give you answer by next course Introduction 5

Content q Introduction to Internet and Computer Networks What are computer networks v What

Content q Introduction to Internet and Computer Networks What are computer networks v What is the Internet v The history of Internet v q Introduction to Internet Applications v Principle of network applications v Web and Http v FTP, Email, DNS, P 2 P file sharing Introduction 6

Computer Networks q What are computer networks? v Interconnected collection of autonomous computer attached

Computer Networks q What are computer networks? v Interconnected collection of autonomous computer attached to a host system v A system for “communication” between “computers” q Examples of computer networks v v v the point-of-sale terminals in a computerised store an office with three computers connected to share data a large company with many interconnected computers sharing resources and security systems. q Advantages v Computing, Communication and information sharing q Disadvantages v v potential loss of security loss of speed cost of purchase and set-up maintenance and supervision costs Introduction 7

Computer Networks = Internet ? q Type of networks v Local Area Networks (LAN)

Computer Networks = Internet ? q Type of networks v Local Area Networks (LAN) • Restricted in size; building, campus v Metropolitan (MAN) Area Networks • Size in ten km and may cover a city v Wide Area Networks (WAN) • Within a country or even whole continent, size from 10 km to over several hundred km v Internet • Deal with how to connect different kinds of networks, resulting the Internet which really covers the whole Planet. Introduction 8

Two most important aspects of CN q Hardware v As communication is a primary

Two most important aspects of CN q Hardware v As communication is a primary concern in a network, we are dealing with both computers and communication technologies • Computing, communication and interaction devices q Software v Protocols • How to communication parties exchange information v Services • What networks offer v Interfaces • How the services can be accessed Introduction 9

What’s the Internet: “nuts and bolts” view q millions of connected computing devices: hosts

What’s the Internet: “nuts and bolts” view q millions of connected computing devices: hosts = end systems q running network apps q communication links v v router server workstation mobile local ISP fiber, copper, radio, satellite transmission rate = bandwidth regional ISP q routers: forward packets (chunks of data) company network Introduction 10

“Cool” internet appliances Web-enabled toaster + weather forecaster IP picture frame http: //www. ceiva.

“Cool” internet appliances Web-enabled toaster + weather forecaster IP picture frame http: //www. ceiva. com/ World’s smallest web server http: //www-ccs. umass. edu/~shri/i. Pic. html Internet phones Introduction 11

What’s the Internet: “nuts and bolts” view q protocols control sending, receiving of msgs

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

What’s the Internet: a service view q communication infrastructure enables distributed applications: v Web,

What’s the Internet: a service view q communication infrastructure enables distributed applications: v Web, email, games, ecommerce, file sharing q communication services provided to apps: v v Connectionless unreliable connection-oriented reliable q Internet provides services with no guarantee v v No guaranteed transmission delay No guaranteed bandwidth Introduction 13

What’s a protocol? human protocols: q Understand each others & follow each others v

What’s a protocol? human protocols: q Understand each others & follow each others v v v “what’s the time? ” “I have a question” introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: q machines rather than humans q all communication activity in Internet governed by protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt Introduction 14

What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection

What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection request Hi TCP connection response Got the time? Get http: //www. awl. com/kurose-ross 2: 00 <file> time Q: Other human protocols? Introduction 15

A closer look at network structure: q network edge: applications and hosts q network

A closer look at network structure: q network edge: applications and hosts q network core: routers v network of networks v q access networks, physical media: communication links Introduction 16

What is the Internet? q Network edge q Network core q Delay & loss

What is the Internet? q Network edge q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 17

The network edge: q end systems (hosts): v v v run application programs e.

The network edge: q end systems (hosts): v v v run application programs e. g. Web, email at “edge of network” q client/server model v v client host requests, receives service from always-on server e. g. Web browser/server; email client/server q peer-peer model: v v minimal (or no) use of dedicated servers e. g. Gnutella, Ka. Za. A, Skype Introduction 18

Network edge: connection-oriented service Goal: data transfer between end systems q handshaking: setup (prepare

Network edge: connection-oriented service Goal: data transfer between end systems q handshaking: setup (prepare for) data transfer ahead of time v v Hello, hello back human protocol set up “state” in two communicating hosts q TCP - Transmission Control Protocol v Internet’s connectionoriented service TCP service [RFC 793] q reliable, in-order byte- stream data transfer v loss: acknowledgements and retransmissions q flow control: v sender won’t overwhelm receiver q congestion control: v senders “slow down sending rate” when network congested Introduction 19

Network edge: connectionless service Goal: data transfer between end systems v same as before!

Network edge: connectionless service Goal: data transfer between end systems v same as before! q UDP - User Datagram Protocol [RFC 768]: v connectionless v unreliable data transfer v no flow control v no congestion control App’s using TCP: q HTTP (Web), FTP (file transfer), Telnet (remote login), SMTP (email) App’s using UDP: q streaming media, teleconferencing, DNS, Internet telephony Introduction 20

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 21

The Network Core q mesh of interconnected routers q the fundamental question: how is

The Network Core q mesh of interconnected routers q the fundamental question: how is data transferred through net? v circuit switching: dedicated circuit per call: telephone net v packet-switching: data sent thru net in discrete “chunks” Introduction 22

Network Core: Circuit Switching. End-end resources reserved for “call” q link bandwidth, switch capacity

Network Core: Circuit Switching. End-end resources reserved for “call” q link bandwidth, switch capacity q dedicated resources: no sharing q circuit-like (guaranteed) performance q call setup required Introduction 23

Circuit Switching: FDM and TDM FDM: Frequency division multiplexing Example: 4 users frequency time

Circuit Switching: FDM and TDM FDM: Frequency division multiplexing Example: 4 users frequency time TDM: Time division multiplexing frequency time Introduction 24

Network Core: Packet Switching each end-end data stream divided into packets q user A,

Network Core: Packet Switching each end-end data stream divided into packets q user A, B packets share network resources q each packet uses full link bandwidth q resources used as needed Bandwidth division into “pieces” Dedicated allocation Resource reservation resource contention: q aggregate resource demand can exceed amount available q congestion: packets queue, wait for link use q store and forward: packets move one hop at a time v Node receives complete packet before forwarding Introduction 25

Packet Switching: Statistical Multiplexing 10 Mb/s Ethernet A B statistical multiplexing C 1. 5

Packet Switching: Statistical Multiplexing 10 Mb/s Ethernet A B statistical multiplexing C 1. 5 Mb/s queue of packets waiting for output link D E Sequence of A & B packets does not have fixed pattern, shared on demand statistical multiplexing. TDM: each host gets same slot in revolving TDM frame. Introduction 26

Packet switching versus circuit switching. Packet switching allows more users to use network! q

Packet switching versus circuit switching. Packet switching allows more users to use network! q 1 Mb/s link q each user: v 100 kb/s when “active” v active 10% of time q circuit-switching: v 10 users N users 1 Mbps link q packet switching: v with 35 users, probability > 10 active less than. 0004 Introduction 27

Packet-switching: store-and-forward. L R R R q Takes L/R seconds to transmit (push out)

Packet-switching: store-and-forward. L R R R q Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps q Entire packet must arrive at router before it can be transmitted on next link: store and forward q delay = 3 L/R (assuming zero propagation delay) more on delay shortly … Introduction 28

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 29

How do loss and delay occur? packets queue in router buffers q packet arrival

How do loss and delay occur? packets queue in router buffers q packet arrival rate to link exceeds output link capacity q packets queue, wait for turn packet being transmitted (delay) A B packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers Introduction 30

Four sources of packet delay q 1. nodal processing: v check bit errors v

Four sources of packet delay q 1. nodal processing: v check bit errors v determine output link q 2. queueing v time waiting at output link for transmission v depends on congestion level of router transmission A propagation B nodal processing queueing Introduction 31

Delay in packet-switched networks 3. Transmission delay: q R=link bandwidth (bps) q L=packet length

Delay in packet-switched networks 3. Transmission delay: q R=link bandwidth (bps) q L=packet length (bits) q time to send bits into link = L/R transmission A 4. Propagation delay: q d = length of physical link q s = propagation speed in medium (~2 x 108 m/sec) q propagation delay = d/s Note: s and R are very different quantities! propagation B nodal processing queueing Introduction 32

Caravan analogy. 100 km ten-car caravan toll booth 100 km toll booth q Cars

Caravan analogy. 100 km ten-car caravan toll booth 100 km toll booth q Cars “propagate” at 100 km/hr q Toll booth takes 12 sec to service a car (transmission time) q car~bit; caravan ~ packet q Q: How long until caravan is lined up before 2 nd toll booth? Introduction 33

Caravan analogy (more). 100 km ten-car caravan toll booth 100 km toll booth q

Caravan analogy (more). 100 km ten-car caravan toll booth 100 km toll booth q Cars now “propagate” at 1000 km/hr q Toll booth now takes 1 min to service a car q Q: Will cars arrive to 2 nd booth before all cars serviced at 1 st booth? Introduction 34

“Real” Internet delays and routes q What do “real” Internet delay & loss look

“Real” Internet delays and routes q What do “real” Internet delay & loss look like? q Traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: v v v sends three packets that will reach router i on path towards destination router i will return packets to sender times interval between transmission and reply. 3 probes Introduction 35

“Real” Internet delays and routes traceroute: gaia. cs. umass. edu to www. eurecom. fr

“Real” Internet delays and routes traceroute: gaia. cs. umass. edu to www. eurecom. fr Three delay measurements from gaia. cs. umass. edu to cs-gw. cs. umass. edu 1 cs-gw (128. 119. 240. 254) 1 ms 2 border 1 -rt-fa 5 -1 -0. gw. umass. edu (128. 119. 3. 145) 1 ms 2 ms 3 cht-vbns. gw. umass. edu (128. 119. 3. 130) 6 ms 5 ms 4 jn 1 -at 1 -0 -0 -19. wor. vbns. net (204. 147. 132. 129) 16 ms 11 ms 13 ms 5 jn 1 -so 7 -0 -0 -0. wae. vbns. net (204. 147. 136) 21 ms 18 ms 6 abilene-vbns. abilene. ucaid. edu (198. 32. 11. 9) 22 ms 18 ms 22 ms 7 nycm-wash. abilene. ucaid. edu (198. 32. 8. 46) 22 ms trans-oceanic 8 62. 40. 103. 253 (62. 40. 103. 253) 104 ms 109 ms 106 ms link 9 de 2 -1. de. geant. net (62. 40. 96. 129) 109 ms 102 ms 104 ms 10 de. fr 1. fr. geant. net (62. 40. 96. 50) 113 ms 121 ms 114 ms 11 renater-gw. fr 1. fr. geant. net (62. 40. 103. 54) 112 ms 114 ms 112 ms 12 nio-n 2. cssi. renater. fr (193. 51. 206. 13) 111 ms 114 ms 116 ms 13 nice. cssi. renater. fr (195. 220. 98. 102) 123 ms 125 ms 124 ms 14 r 3 t 2 -nice. cssi. renater. fr (195. 220. 98. 110) 126 ms 124 ms 15 eurecom-valbonne. r 3 t 2. ft. net (193. 48. 50. 54) 135 ms 128 ms 133 ms 16 194. 211. 25 (194. 211. 25) 126 ms 128 ms 126 ms 17 * * means no response (probe lost, router not replying) 18 * * * 19 fantasia. eurecom. fr (193. 55. 113. 142) 132 ms 128 ms 136 ms Introduction 36

Packet loss q queue (aka buffer) preceding link in buffer has finite capacity q

Packet loss q queue (aka buffer) preceding link in buffer has finite capacity q when packet arrives to full queue, packet is dropped (aka lost) q lost packet may be retransmitted by previous node, by source end system, or not retransmitted at all Introduction 37

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 38

Internet structure: network of networks q roughly hierarchical q at center: “tier-1” ISPs (e.

Internet structure: network of networks q roughly hierarchical q at center: “tier-1” ISPs (e. g. , MCI, Sprint, AT&T, Cable and Wireless), national/international coverage v treat each other as equals Tier-1 providers interconnect (peer) privately Tier 1 ISP NAP Tier-1 providers also interconnect at public network access points (NAPs) Tier 1 ISP Introduction 39

Tier-1 ISP: e. g. , Sprint US backbone network Seattle Tacoma DS 3 (45

Tier-1 ISP: e. g. , Sprint US backbone network Seattle Tacoma DS 3 (45 Mbps) OC 3 (155 Mbps) OC 12 (622 Mbps) OC 48 (2. 4 Gbps) POP: point-of-presence to/from backbone Stockton … … Kansas City. … Anaheim peering … … San Jose Cheyenne New York Pennsauken Relay Wash. DC Chicago Roachdale Atlanta to/from customers Fort Worth Orlando Introduction 40

Internet structure: network of networks q “Tier-2” ISPs: smaller (often regional) ISPs v Connect

Internet structure: network of networks q “Tier-2” ISPs: smaller (often regional) ISPs v Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet q tier-2 ISP is customer of tier-1 provider Tier-2 ISP Tier 1 ISP Tier-2 ISP NAP Tier 1 ISP Tier-2 ISPs also peer privately with each other, interconnect at NAP Tier-2 ISP Introduction 41

Internet structure: network of networks q “Tier-3” ISPs and local ISPs v last hop

Internet structure: network of networks q “Tier-3” ISPs and local ISPs v last hop (“access”) network (closest to end systems) local ISP Local and tier 3 ISPs are customers of higher tier ISPs connecting them to rest of Internet Tier 3 ISP Tier-2 ISP local ISP Tier-2 ISP Tier 1 ISP Tier-2 ISP local ISP NAP Tier 1 ISP Tier-2 ISP local ISP Introduction 42

Internet structure: network of networks q a packet passes through many networks! local ISP

Internet structure: network of networks q a packet passes through many networks! local ISP Tier 3 ISP Tier-2 ISP local ISP Tier-2 ISP Tier 1 ISP Tier-2 ISP local ISP NAP Tier 1 ISP Tier-2 ISP local ISP Introduction 43

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q

What is the Internet? q Network edge v End systems, client/server, connectionoriented/connectionless services q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 44

Protocol “Layers” Networks are complex! q many “pieces”: v hosts v routers v links

Protocol “Layers” Networks are complex! q many “pieces”: v hosts v routers v links of various media v applications v protocols v hardware, software Question: Is there any hope of organizing structure of network? Or at least our discussion of networks? Introduction 45

Organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load)

Organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load) gates (unload) runway takeoff runway landing airplane routing q a series of steps Introduction 46

Layering of airline functionality ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim baggage

Layering of airline functionality ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim baggage gates (load) gates (unload) gate runway (takeoff) runway (land) takeoff/landing airplane routing departure airport airplane routing intermediate air-traffic control centers arrival airport Layers: each layer implements a service v via its own internal-layer actions v relying on services provided by layer below Introduction 47

Why layering? Dealing with complex systems: q explicit structure allows identification, relationship of complex

Why layering? Dealing with complex systems: q explicit structure allows identification, relationship of complex system’s pieces v layered reference model for discussion q modularization eases maintenance, updating of system v change of implementation of layer’s service transparent to rest of system v e. g. , change in gate procedure doesn’t affect rest of system Introduction 48

Internet protocol stack q application: supporting network applications v FTP, SMTP, HTTP application q

Internet protocol stack q application: supporting network applications v FTP, SMTP, HTTP application q transport: host-host data transfer v TCP, UDP transport q network: routing of datagrams from network source to destination v IP, routing protocols q link: data transfer between neighboring network elements v link physical PPP, Ethernet q physical: bits “on the wire” Introduction 49

source message segment Ht datagram Hn Ht frame Hl Hn Ht M M Encapsulation

source message segment Ht datagram Hn Ht frame Hl Hn Ht M M Encapsulation application transport network link physical Hl Hn Ht M switch destination M Ht M Hn Ht Hl Hn Ht M M application transport network link physical Hn Ht Hl Hn Ht M M router Introduction 50

What is the Internet? . q Network edge v End systems, client/server, connectionoriented/connectionless services

What is the Internet? . q Network edge v End systems, client/server, connectionoriented/connectionless services q Network core q Delay & loss in packet-switched networks q Internet structure and ISPs q Protocol layers, service models q History Introduction 51

Internet History 1961 -1972: Early packet-switching principles q 1961: Kleinrock - queueing theory shows

Internet History 1961 -1972: Early packet-switching principles q 1961: Kleinrock - queueing theory shows effectiveness of packetswitching q 1964: Baran - packetswitching in military nets q 1967: ARPAnet conceived by Advanced Research Projects Agency q 1969: first ARPAnet node operational q 1972: v v ARPAnet public demonstration NCP (Network Control Protocol) first host-host protocol first e-mail program ARPAnet has 15 nodes Introduction 52

Internet History 1972 -1980: Internetworking, new and proprietary nets q 1970: ALOHAnet satellite q

Internet History 1972 -1980: Internetworking, new and proprietary nets q 1970: ALOHAnet satellite q q q network in Hawaii 1974: Cerf and Kahn architecture for interconnecting networks 1976: Ethernet at Xerox PARC ate 70’s: proprietary architectures: DECnet, SNA, XNA late 70’s: switching fixed length packets (ATM precursor) 1979: ARPAnet has 200 nodes Cerf and Kahn’s internetworking principles: v minimalism, autonomy - no internal changes required to interconnect networks v best effort service model v stateless routers v decentralized control define today’s Internet architecture Introduction 53

Internet History 1980 -1990: new protocols, a proliferation of networks q 1983: deployment of

Internet History 1980 -1990: new protocols, a proliferation of networks q 1983: deployment of q q TCP/IP 1982: smtp e-mail protocol defined 1983: DNS defined for name-to-IP-address translation 1985: ftp protocol defined 1988: TCP congestion control q new national networks: Csnet, BITnet, NSFnet, Minitel q 100, 000 hosts connected to confederation of networks Introduction 54

Internet History 1990, 2000’s: commercialization, the Web, new apps q Early 1990’s: ARPAnet decommissioned

Internet History 1990, 2000’s: commercialization, the Web, new apps q Early 1990’s: ARPAnet decommissioned q 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995) q early 1990 s: Web v hypertext [Bush 1945, Nelson 1960’s] v HTML, HTTP: Berners-Lee v 1994: Mosaic, later Netscape v late 1990’s: commercialization Late 1990’s – 2000’s: q more killer apps: instant messaging, P 2 P file sharing q network security to forefront q est. 50 million host, 100 million+ users q backbone links running at Gbps of the Web Introduction 55

Summary Covered a “ton” of material! q Internet overview q network edge, core, access

Summary Covered a “ton” of material! q Internet overview q network edge, core, access network v packet-switching versus circuit-switching q loss & delay q what’s a protocol? q layering and service models q history Introduction 56