Course Overview • Administrivia
18-345: Introduction to Telecommunication Networks Lectures 1: Course Overview
• Objective • People, course communications • Grading, course policies
• Why are networks important? • A whirlwind tour of the course
Peter Steenkiste Spring 2015 www.cs.cmu.edu/~prs/nets-ece
• Become familiar with the principles and practice of data networking
• Peter Steenkiste • [email protected]
, Gates Hall 9107
• Routing, transport protocols, naming, ...
• Teaching assistant.
• Learn how to write applications that use the network
• Antonio Rodriguez
• Use web and peer-to-peer style applications
• Course secretary
• Get some understanding about network internals in a hands-on way
• Kathy McNiff, Gates 9213
• Implementing different types of protocol, error recovery, conformance with standards, etc.
Course Materials •
• ~28 lectures
Textbook: Computer Networks – A Systems Approach, L. Peterson and B. Davie, Morgan Kaufmann References
• Cover the “principles and practice”
• 6 homework assignments • Practice for tests – not graded
• 4 programming projects
• Computer Networking – A Top-Down Approach, by J. Kurose and K. Ross, Addison Wesley • Computer Networks, Wetherall and Tanenbaum • Communication Networks, by A. Leon-Garcia and I. Widjaja, , Second edition, McGraw-Hill. • Data and Computer Communications, W. Stalling, MacMillan Publishing Company, New York.
• How to use and build networks / networked applications • Larger, open-ended group projects. Start early!
• 6 in class quizzes • Short in-class tests on the last block of lectures
• Midterm and final • Two 2-hour in class tests
Projects and Recitation Sections
Getting Questions Answered • Administrative: start with web site
• Key objective: system programming • Different from what you’ve done before!
• If the answer is not there, please send us email
• Can use C or Java • Often designed to run indefinitely – must handle all errors! • Interfaces specified by documented protocols • Concurrency involved (inter and intra-machine) • Must have good test methods
• Course material: class, office hours • Typically requires a discussion – piazza or email often does not work well
• Projects: piazza, office hours
• Recitations to provide project background, discuss programming tools and skills
• Piazza: others might have the same question • Office hours for more complicated issues 7
• Watch the course web page
• Roughly equal weight in projects and testing
• http://www.cs.cmu.edu/~prs/nets-ece/ • All handouts, readings, project information, .. • If something is missing on the web site, please let us know asap
• 35% for projects • 15% for quizzes • 50% for two exams
• This course does not use blackboard • Read bboard - piazza
• You MUST demonstrate competence in both projects and tests to pass the course
• E-mail on things like grades should go to instructor (do not use piazza for this!)
• Fail either and you fail the class!
• Office hours will be posted on web page • Changes will be posted in the “News” section of the web page
Policy on Late Work, Regrading, Exam & Quiz coverage
Policy on Collaboration • Working together is important • Discuss course material in general terms • Work together on program debugging, .. • Final submission must be your own work • Projects are done in teams of two • Collaboration, group project skills • Both students must understand the project • What we don’t want to have to say: we run all projects through cheat-checkers comparing with other old and new submissions … • All cases of cheating will be reported
• Assignments must be handed in on time • Only exception is documented illness and family emergencies
• Regrading requests must be submitted in writing with secretary within 1 week • Entire exam or quiz will be regraded.
• Exam and Quiz coverage: • All materials right before the exam/quiz • Details will be on the web page 12
• The slides are a resource that is shared by many instructors
• Administrivia • Why are networks important?
• Also some sharing with 15-441
• What is a network? • What is the Internet • Internet design
• They include contributions from Peter Steenkiste, Hyong Kim, Srini Seshan, Dave Andersen, Hui Zhang, and others
• A whirlwind tour of the course
What is a Network?
Basic Building Block: Links
• An infrastructure that allows (distributed) “users” to communicate with each other
• Simplest example: 2 nodes • Sender changes voltage, frequency, … • Or maybe it is optical or wireless?
• People, devices, … • By means of voice, video, text, … • Focus on electrical/optical/RF/.. (not trucks)
• But receiver must “understand” sender – protocols • More on this later
• It is assumed that the infrastructure is shared by many users
• Okay… what about more nodes?
• Point to point link is not very interesting • Value increases with the number of users!
• How about a million?
Scaling the Network
Communication Network Architecture • Network architecture: the plan that specifies how the network is built and operated • Architecture is driven by the network services • Overall communication process is complex • Network architecture partitions overall communication process into separate functional areas called layers - more on this later Next we will trace evolution of three network architectures: telegraph, telephone, and computer networks
Or one wire (N2)
Wires for everybody!
But First a bit of History
Or how about …
Network Architecture Trends
Network Architecture Evolution
Information transfer per second
• Telegraph Networks • Message switching & digital transmission
• Telephone Networks
• Circuit Switching • Analog transmission → digital transmission → mobile
1.0E+08 1.0E+06 1.0E+04 1.0E+02
Internet, Optical & Wireless networks
• Packet switching & computer applications • Increasingly faster, more diverse edge & apps
Next Generation Internet
• Next generation Internet ???
Telegraphs & Long-Distance Message Communications
Message Switching Architecture • Network nodes were created where several optical telegraph lines met (Paris and other sites) • Store-and-Forward Operation:
• Courier: physical transport of the message • Messenger pigeons, pony express, FedEx
• Telegraph: message is transmitted across a network using signals – much faster!
• Messages arriving on each line were decoded • Next-hop in route determined by destination address of a message • Each message was carried by hand to next line, and stored until operator became available for next transmission
• Drums, beacons, mirrors, smoke, flags, • Light, electricity
East line South line
Electric Telegraph Networks
• Alexander Graham Bell (1875) working on harmonic telegraph to multiplex telegraph signals • Discovered voice signals can be transmitted directly
• Electric telegraph networks exploded • Message switching & Store-and-Forward operation • Key elements: Addressing, Routing, Forwarding
• Microphone converts voice pressure variation (sound) into analogous electrical signal • Loudspeaker converts electrical signal back into sound
• Optical telegraph networks disappeared Message
Network North Node line West line
• Telephone patent granted in 1876 • Bell Telephone Company founded in 1877
Signal for “ae” as in cat
Three Phases of a Connection
Circuit Switching • Source first establishes a connection (circuit) to the destination • Each switch along the way stores info about connection (and possibly allocates resources)
• Source sends the data over the circuit
Connection set up
• No need to include the destination address with the data since the switches know the path
• The connection is explicitly torn down
• Example: telephone network (analog) Information transfer
Pick up phone
Network selects route; Sets up connection; Called party alerted
Exchange voice signals
Connection release 6. 25
Links and Switches in Early Telephone Networks
Circuit Switching Discussion • Circuits have some very attractive properties. • Fast and simple data transfer, once the circuit has been established • Predictable performance since the circuit provides isolation from other users • E.g. guaranteed bandwidth
• But it also has some shortcomings. • How about bursty traffic? • Do you need a permanent circuit to Facebook? • Circuit will be idle for significant periods of time
• How about users with different bandwidth needs?
Contrast this with Message (Packet) Switching (our emphasis)
And Some More Examples …
• Source sends information as self-contained messages that have an address.
• Television network • Over the air • Cable TV • Satellite
• Source may have to break up single message in multiple packets
• Each packet travels independently to the destination host. • Switches use the address in the packet to determine how to forward the packets • Store and forward
• Radio broadcast • Various private networks
• Analogy: a letter in surface mail.
• E.g., for first responders, military, ..
What about the Internet • An inter-net: a network of networks.
• Networks are connected using routers and other devices, e.g., for security, accounting, … • Networks can use diverse technologies • Typically managed by different organization
• Why are networks important? • What is a network? • What is the Internet • Internet design
• The Internet: the interconnected set of networks of the Internet Service Providers (ISPs) • About ~23,000 “transit” ISPs make up the Internet • Many more “edge” networks
• A whirlwind tour of the course 32
What is the Objective of the Internet?
Packet Switching – Statistical Multiplexing
• Enable communication between diverse applications on diverse devices (“computers”)
• Web, peer-to-peer, video streaming, distributed processing, video and audio conferencing, …
• Over very diverse infrastructures • The “Internet”, WiFi and cellular, data center networks, corporate networks, dedicated private networks, …
• In contrast: previous networks were special purpose and fairly homogeneous in terms of technology
• Switches arbitrate between inputs • Can send from any input that’s ready
• Must understand application needs/demands (Thursday) • Traffic data rate and loss sensitivity • Traffic pattern (bursty or constant bit rate) • Traffic target (multipoint or single destination, mobile or fixed)
• Links are never idle when there is traffic to send • (Efficiency!) 34
Internet Design • In order to inter-operate, all participating networks must follow a common set of rules • Example: requirements for packets:
• Need to share network resources
• Address format, header information, packet size limit, ..
• But also: routing, error reporting, billing, … • Also: what is the “service model”, i.e., the commitment made to applications
• How? Switched network
• Party “A” gets resources sometimes • Party “B” gets them sometimes
• Interior nodes act as “Switches”
• Internet: best-effort – packets can get lost, etc. • But some applications need reliable data delivery, a minimal bandwidth guarantee, low latency, …
• Many challenges: fairness, efficiency, … 36
Networks Juggle Many Goals
Must also Deal with “Real World”
• Support rich set of applications • Efficiency – resource use; cost • The “ilities”:
• Economics and public policy play a big role in the design of the Internet
• • • •
• ISPs are competing for customers but they must also work together • They must make money – no ISPs, no Internet
Evolvability Managability Security (securability, if you must) Ease of:
• Public policy looks after user interests and tries to promote competition and innovation • Users will only use the network if they get value out of it
• Deployment, management • Creating useful applications
• Concerns such as privacy can stifle use
• Scalability 38
Success Factors for New Services
Transmission Technology • Relentless improvement in transmission • High-speed transmission in copper pairs
• Technology not only factor in success of a new service • Three factors considered in new telecom services
• DSL Internet Access
• Higher call capacity in cellular networks Technology
Can there be demand for the service?
Market New Service
• Lower cost cellular phone service Can it be implemented costeffectively?
• Enormous capacity and reach in optical fiber • Plummeting cost for long distance telephone
• Allows innovation in applications, services • E-mail chat audio video • Peer to peer, cloud computing
Is the service allowed?
• Relentless improvement in processing & storage • Moore’s Law: doubling of transistors per integrated circuit every two years • RAM: larger tables, larger systems • Digital signal processing: transmission, multiplexing, framing, error control, encryption • Network processors: hardware for routing, switching, forwarding, and traffic management • Microprocessors: higher layer protocols and applications • Higher speeds and higher throughputs in network protocols and applications
P4 Pentium III
1.0E+07 486 DX
Pentium II Pentium Pro Pentium Intel DX2
The S Curve
• The network effect: usefulness of a service increases with size of community
Service Penetration & Network Effect • Telephone: T=30 years
• Metcalfe's Law: usefulness is proportional to the square of the number of users • Phone, fax, email, ICQ, …
• city-wide & inter-city links
• Automobile: T=30 years
• Economies of scale: per-user cost drops with increased volume
• Cell phones, PDAs, PCs • Efficiencies from multiplexing
• S-curve: growth of new service has S-shaped curve, challenge is to reach the critical mass
• • • •
Fax Cellular & cordless phones Internet & WWW Napster and P2P
Regulation & Competition
• New technologies very costly and risky • Standards allow players to share risk and benefits of a new market
• Telegraph & Telephone originally monopolies • Extremely high cost of infrastructure • Profitable, predictable, slow to innovate
• Competition feasible with technology advances
• • • •
• Long distance cost plummeted with optical tech • Alternative local access through cable, wireless • Radio spectrum: auctioned vs. unlicensed
Reduced cost of entry Interoperability and network effect Compete on innovation Completing the value chain • Chips, systems, equipment vendors, service providers
• Internet supports multiple applications • Innovation leads to new appls and usage models • Regulation needed to ensure competition and universal access
• Example: • 802.11 LAN, IP, HTTP/SMTP/…
Standards Bodies • Internet Engineering Task Force
• Internet standards development • Request for Comments (RFCs): www.ietf.org
• Why are networks important?
• International Telecommunications Union • International telecom standards
• What is a network? • What is the Internet • Internet design
• IEEE 802 Committee • Local area and metropolitan area network standards
• Industry Organizations • MPLS Forum, WiFi Alliance, World Wide Web Consortium
• A whirlwind tour of the course 49
Whirlwind Tour of the Course
• Infrastructure: hardware (or close to it) • Core networking protocols: IP, dealing with errors and congestion, routing, … • Optimizing performance: QoS techniques, caching, CDNs, peer-peer, … • Making it work well: security, management, … • IP everywhere: the Internet, last mile, wireless, mobility, data center, video, IP-TV, skype, … • Focus is on today’s Internet but also trends
• Why do we have different types of “wires”? • And why do I care?
• Ethernet is very old, so why is it so fast? • Can’t they find something better?
• What are the limits of some of the technologies? • Both physical and protocol limits
• What will the Internet look like in 10, 20, 30 years? 50
Core Networking Protocols
Think: traffic on the roads • How do I found a path to my destination • How do I specify addresses • What if my car breaks down? • How do I deal with traffic jams • …
• Intuitively: lots of bandwidth! • But there is more to it: • Latency is often more critical! • How voice and video – can I offer guarantees? • Can I beat the speed of light? • Hint: this can make you rich
• Why did we use peer to peer networks? • And why did they (mostly) go away?
Making the Network Work Well
IP Everywhere • Using IP technology has become attractive
• Good technology is only a small part of the puzzle – deployment and management issues are equally (or more) critical
• Cheap commodity hardware, lots of tools, people trained in the technology, end-to-end support, …
• The (public) Internet: our focus
• Involves many people, high cost
• How do you optimize “the web”: CDNs, caching, …
• Data centers: very special requirements
• How do I secure my network?
• Map-reduce, 3-tier business apps, load balancing, …
• Lots of bad guys: DOS, compromised hosts, privacy leaks, botnets, …
• IP TV, voice/video conferencing: • Very high QoE expectations
• How I manage resources, reduce operator errors, deal with failures, …
• Wireless and mobile apps • For many users, primary way of accessing Internet
• And how does it differ in LAN, WAN, wireless, …
• Residential networking 54