What’s the Internet: “nuts and bolts” view
millions of connected router computing devices: hosts workstation Lecture 5: Data Communications server = end systems mobile and Internet Technology running network apps local ISP communication links Dr. Hui Xiong fiber, copper, radio, Rutgers University satellite regional ISP transmission rate = bandwidth routers: forward packets (chunks of data) company network
Introduction 1-1 Introduction 1-2
What’s the Internet: “nuts and bolts” view What’s the Internet: a service view
router communication protocols control sending, workstation receiving of msgs infrastructure enables server distributed applications: e.g., TCP, IP, HTTP, FTP, PPP mobile local ISP Web, email, games, e- Internet: “network of commerce, file sharing networks” communication services llloosely hhhlierarchical provided to apps: public Internet versus regional ISP Connectionless unreliable private intranet connection-oriented Internet standards reliable RFC: Request for comments IETF: Internet Engineering Task Force company network
Introduction 1-3 Introduction 1-4
What’s a protocol? What’s a protocol?
human protocols: network protocols: a human protocol and a computer network protocol: “what’s the time?” machines rather than “I have a question” humans Hi introductions all communication TCP connection activity in Internet req Hi … specific msgs sent governed by protocols TCP connection Got the response … specific actions taken protocols define format, time? Get http://www.awl.com/kurose-ross when msgs received, order of msgs sent and 2:00 or other events received among network
1 A closer look at network structure: The network edge:
end systems (hosts): network edge: run application programs applications and e.g. Web, email hosts at “edge of network” network core: client/server model routers client host requests, receives service from always-on server network of e.g. Web browser/server; networks email client/server access networks, peer-peer model: physical media: minimal (or no) use of communication links dedicated servers e.g. Gnutella, KaZaA Introduction 1-7 Introduction 1-8
The Network Core Network Core: Circuit Switching
mesh of interconnected End-end resources routers reserved for “call” the fundamental link bandwidth, switch question: how is data capacity transferred through net? dedicated resources: circuit switching: no sharing dedicated circuit per circuit-like call: telephone net (guaranteed) packet-switching: data performance sent thru net in call setup required discrete “chunks”
Introduction 1-9 Introduction 1-10
Network Core: Circuit Switching Circuit Switching: FDM and TDM Example: network resources dividing link bandwidth FDM (e.g., bandwidth) into “pieces” 4 users divided into “pieces” frequency division pieces allocated to calls time division frequency resource piece idle if not used by owning call time (no sharing) TDM
frequency
time Introduction 1-11 Introduction 1-12
2 Network Core: Packet Switching Packet Switching: Statistical Multiplexing
each end-end data stream resource contention: 10 Mb/s A Ethernet statistical multiplexing C divided into packets aggregate resource user A, B packets share demand can exceed 1.5 Mb/s network resources amount available B each packet uses full link congestion: packets queue of packets waiting for output bandwidth queue, wait for link use link resources used as needed store and forward: packets move one hop D E at a time Bandwidth division into “pieces” Node receives complete Sequence of A & B packets does not have fixed Dedicated allocation packet before forwarding pattern Î statistical multiplexing. Resource reservation In TDM each host gets same slot in revolving TDM frame. Introduction 1-13 Introduction 1-14
Packet switching versus circuit switching Packet switching versus circuit switching
Packet switching allows more users to use network! Is packet switching a “slam dunk winner?”
1 Mb/s link Great for bursty data each user: resource sharing 100 kb/s when “active” simpler, no call setup active 10% of time EiExcessive congestion: packet dldelay an d loss N users protocols needed for reliable data transfer, circuit-switching: 1 Mbps link congestion control 10 users Q: How to provide circuit-like behavior? packet switching: bandwidth guarantees needed for audio/video with 35 users, probability > 10 active apps less than .0004 still an unsolved problem (chapter 6)
Introduction 1-15 Introduction 1-16
Network Taxonomy Packet-switching: store-and-forward
L Telecommunication networks R R R
Takes L/R seconds to Example: Circuit-switched Packet-switched transmit (push out) L = 7.5 Mbits networks networks packet of L bits on to R = 1.5 Mbps link or R bps delay = 15 sec Networks Datagram Entire packet must FDM TDM arrive at router before with VCs Networks it can be transmitted on next link: store and • Datagram network is not either connection-oriented forward or connectionless. • Internet provides both connection-oriented (TCP) and delay = 3L/R connectionless services (UDP) to apps.
Introduction 1-17 Introduction 1-18
3 Access networks and physical media Residential access: point to point access
Q: How to connect end systems to edge router? Dialup via modem residential access nets up to 56Kbps direct access to router (often less) institutional access networks (school, Can’t surf and phone at same company) time: can’t be “always on” mobile access networks ADSL: asymmetric digital subscriber line Keep in mind: up to 1 Mbps upstream (today typically < 256 kbps) bandwidth (bits per up to 8 Mbps downstream (today typically < 1 Mbps) second) of access FDM: 50 kHz - 1 MHz for downstream network? 4 kHz - 50 kHz for upstream shared or dedicated? 0 kHz - 4 kHz for ordinary telephone Introduction 1-19 Introduction 1-20
Residential access: cable modems Residential access: cable modems
HFC: hybrid fiber coax asymmetric: up to 30Mbps downstream, 2 Mbps upstream network of cable and fiber attaches homes to ISP router homes share access to router deployment: available via cable TV companies
Introduction 1-21 Diagram: http://www.cabledatacomnews.com/cmic/diagram.html Introduction 1-22
Cable Network Architecture: Overview Cable Network Architecture: Overview
Typically 500 to 5, 000 homes
cable headend cable headend
home home cable distribution cable distribution network (simplified) network (simplified)
Introduction 1-23 Introduction 1-24
4 Cable Network Architecture: Overview Cable Network Architecture: Overview
server(s) FDM:
C O V V V V V V N I I I I I I D D T D D D D D D A A R E E E E E E T T O O O O O O O A A L
12 34 56789 Channels
cable headend cable headend
home home cable distribution cable distribution network network
Introduction 1-25 Introduction 1-26
Company access: local area networks Wireless access networks
company/univ local area shared wireless access network (LAN) connects network connects end system end system to edge router to router router Ethernet: via base station aka “access point” shared or dedicated link base wireless LANs: connects end system station 802.11b (WiFi): 11 Mbps and router wider-area wireless access 10 Mbs, 100Mbps, provided by telco operator Gigabit Ethernet 3G ~ 384 kbps LANs: chapter 5 mobile • Will it happen?? hosts WAP/GPRS in Europe
Introduction 1-27 Introduction 1-28
Home networks Physical Media Typical home network components: Twisted Pair (TP) ADSL or cable modem Bit: propagates between two insulated copper transmitter/rcvr pairs router/firewall/NAT wires physical link: what lies Ethernet Category 3: traditional between transmitter & phone wires, 10 Mbps wireless access receiver Ethernet point guided media: Category 5: 100Mbps Ethernet wireless signals propagate in solid to/from laptops media: copper, fiber, coax cable router/ cable modem firewall unguided media: headend wireless signals propagate freely, access e.g., radio Ethernet point
Introduction 1-29 Introduction 1-30
5 Figure 5-7 NIC Interface Card Physical Media: coax, fiber
Coaxial cable: Fiber optic cable: glass fiber carrying light two concentric copper pulses, each pulse a bit conductors high-speed operation: bidirectional high-speed point-to-point baseband: transmission (e. g., 5 Gps) single channel on cable low error rate: repeaters legacy Ethernet spaced far apart ; immune broadband: to electromagnetic noise multiple channel on cable HFC
Introduction 1-31 Introduction 1-32
Figure 5-8 Unshielded Twisted Pair (UTP) Cable Figure 5-9 Optical Fiber Cable
Introduction 1-33 Introduction 1-34
Physical media: radio Internet structure: network of networks
signal carried in Radio link types: roughly hierarchical electromagnetic terrestrial microwave at center: “tier-1” ISPs (e.g., UUNet, BBN/Genuity, spectrum e.g. up to 45 Mbps channels Sprint, AT&T), national/international coverage no physical “wire” LAN (e.g., Wifi) treat each other as equals bidirectional 2Mbps, 11Mbps wide-area (e.g., cellular) Tier-1 provid er s propagation also interconnect environment effects: e.g. 3G: hundreds of kbps Tier-1 Tier 1 ISP at public network providers access points reflection satellite NAP interconnect (NAPs) obstruction by objects up to 50Mbps channel (or (peer) multiple smaller channels) privately interference Tier 1 ISP Tier 1 ISP 270 msec end-end delay geosynchronous versus low altitude
Introduction 1-35 Introduction 1-36
6 Tier-1 ISP: e.g., Sprint Internet structure: network of networks
Sprint US backbone network “Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs
Tier-2 ISPs also peer Tier-2 ISP pays Tier-2 ISP Tier-2 ISP tier-1 ISP for privately with connectivity to Tier 1 ISP each other, rest of Internet NAP interconnect at NAP tier-2 ISP is customer of tier-1 provider Tier 1 ISP Tier 1 ISP Tier-2 ISP
Tier-2 ISP Tier-2 ISP
Introduction 1-37 Introduction 1-38
Internet structure: network of networks Internet structure: network of networks
“Tier-3” ISPs and local ISPs a packet passes through many networks! last hop (“access”) network (closest to end systems)
local local local local ISP Tier 3 local local ISP Tier 3 local local ISP ISP ISP ISP ISP ISP ISP ISP LlLocal and tier- Tier-2 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP 3 ISPs are customers of Tier 1 ISP Tier 1 ISP higher tier NAP NAP ISPs connecting them to rest Tier 1 ISP Tier 1 ISP of Internet Tier 1 ISP Tier-2 ISP Tier 1 ISP Tier-2 ISP local local Tier-2 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP ISP ISP local local local local local local ISP ISP ISP ISP ISP ISP Introduction 1-39 Introduction 1-40
How do loss and delay occur? Four sources of packet delay packets queue in router buffers 1. nodal processing: 2. queueing packet arrival rate to link exceeds output link capacity check bit errors time waiting at output packets queue, wait for turn determine output link link for transmission depends on congestion level of router packtket bbieing transm ittditted (de lay )
transmission A A propagation
B B packets queueing (delay) nodal processing queueing free (available) buffers: arriving packets dropped (loss) if no free buffers Introduction 1-41 Introduction 1-42
7 An Example: Caravan analogy Delay in packet-switched networks
3. Transmission delay: 4. Propagation delay: 100 km 100 km R=link bandwidth (bps) d = length of physical link ten-car toll toll caravan L=packet length (bits) s = propagation speed in booth booth 8 time to send bits into medium (~2x10 m/sec) Cars “propagate” at Time to “push” entire link = L/R pppgropagation delay = d/s 100 km/hr caravan through toll Toll booth takes 12 sec to booth onto highway = Note: s and R are very service a car 12*10 = 120 sec different quantities! (transmission time) Time for last car to transmission A car~bit; caravan ~ packet propagate from 1st to propagation 2nd toll both: Q: How long until caravan 100km/(100km/hr)= 1 hr is lined up before 2nd toll B A: 62 minutes nodal booth? processing queueing Introduction 1-43 Introduction 1-44
Packet loss Protocol “Layers”
Networks are complex! queue (aka buffer) preceding link in buffer many “pieces”: has finite capacity hosts Question: when packet arrives to full queue, packet is routers Is there any hope of dropped (aka lost) links of various organizing structure of lost packet may be retransmitted by media network? previous node, by source end system, or applications not retransmitted at all protocols Or at least our discussion hardware, of networks? software
Introduction 1-45 Introduction 1-46
Organization of air travel Layering of airline functionality
ticket (purchase) ticket (complain) ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim) baggage (check) baggage (claim baggage gates (load) gates (unload) gate gates (load) gates (unload) runway (takeoff) runway (land) takeoff/landing airplane routing airplane routing airplane routing airplane routing airplane routing runway takeoff runway landing departure intermediate air-traffic arrival airport control centers airport airplane routing airplane routing airplane routing Layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below a series of steps
Introduction 1-47 Introduction 1-48
8 Why layering? Internet protocol stack
Dealing with complex systems: application: supporting network explicit structure allows identification, applications application relationship of complex system’s pieces FTP, SMTP, STTP layered reference model for discussion transport: host-host data transfer transport modularization eases maintenance, updating of TCP, UDP system network: routing of datagrams from network change of implementation of layer’s service source to destination transparent to rest of system IP, routing protocols link link: data transfer between e.g., change in gate procedure doesn’t affect physical rest of system neighboring network elements PPP, Ethernet layering considered harmful? physical: bits “on the wire”
Introduction 1-49 Introduction 1-50
source message M application Encapsulation IP Addressing: introduction segment Ht M transport datagram 223.1.1.1 Hn Ht M network IP address: 32-bit frame H H H M link l n t identifier for host, 223.1.2.1 physical 223.1.1.2 router interface 223.1.1.4 223.1.2.9 Hl Hn Ht M link Hl Hn Ht M physical interface: connection 223.1.2.2 between host/router 223.1.1.3 223.1.3.27 switch and physical link router’s typically have multiple interfaces 223.1.3.1 223.1.3.2 destination Hn Ht M network H H M n t host may have multiple H H H M link H H H M M application l n t l n t interfaces H M transport physical t IP addresses H H M network n t associated with each 223.1.1.1 = 11011111 00000001 00000001 00000001 H H H M link router l n t interface physical 223 111
Introduction 1-51 Introduction 1-52
IPv6 MAC Addresses and ARP Initial motivation: 32-bit address space soon to be completely allocated. 32-bit IP address: Additional motivation: network-layer address header format helps speed processing/forwarding used to get datagram to destination IP subnet header changes to facilitate QoS MAC (or LAN or physical or Ethernet) address: 48 bit MAC address (for most LANs) burned in the adapter ROM
Introduction 1-53 Introduction 1-54
9 LAN Address (more) Elements of a wireless network
MAC address allocation administered by IEEE wireless hosts laptop, PDA, IP phone manufacturer buys portion of MAC address space run applications (to assure uniqueness) may be stationary Analogy: (non-mobile) or mobile network wireless does not (a ) MAC a ddress: like Soc ia l Secur ity Num ber infrastructure always mean mobility (b) IP address: like postal address MAC flat address ➜ portability can move LAN card from one LAN to another IP hierarchical address NOT portable depends on IP subnet to which node is attached
Introduction 1-55 Introduction 1-56
Elements of a wireless network Elements of a wireless network
base station wireless link typically connected to typically used to wired network connect mobile(s) to relay - responsible base station for sending packets also used as backbone between wired link network network and wireless network multiple access infrastructure host(s) in its “area” infrastructure protocol coordinates e.g., cell towers link access 802.11 access various data rates, points transmission distance
Introduction 1-57 Introduction 1-58
Multimedia, Quality of Service: What is it? MM Networking Applications Multimedia applications: Classes of MM applications: Fundamental network audio and video characteristics: 1) Streaming stored audio (“continuous media”) and video Typically delay sensitive 2) Streaming live audio and end-to-end delay video delay jitter 3) Real-time interactive But loss tolerant: audio and video infrequent losses cause QoS minor glitches network provides Antithesis of data, application with level of Jitter is the variability which are loss intolerant performance needed for of packet delays within but delay tolerant. application to function. the same packet stream
Introduction 1-59 Introduction 1-60
10 Streaming Multimedia: Client Streaming Stored Multimedia Buffering
constant Streaming: variable fill drain rate, x(t) rate, d media stored at source transmitted to client streaming: client playout begins before all data has arrived buffered video timing constraint for still-to-be transmitted data: in time for playout Client-side buffering, playout delay compensate for network-added delay, delay jitter Introduction 1-61 Introduction 1-62
Streaming Multimedia: client What is network security? rate(s) 1.5 Mbps encoding Confidentiality: only sender, intended receiver should “understand” message contents 28.8 Kbps encoding sender encrypts message receiver decrypts message AthtitiAuthentication: sender, receiver want to confirm Q: how to handle different client receive identity of each other rate capabilities? Message Integrity: sender, receiver want to ensure 28.8 Kbps dialup message not altered (in transit, or afterwards) without detection 100Mbps Ethernet A: server stores, transmits multiple Access and Availability: services must be accessible and available to users copies of video, encoded at different rates Introduction 1-63 Introduction 1-64
Friends and enemies: Alice, Bob, Trudy There are bad guys (and girls) out there!
well-known in network security world Q: What can a “bad guy” do? Bob, Alice (lovers!) want to communicate “securely” A: a lot! Trudy (intruder) may intercept, delete, add messages eavesdrop: intercept messages actively insert messages into connection Ali ce Bob impersonation: can fake (spoof) source address in pac ktket (or any fildfield in pac kt)ket) channel data, control messages hijacking: “take over” ongoing connection by removing sender or receiver, inserting himself secure secure data data in place sender receiver denial of service: prevent service from being used by others (e.g., by overloading resources)
Trudy more on this later ……
Introduction 1-65 Introduction 1-66
11 Firewalls Firewalls: Why
firewall prevent denial of service attacks: isolates organization’s internal net from larger SYN flooding: attacker establishes many bogus Internet, allowing some packets to pass, TCP connections, no resources left for “real” blocking others. connections. prevent illegal modification/access of internal data. e.g., attacker replaces CIA’s homepage with something else allow only authorized access to inside network (set of authenticated users/hosts) administered public network Internet two types of firewalls: firewall application-level packet-filtering Introduction 1-67 Introduction 1-68
Virtual Private Network Virtual Private Network
Virtual private network (VPN) is the fourth WAN (Continued) alternative. VPN communications are secure. A VPN uses the Internet or a private internet to The VPN client software encrypts, or codes, the original create the appearance of private point-to-point messages so that its contents are hidden. connections. Virtual private networks offer the benefit of point- A VPN uses the public Internet to create the to-point leased lines, and they enable remote appearance of a private connection. access, both by employees and by any others who A connection called a tunnel, is a virtual pathway have been registered with the VPN server. over a public or shared network from the VPN client to the VPN server.
Introduction 1-69 Introduction 1-70
Figure 5-18 Remote Access Using VPN: Figure 5-19 Remote Access Using VPN: Actual Connections Apparent Connection
Introduction 1-71 Introduction 1-72
12 Figure 5-20 Wide Area Network Using Criteria for Comparing Network VPN Alternatives Many different computer networking alternatives are available, each with different characteristics. There are three types of costs that need to be considered. Setup costs include the costs of acquiring transmission lines and necessary equipment, such as switches, routers, and access devices. Operational costs include lease fees for lines and equipment, charges of the ISP, the cost of ongoing training, etc. Maintenance costs include those for periodic maintenance, problem diagnosis and repair, and mandatory upgrades.
Introduction 1-73 Introduction 1-74
Criteria for Comparing Network Figure 5-21 Criteria for Comparing Alternatives (Continued) Networking Alternatives
There are six considerations with regard to performance: Speed Latency Availability Loss rate Transparency Performance guarantees
Other criteria to consider when comparing network alternatives include the growth potential (greater capacity) and the length of contract commitment.
Introduction 1-75 Introduction 1-76
Domain Name System Domain Name Registration IP addresses are useful for computer-to-computer ICANN is a nonprofit organization that is responsible communication, but they are not well suited for human use. for administering the registration of domain names. The purpose of the domain name system (DNS) is to convert user-friendly names into their IP addresses. ICANN does not register domain names itself; instead it licenses other organizations to register Any registered, valid name is called a domain name. names.
The process of changing a name into its IP address is ICANN is also responsible for managing the domain called resolving the domain name. name resolution system. Every domain name must be unique, worldwide. The last letter in any domain name is referred to as To ensure duplicate domain names do not occur, an agency the top-level-domain (TLD). registers names and records the corresponding IP In the domain www.icann.org the top level domain is .org addresses in a global directory.
Introduction 1-77 Introduction 1-78
13 Domain Name Resolution Domain Name Resolution (Continued) (Continued) Domain name resolution is the process of converting a domain name into a public IP address. A uniform resource locator (URL) is a document’s address on the Web. The process starts from the TLD and works to the URLs begin with a domain and then are followed by left across the URL. optional data that locates a document with that domain. As of 2005, ICANN manages 13 special computers Thus, in the URL www.prenhall.com/kroenke , the domain called root servers that are distributed around the name is www.prenhall.com , and /kroenke is a directory world. within that domain. Each root server maintains a list of IP addresses of servers that each resolve each type of TLD.
Introduction 1-79 Introduction 1-80
Domain Name Resolution (Continued) Figure 5-25 Top-Level Domains, 2005 Domain name resolution proceeds quickly because there are thousands of computers called domain name resolvers that store the correspondence of domain names and IP addresses These resolvers reside at ISPs, academic institutions, large companies, government organizations, etc. For example, if a domain name solversolver is on your campus and whenever anyone on your campus needs to resolve a domain name, that resolver will store, or cache, the domain name and IP address on a local file. • When someone else on the campus needs to resolve the same domain name, the resolver can supply the IP address from the local file.
Introduction 1-81 Introduction 1-82
Internet History Internet History 1961-1972: Early packet-switching principles 1972-1980: Internetworking, new and proprietary nets
1961: Kleinrock - queueing 1972: 1970: ALOHAnet satellite Cerf and Kahn’s network in Hawaii theory shows ARPAnet demonstrated internetworking principles: effectiveness of packet- publicly 1973: Metcalfe’s PhD thesis minimalism, autonomy - switching proposes Ethernet NCP (Network Control no internal changes 1964: Baran - packet- Protocol) first host- 1974: Cerf and Kahn - required to switching in military nets host protocol architecture for interconnect networks interconnecting networks 1967: ARPAnet conceived first e-mail program best effort service by Advanced Research late70’s: proprietary model ARPAnet has 15 nodes Projects Agency architectures: DECnet, SNA, stateless routers XNA 1969: first ARPAnet node decentralized control operational late 70’s: switching fixed define today’s Internet length packets (ATM architecture precursor) 1979: ARPAnet has 200 nodes Introduction 1-83 Introduction 1-84
14 Internet History Introduction: Summary 1990, 2000’s: commercialization, the Web, new apps Covered a “ton” of material! You now have: Early 1990’s: ARPAnet Late 1990’s – 2000’s: decommissioned Internet overview context, overview, more killer apps: instant what’s a protocol? “feel” of networking 1991: NSF lifts restrictions on messaging, P2P file sharing commercial use of NSFnet more depth, detail to network security to network edge, core, access (decommissioned, 1995) follow! forefront network early 1990s: Web est. 50 million host, 100 packet-switching versus hypertext [Bush 1945, Nelson million+ users circuit-switching 1960’s] backbone links running at Internet/ISP structure HTML, HTTP: Berners-Lee Gbps performance: loss, delay 1994: Mosaic, later Netscape layering and service late 1990’s: commercialization of the Web models history
Introduction 1-85 Introduction 1-86
Problem Solving Guide–Thinking Problem-Solving Guide–Thinking Exponentially Is Not Possible, but… Exponentially Is Not Possible, but… (Continued) Nathan Myhrvold, the chief scientist at Microsoft Every business, every organization, needs to be Corporation during the 1990s, once said that humans are thinking about ubiquitous and cheap connectivity incapable of thinking exponentially. that is growing exponentially. Instead, when something changes exponentially, we think of the What are the new opportunities? fastest linear change we can imagine and extrapolate from there. What are the new threats? His point was that no one could then imagine how much growth How will our competition react? there would be in magnetic storage and what we would do with How should we position ourselves? it. How should we respond? We have all witnessed exponential growth in a number of areas: Understand that technology does not drive people Internet connection, Web pages, and the amount of data to do things they’re never done before, no matter accessible on the Internet. how much the technologists suggest it might.
Introduction 1-87 Introduction 1-88
Reflection Guide–Human Networks Reflection Guide–Human Networks Matter More Matter More (Continued) The Hungarian writer, Frigyes Karinthy, came up The problem with the six-degree theory, is that even with the idea that everyone on earth is connected to though those six people do exist, we don’t know who everyone else by five or six people. they are. Today, in fact with the Internet, the number may be closer Even worse, we often don’t know who the person is with whom to three people than five or six. we want to connect. Suppose you wan t to meet your universit y ’s Most successfflul professiona ls consistent ly build president. personal human networks. The president has a secretary who acts as a gatekeeper. They keep building them because they know that somewhere If you walk up to that secretary and say, “I’d like a half there is someone whom they need to know or will need to hour with President Jones,” you’re likely to be palmed off to know. some other university administrator. They meet people at professional and social situations, What else can you do? collect and pass out cards, and engage in pleasant conversation (all part of a social protocol) to expand their networks.
Introduction 1-89 Introduction 1-90
15