0% found this document useful (0 votes)
29 views36 pages

Systems Analysis and Design in A Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All Rights Reserved. 1

Uploaded by

mag
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views36 pages

Systems Analysis and Design in A Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All Rights Reserved. 1

Uploaded by

mag
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Chapter 7

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 1
Defining the System Architecture

Chapter 7

Systems Analysis and Design in a Changing World 7th Ed


Satzinger, Jackson & Burd

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 2
Activities of “Design System Components”

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 3
Overview
An important part of new system development is
choosing appropriate technologies
Explain and provide a summary of technology and
architectural concepts
describe the details for the activity – Describe the
Environment
Describe the details for the activity – Design the
application components

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 4
What is the Internet?
1.1 The Internet
A network of networks
1.2 Network edge
end systems, access networks, links
1.3 Network core
packet switching, circuit switching, network structure

Introduction 1-5
A closer look at network structure:

 network edge: mobile network

• hosts: clients and global ISP


servers
• servers often in data home
centers network
regional ISP
 access networks,
physical media: wired,
wireless
 communication
network core: links
• interconnected routers
• network of networks
institutional
network

Introduction 1-6
What’s the Internet: “nuts and bolts” view

PC
billions of connected mobile network
server computing devices:
wireless
laptop
hosts = end systems global ISP

smartphone running network apps


Application protocols home
network
(http, smtp, etc.) regional ISP

wireless  communication links


links
wired • fiber, copper, radio,
links satellite
 packet switches: forward
packets (chunks of data)
router
• routers and switches institutional
network

Introduction 1-7
What’s a protocol?
human protocols: network protocols:
“what’s the time?”  machines rather than
“I have a question” humans
introductions  all communication activity in
Internet governed by
protocols
… specific messages sent
… specific actions taken protocols define format, order
when messages received, of messages sent and
or other events
received among network
entities, and actions taken
on message transmission,
receipt
Introduction 1-8
Connecting end systems!

Q: How to connect end


systems to edge
router?
 residential access nets
 institutional access networks
(school, company)
 mobile access networks
keep in mind:
 bandwidth (bits per second)
of access network?
 shared or dedicated?

Introduction 1-9
Enterprise access networks (Ethernet)

institutional link to
ISP (Internet)
institutional router

Ethernet institutional mail,


switch web servers

 typically used in companies, universities, etc.


 10 Mbps, 100Mbps, 1Gbps, 10Gbps transmission rates
 today, end systems typically connect into Ethernet switch

Introduction 1-10
The network core

mesh of interconnected
routers
packet-switching: hosts
break application-layer
messages into packets
forward packets from
one router to the next,
across links on path
from source to
destination

Introduction 1-11
Internet structure: network of networks

 End systems connect to Internet via access ISPs (Internet


Service Providers)
• residential, company and university ISPs
 Access ISPs in turn must be interconnected.
• so that any two hosts can send packets to each other
 Resulting network of networks is very complex
• evolution was driven by economics and national policies
 Let’s take a stepwise approach to describe current Internet
structure

Introduction 1-12
Internet structure: network of networks

Tier 1 ISP Tier 1 ISP Google

IXP IXP IXP

Regional ISP Regional ISP

access access access access access access access access


ISP ISP ISP ISP ISP ISP ISP ISP

1-13
Internet protocol stack

application: supporting network


applications
FTP, SMTP, HTTP application
transport: process-process data transfer
TCP, UDP transport
network: routing of datagrams from
source to destination network
IP, routing protocols
link: data transfer between neighboring
network elements link
Ethernet, 802.111 (WiFi), PPP
physical: bits “on the wire” physical

Introduction 1-14
Some network apps

e-mail voice over IP (e.g.,


web Skype)
text messaging real-time video
remote login conferencing
P2P file sharing social networking
multi-user network search
games …
streaming stored …
video (YouTube, Hulu,
Netflix)
Application Layer 2-15
Creating a network app application
transport
network

write programs that: data link


physical

run on (different) end systems


communicate over network
Client & server programs
e.g., web server software
communicates with browser software
no need to write software for application

network-core devices transport


network
data link application

network-core devices do not run user physical transport


network

applications data link


physical

applications on end systems allows


for rapid app development,
propagation

Application Layer 2-16


Application architectures

possible structure of applications:


client-server
peer-to-peer (P2P)

Application Layer 2-17


Client-server architecture
server:
always-on host
permanent IP address
data centers for scaling

clients:
communicate with server
may be intermittently
client/server connected
may have dynamic IP
addresses
do not communicate directly
with each other

Application Layer 2-18


P2P architecture
no always-on server peer-peer
arbitrary end systems directly
communicate
peers request service from other
peers, provide service in return to
other peers
self scalability – new peers
bring new service capacity, as
well as new service demands
peers are intermittently connected
and change IP addresses
complex management

Application Layer 2-19


Processes communicating

process: program running clients, servers


within a host client process: process that
within same host, two initiates communication
processes communicate server process: process
using inter-process that waits to be contacted
communication (defined by
OS)
processes in different hosts
 aside: applications with P2P
communicate by exchanging
messages architectures have client
processes & server
processes

Application Layer 2-20


Sockets
process sends/receives messages to/from its socket
socket analogous to door
sending process shoves message out door
sending process relies on transport infrastructure
on other side of door to deliver message to socket
at receiving process
application application
socket controlled by
process process app developer

transport transport
network network controlled
link
by OS
link Internet
physical physical

Application Layer 2-21


Addressing processes

to receive messages, process identifier includes both IP


must have identifier address and port numbers
host device has unique 32- associated with process on
bit IP address host.
Q: does IP address of host example port numbers:
on which process runs HTTP server: 80
suffice for identifying the mail server: 25
process? to send HTTP message to
 A: no, many processes [Link] web
can be running on same server:
host IP address: [Link]
port number: 80
more shortly…

Application Layer 2-22


App-layer protocol defines
types of messages open protocols:
exchanged, defined in RFCs
e.g., request, allows for interoperability
response e.g., HTTP, SMTP
message syntax: proprietary protocols:
what fields in e.g., Skype
messages & how
fields are delineated
message semantics
meaning of
information in fields
rules for when and how
processes send & respond to
messages Application Layer 2-23
Our Own Protocol for Fun!

Client’s request: Server’s response:


A decimal number The result after squaring
the number received from
the client.

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 24
Implementing our protocol ...Server Side
package serverapp;
Import [Link].*;
import [Link];;
import [Link];
public class ServerApp {
public static void main(String[] args) throws Exception {
ServerSocket listener = new ServerSocket(59090);
[Link]("The date server is running...");
while (true) {
Socket clientSocket = [Link]();
Scanner in = new Scanner([Link]());
PrintWriter out = new PrintWriter([Link](), true);
double num = [Link]([Link]());
double square = num * num;
[Link]("The result after squaring "+num+" is:" + square);
}
}}

25
Implementing our protocol ...Client Side
package clientapp;
Import [Link].*;
import [Link];
import [Link];
public class ClientApp {
public static void main(String[] args) throws Exception {
String serverIP = "localhost";
Socket socket = new Socket(serverIP, 59090);
PrintWriter out = new PrintWriter([Link](), true);
Scanner in = new Scanner([Link]());
[Link]("8");
[Link]("Server response: " + [Link]());
}
}

26
Get a Bonus!

Change the client application to allow an end user to


send two different numbers and a mathematical
operation.
Change the server receive the two numbers and the
mathematical operation, use an if statement to
perform the operation, and then return the result of
the calculation back to the client!
Submit two NetBeans projects, one for the client and
one for the server to receive the bonus grade!

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 27
Web and HTTP

First, a review…
web page consists of objects
object can be HTML file, JPEG image, Java
applet, audio file,…
web page consists of base HTML-file which
includes several referenced objects
each object is addressable by a URL, e.g.,
[Link]/someDept/[Link]

host name path name

Application Layer 2-28


HTTP overview
HTTP: hypertext transfer
protocol HT
Web’s application layer TP
req
protocol PC running HT
ues
t
Firefox browser TP
client/server model res
pon
se
client: browser that
requests, receives, es
t
(using HTTP protocol) TP
req
u
se
server
and “displays” Web HT
r es po
n running
Apache Web
objects HT
T P
server
server: Web server
sends (using HTTP iPhone running
protocol) objects in Safari browser
response to requests
Application Layer 2-29
HTTP overview (continued)

uses TCP:
 client initiates TCP connection (creates socket) to server, port 80
 server accepts TCP connection from client

 HTTP messages (application-layer protocol messages) exchanged


between browser (HTTP client) and Web server (HTTP server)
 TCP connection closed

2-30
DNS: services, structure

DNS services
hostname to IP address translation
host aliasing
canonical, alias names
mail server aliasing
load distribution
replicated Web servers: many IP addresses
correspond to one name

Application Layer 2-31


DNS: a distributed, hierarchical database
Root DNS Servers

… …

com DNS servers org DNS servers edu DNS servers

[Link] [Link] [Link]


[Link] [Link]
DNS servers DNS serversDNS servers
DNS servers DNS servers

client wants IP for [Link]; 1st approximation:


client queries root server to find com DNS server
client queries .com DNS server to get [Link] DNS server
client queries [Link] DNS server to get IP address for
[Link]

Application Layer 2-32


TLD, authoritative servers

top-level domain (TLD) servers:


responsible for com, org, net, edu, aero, jobs,
museums, and all top-level country domains, e.g.:
uk, fr, ca, jp
Network Solutions maintains servers for .com TLD
Educause for .edu TLD
authoritative DNS servers:
organization’s own DNS server(s), providing
authoritative hostname to IP mappings for
organization’s named hosts
can be maintained by organization or service
provider Application Layer 2-33
Local DNS 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
has local cache of recent name-to-address
translation pairs (but may be out of date!)
acts as proxy, forwards query into hierarchy

Application Layer 2-34


DNS name root DNS server
resolution example
2
host at [Link] 3
TLD DNS server
wants IP address for 4
[Link]
5

local DNS server


iterated query: [Link]
 contacted server replies 7 6
with name of server to 1 8
contact
 “I don’t know this authoritative DNS server
[Link]
name, but ask this requesting host
server” [Link]

[Link]

Application Layer 2-35


Practice…

Systems Analysis and Design in a Changing World, 7th Edition - Chapter 7 ©2016. Cengage Learning. All rights reserved. 36

You might also like