Debremarkos University
Computer Science Department
Web Programming
(CoSc3082)
Chapter: One
Introduction
The Internet – a network of networks
An infrastructure (connectivity among a large number of
machines world wide)
Several applications:
E-mal
www
File transfer (FTP)
Remote login
E-commerce
Instant messaging (chat)
Mailing lists
…
• www (world wide web)
– A collection of websites
• A website
– A collection of resources:
• Web pages (static / dynamic)
• Media files (images, animations, sound, …)
• Style files (CSS)
• Documents (pdf, doc, txt, rtf, …)
•…
– Has a globally unique name
• E.g. www.dmu.edu.et
– Stored on machines called web servers
A web page
A document with a mark-up language called HTML
The basic unit of information storage on the www
How does the www work?
Websites (with unique names) are stored on web servers
Users access these websites via the Internet using software called a
web browser.
A user sends requests for resources from a server with the help of
the a user agent (browser)
The server sends the requested resource to the user agent
Software involved:
At the server:
Web server software : listens for incoming requests for resources
from clients and serves the requests
Apache - open source
IIS (Internet Information Services) – Microsoft
Squid
…
At the client:
Web browser : sends/receives requests/responses to/from web
servers on behalf of the client and renders content as necessary
Microsoft Internet Explorer
Mozilla
Firefox
Opera
Safari
• Communication protocol
– HTTP (HyperText Transfer Protocol)
• Client (web browser) and Server (web server)
communicate via the HTTP to exchange request/response
messages
• The web is governed by the w3c (world wide web consortium)
(www.w3.org)
• How are websites uniquely named?
– DNS (Domain Name System)
• Resolves a human friendly name (eg www.google.com) to a
machine friendly IP address (eg 64.233.187.99)
• “Phone book” of the Internet
• For this purpose, DNS servers store a table containing name-IP
(among other things) pairs and do a look-up when requested
• A DNS server may communicate with other server to resolve a
given name
• There are about 12 root DNS servers (
http://www.root-servers.org/)
DNS name structure
Hierarchical in nature (eg. cs.dmu.edu.et)
cs is under dmu(a subdomain of dmu), u is under edu, edu is
under et.
The highest level is the last component of the DNS address
Labels separated by . (dot)
Labels can be up to 63 characters long and are case insensitive
A maximum of 255 characters is allowed in total
The last (highest) labels of a DNS name can be:
Three letter code top level domains (TLDs): indicating the type of
organization
com, edu, gov, net, org, biz, …
Two letter country codes (CCTLDs): indicating the country
et, us, za, uk, tv, …
URL (Uniform Resource Locator)
The exact address of a resource on the web
Format:
<protocol>://<host>[:<port>][<path>][?<query>]
E.g. http://www.somedomain.com/search.php?q=dns&lang=en
Protocol – identifies the type of protocol to be used for communication
http, ftp, mailto, …
Host – identifies the machine on which the requested resource is stored
Domain names (eg. www.google.com)
IP address
Port – identifies the port number of the web server software on the web server
machine
Default port for http: 80
Path – identifies the name and path of the resource on the server
Query – specifies parameters, if any, that should be sent to the server along with the
request
has the form: ?var_name1=value1&var_name2=value2&…
What is the difference b/n URL,URI, and URN?
• URIs (uniform resource identifiers) identify resource on the internet.
• URIs that start with http:// are called as URLs (Uniform Resource
Locators).
• There are two types of URIs: URLs and URNs
• A URL takes you straight to the resource and the data.
• A URN is only unique name you can use to identify any resource you
want.
• URNs are related to namespaces.
• Both URLs and URNs can uniquely identify resources over the
internet.
• Use URLs when you need to know or specify location information.
• Use URNs when the resource is location independent.
• URI is superset whereas URL is subset of URI.
• Common URLs refer to files, directories or server side code that
performs tasks such as databases lookups, internet searches and
business application processing.
• Address specific URLs and name-based URNs.
h!
uc
M
S o
o u
Y
n k
h a
T