Transcript Slide 1

COM320 Computer Networks and
Operating Systems
Kevin Curran
Before we start…
Main Books:
Tanenbaum, A. (2010) Computer Networks (5th
edition), Prentice Hall, ISBN: 978-0132126953
Stallings, W. (2008) Operating Systems, internals
and design principles. Upper Saddle River, New
Jersey: Pearson/Prentice Hall (6th ed.).
Before we start…
2 important Links…… if you missed class, please
ask a colleague…..
Labs & Notes
•
Main Page - http://scisweb.ulster.ac.uk/~kevin/com320/index.htm
•
Notes - http://scisweb.ulster.ac.uk/~kevin/com320/notes.htm
•
Labs - http://scisweb.ulster.ac.uk/~kevin/com320/labs.htm
•
Assignments – 2 class tests
•
Attendance & what not to do when absent
•
Structure of Labs
Introduction
Chapter 1
•
•
•
•
•
•
•
Uses of Computer Networks
Network Hardware
Network Software
Reference Models
Example Networks
Network Standardization
Metric Units
Uses of Computer Networks
Computer networks are collections of autonomous
computers, e.g., the Internet
They have many uses:
• Business Applications »
• Home Applications »
• Mobile Users »
These uses raise:
• Social Issues »
This text covers networks for all of these uses
Business Applications
Companies use networks and computers for resource
sharing with the client-server model:
request
response
Other popular uses are communication, e.g., email, VoIP,
and e-commerce
Home Applications
Homes contain many networked devices, e.g., computers,
TVs, connected to the Internet by cable, DSL, wireless, etc.
Home users communicate, e.g., social networks, consume
content, e.g., video, and transact, e.g., auctions
Some application use the peer-to-peer model in which
there are no fixed clients and servers:
Mobile Users
Tablets, laptops, and smart phones are popular devices;
WiFi hotspots and 3G cellular provide wireless connectivity.
Mobile users communicate, e.g., voice and texts, consume
content, e.g., video and Web, and use sensors, e.g., GPS.
Wireless and mobile are related but different:
Social Issues
•
•
•
•
•
Network neutrality – no network restrictions
Content ownership, e.g., DMCA takedowns
Anonymity and censorship
Privacy, e.g., Web tracking and profiling
Theft, e.g., botnets and phishing
Network Neutrality
Some network operators block content for their own reasons.
Opponents of this practice argue that peer-to-peer and other
content should be treated in the same way because they are
all just bits to the network.
This argument for communications that are not differentiated
by their content or source or who is providing the content is
known as Network Neutrality
Network Hardware
Networks can be classified by their scale:
Scale
Type
Vicinity
PAN (Personal Area Network) »
Building
LAN (Local Area Network) »
City
MAN (Metropolitan Area Network) »
Country
WAN (Wide Area Network) »
Planet
The Internet (network of all networks)
Personal Area Network
Connect devices over the range of a person
Example of a Bluetooth (wireless) PAN:
Local Area Networks
Connect devices in a home or office building
Called enterprise network in a company
Most use Copper Wiring but some use Optical
Wireless LAN
with 802.11
Wired LAN with
switched Ethernet
Metropolitan Area Networks
Connect devices over a metropolitan area
Example MAN based on cable TV:
Wide Area Networks (1)
Connect devices over a country
Example WAN connecting three branch offices:
Wide Area Networks (2)
An ISP (Internet Service Provider) network is also a WAN.
Customers buy connectivity from the ISP to use it.
Wide Area Networks (3)
A VPN (Virtual Private Network) is a WAN built from virtual
links that run on top of the Internet.
Network Software
•
•
•
•
•
Protocol layers »
Design issues for the layers »
Connection-oriented vs. connectionless service »
Service primitives »
Relationship of services to protocols »
Protocol Layers (1)
Protocol layering is the main structuring method used to
divide up network functionality.
• Each protocol instance
talks virtually to its peer
• Each layer communicates
only by using the one below
• Lower layer services are
accessed by an interface
• At bottom, messages are
carried by the medium
Protocol Layers (2)
Example: the philosopher-translator-secretary architecture
Each protocol at different layers serves a different purpose
Protocol Layers (3)
Each lower layer adds its own header (with control information) to the message to transmit and removes it on receive
Layers may also split and join messages, etc.
Design Issues for the Layers
Each layer solves a particular problem but must include
mechanisms to address a set of recurring design issues
Issue
Example mechanisms at different layers
Reliability despite
failures
Codes for error detection/correction (§3.2, 3.3)
Routing around failures (§5.2)
Network growth
and evolution
Addressing (§5.6) and naming (§7.1)
Protocol layering (§1.3)
Allocation of resources
like bandwidth
Multiple access (§4.2)
Congestion control (§5.3, 6.3)
Security against
various threats
Confidentiality of messages (§8.2, 8.6)
Authentication of communicating parties (§8.7)
Connection-Oriented vs. Connectionless
Service provided by a layer may be kinds of either:
• Connection-oriented, must be set up for ongoing use
(and torn down after use), e.g., phone call
• Connectionless, messages are handled separately,
e.g., postal delivery
Multiplexing
Many network designs share network bandwidth
dynamically, according to the short-term needs of hosts,
rather than by giving each host a fixed fraction of the
band-width that it may or may not use.
This design is called statistical multiplexing.
Statistical TDM
Switching
Store & Forward Switching - Used on a packet network,
when the intermediate nodes receive a message in full
before sending it on to the next node,
Cut-through switching is a method for packet switching
systems, wherein the switch starts forwarding a frame (or
packet) before the whole frame has been received, normally
as soon as the destination address is processed.
Compared to store and forward, this technique reduces
latency through the switch, but decreases reliability;
corrupted frames are potentially forwarded.
Adaptive Switching dynamically selects between cutthrough and store and forward behaviors based on current
network conditions.
How do loss and delay occur?
packets queue in router buffers
packet
arrival rate to link exceeds output link capacity
packets
queue, wait for turn
packet being transmitted (delay)
A
B
packets queueing (delay)
free (available) buffers: arriving packets
dropped (loss) if no free buffers
Four sources of packet delay
transmission
A
propagation
B
nodal
processing
queueing
dnodal = dproc + dqueue + dtrans + dprop
dproc: nodal processing
check bit errors
determine output link
typically < msec
dqueue: queueing delay
 time waiting at output link
for transmission
 depends on congestion level
of router
Four sources of packet delay
transmission
A
propagation
B
nodal
processing
queueing
dnodal = dproc + dqueue + dtrans + dprop
dtrans: transmission delay:
 L: packet length (bits)
 R: link bandwidth (bps)
 dtrans = L/R
dtrans and dprop
very different
dprop: propagation delay:
 d: length of physical link
 s: propagation speed in
medium (~2x108 m/sec)
 dprop = d/s
Caravan analogy
100 km
ten-car
caravan
toll
booth
cars
“propagate” at
100 km/hr
toll
booth takes 12 sec to
service car (transmission time)
car~bit;
Q:
caravan ~ packet
How long until caravan is
lined up before 2nd toll booth?
100 km
toll
booth
time to “push” entire
caravan through toll booth
onto highway = 12*10 = 120
sec
time for last car to
propagate from 1st to 2nd toll
both: 100km/(100km/hr)= 1
hr
A: 62 minutes
Caravan analogy (more)
100 km
ten-car
caravan
cars
toll
toll
booth
100 km
toll
booth
now “propagate” at 1000 km/hr
booth now takes 1 min to service a car
Q:
Will cars arrive to 2nd booth before all cars serviced at
1st booth?
A: Yes! After 7 min, 1st car arrives at second booth; three cars still
at 1st booth.
1st bit of packet can arrive at 2nd router before packet is fully
transmitted at 1st router! (see Ethernet applet at AWL Web site
Service Primitives (1)
A service is provided to the layer above as primitives
Hypothetical example of service primitives that may provide
a reliable byte stream (connection-oriented) service:
Service Primitives (2)
Hypothetical example of how these primitives may be used
for a client-server interaction
Server
Client
LISTEN (0)
CONNECT (1)
Connect request
Accept response
SEND (3)
RECEIVE
ACCEPT (2)
RECEIVE
Request for data
SEND (4)
Reply
DISCONNECT (5)
Disconnect
DISCONNECT (6)
Disconnect
Relationship of Services to Protocols
Recap:
• A layer provides a service to the one above [vertical]
• A layer talks to its peer using a protocol [horizontal]
Relationship of Services to Protocols
Services and protocols are distinct concepts. A service
is a set of primitives (operations)that a layer provides to
the layer above it.
The service defines what operations the layer is
prepared to perform on behalf of its users, but it says
nothing at all about how these operations are
implemented.
Reference Models
Reference models describe the layers in a network
architecture
•
•
•
•
OSI reference model »
TCP/IP reference model »
Model used for this text »
Critique of OSI and TCP/IP »
OSI Reference Model
A principled, international standard, seven layer model to
connect different systems
– Provides functions needed by users
– Converts different representations
– Manages task dialogs
– Provides end-to-end delivery
– Sends packets over multiple links
– Sends frames of information
– Sends bits as signals
TCP/IP Reference Model
A four layer model derived from experimentation; omits
some OSI layers and uses the IP as the network layer.
IP is the
“narrow waist”
of the Internet
Protocols are shown in their respective layers
Model Used in this Book
It is based on the TCP/IP model but we call out the
physical layer and look beyond Internet protocols.
Critique of OSI & TCP/IP
OSI:
+ Very influential model with clear concepts
− Models, protocols and adoption all bogged down by politics
and complexity
TCP/IP:
+ Very successful protocols that worked well and thrived
− Weak model derived after the fact from protocols
Model Used in this Book
It is based on the TCP/IP model but we call out the
physical layer and look beyond Internet protocols.
Example Networks
•
•
•
•
The Internet »
3G mobile phone networks »
Wireless LANs »
RFID and sensor networks »
Internet (1)
Before the Internet was the ARPANET, a decentralized,
packet-switched network based on Baran’s ideas.
Nodes are IMPs,
or early routers,
linked to hosts
56 kbps links
ARPANET topology in Sept 1972.
Internet (2)
The early Internet used NSFNET (1985-1995) as its
backbone; universities connected to get on the Internet
T1 links
(1.5 Mbps)
NSFNET topology in 1988
Internet (3)
The modern Internet is more complex:
• ISP networks serve as the Internet backbone
• ISPs connect or peer to exchange traffic at IXPs
• Within each network routers switch packets
• Between networks, traffic exchange is set by
business agreements
• Customers connect at the edge by many means
− Cable, DSL, Fiber-to-the-Home, 3G/4G wireless, dialup
•
•
•
Data centers concentrate many servers (“the cloud”)
Most traffic is content from data centers (esp. video)
The architecture continues to evolve
Internet (4)
Architecture of the Internet
Internet (5)
Internet Service Provider (ISP) networks may be regional, national, or
international in scope.
If a packet is destined for a host served directly by the ISP, that packet is
routed over the backbone and delivered to the host.
Otherwise, it must be handed over to another ISP. ISPs connect their networks
to exchange traffic at IXPs(Internet eXchange Points).
3G Mobile Phone Networks (1)
3G network is based on spatial cells; each cell provides
wireless service to mobiles within it via a base station
3G Mobile Phone Networks (2)
Base stations connect to the core network to find other
mobiles and send data to the phone network and Internet
3G Mobile Phone Networks (3)
As mobiles move, base stations hand them off from one
cell to the next, and the network tracks their location
Handover
Wireless LANs (1)
In 802.11, clients communicate via an AP (Access
Point) that is wired to the rest of the network.
Wireless LANs (2)
Signals in the 2.4GHz ISM band vary in strength due to
many effects, such as multipath fading due to reflections
−
requires complex transmission schemes, e.g., OFDM
Wireless LANs (3)
Radio broadcasts interfere with each other, and radio
ranges may incompletely overlap
− CSMA (Carrier Sense Multiple Access) designs are used
RFID and Sensor Networks (1)
Passive UHF RFID networks everyday objects:
− Tags (stickers with not even a battery) are placed on objects
− Readers send signals that the tags reflect to communicate
RFID and Sensor Networks (2)
Sensor networks spread small devices over an area:
− Devices send sensed data to collector via wireless hops
Peer to Peer
A peer-to-peer (abbreviated to P2P) computer network is one in which
each computer in the network can act as a client or server for the other
computers in the network, allowing shared access to various resources
such as files, peripherals, and sensors without the need for a central
server.
P2P networks can be set up within the home, a business, or over the
Internet. Each network type requires all computers in the network to use
the same or a compatible program.
P2P networks can be used for sharing content such as audio, video,
data, or anything in digital format.
Many peer-to-peer systems, such as BitTorrent, do not have any central
database of content. Instead, each user maintains his own database
locally and provides a list of other nearby people who are members of
the system.
Peer to Peer
P2P is a distributed application architecture that partitions tasks or
workloads among peers.
Peers are equally privileged participants in the application. Each
computer in the network is referred to as a node.
The owner of each computer on a P2P network would set aside a
portion of its resources—such as processing power, disk storage, or
network bandwidth—to be made directly available to other network
participant, without the need for central coordination by servers or stable
hosts.
With this model, peers are both suppliers and consumers of resources
and also it can supplement the user detection and recovery and improve
quality assurance activity of the product., in contrast to the traditional
client–server model where only the server supply (send), and clients
consume (receive).
Network Standardization
Standards define what is needed for interoperability
Some of the many standards bodies:
Body
Area
Examples
ITU
Telecommunications
G.992, ADSL
H.264, MPEG4
IEEE
Communications
802.3, Ethernet
802.11, WiFi
IETF
Internet
RFC 2616, HTTP/1.1
RFC 1034/1035, DNS
W3C
Web
HTML5 standard
CSS standard
Security
Where do we start?
e.g. Phising
Phising Messages masquerade as originating from a
trustworthy party, for example, your bank, to try to trick
you into revealing sensitive information, for example,
credit card numbers.
…..Hacking tools, DDoS, Passwords, Hashing, PGP,
Encryption, Cryptography….all covered later
Network Security
field



of network security:
how bad guys can attack computer networks
how we can defend networks against attacks
how to design architectures that are immune to
attacks
Internet
not originally designed with (much) security in
mind
 original vision: “a group of mutually trusting users
attached to a transparent network” 
 Internet protocol designers playing “catch-up”
 security considerations in all layers!
Bad guys: put malware into hosts via Internet
malware
can get in host from a virus, worm, or Trojan
horse.
spyware
malware can record keystrokes, web sites
visited, upload info to collection site.
infected
host can be enrolled in botnet, used for
spam and DDoS attacks.
malware
often self-replicating: from one infected host,
seeks entry into other hosts
Bad guys: put malware into hosts via Internet
Trojan horse
• hidden part of some
otherwise useful software
• today often in Web page
(Active-X, plugin)
virus
• infection by receiving object
(e.g., e-mail attachment),
actively executing
• self-replicating: propagate
itself to other hosts, users
worm:
infection by passively receiving
object that gets itself
executed
 self- replicating: propagates to
other hosts, users

Sapphire Worm: aggregate scans/sec
in first 5 minutes of outbreak (CAIDA, UWisc data)
Bad guys: attack server, network infrastructure
Denial of Service (DoS): attackers make resources
(server, bandwidth) unavailable to legitimate traffic by
overwhelming resource with bogus traffic
1. select target
2. break into hosts around the
network (see botnet)
3. send packets to target from
compromised hosts
target
The bad guys can sniff packets
Packet sniffing:
• broadcast media (shared Ethernet, wireless)
• promiscuous network interface reads/records all
packets (e.g., including passwords!) passing by
C
A
src:B dest:A

payload
B
Wireshark software used for end-of-chapter labs is a (free)
packet-sniffer
The bad guys can use false source
addresses
IP spoofing: send packet with false source address
C
A
src:B dest:A
payload
B
The bad guys can record and playback
record-and-playback: sniff sensitive info (e.g., password),
and use later
• password holder is that user from system point of
view
A
C
src:B dest:A
user: B; password: foo
B
… lots more on security later in course
Metric Units
The main prefixes we use:
•
Prefix Exp.
prefix exp.
K(ilo) 103
m(illi) 10-3
M(ega) 106
μ(micro) 10-6
G(iga) 109
n(ano) 10-9
Use powers of 10 for rates, powers of 2 for storage
− E.g., 1 Mbps = 1,000,000 bps, 1 KB = 1024 bytes
•
“B” is for bytes, “b” is for bits
CN5E by Tanenbaum & Wetherall, © Pearson Education-Prentice Hall and D. Wetherall, 2011
Undersea Cables
Today’s Lab
Protocol Layers - Wireshark Network Packet Sniffing Word version
Command Line Tools - Ping, IPconfig, NSlookup and more.
Week 1 Supplementary Tutorials
Web Page Load Test - Run a diagnostic on www.ulster.ac.uk to see resource
loading waterfall charts, Page Speed optimization checks and suggestions for
improvements.
Web Page Load Comparison - Compare 2 sites such
as www.ulster.ac.uk and www.qub.ac.uk to see how optimised they are.
Mobile Web Page Load Test - Choose one of the device/location options and
hit run. Your page will be loaded on a real mobile device, and you will receive
rich detail about how long it took to load, including waterfall charts and video
recording of the page load.
Week 1 Online Tutorials
OSI Layer Names - Arrange the OSI Layers
OSI Layer Activity - Arrange the OSI Layers by function
Layers video - Short tutorial on network layer communication
End
Chapter 1