View
219
Download
1
Tags:
Embed Size (px)
Citation preview
Welcome to Welcome to CSC667/867CSC667/867Welcome to Welcome to CSC667/867CSC667/867
Internet Application Design and Internet Application Design and DevelopmentDevelopment
Dr. Ilmi YoonDr. 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…
– 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
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
Multiplatformbrowsers(clients)
MechanismsAddressing scheme (URL) + Protocols (HTTP, etc.) + FormatNegotiation (MIME)
Servers foreachprotocol
HTTPserver
FTPserver
Gopherserver
NNTPserver
Terminals PCs Macs X Windows
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 text1. 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.edu4. 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
User 1 User 2 User 3 User 4
Databaseserver
Printserver
Mailserver
DomainNameserverDNS
Internet
Router
TCP/IPnetwork
Newsserver
• Speak TCP/IP and add a Domain Name Server• A router may be located either at your site or at your ISP
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