CS 381 Introduction to computer networks Lecture 2 1/29/2015.

Slides:



Advertisements
Similar presentations
Introduction 2 1: Introduction.
Advertisements

TA: Xifan Zheng Welcome to CPSC 441!
COS 461 Fall 1997 Networks and Protocols u networks and protocols –definitions –motivation –history u protocol hierarchy –reasons for layering –quick tour.
CS 381 Introduction to computer networks Lecture 2 1/29/2015.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Application Layer – Lecture.
Aleksandar, Accounts have been created for any students in EECS 340 who did not already have one. Physical access to the labs has also been granted. If.
Introduction1-1 How does the Internet Work Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Networking Based on the powerpoint presentation of Computer Networking: A Top Down Approach Featuring the Internet, Third Edition, J.F. Kurose and K.W.
EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Lecture 1 Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
Lecture Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
1: Introduction1 Protocol “Layers” Networks are complex! r many “pieces”: m hosts m routers m links of various media m applications m protocols m hardware,
EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Internet History and Architectural Principles
EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Introduction to the Application Layer Computer Networks Computer Networks Spring 2012 Spring 2012.
Chapter 15 Networks.
Introduction 1-1 Chapter 1 Introduction slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks.
1 Networking A computer network is a collection of computing devices that are connected in various ways in order to communicate and share resources. The.
Introduction 1 Lecture 5 Application Layer slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science & Engineering Department.
15-1 Networking Computer network A collection of computing devices that are connected in various ways in order to communicate and share resources Usually,
1: Introduction1 Part I: Introduction Goal: r get context, overview, “feel” of networking r more depth, detail later in course r approach: m descriptive.
Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April A note on the use.
Overview, Circuit & Packet Switching, Addressing
Chapter 2, slide: 1 CS 372 – introduction to computer networks* Monday June 28 Announcements: r Lab 1 is due today r Lab 2 is posted today and is due next.
2: Application Layer1 Chapter 2 Application Layer These slides derived from Computer Networking: A Top Down Approach, 6 th edition. Jim Kurose, Keith Ross.
Computer Networking Introduction, Part II.
Communications Recap Duncan Smeed. Introduction 1-2 Chapter 1: Introduction Our goal: get “feel” and terminology more depth, detail later in course.
CS 3830 Day 2 Introduction 1-1. Announcements  Program 1 posted on the course web  Project folder must be in 1DropBox on S drive by: 9/14 at 3pm  Must.
Throughput: Internet scenario
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
1 Week 2 Lecture 1 Layers (basics) Dr. Fei Hu. Review last lecture 2.
CS 381 Introduction to computer networks Chapter 1 - Lecture 4 2/10/2015.
Instructor: Christopher Cole Some slides taken from Kurose & Ross book IT 347: Chapter 1.
1: Introduction1 Internet History r 1961: Kleinrock - queueing theory shows effectiveness of packet- switching r 1964: Baran - packet- switching in military.
Course info1 1 st Semester 2007 MI305 Computer Networks  Instructor: Jen-Liang Cheng   Office: H501-1( 福田樓 )  Lectures:
1 Protocol “Layers” Networks are complex! r many “pieces”: m hosts m routers m links of various media m applications m protocols m hardware, software Question:
CS 3214 Computer Systems Godmar Back Lecture 23. Announcements Project 5 due Dec 8 Exercise 10 handed out Exercise 11 coming before Thanksgiving CS 3214.
What makes a network good? Ch 2.1: Principles of Network Apps 2: Application Layer1.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
Introduction 1-1 Chapter 1 Introduction Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 CS3516:
15-1 Networking Computer network A collection of computing devices that are connected in various ways in order to communicate and share resources.
Sockets process sends/receives messages to/from its socket
CPSC 411 Tutorial TA: Fang Wang. Fang Wang 9:00am-5:00pm, Mon-Fri.
Lecture 5: Internetworking: A closer View By Dr. Najla Al-Nabhan Introduction 1-1.
Ch 1. Computer Networks and the Internet Myungchul Kim
TCP/IP Network.
CS 3830 Day 6 Introduction 1-1. Announcements  Program 2 posted this afternoon (due date will be week of 9/24) Introduction 1-2.
Lecture 1: Overview of Internet Architecture Communication Networks ELEN E6761 Instructor: Javad Ghaderi Lecture Slides adapted from “Computer Networking:
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Internet History CS 4244: Internet Programming Dr. Eli Tilevich.
1: Introduction1 Introduction 3. 1: Introduction2 Delay in packet-switched networks packets experience delay on end-to-end path r four sources of delay.
1: Introduction1 Protocol “Layers” Networks are complex! r many “pieces”: m hosts m routers m links of various media m applications m protocols m hardware,
CS 381 Introduction to computer networks
“Real” Internet delays and routes  What do “real” Internet delay & loss look like?  Traceroute program: provides delay measurement from source to router.
Lecture 1: Facts of network technologies developments
Introduction1-1 Data Communications and Computer Networks Chapter 1 CS 3830 Lecture 2 Omar Meqdadi Department of Computer Science and Software Engineering.
Introduction 1-1 1DT057 Distributed Information Systems Chapter 1 Introduction.
@Yuan Xue CS 283Computer Networks Spring 2011 Instructor: Yuan Xue.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Chapter 7 Application Layer 1 Some of the slides in this chapter are courtesy of Profs. Kurose/Ross and others.
CSI 450 Review. Introduction What’s the Internet: “nuts and bolts” view millions of connected computing devices: hosts = end systems running network apps.
An Aleksandar,   Accounts have been created for any students in EECS 340 who did not already have one.  Physical access to the labs has.
Protocol “Layers” Question: Networks are complex! many “pieces”: hosts
Chapter 2 Introduction Application Requirements VS. Transport Services
Protocol “Layers” Question: Networks are complex! many “pieces”: hosts
Protocol “Layers” Question: Networks are complex! many “pieces”: hosts
Protocol “Layers” Question: Networks are complex! many “pieces”: hosts
Presentation transcript:

CS 381 Introduction to computer networks Lecture 2 1/29/2015

Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  circuit switching, packet switching, network structure 1.4 Delay, loss and throughput in packet-switched networks 1.5 Protocol layers, service models 1.6 Networks under attack: security 1.7 History Introduction 1-3

A closer look at network structure: network edge: applications and hosts Introduction 1-4 access networks Connects end system to 1 st router physical media: wired, wireless communication links network core: interconnected routers network of networks

Introduction 1-5 The network edge: End systems (hosts): All Internet applications are implemented at the end systems. HTTP, FTP, SSH, SCP, DNS, SMTP Reasons for this?

Introduction 1-6 Access networks and physical media Question: How to connect end systems to edge router? Most common ways: residential access networks Cable modems, DSL, Dial-Up modem NAT router with Wi-Fi, Ethernet institutional access networks (school, company) mobile access networks

Introduction 1-7 Access networks and physical media Two important characteristics of access networks bandwidth (bits per second) of access network Residential (Outgoing): 2Mbps – 50Mbps (and higher) Residential (Local): 11Mbps – 1.2Gpbs Institutional (Outgoing): 100s Mbps – multiple Gbps Institutional (Local): 54Mbps – 10Gpbs Mobile: Kbps - ~40Mbps shared or dedicated

telephone network Internet home dial-up modem ISP modem (e.g., AOL) home PC central office Problems: Extremely slow with max speed of 56 kbps ~42.5 hours to download 1GB worth of data ~4KHz bandwidth compared to 500MHz using CAT6a cable Have to choose: Computer or telephone. Circuit switched, non-shared access to ISP Dial-up Modem

telephone network DSL modem home PC home phone Internet DSLAM Existing phone line: 0-4KHz phone; 4-50KHz upstream data; 50KHz-1MHz downstream data splitter central office Digital Subscriber Line (DSL) Telephone line carries both digital and telephone signals Encoded at different frequencies. Phone line at 0 - 4KHz Upstream data at KHz(128 kbps - 1 mbps) Downstream data at 50KHz - 1MHz (1 - 2 megabits per second)  New technologies emerging for DSL: up to 1Gbps (~2016)

100 Mbps 1 Gbps server Ethernet switch Institutional router To Institution’s ISP Ethernet Internet access Typically used in companies, universities, etc 10 Mbps, 100Mbps, 1Gbps, 10Gbps Ethernet Multiple switches per building Serves rooms with Ethernet ports and Wi-Fi access points Fiber connection between switches

100 Mbps 1 Gbps server Ethernet switch Institutional router To Institution’s ISP Ethernet Internet access Few routers on campus Why? Campus network can be thought of as a large LAN (Local Area Network) Similar to your network at home, but with thousands of end systems Greater complexity, but basic topology is exactly the same Large number of switches allow local communication (layer 2 routing) Only communication off campus requires the use of routers (layer 3 routing)

Introduction 1-12 The Network Core Mesh of interconnected routers The fundamental question: how is data transferred through net? Compare telephone network and Internet Telephone network employs “circuit switching” resources necessary to make call are reserved for duration of communication

Introduction 1-13 Network Core: Packet Switching Internet is a packet switching network. Reservations not accepted No reserving of communication links, no guarantee of given bandwidth In fact, No guarantees at all! How can we demonstrate this? Ping command

Introduction 1-14 “Real” Internet delays and routes What do “real” Internet delay & loss look like? Traceroute program: Sends UDP packet to each router on the path from source to destination. Each router on the path sends back a “special” message to source Source tracks the time from when it sent the UDP packet and when it receives the message from the router. Actually sends three UDP packets to each router to provide three different timings.

Introduction Protocol “layers” Networks are complex, with many “pieces”: Hosts Clients/Servers Switches Layer 2 routing: MAC Routers Layer 3 routing: IP Links Copper, fiber, air Applications HTTP, FTP, SCP Protocols IP, TCP, UDP Hardware Software 1-15

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

Introduction source application transport network link physical HtHt HnHn M segment HtHt datagram destination application transport network link physical HtHt HnHn HlHl M HtHt HnHn M HtHt M M network link physical link physical HtHt HnHn HlHl M HtHt HnHn M HtHt HnHn M HtHt HnHn HlHl M router switch Encapsulation message M HtHt M HnHn frame 1-17

Introduction Internet history 1961: Kleinrock - queueing theory shows effectiveness of packet- switching 1964: Baran - packet- switching in military nets 1967: ARPAnet conceived by Advanced Research Projects Agency 1969: first ARPAnet node operational 1972: ARPAnet public demo NCP (Network Control Protocol) first host-host protocol first program ARPAnet has 15 nodes : Early packet-switching principles 1-18

Introduction 1970: ALOHAnet radio network in Hawaii 1974: Cerf and Kahn - architecture for interconnecting networks 1976: Ethernet at Xerox late70’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: minimalism, autonomy - no internal changes required to interconnect networks best effort service model stateless routers decentralized control define today’s Internet architecture : Internetworking, new and proprietary nets Internet history 1-19

Introduction 1982: SMTP protocol defined 1983: deployment of TCP/IP 1983: DNS defined for name-to-IP-address translation 1985: ftp protocol defined 1988: TCP congestion control 100,000 hosts connected to confederation of networks : new protocols, a proliferation of networks Internet history 1-20

Introduction early 1990’s: ARPAnet decommissioned early 1990s: Web hypertext [Bush 1945, Nelson 1960’s] HTML, HTTP: Berners-Lee 1994: Mosaic, later Netscape late 1990’s: commercialization of the Web late 1990’s – 2000’s: more killer apps: instant messaging, P2P file sharing network security to forefront est. 50 million host, 100 million+ users backbone links running at Gbps 1990, 2000’s: commercialization, the Web, new apps Internet history 1-21

Introduction 2005-present ~950 million hosts Smartphones and tablets Aggressive deployment of broadband access Increasing ubiquity of high-speed wireless access Emergence of online social networks: Facebook: ~1.2 billion users Service providers (Google, Microsoft) create their own networks Bypass Internet, providing “instantaneous” access to search, emai, etc. E-commerce, universities, enterprises running their services in “cloud” (eg, Amazon EC2) Internet history 1-22

Application Layer2-23 Application layer Goals: conceptual, implementation aspects of network application protocols transport-layer service models client-server paradigm peer-to-peer paradigm

Application Layer2-24 Application layer learn about protocols by examining popular application- level protocols HTTP Request/response protocol for exchanging information FTP Transfer files SMTP / POP3 / IMAP DNS Domain name to IP conversions creating network applications socket API

Application Layer2-25 Some network apps web text messaging remote login P2P file sharing multi-user network games streaming stored video (YouTube, Hulu, Netflix) voice over IP (e.g., Skype) real-time video conferencing social networking search …

Application Layer2-26 Creating a network app write programs that: run on (different) end systems communicate over network e.g., web server software communicates with browser software no need to write software for network-core devices network-core devices do not run user applications applications on end systems allows for rapid app development, propagation application transport network data link physical application transport network data link physical application transport network data link physical

Application Layer2-27 Sockets process sends/receives messages to/from its socket socket analogous to door sending process shoves message out door sending process relies on transport infrastructure on other side of door to deliver message to socket at receiving process Internet controlled by OS controlled by app developer transport application physical link network process transport application physical link network process socket

Application Layer2-28 DNS: services, structure why not centralize DNS? single point of failure traffic volume distant centralized database maintenance DNS services hostname to IP address translation host aliasing canonical, alias names mail server aliasing load distribution replicated Web servers: many IP addresses correspond to one name A: doesn’t scale!

2: Application Layer 29 Socket programming Socket API introduced in BSD4.1 UNIX, 1981 explicitly created, used, released by apps client/server paradigm two types of transport service via socket API: unreliable datagram reliable, byte stream-oriented a host-local, application-created, OS-controlled interface (a “door”) into which application process can both send and receive messages to/from another application process socket Goal: learn how to build client/server application that communicate using sockets

2: Application Layer 30 Socket-programming using TCP Socket: a door between application process and end-end- transport protocol (UCP or TCP) TCP service: reliable transfer of bytes from one process to another process TCP with buffers, variables socket controlled by application developer controlled by operating system host or server process TCP with buffers, variables socket controlled by application developer controlled by operating system host or server internet

Transport Layer 3-31 Internet transport-layer protocols TCP: reliable, in-order delivery congestion control flow control connection setup UDP: unreliable, unordered delivery no-frills extension of “best-effort” IP Connectionless, unreliable UDP only offers process-to-process communication and error checking Services not available: delay guarantees bandwidth guarantees application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport

2: Application Layer 32 Socket programming with TCP Client must contact server server process must first be running server must have created socket (door) that welcomes client’s contact Client contacts server by: creating client-local TCP socket specifying IP address, port number of server process When client creates socket: client TCP establishes connection to server TCP When contacted by client, server TCP creates new socket for server process to communicate with client allows server to talk with multiple clients source port numbers used to distinguish clients (more in Chap 3) TCP provides reliable, in-order transfer of bytes (“pipe”) between client and server application viewpoint