introduction1-1 introduction to computer networks מבוא לרשתות תקשורת 89-350 פרופ...
Post on 22-Dec-2015
230 views
TRANSCRIPT
Introduction 1-1
Introduction To Computer Networks
-89מבוא לרשתות תקשורת 350
פרופ' אמיר הרצברגComputer Networking: A Top Down Approach Featuring the Internet, 2nd edition. Jim Kurose, Keith RossAddison-Wesley, July 2002.
Based on foils by Kurose & Ross ©, see: http://www.aw.com/kurose-ross/
My site: http://amirherzberg.com
Course site: http://HL2.BIU.AC.IL
Introduction 1-2
Introduction To Computer Networks- פרטים89-350תקשורת ומחשוב Lecturer: Prof. Amir Herzberg
Research in applied cryptography, secure communication and commerce, networking, dist. algs.,…
Reception: Monday 2:00-3:45pm, room 324 Physical mail: bin 23 E-mail: [email protected]
• Will normally answer within a week
Assistants: Mor Brosh, Igal Ioffe, Fridel Fainshtain
Use the book and foils – read at home before lectures!!
Introduction 1-3
Introduction To Computer Networks- ציונים89-350תקשורת ומחשוב 80% : exam 10% : theoretical assignments (few)
Will not consider the lowest-graded But submit all – assignments are (rarely) lost
10%: programming assignment Great for work interviews, experience
Mandatory to pass both assignments and exam Copying will lead to immediate disciplinary action (to
all parties) – please do not. Class attendance optional But no noise…
You can pass notes, send e-mail – but no noise! Offenders expelled from lecture – no warning
• Additional penalties possible (points, etc.)
Introduction 1-4
Books Main book: Computer Networking: A Top
Down Approach Featuring the Internet, 2nd edition. Jim Kurose, Keith RossAddison-Wesley, July 2002. In library and should (soon?) be in shop
Also use: Tanenbaum: Computer Networks Now in 4th edition Some copies in library
Introduction 1-5
Online Content Lectures, exercises and other stuff will be posted
at Hi-Learn system: http://HL2.BIU.AC.IL Also: submit (most) exercises via Hi-Learn To login:
Use your `regular` BIU user-ID Your password consists of 6 characters: XYnnnn
• X is the first letter of your first name, e.g. a for Avi• Y is the first letter of your surname, e.g. c for Cohen• nnnn is 4 digits code you received in the printed
timetable you (should have) received, used to access the BIU information kiosks, e.g. 1234
• Example password is ac1234
Problems/not registered: [email protected]
Introduction 1-6
Lecture K&RChapter
Topic
1,2 1 Introduction
3,4 2 Application layer protocols
5-7 3 Transport layer, reliability, congestion
7,8 4 Network (internet) layer
9,10 5 Data-Link layer
11,12 7, but use notes
Network Security
13 Overview
Schedule
Introduction 1-7
Chapter 1: Introduction(this and next lecture)Our goal: get context,
overview, “feel” of networking
more depth, detail later in course
approach: descriptive use Internet as
example
Overview: what’s the Internet what’s a protocol? network edge network core access net, physical media Internet/ISP structure performance: loss, delay protocol layers, service
models history
Introduction 1-8
What’s the Internet: “nuts and bolts” view
millions of connected computing devices: hosts, end-systems PCs workstations, servers PDAs phones, toasters
running network apps communication links
fiber, copper, radio, satellite
transmission rate = bandwidth
router/switch: forward packets (chunks of data)
local ISP
companynetwork
regional ISP
router/switch workstation
servermobile
Introduction 1-9
What’s the Internet: “nuts and bolts” view Internet: specific standard
technologies: TCP, UDP, IP – and others… Allowing interoperability RFC: Request for comments IETF: Internet Engineering
Task Force
An internet: “network of networks” loosely hierarchical public Internet versus
private intranet
local ISP
companynetwork
regional ISP
router/switch workstation
servermobile
Introduction 1-10
Computer Communication Network
Connection btw computers
Each pair can communicate (using `physical` network addresses)
Different implementations
Most ensure reliable communication
1 2
3
4
5
Introduction 1-11
Network Types
Network
Ring
Link Bus
Star
Satellite
Cellular
NMS
Switched
SWEach pair can communicate
(using network addresses)
Introduction 1-12
An internet: Connection of Networks (Using TCP/IP; `Internet` is the `big, public` internet.)
Each pair can communicate (using Internet Protocol addresses (IP addresses))
Introduction 1-13
What’s the Internet: a service view communication
infrastructure enables distributed applications: Web, email, games, e-
commerce, database., voting, file (MP3) sharing
Communication transport services provided to apps: connectionless connection-oriented
Use protocols to control send, receive messages e.g., TCP, IP, HTTP, FTP,
POP3, SMTP
Introduction 1-14
What’s a protocol?human protocols: “what’s the time?” “I have a question” introductions
… specific msgs sent… specific actions
taken when msgs received, or other events
network protocols: machines rather than
humans all communication
activity in Internet governed by protocols
protocols define format, order of msgs sent and
received among network entities, and actions taken on msg transmission, receipt
Introduction 1-15
What’s a protocol?a human protocol and a computer network protocol:
Q: Other human protocols?
Hi
Hi
Got thetime?
2:00
TCP connection req
TCP connectionresponseGet http://www.awl.com/kurose-ross
<file>time
Q: What is this protocol?
Introduction 1-16
A closer look at network structure: network edge:
applications and hosts
network core: routers/switches network of networks
Introduction 1-17
Chapter 1: roadmap
1.1 What is the Internet?1.3 Network core1.2 Network edge1.4 Network access and physical media1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched
networks1.7 Protocol layers, service models1.8 History
Introduction 1-18
The Network Core
mesh of interconnected routers and switches
Hi speed, minimize work Routing: how is data
transferred through net? circuit switching:
dedicated circuit per call: telephone net
packet-switching: data sent thru net in discrete “chunks”
Introduction 1-19
Network Core: Circuit Switching
End-end resources reserved for “call”
link bandwidth, switch capacity
dedicated resources: no sharing
circuit-like (guaranteed) performance
call setup required Example: phone
network
Introduction 1-20
Network Core: Circuit Switching
network resources (e.g., bandwidth) divided into “pieces”
pieces allocated to calls
resource piece idle if not used by owning call (no sharing)
dividing link bandwidth into “pieces”
Division for Multiple Access: Frequency division
(FDMA) Time division
(TDMA) Code division
(CDMA) – much later
Introduction 1-21
Circuit Switching: TDMA and FDMA
FDMA
frequency
time
TDMA
frequency
time
4 users
Example:
Introduction 1-22
Network Core: Packet Switching
each end-end data stream divided into packets
user A, B packets share network resources
each packet uses full link bandwidth
resources used as needed
resource contention: aggregate resource
demand can exceed amount available
congestion: packets queue, wait for link use
store and forward: packets move one hop at a time transmit over link wait turn at next
link
Bandwidth division into “pieces”Dedicated allocationResource reservation
Introduction 1-23
Packet Switching: Statistical Multiplexing
Sequence of A & B packets does not have fixed pattern statistical multiplexing.
In TDM each host gets same slot in revolving TDM frame.
A
B
C10 MbsEthernet
1.5 Mbs
D E
statistical multiplexing
queue of packetswaiting for output
link
Introduction 1-24
Packet switching versus circuit switching
1 Mbit link each user:
100 kbps when “active”
active 10% of time
circuit-switching: 10 users
packet switching: with 35 users,
probability > 10 active less than .0004
Packet switching allows more users to use network!
N users
1 Mbps link
Introduction 1-25
Packet switching versus circuit switching
Great for bursty data resource sharing simpler, no call setup
Excessive congestion: packet delay and loss protocols needed for reliable data transfer,
congestion control Q: How to guarantee bandwidth and Quality Of
Service (QOS)? (easy with circuit switching!) Needed for audio/video apps Still an unsolved problem (chapter 6)
Is packet switching always better?
Introduction 1-26
Packet-switching: store-and-forward
Takes L/R seconds to transmit (push out) packet of L bits on to link of R bps
Entire packet must arrive at router before it can be transmitted on next link: store and forward
End to end delay = (#hops)*L/R
Example: L = 7.5 Mbits R = 1.5 Mbps One link (hop):
L/R=5sec End to end delay =
3*L/R=15 sec
R R RL
Introduction 1-27
Packet Switching: Message Segmenting and Pipelining
Now break up the message into 5000 packets
Each packet 1,500 bits 1 msec to transmit packet on one link pipelining: each link works in parallel 5 sec for each link E2E Delay=5+0.001*2 Delay reduced from 15 sec to 5.002 sec
Introduction 1-28
Packet-switched networks: routing Goal: move packets through routers from source to
destination (using which path?) we’ll study several path selection (i.e. routing) algorithms
(chapter 4)
datagram network/routing: destination address in packet determines next hop routes may change during session analogy: driving, asking directions
virtual circuit network/routing: each packet carries tag (virtual circuit ID), tag determines
next hop fixed path determined at call setup time, remains fixed thru
call routers maintain per-call state
Introduction 1-29
Chapter 1: roadmap
1.1 What is the Internet?1.3 Network core1.2 Network edge1.4 Network access and physical media1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched
networks1.7 Protocol layers, service models1.8 History
Introduction 1-30
The network edge: end systems (hosts):
Provide transport services To application programs
• e.g. Web, email Idea: Do most work at edge
client/server model client host requests, receives
service from always-on server e.g. Web browser/server; email
client/server
peer-peer model: Both sides `equal` E.g. `ad-hoc network` between
palmtop personal devices
Introduction 1-31
connection-oriented transport serviceGoal: reliable data
transfer between end systems
handshaking: setup (prepare for) data transfer ahead of time Hello, hello back human
protocol set up “state” in two
communicating hosts
TCP - Transmission Control Protocol Internet’s connection-
oriented service
TCP service [RFC 793] reliable, in-order byte-
stream data transfer loss: acknowledgements and
retransmissions flow control:
sender won’t overwhelm receiver
congestion control: senders “slow down sending
rate” when network congested Prevents increased congestion Improves performance to all (if
all use it and delay, loss are mainly due to congestion)
Introduction 1-32
connectionless transport service
Goal: data transfer between end systems same as before!
UDP - User Datagram Protocol [RFC 768]: Internet’s connectionless service unreliable data transfer
• Don’t resend (phone,…)
no flow control no congestion control
• TCP congestion control harmful if delay, loss NOT due to congestion!
Simple, small
App’s using TCP: HTTP (Web), FTP (file
transfer), Telnet (remote login), SMTP (email)
App’s using UDP: streaming media,
teleconferencing, DNS, Internet telephony
Other transport services
Introduction 1-33
Network Taxonomy
Telecommunicationnetworks
Circuit-switchednetworks
FDM TDM
Packet-switchednetworks
Networkswith VCs
DatagramNetworks
•Internet is Packet-switched, Datagram network•Transport services (on end-systems):
•connection-oriented (TCP)•connectionless (UDP)•Recently: others (DCCP, SCP)
Packet-switchednetworks
Networkswith VCs
DatagramNetworks
TCPConnection
Service
UDPConnection-less
Service
Introduction 1-34
Lecture 1: Main concepts Network, internet, Internet, intranet What’s a protocol? Network edge, core Network transport services
Connectionless (UDP) and connection (TCP) Client/server vs. Peer to Peer
Routing and switching Router: connects two different networks in internet Packet-switching versus circuit-switching (FDM,TDM) Packet-switching:
• Datagram vs. virtual circuit (VC)• Packet segmentation and pipelining
Use book and course site (in Hi-Learn system)
Introduction 1-35
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched
networks1.7 Protocol layers, service models1.8 History
Introduction 1-36
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
demonstrated publicly NCP (Network Control
Protocol) first host-host protocol
first e-mail program ARPAnet has 15 nodes
1961-1972: Early packet-switching principles
Introduction 1-37
Internet History
1970: ALOHAnet satellite network in Hawaii
1973: Metcalfe’s PhD thesis proposes Ethernet
1974: Cerf and Kahn - architecture for interconnecting networks
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
1972-1980: Internetworking, new and proprietary nets
Introduction 1-38
Internet History
1983: deployment of TCP/IP
1982: SMTP e-mail protocol defined
1983: DNS defined for name-to-IP-address translation
1985: FTP protocol defined
1988: TCP congestion control
new national networks: Csnet, BITnet, NSFnet, Minitel
100,000 hosts connected to confederation of networks
1980-1990: new protocols, a proliferation of networks
Introduction 1-39
Internet History
Early 1990’s: ARPAnet decommissioned
1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995)
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, peer2peer file sharing (e.g., Naptser)
network security to forefront
est. 50 million host, 100 million+ users
backbone links running at Gbps
1990, 2000’s: commercialization, the Web, new apps