Data Networks Introduction 1-1 Data Networks Organization: • Core lecture, 9 ECTS points • Lectures: Tue 10-12 (Günter-Hotz lecture hall), Thu 1214 (HS002 except for 25th) • Tutorial: Fri 12-14 (HS002, except for May 31st , June 21st) • Written exam (25.07), re-exam (beginning of October) • Weekly quizzes on Wednesdays: 50% of points to participate in exam • Weekly exercises (optional): solutions are discussed in tutorial (sheets are uploaded one week earlier) Data Networks Organization: • Questions about the organization: {turrini, spieler, mikeev}@cs.uni-… • Course webpage: mosi.cs.uni-saarland.de -> teaching • you may post live comments during the lecture: • everything you want to discuss immediately without interrupting the presentation • you may also post interesting links related to the material presented • feedback concerning the presentation • forum for “dead (not live)” comments/questions Data Networks Literature: • Computer Networking by J.F Kurose and K.W. Ross, 6th edition (Chapter 1-6) (=> Bock & Seip store on campus!) • Data Networks by Dimitri P. Bertsekas and Robert G. Gallager, 2nd edition (Chapter 3) Syllabus • 1: Introduction: Broad overview of computer networking and the Internet • 2: Application Layer: HTTP, FTP, SMTP, DNS, P2P, … • 3: Transport Layer: Multiplexing, TCP, Congestion control, … • 4: Network Layer: IP and routing, … • 5: Link Layer: Links, Access Networks, LANs, … • 6: Wireless Networks • 7: Delay Models: Little’s Theorem, Queueing Systems, … Further reading: • Computer Networking by J.F Kurose and K.W. Ross, 6th edition (Chapter 7-9) Multimedia Networking, Security in Computer Networks, Network Management • Computer Networks by A. Tanenbaum, 4th ed • Computer Networks by L. Peterson, B. Davie, 5th Edition Syllabus What this lecture is (not) about: Fundamental principles of computer networks in general! Internet is just an instance/ an example where we can see how things are implemented in practice. Not: details of most recent developments of the Internet (currently “in”, may be “out” in two years ...) Chapter 1: introduction our goal: get broad overview and terminology more depth, detail later in course approach: use Internet as example overview: what’s the Internet? what’s a protocol? network edge; hosts (servers, Laptops, smartphones, ...) network core: packet/circuit switching, Internet structure performance: loss, delay, throughput security (no details later) protocol layers history Introduction 1-7 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge 1.3 network core 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-8 What’s the Internet: “nuts and bolts” view of millions of server connected computing devices: wireless laptop hosts = end systems smartphone running network apps communication links coaxial cable, wireless links copper, fiber, radio, wired … links transmission rate: bandwidth PC hundreds global ISP home network (WiFi) regional ISP Packet router switches: receive and forward packets (chunks of data) routers and switches mobile network institutional network Introduction 1-9 What’s the Internet: “nuts and bolts” view Internet Service Provider (ISP): End systems access the Internet through ISPs Interconnected ISPs (=> “network of networks”) classification according to size (Tier 3 (local), Tier 2 (national), Tier 1(global/international) mobile network global ISP home network regional ISP protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, SMTP, … Internet standards different components of the internet have to agree on standards to interoperate IETF: Internet Engineering Task Force develops and promotes such standards IETF publishes RFCs (Requests for comments) describing/defining protocols institutional network Introduction 1-10 What’s the Internet: a service view The Internet from a different perspective: Infrastructure that provides services to applications: Web, VoIP, email, distributed games, P2P, social nets,... applications are distributed (involve multiple hosts exchanging data) mobile network global ISP home network regional ISP End systems provides applic. programming interface to apps rules for exchanging data between programms provides service options, analogous to postal service institutional network Introduction 1-11 What’s a protocol? a human analogy: teacher Hi “broadcast” "Questions?" Hi raise hand Got the time? “Yes?" 2:00 ask time answer Introduction 1-12 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://mosi.cs.uni-saarland.de 2:00 <file> time Introduction 1-13 What’s a protocol? network protocols: communication between machines rather than humans all communication activity in Internet governed by protocols protocols define format, order of messages sent and received among network entities, and actions taken on message transmission or receipt Introduction 1-14 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge 1.3 network core 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history just a quick overview; no technical details! Introduction 1-15 A closer look at network structure: network edge: hosts: clients and servers home-based hosts: desktop computers, laptops, smartphones, tablets servers often reside in large data centers (Web, email) mobile network global ISP home network regional ISP institutional network Introduction 1-16 Non-traditional end systems Web-enabled toaster + weather forecaster IP picture frame http://www.ceiva.com/ Tweet-a-watt: monitor energy use Slingbox: watch, control cable TV remotely Internet refrigerator Internet phones Introduction 1-17 A closer look at network structure: network edge: mobile network hosts: clients and servers global ISP access networks: physical connection of end system to first router (“edge router”); wired or wireless communication links home network regional ISP network core: interconnected routers network of networks institutional network Introduction 1-18 Access networks and physical media edge router How to connect end systems to edge router? different types residential access nets institutional access networks (school, company) mobile access networks Introduction 1-19 Access net: digital subscriber line (DSL) • DSL Internet access obtained from local telephone company => ISP • Market share in Germany 86% (in 2012) • use existing telephone line (copper wire, analog transmission) to DSL access multiplexer (DSLAM) of phone company • DSLAM usually located in the central office (CO)„Vermittlungsstelle“ (or it is an outdoor DSLAM) • data over DSL line goes to Internet • voice over DSL line goes to telephone net Access net: digital subscriber line (DSL) central office DSL splitter modem voice, data transmitted at different frequencies over dedicated line to central office telephone network DSLAM ISP DSL access multiplexer use different frequencies for telephone and Internet data => splitter separates rec. signal & forwards data to DSL modem DSLAM separates the incoming data/phone signals and translates it into digital format rates are either limited by ISP or because of the distance to CO Introduction 1-21 Access net: cable network cable headend … cable splitter modem CMTS cable modem termination system ISP make use of the cable television infrastructure residence: needs cable modem to exchange data with cable modem termination system (CMTS) splitter often integrated in cable modem both optical fibre and coaxial cable are employed (HFC: hybrid fiber coax) Introduction 1-22 Access net: cable network cable headend … cable splitter modem data, TV transmitted at different frequencies over shared cable distribution network CMTS cable modem termination system ISP network of cable/fiber attaches homes to ISP router homes share access network to cable headend => transm. rate decreases in case of high traffic => requested data packets are sent to all connected participants of a group unlike DSL, which has dedicated access to central office Introduction 1-23 Access net: home network wireless devices to/from headend or central office often combined in single box cable or DSL modem wireless access point (54 Mbps) router wired Ethernet (100 Mbps) Introduction 1-24 Enterprise access networks (Ethernet) institutional link to ISP (Internet) institutional router Ethernet switch typically used in companies, universities, etc transmission rates: institutional mail, web servers 10 Mbps to 100Mbps (users), 1Gbps, 10Gbps (servers) today, end systems typically connect into Ethernet switch Introduction 1-25 Wireless access networks wireless access network connects end system to router via “access point”; uses radio signals to transmit data access point shared by several end systems wireless LANs: distinguish between wide-area wireless access IEEE 802.11 technology (WiFi) up to 54 Mbps transmission rate range: typically a few 10 meters to Internet maximal bandwidths use infrastructure of cellular telephony connect to base stations range: few 10’s of km to Internet Introduction 1-26 Physical media bit: sent by propagating electromagnetic waves (analog signal) or optical pulses (digital signal) between transmitter/receiver pairs physical link: what lies between transmitter & receiver distinguish: guided media: signals propagate in solid media: copper, fiber-optic, coaxial unguided media: signals propagate freely, e.g., radio waves twisted pair (TP) copper wire two insulated copper wires arranged in regular spiral pattern least expensive, most commonly used 10 Mbps to 10 Gpbs Ethernet, DSL Introduction 1-27 Physical media: coax, fiber coaxial cable: two concentric copper conductors used for HFC (hybrid fibre coaxial) access via (cable internet) fiber optic cable: glass fiber carrying light pulses (digital signal) high-speed point-to-point transmission (10’s-100’s Gpbs) low error rate (immune to transmitters, receiver, switches are costly long distance link (oversea) prevalent in Internet backbone electromagnetic noise) Introduction 1-28 Physical media: radio radio link types: terrestrial radio channels short distance (e.g. Bluetooth) LAN (e.g., WiFi) cellular access (wide–area wireless access) satellite links used if DSL or cable is not available transmission rate:10’s of Mbps > 270 msec signal propagation delay (DSL has ony 20 ms) typically using a geostationary satellite location needs to be in the footprint of the satellite influenced by meteorological factors Introduction 1-29 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-30 The network core mesh of interconnected routers What do routers do? packet-switching: hosts run network apps and break application-layer messages into packets forward packets from one router to the next, across links on path from source to destination packets may be buffered and queue while passing network nodes Introduction 1-31 Host: sends packets of data host sending function: takes application message breaks into smaller chunks, known as packets, of length L bits (packetization) transmits packet into access network at transmission rate R (bits/sec) link transmission rate = link bandwidth two packets, L bits each 2 1 R: link transmission rate host How many seconds does it take to transmit one L-bit paket? packet transmission delay = time needed to transmit L-bit packet into link = L (bits) R (bits/sec) Host: sends packets of data host sending function: takes application message breaks into smaller chunks, known as packets, of length L bits transmits packet into access network at transmission rate R (bits/sec) transmission delay = time for pushing the packet‘s bits into the link propagation delay = traveling across the wire two packets, L bits each 2 1 R: link transmission rate host Packet-switching: store-and-forward mechanism L bits per packet source 3 2 1 R bps takes L/R seconds to transmit (push out) L-bit packet into link at R bps store and forward: entire packet must arrive at router before it can be transmitted on next link end-end delay (two links with bandwidth R)= 2L/R (assuming zero propagation delay) R bps destination one-hop numerical example: L = 7.5 Mbits R = 1.5 Mbps one-hop transmission delay = 5 sec more on delay shortly … Introduction 1-34 Packet-switching: store-and-forward L bits per packet source 3 2 1 R bps R bps destination takes L/R seconds to Question: transmit (push out) L-bit What is the end-end delay if a packet into link at R bps packet is sent via N links (and N-1) store and forward: entire routers? packet must arrive at router before it can be transmitted N x L/R on next link end-end delay = 2L/R (assuming zero propagation delay) Introduction 1-35 Packet Switching: queueing delay, loss queuing and loss: routers have one buffer per outgoing link => store packets that the router is about to send into the link If arrival rate (in bits) to link exceeds transmission rate of link for a period of time: packets will queue, wait to be transmitted on link packets can be dropped (lost) if memory (buffer) fills up A B C R = 100 Mb/s R = 1.5 Mb/s queue of packets waiting for output link D E Introduction 1-36 Key functions in paket switching routing: determines sourcedestination route taken by packets routing algorithms forwarding: move packets from router’s input to appropriate router output routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 2 1 1 3 2 dest address in arriving packet’s header Network Layer 4-37 Paket vs. circuit switching two fundamental approaches for moving data through a network: packets switching and circuit switching - in packet-switched networks resources are NOT reserved (=> no guarantees!) restaurant analogy: just go there without reservation! - in circuit-switched networks resources are reserved - links are separated into circuit segments - fraction of each links transmission capacity is reserved for the duration of the connection restaurant analogy: reserve a table in advance! Introduction 1-38 Alternative core: circuit switching resources (buffers, links, transmission rate) are reserved for “call” between source & destination: Here, each link has four circuits. call gets 2nd circuit in top link and 1st circuit in right link. dedicated resources: no sharing circuit-like (guaranteed) constant transmission rate circuit segment idle if not used by call (no sharing) no store and forward => transmission time independent of number of links Commonly used in traditional telephone networks Introduction 1-39 Circuit switching: FDM versus TDM Example: Frequency-division multiplexing 4 users frequency Time-division multiplexing time frequency time Introduction 1-40 Packet switching versus circuit switching packet switching allows more users to use network! example: users share 1000 kb/s link each user: • wants to transmit 100 kb/s when “active” • active 10% of time N users 1000 kb/s link circuit-switching: can have at most 10? users packet switching: with 35 users, probability > 10 active at same time is less than .0004 Q: how did we get value 0.0004? Q: what happens if > 35 users ? => 3 times more users at the same performance with prob 99,96 % Introduction 1-41 Packet switching versus circuit switching packet switching great for bursty data resource sharing simpler, no call setup excessive congestion possible: packet delay and loss protocols needed for reliable data transfer, congestion control Problem: How to provide circuit-like behavior? bandwidth guarantees needed for audio/video streaming still an unsolved problem ... Introduction 1-42 Internet structure: network of networks End systems connect to Internet via access ISPs (Internet Service Providers) Residential, company and university ISPs Access ISPs in turn must be interconnected. So that any two hosts can send packets to each other Let’s now take a stepwise approach to describe the current Internet structure. Internet structure: network of networks Question: given thousands of access ISPs, how to connect them together? access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net Internet structure: network of networks Option: connect each access ISP to every other access ISP? access net access net access net access net access net access net access net connecting each access ISP to each other directly doesn’t scale: O(N2) connections. access net access net access net access net access net access net access net access net access net Internet structure: network of networks Option: connect each access ISP to a single global transit ISP? Access ISPs (customers) have to pay global ISP for traffic => customer and provider ISPs need economic agreement. access net access net access net access net access net access net access net global ISP access net access net access net access net access net access net access net access net access net Internet structure: network of networks But if one global ISP is viable business, there will be competitors …. access net access net access net access net access net access net access net ISP A access net access net access net ISP B ISP C access net access net access net access net access net access net Internet structure: network of networks But if one global ISP is viable business, there will be competitors …. which must be interconnected Internet exchange point access net (multiple ISPs peer together) access net access net access net access net IXP access net ISP A IXP access net access net access net access net ISP B ISP C access net peering link access net access net access net access net access net Internet structure: network of networks … and regional networks may arise to connect access nets to ISPS access net access net access net access net access net IXP access net ISP A IXP access net access net access net access net ISP B ISP C access net access net regional net access net access net access net access net Internet structure: network of networks … and content provider networks (e.g., Google, Microsoft, ...) may run their own network, to bring services, content close to end users access net access net access net access net access net IXP access net ISP A access net Content provider network IXP access net access net access net ISP B ISP B access net access net regional net access net access net access net access net Internet structure: network of networks at center: small # of wellTier 1 ISP connected large networks Tier 1 ISP IXP IXP Regional ISP access ISP access ISP Google access ISP access ISP IXP Regional ISP access ISP access ISP access ISP access ISP Tier-1 commercial ISPs: national & international coverage, providers of Internet backbone (backbone is the core of the actual internet) content provider network (e.g, Google): private network that connects it data centers to Internet, often bypassing tier-1, regional ISPs Introduction 1-51 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-52 How do loss and delay occur? packets queue in router buffers packet arrival rate to link (temporarily) exceeds output link transmission rate 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 1-53 Four sources of packet delay transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dproc: nodal processing examine header of packet check for bit-level errors determine output link typically < 1/100 millisec (ms) dqueue: queueing delay time waiting at output link for transmission depends on congestion level of router 1/1000 – 1 ms Introduction 1-54 Four sources of packet delay transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dtrans: transmission delay: L: packet length (bits) R: link bandwidth (bps) dtrans = L/R dprop: propagation delay: d: length of physical link s: propagation speed in medium (~2x108 meters/sec) dprop = d/s in wide area networks: order of milliseconds otherwise negligible Introduction 1-55 Caravan analogy 100 km ten-car caravan toll booth highway “propagation speed” of cars: 100 km/hr cars have fixed order toll booth: on arrival, first car waits for others; takes 12 sec to service a car (bit transmission time) car~bit; caravan ~ packet Q: How long until caravan is lined up before 2nd toll booth? 100 km toll booth highway time to “push” entire caravan through toll booth onto highway = 12*10 = 120 sec time for last car to propagate from 1st to 2nd toll both: 100km/(100km/hr)= 1 hr A: 62 minutes Introduction 1-56 Caravan analogy (more) 100 km ten-car caravan toll booth 100 km toll booth suppose cars now “propagate” at 1000 km/hr and suppose toll booth now takes one min to service a car Q: Will cars arrive to 2nd booth before all cars serviced at first booth? A: Yes! after 7 min, 1st car arrives at second booth; three cars still at 1st booth. => this situation arises in packet-switched networks: bits arrive at the router before the last bit is pushed into the link at the source router Introduction 1-57 http://wps.pearsoned.com/ecs_kurose_compnetw_6/216/55463/141 98700.cw/index.html Introduction 1-58 End-to-end delay total delay from source to destination N-1 routers on the path between source host and destination host assume no queueing assume dproc is processing delay at each router (and source host) transmission rate out of each router and out of source host is R => dtrans = L/R (L is size of packet) propagation delay dprop of each link What is the end-to-end delay? dend-to-end = N ( dproc + dtrans + dprop ) Introduction 1-59 subject of intense research => more about this in a couple of weeks R: link bandwidth (bits/sec) L: packet length (bits) a: average packet arrival rate (in packets/sec) λ=a x L is arrival rate (bits/sec) average queueing delay Queueing delay (revisited) traffic intensity = λ/R λ/R ~ 0: avg. queueing delay small λ/R 1: avg. queueing delay large λ/R > 1: more “work” arriving than can be serviced, average delay infinite! http://wps.pearsoned.com/ecs_kurose_compnetw_6/216/55463/14198700.cw/index.html La/R ~ 0 La/R Introduction 1-60 1 Packet loss queue that precedes the link in buffer has finite capacity packet arriving to full queue dropped (=> lost) lost packet may be retransmitted by previous node, by source end system, or not at all buffer (waiting area) A packet being transmitted B packet arriving to full buffer is lost * Check out the Java applet for an interactive animation on queuing and loss Introduction 1-61 “Real” Internet delays and routes what do “real” Internet delay & loss look like? traceroute program: provides delay measurement from source to router along endend Internet path towards destination. For all i: sends three packets that will reach router i on path towards destination (=> 3N packets in total) router i will return packets to sender time interval between start of transmission and reply (response time) 3 probes 3 probes 3 probes Introduction 1-62 “Real” Internet delays, routes traceroute: gaia.cs.umass.edu to www.eurecom.fr 3 delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 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 22 ms 22 ms trans-oceanic 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms link 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.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 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.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 * Do some traceroutes from exotic countries at www.traceroute.org Introduction 1-63 Throughput throughput: rate (bits/time unit) at which bits transferred between sender/receiver instantaneous: rate at given point in time average: rate over longer period of time e.g. file of F bits is transferred within T seconds => average throughput? F/T server has file of F bits to send to client link bandwidth Rs bits/sec link bandwidth Rc bits/sec Bits can be seen as fluid that is pumped into pipe, bandwidth corresponds to link capacity! Introduction 1-64 Throughput (more) Rs < Rc What is average (approx) end-end throughput? Rs bits/sec Rc bits/sec Rs > Rc What is average (approx) end-end throughput? Rs bits/sec Rc bits/sec File of size F needs F/min{Rc, Rs} time to be transmitted, since at both links we cannot transmit faster than at rate min{Rc, Rs} (think about the last bit of the file!) Introduction 1-65 Throughput (more) R1,..., RN What is average end-end throughput? min{R1,..., RN } bottleneck link link on end-end path that constrains end-end throughput Introduction 1-66 Throughput: Internet scenario 10 simultaneous downloads involving 10 client-server pairs all through a link with rate R per-connection end-end throughput? min{Rc,Rs,R/10} => link may be a bottleneck in practice: Rc or Rs is often bottleneck (because link in the core has very high rate) ... Rs Rs Rs R Rc Rc Rc ... 10 connections (fairly) share backbone bottleneck link R bits/sec Introduction 1-67 Bits and Bytes, Kilo, Mega, Giga In concrete examples, we might have to convert between bits and bytes, kilo-x, mega-x, giga-x, tera-x 1 bit is either a 1 or 0 (b) upper case/lower case 8 bits = 1 byte (B) 1024 bytes = 1 Kibibyte (KiB) = 2^10 bytes 1024 Kibibytes = 1 Mebibyte (MiB) = 2^20 bytes 1024 Mebibytes = 1 Gibibyte (GiB) = 2^30 bytes 1024 Gibibytes = 1 Tebibyte (TiB) = 2^40 bytes Common prefixes: - kilox (Kx) -> 1,000 =10^3 (one thousand) - megax (Mx) -> 1,000,000=10^6 (one million) - gigax (Gx) -> 1,000,000,000=10^9 (one billion) - terax (Tx) ->1,000,000,000,000= 10^12 (one trillion) Introduction 1-68 Bits and Bytes, Kilo, Mega, Giga In concrete examples, we might have to convert between bits and bytes, kilo-x, mega-x, giga-x, tera-x 10 Mb to KB = (10*10^6)/(8*10^3) KB = 1250 KB 1500 KB to Mb = (1500*10^3*8)/10^6 Mb = 12 Mb 1 GiB to MB = (2^30)/10^6 MB ≈ 1073.74 MB 1 TB to GiB = (10^12)/2^30 GiB ≈ 931.32 GiB Introduction 1-69 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-70 Protocol “layers” Networks are complex, with many “pieces”: hosts routers links of various media applications protocols hardware, software Question: is there any hope of organizing structure of network? …. or at least our discussion of networks? Introduction 1-71 Organization of air travel ticket (purchase) ticket (complain if trip was bad) baggage (check) baggage (claim) gates (load) gates (unload) runway takeoff runway landing airplane routing airplane routing airplane routing a series of steps/ actions Introduction 1-72 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 airplane routing airplane routing departure airport airplane routing airplane routing intermediate air-traffic control centers arrival airport layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below Introduction 1-73 Why layering? dealing with complex systems: allows to identify the relationships of the complex pieces of the system modularization eases maintenance, updating of system e.g., change in gate procedure (say, order in which passengers are boarding) doesn’t affect rest of system Introduction 1-74 Network protocols application: supporting network applications FTP, SMTP, HTTP, DNS application transport network link physical Internet protocol stack Introduction 1-75 Network protocols application: supporting network applications FTP, SMTP, HTTP, DNS transport: process-process data transfer TCP (guaranteed delivery, congestion control), UDP (connectionless) transport-layer packets = segments application transport network link physical Internet protocol stack Introduction 1-76 Network protocols application: supporting network applications FTP, SMTP, HTTP transport: process-process data transfer TCP, UDP transport-layer packets = segments network: routing of datagrams from source to destination IP Protocol, routing protocols application transport network link physical Internet protocol stack Introduction 1-77 Network protocols application: supporting network applications FTP, SMTP, HTTP transport: process-process data transfer TCP, UDP transport-layer packets = segments network: routing of datagrams from source to destination IP, routing protocols link: data transfer between neighboring network elements Ethernet, 802.11 (WiFi), PPP physical: bits “on the wire” application transport network link physical Internet protocol stack Introduction 1-78 Network protocols packets are called ... application messages transport segments network datagrams link frames physical Internet protocol stack Introduction 1-79 Encapsulation source message segment M Ht M datagram Hn Ht M frame M Hl Hn Ht application transport network link physical link physical Paket switches implement only the bottom layers – they are ‘transparent‘ to the hosts and routers! Encapsulation (slightly) increases frame size. M Ht M Hn Ht M Hl Hn Ht M destination Hn Ht M application transport network link physical Hl Hn Ht M network link physical switch Hn Ht M router extract enclosed datagram Introduction 1-80 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-81 Network security field of network security: how bad guys can attack computer networks how we can defend networks against attacks how to design architectures that are immune to attacks => part of security course offered every two years at UdS Introduction 1-82 Bad guys: put malware into hosts via Internet malware (software doing bad things) can get in host from: virus: corrupts or modifies files on target host; typically user runs infected program; self-replicating infection but cannot be spread without a human action worm: exploits security vulnerabilities to spread passively (travel without any human action); does not attach itself to an existing program; takes advantage of system's transport features, which is what allows it to travel unaided spyware can record keystrokes, web sites visited, upload info to collection site Introduction 1-83 Bad guys: attack server, network infrastructure Denial of Service (DoS): attackers make resources (server, bandwidth) unavailable to legitimate users - - vulnerability attack: send message to vulnerable application => service stops or host crashes bandwidth flooding: send so many (fake) packets that target’s access link becomes clogged (‘verstopft’) connection flooding: establish large number of TCP connections (=> Chapter 3) Introduction 1-84 Bad guys: attack server, network infrastructure Distributed Denial of Service (DDoS) bandwidth flooding: 1. select target 2. break into hosts around the network 3. send packets to target from compromised hosts target make sure that aggregate traffic rate is approx. equal to access rate of server Introduction 1-85 Bad guys can sniff packets packet “sniffing”: broadcast media (shared ethernet, wireless) network interface reads/records all packets (e.g., including passwords!) passing by C A src:B dest:A payload B best defense is strong encryption => cryptography lecture at UdS Introduction 1-86 Bad guys can use fake addresses IP spoofing: send packet with false source address (e.g. C pretends to be B ) C A src:B dest:A payload B flood victim with fake traffic; attacker does not care about responses to the attack packets each spoofed packet appears to come from a different address (=> filtering is difficult!) best defense is end-point authentication (determine identity of Introduction sender with certainty) 1-87 Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 networks under attack: security 1.7 history Introduction 1-88 Internet history 1961-1972: Early packet-switching principles early 1960s: telephone network was dominant communication network (circuit switching!!!) ... paket switching was invented (Paul Baran) 1961: Kleinrock - queueing theory shows effectiveness of packet-switching 1964: Baran - packetswitching in military nets 1969: ARPAnet - first packet-switched computer network at MIT 1972: NCP (Network Control Protocol) first host-host protocol; predecessor of TCP/IP first e-mail program (1971) file transfer (1973) Introduction 1-89 Internet history 1961-1972: Early packet-switching principles 1961: Kleinrock - queueing theory shows effectiveness of packet-switching 1964: Baran - packetswitching in military nets 1969: ARPAnet - first packet-switched computer network at MIT 1972: NCP (Network Control Protocol) first host-host protocol; predecessor of TCP/IP first e-mail program (1971) file transfer (1973) nodes and connections of the ARPA-net in 1974 Introduction 1-90 Internet history 1972-1980: Growing number of networks 1970: ALOHAnet satellite network in Hawaii (wireless paketbased radio network) 1970-1977: growing number of other stand-alone packetswitching networks 1974: Cerf and Kahn invented architecture for interconnecting networks => early TCP 1976: Ethernet for wire-based shared broadcast networks 1979: ARPAnet had 200 nodes Introduction 1-91 Internet history 1980-1990: new protocols and growths of networks 1983: deployment of TCP/IP in ARPAnet (replacing NCP) 1982: smtp e-mail protocol defined 1983: DNS defined for name-to-IP-address translation 1985: ftp protocol defined 1988: TCP congestion control Introduction 1-92 Internet history 1990, 2000’s: commercialization, the Web, new apps early 1990’s: ARPAnet decommissioned (replaced by a new network of the NSF) early 1990s: World Wide Web started as a CERN-project (Switzerland) purpose: share information among researchers. HTML, HTTP Mosaic, later Netscape late 1990’s: commercialization of the Web 1993: CERN announced that WWW is free to anyone late 1990’s – 2000’s: more killer apps: instant messaging, P2P file sharing (Napster!!!) about 50 million hosts, 100 million users thousands of startups creating Internet products and services Internet stocks collapsed in 2000-2001 some winners: Microsoft, Cisco, Yahoo, e-Bay, Google, Amazon http://www.w3.org/History/19921103-hypertext/hypertext/WWW/TheProject.html Introduction 1-93 Internet history 2005-present ~350 million hosts in 2005, ~750 million hosts in 2010 Aggressive deployment of broadband access (DSL, Cable) Increasing availability of high-speed wireless access Emergence of online social networks: Facebook: since October 2012 one billion users (~ number of habitants in Europe and the US) Service providers (Google, Microsoft) create their own networks Bypass Internet, providing “instantaneous” access to search, email, etc. E-commerce, universities, enterprises running their services in “cloud” (e.g. email and Web hosting)=> end users access cloud-based applications through a web browser Introduction 1-94 Introduction: summary covered a “ton” of material! Internet overview what’s a protocol? network edge, core, access network packet-switching versus circuit-switching Internet structure performance: loss, delay, throughput layering security history you now have: context, overview, “feel” of networking more depth, detail to follow! Introduction 1-95