53
Introduction to Computer Networking Antonio Carzaniga Faculty of Informatics University of Lugano September 17, 2014 © 2005–2009 Antonio Carzaniga

Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Introduction to Computer Networking

Antonio Carzaniga

Faculty of InformaticsUniversity of Lugano

September 17, 2014

© 2005–2009 Antonio Carzaniga

Page 2: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Outline

General course information

Program

Preliminary schedule

Intro to computer networking: the entire course in one hour

© 2005–2009 Antonio Carzaniga

Page 3: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

General Information

http://www.inf.usi.ch/carzaniga/edu/ntw/

INFO.B178 on

https://www2.icorsi.ch/course/view.php?id=3637

© 2005–2009 Antonio Carzaniga

Page 4: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

General Information

http://www.inf.usi.ch/carzaniga/edu/ntw/

INFO.B178 on

https://www2.icorsi.ch/course/view.php?id=3637

Announcements

◮ http://www.inf.usi.ch/carzaniga/edu/ntw/news.html

◮ or through iCorsi

◮ you are responsible for reading the announcements page

(or reading the announcements sent through iCorsi)

© 2005–2009 Antonio Carzaniga

Page 5: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

General Information

http://www.inf.usi.ch/carzaniga/edu/ntw/

INFO.B178 on

https://www2.icorsi.ch/course/view.php?id=3637

Announcements

◮ http://www.inf.usi.ch/carzaniga/edu/ntw/news.html

◮ or through iCorsi

◮ you are responsible for reading the announcements page

(or reading the announcements sent through iCorsi)

Office hours

◮ Antonio Carzaniga: by appointment

◮ Leandro Pacheco: by appointment

◮ Andrea Rosà: by appointment

© 2005–2009 Antonio Carzaniga

Page 6: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Textbook

Computer NetworkingA Top-Down Approach

James F. Kurose

Keith W. Ross

Addison-Wesley

© 2005–2009 Antonio Carzaniga

Page 7: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Textbook

Computer NetworkingA Top-Down Approach

James F. Kurose

Keith W. Ross

Addison-Wesley

© 2005–2009 Antonio Carzaniga

Page 8: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Textbook

Computer NetworkingA Top-Down Approach

James F. Kurose

Keith W. Ross

Addison-Wesley

© 2005–2009 Antonio Carzaniga

Page 9: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Textbook

Computer NetworkingA Top-Down Approach

James F. Kurose

Keith W. Ross

Addison-Wesley

http://www.pearsonhighered.com/kurose-ross/© 2005–2009 Antonio Carzaniga

Page 10: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Evaluation

© 2005–2009 Antonio Carzaniga

Page 11: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Evaluation

+30% homework assignments◮ at least 3 graded assignments◮ grades added together, thus resulting in a weighted average◮ more homework exercises

+30% midterm exam

+40% final exam

±10% instructor’s discretionary evaluation◮ participation◮ extra credits◮ trajectory◮ . . .

© 2005–2009 Antonio Carzaniga

Page 12: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

© 2005–2009 Antonio Carzaniga

Page 13: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

© 2005–2009 Antonio Carzaniga

Page 14: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

You should never take someone else’s material

and present it as your own

© 2005–2009 Antonio Carzaniga

Page 15: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

You should never take someone else’s material

and present it as your own

Do not take someone else’s material

and present it as your own!

© 2005–2009 Antonio Carzaniga

Page 16: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

You should never take someone else’s material

and present it as your own

Do not take someone else’s material

and present it as your own!

Do NOT take someone else’s materialand present it as your own!

© 2005–2009 Antonio Carzaniga

Page 17: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

You should never take someone else’s material

and present it as your own

Do not take someone else’s material

and present it as your own!

Do NOT take someone else’s materialand present it as your own!

Please, don’t cheat!

© 2005–2009 Antonio Carzaniga

Page 18: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

You should never take someone else’s material

and present it as your own

Do not take someone else’s material

and present it as your own!

Do NOT take someone else’s materialand present it as your own!

Please, don’t cheat!

Just Do The Right Thing!© 2005–2009 Antonio Carzaniga

Page 19: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

© 2005–2009 Antonio Carzaniga

Page 20: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

ideas, words, code, suggestions,

corrections on one’s work, etc.

© 2005–2009 Antonio Carzaniga

Page 21: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

A student should never take someone else’s material and present it

as his or her own. Doing so means committing plagiarism.

ideas, words, code, suggestions,

corrections on one’s work, etc.

Using someone else’s material may be appropriate◮ e.g., software libraries

◮ always clearly identify the external material, and acknowledge

its source; failing to do so means committing plagiarism.

◮ the work will be evaluated based on its added value

© 2005–2009 Antonio Carzaniga

Page 22: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Plagiarism

Committing plagiarism on an assignment or an exam will

result in failing that assignment or that exam

Penalties may be escalated in accordance with the regulations

of the Faculty of Informatics

© 2005–2009 Antonio Carzaniga

Page 23: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

© 2005–2009 Antonio Carzaniga

Page 24: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

Deadlines are firm.

© 2005–2009 Antonio Carzaniga

Page 25: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

Deadlines are firm.

Deadlines Are Firm!

© 2005–2009 Antonio Carzaniga

Page 26: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

Deadlines are firm.

Deadlines Are Firm!

Exceptions may be granted

◮ at the instructor’s discretion

◮ only for documented medical conditions or other documented

emergencies

© 2005–2009 Antonio Carzaniga

Page 27: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

Deadlines are firm.

Deadlines Are Firm!

Exceptions may be granted

◮ at the instructor’s discretion

◮ only for documented medical conditions or other documented

emergencies

Each late day will reduce the assignment’s grade by one thirdof the total value of that assignment

© 2005–2009 Antonio Carzaniga

Page 28: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Deadlines

Deadlines are firm.

Deadlines Are Firm!

Exceptions may be granted

◮ at the instructor’s discretion

◮ only for documented medical conditions or other documented

emergencies

Each late day will reduce the assignment’s grade by one thirdof the total value of that assignment

◮ corollary: the grade of an assignment turned in more than two

days late is 0

© 2005–2009 Antonio Carzaniga

Page 29: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Ethics

From this course you can learn how to◮ eavesdrop network traffic (Web, e-mail, etc.)◮ forge network traffic (e.g., e-mail)◮ . . .

This knowledge is essential to understanding networked

communications

◮ you are encouraged to play with the network, just like you

would play with the software on your computer

© 2005–2009 Antonio Carzaniga

Page 30: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Ethics

From this course you can learn how to◮ eavesdrop network traffic (Web, e-mail, etc.)◮ forge network traffic (e.g., e-mail)◮ . . .

This knowledge is essential to understanding networked

communications

◮ you are encouraged to play with the network, just like you

would play with the software on your computer

Nevertheless, abusing this knowledge is unethical—in fact, it

may be considered a crime

© 2005–2009 Antonio Carzaniga

Page 31: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Part 2

What this course is aboutAn overview of the entire course in one hour or so

© 2005–2009 Antonio Carzaniga

Page 32: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

What is the Internet?

© 2005–2009 Antonio Carzaniga

Page 33: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

What is the Internet?

© 2005–2009 Antonio Carzaniga

Page 34: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

What is the Internet?

© 2005–2009 Antonio Carzaniga

Page 35: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

What is the Internet?

© 2005–2009 Antonio Carzaniga

Page 36: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

© 2005–2009 Antonio Carzaniga

Page 37: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 38: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

web

browser

web

server

GET /carzaniga/ HTTP/1.1

Host: www.inf.usi.ch

. . .

© 2005–2009 Antonio Carzaniga

Page 39: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

web

browser

web

server

HTTP/1.1 200 OK

. . .

<html><head>. . . </head><body>

. . .

© 2005–2009 Antonio Carzaniga

Page 40: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

web

browser

web

server

GET /carzaniga/anto.png HTTP/1.1

Host: www.inf.usi.ch

. . .

© 2005–2009 Antonio Carzaniga

Page 41: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Our View

web

browser

web

server

HTTP/1.1 200 OK

. . .

. . .

© 2005–2009 Antonio Carzaniga

Page 42: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Streams or Packets?

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 43: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Streams or Packets?

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 44: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Streams or Packets?

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 45: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Interconnections and Paths

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 46: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Interconnections and Paths

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 47: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Interconnections and Paths

web

browser

web

server

© 2005–2009 Antonio Carzaniga

Page 48: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (1)

© 2005–2009 Antonio Carzaniga

Page 49: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (1)

Introduction to networking and the Internet◮ the course in one lecture: a tour of all the topics of the course

through an end-to-end scenario◮ the layered architecture◮ what is a protocol◮ basic network services: connection-oriented and

connectionless service; packet switching vs. circuit switching◮ a bit of an historical perspective

© 2005–2009 Antonio Carzaniga

Page 50: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (1)

Introduction to networking and the Internet◮ the course in one lecture: a tour of all the topics of the course

through an end-to-end scenario◮ the layered architecture◮ what is a protocol◮ basic network services: connection-oriented and

connectionless service; packet switching vs. circuit switching◮ a bit of an historical perspective

Application layer◮ the application interface: OS primitives◮ a simple client/server program◮ the Web: HTTP; web caching◮ e-mail: transfer protocol (SMTP); access protocols (POP and

IMAP); message format (MIME)◮ DNS◮ peer-to-peer networks (BitTorrent)

© 2005–2009 Antonio Carzaniga

Page 51: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (2)

Transport layer◮ multiplexing/demultiplexing◮ UDP: connectionless transport protocols◮ principles of reliable data transfer◮ principles of congestion control◮ TCP: header format, reliability, congestion control

© 2005–2009 Antonio Carzaniga

Page 52: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (2)

Transport layer◮ multiplexing/demultiplexing◮ UDP: connectionless transport protocols◮ principles of reliable data transfer◮ principles of congestion control◮ TCP: header format, reliability, congestion control

Network layer

◮ forwarding and routing for datagram and virtual-circuit services◮ router architecture: interfaces, switching fabric, queues◮ IP: header formats (IPv4 and IPv6), addressing, extensions,

fragmentation, IP forwarding◮ Routing algorithms and principles: link-state and distance

vector routing, hierarchical routing◮ IP Routing: OSPF, RIP, BGP

© 2005–2009 Antonio Carzaniga

Page 53: Introduction to Computer Networking - USI Informatics · 2015-12-10 · Program (1) Introduction to networking and the Internet the course in one lecture: a tour of all the topics

Program (3)

Cross-layer Topics

◮ basic elements of communication security: block ciphers,

modes of operation, public-key cryptography, RSA, basics of

TLS/SSL

© 2005–2009 Antonio Carzaniga