Welcome to CSC667 - Test Page for Apache Installation

Download Report

Transcript Welcome to CSC667 - Test Page for Apache Installation

Welcome to CSC667/867
Internet Application Design and
Development
Dr. Ilmi Yoon
NOTE: Course note courtesy to Ellis Horowits (USC CS571) and PrenticeHall (Deitel &
Associates). The materials are modified to fit to CSc667/867 with permissions from authors.
Topics – what you will learn
• Web Application Architecture
– Principles, Protocols and Practices
• Understanding of core technology, not platform
specific knowledge
• Pre-WWW, Internet, TCP/IP
• Web Server, Browser, HTTP
• Client side technologies
• Server side technologies
• E-commerce system & DB connections
• Web application development & Deployment
• XML and its applications
• Emerging technologies
– Web services, Semantic Web, Data exploration, 3Ds on
the WWW, Security and more…
Course Overview
– Mechanism and various technologies of
Internet applications through projects
• Develop your own web server (using JAVA)
– 2 people team project
• Experiment JavaScript/Python CGI project
– Individual project
• Develop and Deploy an Internet application
– 4 people team project
– Advanced Issues
– Most of all, not only knowledge, you will
learn the experience of building large
application, team work, searching for
necessary information from given large
resources and build confidence in yourself!
Course Overview
• Going through course overview using
printed syllabus
– exams, grading policy, late penalty
• Survey
Announcements
• TA – Berdnt Jung (Thu 2:00 ~ 3:00)
• Participating in Annotizer project using course web
site
• Start to think of term project as early as possible!!!
–
–
–
–
IOC Project (presentation by Gauri)
Art work on view (www.artworkonview.org )
SFSU CS Alumni site
WICE (Web-based Interactive Computing Environment)
• HTML 1 & 2 for self study
• Assignment 1 is now available on the course web site
• Any Questions?
• Then, let’s get started!!!
Defining the World Wide
Web
• A wide-area hypertext, multimedia
information retrieval system that provides
access to a large universe of documents
• A uniform way of accessing and viewing
some information on the Internet
• The WWW
– creates a world in which information has
a reference by which it can be accessed
– subsumes the capabilities of ftp, gopher,
wais and news
History of the World Wide
Web
• WWW
– Allows computer users to locate and view
multimedia-based documents
– Introduced in 1990 by Tim Berners-Lee
for astrophysicist to share documents
• Internet today
– Mixes computing and communications
technologies
– Makes information constantly and
instantly available to anyone with a
connection
The Internet and the
WWW are Different
• The Internet is a global digital
infrastructure that connects millions of
computers and tens of millions of people
• The World Wide Web is a mechanism that
unifies the retrieval and display of a
subset of data on the Internet
• An intranet is a local/global information
structure that connects an organization
internally
Major Technology Components
• Client/server architecture
– where client programs interact with web servers
• Network protocol
– HTTP, Hypertext Transfer Protocol, is the language
understood by browsers and web servers
– designed to move quickly from document to document
• Addressing system (Uniform Resource Locators)
– http://domain/directory/file.html
• Markup Language
– every web server understands and every browser
displays
– includes support for Hypertext and multimedia
Basic Internet
Definitions
• http://www.pierobon.org/iis/ by
Pierobon
• Simple definitions for LAN, WAN,
Internet, WWW, Hypertext,
Intranet, Extranet, Protocol, TCP/IP,
UDP, Address, Domain, Domain Name,
Plug-in, URL, URI, socket and a short
quiz!
Client/Server Architecture
Model
Terminals
PCs
Macs
X Windows
Multiplatform
browsers
(clients)
Addressing scheme (URL) + Protocols (HTTP, etc.) + Format
Negotiation (MIME)
HTTP
server
FTP
server
Gopher
server
NNTP
server
Mechanisms
Servers for
each
protocol
The WWW Server
• Web browsers and Web servers communicate according to a
protocol known as HTTP (HyperText Transfer Protocol)
– The current HTTP protocol is version 1.1
• The Web server is a software system running on a machine
often called the Web server, don’t confuse them
• A web server can
– receive and reply to HTTP requests
– retrieve documents from specified directories
– run programs in specified directories
– handle limited forms of security
• A web server does not
– know about the contents of a document, links in a
document, images in a document or whether a particular
file, e.g. a *.gif file, is in the correct format
Uniform Resource Locator
A mechanism whereby an Internet resource can be
specified in a single line of ASCII text
1. Scheme followed by a colon
http:,ftp:,gopher:,news:,mailto:,wais:,telnet:
file://pub/xt.ps (a PostScript file in directory pub on your local machine)
ftp://cs.sfsu.edu/docs/sweng.txt (a file sweng.txt in directory docs on cs.sfsu.edu, an anonymous ftp)
http://nunki.usc.edu/mydocs/book.doc (a file in directory mydocs on machine nunki.usc.edu)
2. Double slash (only for http, ftp, gopher, wais)
//
3. Internet domain name e.g., cs.sfsu.edu
4. Port number (this field is optional; e.g., pollux.usc.edu:8081)
--Standard or default port numbers:
--ftp is 21
gopher is 70
--telnet is 23
http is 80
--smtp is 25
nntp is 119
5. Path e.g., /pub/docs
Markup Languages
• HTML - hypertext markup language, specifies
document layout and the specification of
hypertext links to text, graphics and other types
of objects
• browsers display text and graphics using the
markup as guidance
• However, HTML is not like a word processing
program, e.g. Microsoft Word or WordPerfect,
and not like a page description languages, e.g.
postscript
– as a result, translation into HTML can produce a
result that does not look exactly like the
original
• XML (extensible markup language)
History of the Internet
• ARPAnet
– Implemented in late 1960’s by ARPA (Advanced
Research Projects Agency of DOD)
– Networked computer systems of a dozen
universities and institutions with 56KB
communications lines
– Grandparent of today’s Internet
– Intended to allow computers to be shared
– Became clear that key benefit was allowing fast
communication between researchers –
electronic-mail (email)
History of the Internet
(II)
• ARPA’s goals
– Allow multiple users to send and receive info at
same time
– Network operated packet switching technique
• Digital data sent in small packages called packets
• Packets contained data, address info, error-control
info and sequencing info
• Greatly reduced transmission costs of dedicated
communications lines
– Network designed to be operated without
centralized control
• If portion of network fails, remaining portions still able
to route packets
History of the Internet
(III)
• Transmission Control Protocol (TCP)
– Name of protocols for communicating over ARPAnet
– Ensured that messages were properly routed and
that they arrived intact
• Organizations implemented own networks
– Used both for intra-organization and communication
• Huge variety of networking hardware and
software appeared
– ARPA achieved inter-communication between all
platforms with development of the IP
• Internetworking Protocol
• Current architecture of Internet
– Combined set of protocols called TCP/IP
History of the Internet (IV)
• The Early Internet
– Limited to universities and research institutions
– Military became big user
– Next, government decided to release Internet for
commercial purposes
• Internet traffic grew
– Businesses spent heavily to improve Internet
• Better service for their clients
– Fierce competition among communications carriers
and hardware and software suppliers
– Result
• Bandwidth (info carrying capacity) of Internet increased
tremendously
http://www.isc.org/ds
Network Basics
• A host is a computer that is enabled to
function on a network
• any set of hosts connected in such a way
that any two hosts can send and receive
messages is called a network
– a protocol is the method by which two
computers agree to communicate
– an address space is the set of names of
computers that can be referenced
LAN + Internet Access
• Speak TCP/IP and add a Domain Name Server
• A router may be located either at your site
or at your ISP
User 1
User 2
User 3
User 4
Router
News
server
TCP/IP
network
Domain
Name
server
DNS
Internet
Print
server
Database
server
Mail
server
IP and TCP/IP
• To be a host on the Internet your
computer must:
– have a host/domain name, e.g.
tlaloc.sfsu.edu
– be assigned a unique IP address, e.g.
128.125.2.1 (static or dynamic IP)
– use the Internet protocol
– have a network connection that provides
a route to the Internet
IP Addresses
• An IP address is a 32-bit number, from 0
to about 4.3billion
• These numbers are written as four sets of
eight bits each,
network.subnetwork.subnetwork.computer
• The next generation of IP is IPv6
– it uses a 128 bit address space
Internet Domain Names
• A domain name has the following form:
– [subdomain].[subdomain].[…].domain
– E.g. my email address includes my name, host and
domain name, [email protected]
• U.S. domains are divided into the following logical
categories
– com
commercial and industrial organizations
– edu
educational institutions
– gov
non-military, government affiliated
organizations
– mil
military organizations
– net
network operations
– org
other organizations and user groups
Reading Assignment
• Read Chapter 1 & 2 from Web Application
Architecture
– Definitions of web page, web site, web application
– TCP/IP,Telnet, SMTP (Simple Mail Transfer Protocol),
POP (Post Office Protocol), IMAP (Internet Message
Access Protocol)
• Extra credit for those who read these chapters
and write a short summary report and post its url
at course web site using Annotizer
• Read “Basic Internet Definitions” and take the
quiz, print out and bring it back to classroom