Transcript Week 2

ITC242 – Introduction to
Data Communications
1
Last Week
Topic 1
• Networking is critical to the new corporate
structures emerging in today’s businesses
• Strong trends are driving the development of
communications technology
• Business information requirements are
constantly changing - voice, data, image, video
• An introduction at a simple level to the different
types of networks
2
Last Week
Topic 2
• distinguished between digital and analogue
information sources;
• understand the nature of four major forms of
business information: audio, data, image and
video; and
• described response and throughput as two key
performance measures of communications.
3
Topic 3 – Distributed Data
Processing
Activities
• Read all of Chapter 3 of the text
• Attempt all review questions from chapter
3 of the text
• Attempt to answer problems 3.5,3.6, 3.7,
3.8, 3.12, 3.13
4
Topic 3 – Distributed Data
Processing
Learning Objectives
• Describe the differences between centralised
and distributed data processing
• Describe different types of distributed data
processing for applications and distributed
databases
• Describe the implications for data comms of
distributed data processing
• Understand the motivation towards client server
architectures
5
Centralised Data Processing
Centralised Data Processing:
Data processing support is provided by one
cluster of computers, generally large
computers, located in a cental data
processing facility.
6
Centralised Data Processing
• Centralised computers: one or more computers
located in a central facility.
• Centralised processing: applications are run on
the central data processing facility.
• Centralised data: Most data is stored, accessible
and controlled at a central facility.
• Centralised control: Control of data, applications,
processes and infrastructure maintained
centrally.
• Centralised support: Technical support and
development staff located in a central facility.
7
Centralised Data Processing
• What are the advantages?
– Economies of scale (equipment and
personnel)
– Lack of duplication
– Ease in enforcing standards, security
8
Distributed Data Processing
• Computers are dispersed throughout
organization
• Allows greater flexibility in meeting
individual needs
• More redundancy
• More autonomy
9
Definition
•
“A distributed system is a collection of
independent computers that appears to
its users as a single coherent system.”
• Important Points:
1. The machines are autonomous.
2. Users think they are dealing with a single
system.
10
Distributed Systems
11
Distributed System Examples
• The biggest example is the WWW.
• The model presented to users to
somewhat uniform – go to this URL and
get a web page.
• Most users are (or should be) unable to
tell what kind of hardware or software is
being used to deliver the web page.
• For the most part, the client should not
make a difference either.
12
Goals
•
1.
2.
3.
4.
There are four main goals for distributed
systems to make them worth building.
Connect users and resources
Make the system transparent
Make the system open
Make the system scalable
13
Connecting Users and Resources
• We want to make it easier for users to
access remote resources and to share
resources with other users.
• Examples: printers, files, Web pages, etc
• A distributed system should also make it
easier for users to exchange information.
• Easier resource and data exchange could
cause security problems – a distributed
system should deal with this problem.
14
Transparency
• Transparency is the ability of the
distributed system to hide that fact that it is
actually a distributed system.
• The more the distributed system looks like
a single computer, the more transparent it
is.
• There are several different types of
transparency that we should consider
15
System Openness
• Openness describes how well a system
offers services according to some
standard rules for the distributed system.
• An open system will have a set of welldefined standards that describe the syntax
and semantics for system services.
• If the system is not open, it will be difficult
to expand.
16
System Scalability
• A distributed system should be scalable.
• Scalability can be measured in three
different ways:
– size (add more users and resources)
– geographically (add users and resources that
are far away)
– administration (easily able to manage if
scaled)
17
Hardware Concepts
• Multiprocessors are machines that share
memory.
• Multicomputers are machines that do not
share memory
• Multicomputer distributed systems can be
either homogeneous or heterogeneous
– homogeneous: all computers are the same type
– heterogeneous: the computers can be different
18
Hardware
19
Middleware
• Middleware sits between the distributed
application and the network OS services.
• Middleware is responsible for hiding the
underlying details of each computer while
providing a unified view of services to the
user.
20
The Middleware View
21
Client-Server Model
• The basic client-server model has two
parts:
– the server, a process that is installed on a
particular machine and provides a service (A
process is running program)
– the client, a process that requests services
from the server by sending a request in a
predefined format and waiting for a response.
• Processes interact by sending each other
messages.
22
Client-Server Architecture I
©Pearson Education
2001
23
Client-Server Architecture II
• Clients send requests to servers (i.e., invocation)
• Servers send responses to clients (i.e., result)
• Servers may be clients of other servers
– A web server is often a client of a file server
– An Internet service is a client of a DNS server
– a server that translates DNS names to IP
addresses
• Potential problem: a single server is a scalability
bottleneck and a single point of failure
24
Peer-to-Peer Architecture I
©Pearson Education
2001
25
Peer-to-Peer Architecture II
• All processes play similar roles – i.e., they
interact as peers
• No central component – potentially better
scalability and resiliency to failures
• Use the power of modern desktops to
implement a large-scale distributed system
• Examples: Napster, Kazaa, Skype,
Bittorrent
26
Services by multiple servers
• Multiple servers provide
services to clients
• Servers may partition the
service objects or replicate
them
• WWW: partitioned objects
• Sun NIS: replica of a
password file maintained
at each server
©Pearson Education
2001
27
Proxy Servers and Caches
• A cache is a store of recently used data objects that is closer
than the main store
• A newly accessed object is added to the cache
• When that object is accessed again, it is fetched from the
cache, if there is an up-to-date copy in the cache
• Proxy servers intercept communication with the real server
to provide faster service (e.g., deliver cached data), better
security (e.g., a proxy configured as a firewall)
28
Multitiered Architectures
• The simplest client-server architecture has
only two machines involved – the Client
and the Server.
• With a multitiered architecture, it is
possible to have more than just two
machines involved.
29
Multitiered Possibilities
30
Multitiered Example (b)
• The client connects to a web server to
retrieve some data.
• The web server will then connect to a
database in order to get the information
needed.
• The database server gives the information
to the web server.
• The web server sends the results back to
the client.
31
Distribution
• The multitiered examples that we have
seen are referred to as vertical
distribution because the work is split up
across “vertical” machines.
• We can distribute work across multiple
servers as well, and this is known as
horizontal distribution.
32
Horizontal Distribution
teh
33
More Horizontal Distribution
• In the previous example, the horizontal
distribution was applied to the servers.
• It is possible to have horizontal distribution
across the “client” side for those cases
where the client and the server are the
same program.
• This can be seen in “peer-to-peer”
distributed systems.
34
Topic 4 – The Internet
Learning Objectives
• Discuss the history of the Internet and
explain it’s explosive growth
• Describe the overall Internet architecture
including key components
• Explain the components and operation of
the Domain Name System
35
Topic 4 – The Internet
Activities
• Real all of Chapter 4 of text
• Attempt all review questions of chapter 4
• Attempt problems: 4.1, 4.6, 4.7, 4.10, 4.11,
4.12.
36
Internet History
• Evolved from ARPANet (Defense Department’s
Advanced Research Projects Agency Network)
• ARPANet was developed in 1969, the first
packet-switching network
• Initially, included only four nodes: UCLA, UCSB,
Utah, and SRI
• In the 1980s, packet-switched networking
extended to non-ARPA organization; eventually
replaced ARPANet
37
Early Applications & Protocols
•
•
•
•
Telnet/FTP (1972/73)
Distributed Email (1972)
TCP/IP (1982-83)
DNS (1984)
38
Switching Methods
• Circuit Switching: Requires a dedicated
communication path for duration of transmission;
wastes bandwidth, but minimizes delays
• Packet Switching: Specialized message
switching, with very little delay
• Message Switching: Entire path is not dedicated,
but long delays result from intermediate storage
and repetition of message
39
Circuit Switching
A
Source



Destination
It’s the method used by the telephone network.
A call has three phases:
1.
2.
3.

B
Establish circuit from end-to-end (“dialing”),
Communicate,
Close circuit (“tear down”).
Originally, a circuit was an end-to-end physical wire.
Nowadays, a circuit is like a virtual private wire: each call has
its own private, guaranteed data rate from end-to-end.
40
Circuit Switching
Telephone Network
Each phone call is allocated
64kb/s. So, a 2.5Gb/s trunk line
can carry about 39,000 calls.
Destination
“Callee”
Source
“Caller”
Central
Office
“C.O.”
Central
Office
“C.O.”
Trunk
Exchange
41
Packet Switching
A
Source
B
R2
R1
R3
Destination
R4





It’s the method used by the Internet.
Each packet is individually routed packet-by-packet, using
the router’s local routing table.
The routers maintain no per-flow state.
Different packets may take different paths.
Several packets may arrive for the same output link at the
same time, therefore a packet switch has buffers.
42
Packet Switching
Simple router model
“4” Link 1, ingress
Choose
Egress
Link 1, egress
Link 2, ingress
Choose
Egress
Link 2, egress
Link 3, ingress
Choose
Egress
Link 3, egress
Link 4, ingress
Choose
Egress
Link 4, egress
Link 2
Link 1
R1“4”
Link 3
Link 4
43
Internet Components
44
The World Wide Web
• Concept proposed by Tim Berners-Lee in 1989,
prototype WWW developed at CERN in 1991
• First graphical browser (Mosaic) developed by
Mark Andreessen at NCSA
• Client-server system with browsers as clients,
and a variety of media types stored on servers
• Uses HTTP (hypertext transfer protocol) for
retrieving files
45
Connecting to the Internet
• End users get connectivity from an ISP
(internet service provider)
– Home users use dial-up, ADSL, cable
modems, satellite
– Businesses use dedicated circuits connected
to LANs
• ISPs use “wholesalers” called network
service providers and high speed (T-3 or
higher) connections
46
Commercial Internet Use
• ARPANet and NSF limited use to research
and development
• Early commercial use primarily information
dissemination
• EDI transactions gradually moved to the
Internet
• WWW growth in 1990s has led to
increased direct sales
47
IP address
• People: many identifiers:
– SSN, name, passport #
• A unique IP address for every host and router on the
network
• 32-bits long IP addresses-- four octets of eight bits each
• Dotted decimal notation
– 11000000 11100100 00010001 00111001 (binary)
– 192.228.17.57 (decimal)
– Each octet ranges between 0 and 255. The lowest IP address is
0.0.0.0 and the highest is 255.255.255.255
• “name”, e.g., ww.yahoo.com - used by humans
Q: map between IP addresses and name ?
48
Domain Name System
• 32-bit IP addresses have drawbacks
– Routers can’t keep track of every network path
– Users can’t remember dotted decimals easily
– It is not easy to resolve host name conflicts
• Domain names address these problems by
mapping domain names into IP
address
• DNS is a group of protocols and services widely
used over the Internet and TCP/IP-based networks.
It is an application layer protocol and uses a
hierarchical, domain-based naming scheme and a
distributed database system for implementing this
naming scheme.
49
Mapping Computer Names to IP
addresses
The Domain Naming System (DNS)
Names are hierarchical and belong to a domain:
– e.g. elaine17.stanford.edu
– Common domain names: .com, .edu, .gov, .org, .net, .uk (or
other country-specific domain).
– Top-level names are assigned by the Internet Corporation for
Assigned Names and Numbers (ICANN).
– A unique name is assigned to each organization.
DNS Client-Server Model
– DNS maintains a hierarchical, distributed database of names.
– Servers are arranged in a hierarchy.
– Each domain has a “root” server.
– An application needing an IP address is a DNS client.
50
Distributed, Hierarchical
Database
Root DNS Servers
com DNS servers
yahoo.com
amazon.com
DNS servers DNS servers
org DNS servers
pbs.org
DNS servers
edu DNS servers
poly.edu
umass.edu
DNS serversDNS servers
51
DNS Components
• Domain name space
– Tree-structured name space to identify all internet
resources
• DNS database
– Stored in a distributed database
• Name servers
– Server programs that hold information about a
specific portion of the domain name tree
• Resolvers
– Programs that extract information from name servers
based on client requests
52
DNS Database
• Hierarchical database containing resource
records (RRs) (name, IP address, other info
about hosts).
• Variable-depth hierarchy for names
– essentially unlimited levels
– uses . as the level delimiter in names
• Distributed database:
– resides in DNS servers throughout the Internet
• Distribution controlled by the database
– database divided into thousands of separately
managed zones,
– distribution and update of records controlled by
database software.
53
DNS Server Hierarchy
• Each name server configured for a specific local
zone
– Includes subdomains and associated RRs
– Authoritative source for that portion of hierarchy
• Root servers are at top of hierarchy
– Different root servers for different top level domains
– Some redundancy within domain spaces to prevent
bottlenecks
54
DNS: Root name servers
• contacted by local name server that can not resolve name
• root name server:
– contacts authoritative name server if name mapping not
known
– gets mapping
a Verisign, Dulles, VA
Herndon, VA (also LA)
– returnscd Cogent,
mapping
toMDlocal
name
U
Maryland College Park,
k RIPE
London (alsoserver
16 other locations)
g US DoD Vienna, VA
h ARL Aberdeen, MD
j Verisign, ( 21 locations)
e NASA Mt View, CA
f Internet Software C. Palo Alto,
i Autonomica, Stockholm (plus
28 other locations)
m WIDE Tokyo (also Seoul,
Paris, SF)
CA (and 36 other locations)
b USC-ISI Marina del Rey, CA
l ICANN Los Angeles, CA
13 root name
servers
worldwide
55
TLD and Authoritative Servers
• Top-level domain (TLD) servers:
– responsible for com, org, net, edu, etc, and
all top-level country domains uk, fr, ca, jp.
– Network Solutions maintains servers for com
TLD
– Educause for edu TLD
• Authoritative DNS servers:
– organization’s DNS servers, providing
authoritative hostname to IP mappings for
organization’s servers (e.g., Web, mail).
– can be maintained by organization or service56
provider
Local Name Server
• does not strictly belong to hierarchy
• each ISP (residential ISP, company,
university) has one.
– also called “default name server”
• when host makes DNS query, query is
sent to its local DNS server
– acts as proxy, forwards query into hierarchy
57
DNS Operation
• User program requests IP address for a domain name
• Resolver module in local host or ISP formulates query
for local name server (same domain as the resolver)
• Local name server checks local database/cache
– if found returns IP address to the requestor.
– If not found, queries other available name servers, starting down
from the root of the DNS tree or as high up the tree as possible.
• When response is received, local name server stores the
name/address mapping in local cache
• User program receives IP address or error message.
58
DNS Name Resolution
• Query begins with name resolver located in the
user host system
• If requested name not in cache, query sent to
local DNS server
– returns an address immediately, or
– returns address after querying other servers
• Two possible types of queries
– Recursive
– Iterative
59
DNS name
resolution example
• Host at
cis.poly.edu wants
IP address for
gaia.cs.umass.edu
root DNS server
2
3
TLD DNS server
4
5
local DNS server
dns.poly.edu
iterated query:
• contacted server
replies with name
of server to contact
• “I don’t know this
name, but ask this
server”
1
8
7
6
authoritative DNS server
dns.cs.umass.edu
requesting host
cis.poly.edu
gaia.cs.umass.edu
60
DNS name
root DNS server
resolution example
recursive query:
2
• puts burden of
7
name resolution on
contacted name
server
local DNS server
dns.poly.edu
• heavy load?
1
3
6
TLD DNS server
5
4
8
authoritative DNS server
dns.cs.umass.edu
requesting host
cis.poly.edu
gaia.cs.umass.edu
61
DNS: caching and updating records
• once (any) name server learns mapping, it
caches mapping
– cache entries timeout (disappear) after
some time
– TLD servers typically cached in local
name servers
• Thus root name servers not often visited
62
Top Level Domains
.aero
.biz
.cat
.com
.coop
.edu
.gov
.info
.int
.jobs
.mil
.mobi
.museum .name
.org
.pro
.til
.net
.travel
• http://www.icann.org/registries/listing.html
• Country Code TLD’s (ccTLD)
http://www.iana.org/cctld/cctld-whois.htm
63
.AU TLD
.au Delegated country name space for Australia. .au Subdomains are:
• .com.au - commercial entities
• .edu.au - educational institutions
• .org.au - miscellaneous organisations
• .gov.au - government and semi-government entities
• .net.au - network infrastructure and providers
• .asn.au - associations
• .id.au
- individual people
• .conf.au - conferences/exhibitions short duration Internet
connectivity
• .info.au - major Australian informational and service resources
• .csiro.au - CSIRO
• .oz.au
- entities which are visible within the ACSnet domain
• .telememo.au - X.400 entities registered within the
"/C=AU/ADMD=Telememo" administrative domain
64
ipconfig
• ipconfig in
Windows is a
command
line utility that
displays all
current
TCP/IP
network
configuration
values and
refreshes
Dynamic
Host
Configuration
Protocol
DHCP and
Domain
Name
System DNS
settings.
65
nslookup
•
The
nslookup
command
can be used
in Windows
and Unix to
find the IP
addresses
of a
particular
computer,
using DNS
lookup. The
name
means
"name
server
lookup".
66
Topic 4 Summary
• Discuss the history of the Internet and
explain it’s explosive growth
• Describe the overall Internet architecture
including key components
• Explain the components and operation of
the Domain Name System
67