Download Database Client/Server Apps - NYU Stern School of Business

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

IEEE 1355 wikipedia , lookup

SIP extensions for the IP Multimedia Subsystem wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Airborne Networking wikipedia , lookup

Computer network wikipedia , lookup

AppleTalk wikipedia , lookup

Deep packet inspection wikipedia , lookup

Distributed firewall wikipedia , lookup

Dynamic Host Configuration Protocol wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Remote Desktop Services wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Internet protocol suite wikipedia , lookup

Lag wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Hypertext Transfer Protocol wikipedia , lookup

Transcript
Norman White
Stern School of Business
Csntier.ppt





Background
Data communications
TCP/IP
Physical networks
Database management systems


Data Communications
Networking …
Some Basics



SOURCE
SINK
MEDIUM
SOURCE
telephone
cable
satellite
MEDIUM
SINK








Telephone
Satellite
Cellular
Wifi
Cable
Fiber Optic
Blue Tooth
etc.

Analog

Represent information as a waveform
 Music, video,voice

Digital


Represent Information as a string of bits
Digitization


Convert from analog to digital by sampling the
waveform at fixed intervals
ISDN phone line 64000 bits per second
 8000 samples per second (each sample an 8 bit (0-255))
Number


Converts Digital signal to analog so it can be
sent over phone lines
Reconverts analog to digital on other end
1
1
1
0
0
01110000
0
0
0


Need rules to communicate between systems
Communications protocols are the rules for a
particular method of communication




Who says what, when
How are errors handled
How much information in a message
How is message routed from sender to receiver

Asynchronous - A single character is a message



Errors sometimes detected, but no recovery
Horizontal parity used to detect single character
errors
Synchronous - A group of characters constitute
a message

Synchronous protocols usually recover from errors

Bisynchronous




Point to point conversation
Not used much any more
Each message is acknowledged as received
Multilateral protocols



Messages routed from one machine to another
Message includes address of destination
Needs to be routed by intermediate nodes




Application Layer – Applications and
processes that use network
Host-host Transport Level – end to end data
delivery
Internet layer – defines the datagram and
handles data routing
Network Access layer – routines for accessing
physical networks
Protocol of the Internet



Originally developed as a protocol that would
withstand wide network outages (Arpanet)
Now it has become the standard protocol for
almost all data communications
Consists of two parts, IP and TCP



Handles communications between 2 processes
anywhere on internet
Guarantees correct data is received by receiver
Uses IP for delivery and routing of packets


Fixed size blocks of information that are sent
using TCP
Packet includes information like
Address of host to send this to
 Address of host it is coming from
 Destination Port Number
 Sending Port Number
 MAC address of sender/receiver (hardware address)
 Sequence info
 Data





Handle datagrams
Defines Internet addressing scheme
Routes datagrams to remote hosts
Performs fragmentation and reassembly of
datagrams



Every host has an address in the form of
www.zzz.yyy.zzz (the “IP” address)
Each subcomponent refers to a particular
breakdown of all of the machines on the
internet.
128.122.197.133 = sales.stern.nyu.edu
128 = edu domain
 122 = nyu network
 197 = subnet at stern
 133 = address of sales computer




The TCP/IP protocols include the concept of
“name lookup”, where names like
sales.stern.nyu.edu are translated into their
numeric addresses
(128.122.197.133)
Hence one has to specify the locations of the
“name servers” you wish to use.

These are servers that are given a name
(sales.stern.nyu.edu) and return its address.

Gateways (also called IP routers) are the
computers used to connect your network to the
internet


TCP/IP uses “ports” to connect services
between machines
The destination machine has particular ports
offering different types of service



23 = telnet , 80 = WWW etc.
Client machine uses random port when it
connects to a service (i.e. port 80 for http
requests)
Combination of destination port and
originating port = socket (i.e. a destination port
that is in use)







telnet - 23
Ssh - 22
ftp - 21
NFS - Network File Service - 2049
Talk - 517
Sendmail - 25
http - 80

World Wide Web (usually port 80)


Hyper media interface to internet
Connects clients and servers using HTTP
 Hyper Text Transfer Protocol

Subset of the internet


Problem – How do we fully connect thousands of computers
together? (How many wires?)
 2 computers – 1
 3 computers – 3
 4 computers - 6
 5 computers – 10
 N computers – (N*(N-1)/2)
 1000 computers – about .5 million connections
Solution
 Don’t connect every computer to every other computer, instead
“route” information from one computer to another

Protocol



Rules to follow telling each computer what to send
where, when
Packet switched protocols include routing of packets
from source to destination
Protocols also define rules to follow if there are
errors, I.e. how to recover, retransmit etc.


Low level protocols route packets (of bits)
around the network. Packets include address
High level protocols know what the packets
contain



TCP/IP client server protocols
Client sends requests over network to a “server”
program running on another computer
WWW C/S application




A program on one computer (the Client) can
request services from a program on another
computer (the Server)
Client issues requests to a server someplace on
the network
Requests are specially formatted messages
which can be understood by almost any type of
computer
Requests are sent using a “standard”
telecommunications protocol


Server responds with a message in the
“standard” format
Client receives message and processes it



In the WWW model, the client is the browser
(Firefox, Safari, I.E.) running on your computer
The server is the web server running
somewhere on the internet
Both the client and server must be connected
through a TCP/IP communications network

The situation gets more complex, if the initial
(Tier 1) server in turn becomes a client and
requests services from another server in order
to process the web request. There are now 3
programs running on 3 different computers
involved in the processing of the web request.
User
Web Browser
Web
Server
Data Base Server

Two tier



Clients connect directly to servers
Example PC clients, LAN DB server, Web server
Three … N tier


Clients connect to intermediate servers which in turn
issue requests to other servers
Examples
 PC to UNIX to IBM Mainframe
User
Web Browser
Application
Server
Web Server
Data Base Server




JAVA – Sun developed language that runs code on the
user’s machine (i.e. built in to the web browser)
 Off loads processing from server
 Basis for new JINI language for appliances
FAT Client
 Term used to refer to putting all of application code
on the user’s machine (on the hard drive)
THIN Client –
 Distribute applications directly over the internet
using JAVA. App is downloaded everytime your run
it.
CACHE
 Keep recently used html pages, images, applets etcs
on user hard drive. Only download when they
change

TCO


HTTP


Hyper Text Transfer Protocol – Protocol of the
WWW
Applet


Total Cost of Ownership – includes support
A compiled Java program ready for distribution over
WWW
Digital Signature

Numeric identifier indicating that a document hasn’t
been compromised or that authenticates the creator.









Data Base Servers
Application Servers
Web Servers
Ad Servers (Double Click)
Multimedia (audio/video servers)
Calendar Servers
Authentication (LDAP) servers
Mail servers
Proxy Servers






CS computing isolates each layer from the other
layers.
Computers can be added as necessary to scale
performance
Processing can happen anywhere, so that
bottlenecks can be eliminated
Machines can be dedicated/optimized for
different kinds of processing
Can start with everything on one machine, but
add machines as load grows
Needs TCP/IP network protocol