SlideShare una empresa de Scribd logo
1 de 46
Distributed Web-Based
Systems
Given Credit Where It is Due
• Most of the slides are from Beyhan Akporay at Bilkent
University,Turkey and Aditya Akella at University of
Wisconsin, Madison.
• Some slides are from Dijiang Huang at Arizona State
University, Marlon Pierce at Indiana University and
http://www.brics.dk/ixwt/slides.html.
• Some slides are from Stefan Saroiu at University of
Toronto and Chiyoung Seo at University of Southern
California
• I have modified and added some slides.
INTRODUCTION
• What is World Wide Web?
INTRODUCTION
 The World Wide Web (WWW) can be viewed as a huge
distributed system with millions of clients and servers for
accessing linked documents.
 Servers maintain collections of documents while clients
provide users an easy-to-use interface for presenting
and accessing those documents.
 A document is fetched from a server, transferred to a
client, and presented on the screen. To a user there is
conceptually no difference between a document stored
locally or in another part of the world.
INTRODUCTION
 Now, Web has become more than just a simple
document based system.
 With the emergence of Web services, it is becoming a
system of distributed services rather than just
documents offered to any user or machine.
 What can we get from WWW?
 Read news, listen to music and watch video;
 Buy or sell goods such as books, airline tickets;
 Make reservations on hotel room, rental car, restaurant, etc.;
 Pay bills and transfer money from one bank account to another;
 …
TRADITIONAL WEB-BASED SYSTEMS
 Many Web-based systems are still organized as simple
client-server architectures.
TRADITIONAL WEB-BASED SYSTEMS
 The core of a Web site: a process that has access to a
local file system storing documents.
TRADITIONAL WEB-BASED SYSTEMS
 How to refer to a document?
 URL (Uniform Resource Locator)?
Uniform Resource Locator
 A reference called Uniform Resource Locator (URL) is
used to refer a document.
 The DNS name of its associated server along with a file
name is specified.
 The URL also specifies the protocol for transferring the
document across the network.
 Example:
http://www.cse.unl.edu/~ylu/csce855/notes/web-
system.ppt
TRADITIONAL WEB-BASED SYSTEMS
 A client interacts with Web servers through a special
application known as browser.
 What’s the key function of a browser?
 Responsible for displaying documents.
WEB DOCUMENTS
 A Web document does not only contain text, but it can
include all kinds of dynamic features such as audio,
video, animations, etc.
 In many cases special helper applications (interpreters)
are needed, and they are integrated into the browser.
 E.g., Windows Media Player and QuickTime Player for playing
streaming content
 The variety of document types forces browser to be
extensible. As a result, plug-ins are required to follow a
standard interfaces so that they can be easily integrated
with the browsers.
MULTITIERED ARCHITECTURES
 Web documents can be built in two ways:
Static – locates and returns the object identified in the
request. Static objects include predefined HTML
pages and JPEG or GIF files. does not require web
servers to communication with any server-side
application.
Dynamic – the request is forwarded to an application
system where the reply is generated dynamically, i.e.
data is generated through a server-side program
execution.
 Although Web started as simple two-tiered client-server
architecture for static Web documents, this architecture
has been extended to support advanced type of
documents.
MULTITIERED ARCHITECTURES
 Because of the server-side processing, many Web sites
are now organized as three-tiered architectures
consisting of a Web server, an application server, and a
database server.
 User data comes from an HTML form, specifying the
program and parameters.
 Server-side scripting technologies are used to generate
dynamic content:
Microsoft: Active Server Pages (ASP.NET)
Sun: Java Server Pages (JSP)
Netscape: JavaScript
Free Software Foundation: PHP
• What is the most popular Web server software?
– By far the most popular Web server is Apache. As of
March 2007, 58% of all websites are using it.
• How to make a web site scalable?
WEB SERVER CLUSTERS
Web servers are replicated and combined with a front end
to improve performance.
WEB SERVER CLUSTERS
 The front end can be designed in two ways:
Transport-layer switch – simply passes data sent along
the TCP connection to one of the servers, depending on
some measurement of the server’s load.
Content-aware request distribution – it first inspects the
HTTP request and decides which server it should
forward that request to.
For example, if the front end always forwards requests for the
same document to the same server, the server may cache the
document resulting in better response times.
Approach that combines the efficiency of transport-layer
switch and the functionality of content-aware distribution
has been developed.
WEB SERVER CLUSTERS
 Another alternative to set up a Web server cluster is to
use round-robin DNS.
 With round-robin DNS a single domain name is
associated with multiple IP addresses.
 When resolving a host name, a browser would receive a
list of multiple addresses, each address corresponding
to a server.
 Normally, browsers choose the first address on the list,
but most DNS servers circulate the entries.
 As a result, simple distribution of requests over the
servers in the cluster is achieved.
HTTP
 All communication between clients and servers is based
on HTTP. Servers listen on port 80.
 HTTP is a simple protocol; a client sends a request to a
server and waits for a response.
 HTTP is stateless; it does not have any concept of open
connection and does not require a server to maintain
information on its clients. (Can use HTTP cookies to
store session information.)
 HTTP is based on TCP; whenever a client issues a
request to a server, it first sets up a TCP connection and
sends the message on that connection. The same
connection is used for receiving the response.
 One of the problems with the first versions of HTTP was
its inefficient use of TCP connections.
 HTTP 1.0 vs. HTTP 1.1
HTTP CONNECTIONS
 A Web document is constructed from a collection of
different files from the same server.
 In HTTP version 1.0 and older, each request to a server
required setting up a separate connection. When server
had responded, the connection was broken down. These
connections are referred as nonpersistent.
 In HTTP version 1.1, several requests and their
responses can be issued without the need for a separate
connection. These connections are referred as
persistent.
 Furthermore, a client can issue several requests in a row
without waiting for the response to the first request which
is referred as pipelining.
HTTP CONNECTIONS
(a) Using non-persistent connections. (b) Using persistent connections.
HTTP Caching
• Clients often cache documents
– Challenge: update of documents
– If-Modified-Since requests to check
• When/how often should the original be checked for
changes?
– Check every time?
– Check each session? Day? Etc?
– Use “Expires” header
• If no Expires, often use Last-Modified as estimate
22
CSC2231: Internet Systems Stefan Saroiu 2005
Benefits of Proxy Caching
• Proxy caching is the most commonly used method to
improve Web performance
– Duplicate requests to the same document served from the cache
– Hits reduce latency, network utilization, and server load
– Introduces problems:
• Misses increase latency (extra hops)
• cache consistency
Clients Proxy Cache Servers
Hits
Misses Misses
Internet
Cache Consistency
• Fresh-enough is good-enough
• One writer, many readers
– Most content changes slowly wrt # reads
• Cache consistency governed by standards
• “Expiration” based cache consistency
– Expires timestamp on each object
– Cache revalidates content beyond that time
• Why not callbacks?
Problems
• Over 50% of all HTTP objects are uncacheable – why?
• Not easily solvable
– Dynamic data  stock prices, scores, web cams
– CGI scripts  results based on passed parameters
– SSL  encrypted data is not cacheable
– Cookies  results may be based on passed data
– Hit metering  owner wants to measure # of hits for
revenue, etc.
25
CSC2231: Internet Systems Stefan Saroiu 2005
Cache Deployments
$
Web
Server
Client
Cache
Where else?
CSC2231: Internet Systems Stefan Saroiu 2005
Cache Deployments
$
$ $
$
$
$
$ Web
Server
Client
Browser
Cache
CDN Reverse
Proxy/
Accelerator
CDN
CDNCDN
Proxy
Cache
Content Distribution
– Lots of excitement?
– Akamai, Digital Island/Sandpiper, Speedera
– What is a Content Distribution Network (CDN)?
• Outsourced caching and replication services
Content Distribution
– Lots of excitement?
– Akamai, Digital Island/Sandpiper, Speedera
– What is a Content Distribution Network (CDN)?
• Outsourced caching and replication services
CSC2231: Internet Systems Stefan Saroiu 2005
Content Providers’ Advantages
• CDN provider maintains networks and servers
– Capacity management
• Sharing resources across a large number of sites
– Economy of scale
– Control of content placement and routing
• Protects content provider from unpredictable load bursts
• Communication between content provider and CDN
network is not governed by standards
– Don’t even need to use HTTP
– Can cache “uncacheable” documents
– Can deploy alternative cache consistency
– Can place requirements on content providers
CDN’s Challenges
• How to replicate content?
• Where to replicate content?
• How to find replicated content?
• How to choose among known replicas?
• How to direct clients towards replica?
Content Distribution Networks
• Replicate content on many servers
32
Figure 12-18. The general organization of a CDN as a feedback-
control system (adapted from Sivasubramanian et al., 2004b).
How Akamai Works
• Clients fetch html document from primary server
– E.g. fetch index.html from cnn.com
• “Akamaized” URLs for replicated content are
replaced in html
– E.g. <img src=“http://cnn.com/af/x.gif”> replaced with
<img
src=“http://a73.g.akamaitech.net/7/23/cnn.com/af/x.g
if”>
• Client is forced to resolve aXYZ.g.akamaitech.net
hostname 33
How Akamai Works
• Root server gives NS record for
akamaitech.net
• akamaitech.net name server returns NS
record for g.akamaitech.net
• g.akamaitech.net name server chooses server
in region
34
How Akamai Works
End-user
35
cnn.com (content provider) DNS root server
1 2 3
4
Akamai high-level
DNS server
Akamai low-level DNS
server
Nearby
matching
Akamai server
11
6
7
8
9
10
Get
index.
html
Get
/cnn.com/foo.jpg
12
Get foo.jpg
5
Akamai – Subsequent Requests
End-user
36
cnn.com (content provider) DNS root server
1 2 Akamai high-level
DNS server
Akamai low-level DNS
server
7
8
9
10
Get
index.
html
Get
/cnn.com/foo.jpg
Nearby
matching
Akamai server
What is a Web Service?
• Web Service:
“Web-based applications that dynamically interact with other
Web applications using open standards that include XML, UDDI
and SOAP”
• Service-Oriented Architecture (SOA):
“Development of applications from distributed collections of
smaller loosely coupled service providers”
“A collection of services or software agents that communicate
freely with each other”
Web Service Advantages for E-
Business
• Allow companies to reduce the cost of doing e-business,
to deploy solutions faster
– Need a common program-to-program communications model
• Allow heterogeneous applications to be integrated more
rapidly, easily and less expensively
• Facilitate deploying and providing access to business
functions over the Web
Web Services Terminology
• SOAP (Simple Object Access Protocol)
– exchanging XML messages on a network
– Like RPC, it provides a way to communicate between applications
– Unlike RPC, it communicates over HTTP
– Because HTTP is supported by all Internet browsers and servers,
SOAP can run on different operating systems, with different
technologies and programming languages
• WSDL (Web Service Description Language )
– describing interfaces of Web services
• UDDI (Universal Description, Discovery and Integration)
– managing registries of Web services
Web Service Model (1/3)
Web Service Model (2/3)
• Roles in a Web Service Architecture
– Service provider
• Owner of the service
• Platform that hosts access to the service
– Service requestor
• Business that requires certain functions to be satisfied
• Application looking for and invoking an interaction with a
service
– Service registry
• Searchable registry of service descriptions where service
providers publish their service descriptions
Web Service Model (3/3)
• Operations in a Web Service Architecture
– Publish
• Service descriptions need to be published in order for
service requestor to find them
– Find
• Service requestor queries the service registry for the
service required
– Bind
• Service requestor invokes or initiates an interaction
with the service at runtime
Fault Tolerance Challenges
 How to deal with web service replications
 How to combine Byzantine fault tolerance with
web services
 Merideth et al. “Thema: Byzantine-Fault-Tolerant
Middleware for Web-Service Applications”, 2005.
Web Security Issues
 The Web has become the visible interface of the Internet
 Many corporations now use the Web for advertising, marketing and sales
 Web servers might be easy to use but…
 Complicated to configure correctly and difficult to build without security
flaws
 They can serve as a security hole by which an adversary might access
other data and computer systems
Threats Consequences Countermeasures
Integrity Modification of Data
Trojan horses
Loss of Information
Compromise of Machine
MACs (mandatory access
control) and Hashes
Confidentiality Eavesdropping
Theft of Information
Loss of Information
Privacy Breach
Encryption
DoS Stopping
Filling up Disks and
Resources
Stopped Transactions
Authentication Impersonation
Data Forgery
Misrepresentation of User
Accept false Data
Signatures, MACs
So Where to Secure the Web?
 There are many strategies to securing the web
1. We may attempt to secure the IP Layer of the TCP/IP
Stack: this may be accomplished using IPSec, for
example.
2. We may leave IP alone and secure on top of TCP: this
may be accomplished using the Secure Sockets Layer
(SSL) or Transport Layer Security (TLS)
3. We may seek to secure specific applications by using
application-specific security solutions: for example, we
may use Secure Electronic Transaction (SET)
 The first two provide generic solutions, while the third
provides for more specialized services
A Quick Look at Securing the TCP/IP
Stack
TCP
IP/IPSEC
HTTP FTP SMTP
TCP
IP
HTTP FTP SMTP
SSL/TLS
TCP
IP
S/MIME PGP
UDP
Kerberos SMTP
SET
HTTP
At the Network Level
At the Transport Level
At the Application Level

Más contenido relacionado

La actualidad más candente

Internet programming lecture 1
Internet programming lecture 1Internet programming lecture 1
Internet programming lecture 1Mohammed Hussein
 
ppt of web development for diploma student
ppt of web development for diploma student ppt of web development for diploma student
ppt of web development for diploma student Abhishekchauhan863165
 
Web browsing and Internet termenologies
Web browsing and Internet termenologiesWeb browsing and Internet termenologies
Web browsing and Internet termenologiesVTC_NeilaSofien
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development PresentationTurnToTech
 
IT2255 Web Essentials - Unit I Website Basics
IT2255 Web Essentials - Unit I  Website BasicsIT2255 Web Essentials - Unit I  Website Basics
IT2255 Web Essentials - Unit I Website Basicspkaviya
 
World wide web An Introduction
World wide web An IntroductionWorld wide web An Introduction
World wide web An IntroductionSidrah Noor
 
World wide web (WWW)
World wide web (WWW)World wide web (WWW)
World wide web (WWW)Mishuk Hossan
 
Content management system
Content management systemContent management system
Content management systemAdhoura Academy
 
Web Design & Development - Session 1
Web Design & Development - Session 1Web Design & Development - Session 1
Web Design & Development - Session 1Shahrzad Peyman
 
Web development | Derin Dolen
Web development | Derin Dolen Web development | Derin Dolen
Web development | Derin Dolen Derin Dolen
 
Front end web development
Front end web developmentFront end web development
Front end web developmentviveksewa
 
Introduction to Web Hosting.
Introduction to Web Hosting.Introduction to Web Hosting.
Introduction to Web Hosting.Cloudbells.com
 

La actualidad más candente (20)

Web Application
Web ApplicationWeb Application
Web Application
 
Internet programming lecture 1
Internet programming lecture 1Internet programming lecture 1
Internet programming lecture 1
 
ppt of web development for diploma student
ppt of web development for diploma student ppt of web development for diploma student
ppt of web development for diploma student
 
Web browsing and Internet termenologies
Web browsing and Internet termenologiesWeb browsing and Internet termenologies
Web browsing and Internet termenologies
 
Web design - How the Web works?
Web design - How the Web works?Web design - How the Web works?
Web design - How the Web works?
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
web server
web serverweb server
web server
 
IT2255 Web Essentials - Unit I Website Basics
IT2255 Web Essentials - Unit I  Website BasicsIT2255 Web Essentials - Unit I  Website Basics
IT2255 Web Essentials - Unit I Website Basics
 
World wide web An Introduction
World wide web An IntroductionWorld wide web An Introduction
World wide web An Introduction
 
World wide web (WWW)
World wide web (WWW)World wide web (WWW)
World wide web (WWW)
 
Web server
Web serverWeb server
Web server
 
WEB HOSTING
WEB HOSTINGWEB HOSTING
WEB HOSTING
 
Http Protocol
Http ProtocolHttp Protocol
Http Protocol
 
Content management system
Content management systemContent management system
Content management system
 
URI handlers
URI handlersURI handlers
URI handlers
 
Web Design & Development - Session 1
Web Design & Development - Session 1Web Design & Development - Session 1
Web Design & Development - Session 1
 
How the Web Works
How the Web WorksHow the Web Works
How the Web Works
 
Web development | Derin Dolen
Web development | Derin Dolen Web development | Derin Dolen
Web development | Derin Dolen
 
Front end web development
Front end web developmentFront end web development
Front end web development
 
Introduction to Web Hosting.
Introduction to Web Hosting.Introduction to Web Hosting.
Introduction to Web Hosting.
 

Destacado

Web as a Medium: Aesthetics & Design
Web as a Medium: Aesthetics & DesignWeb as a Medium: Aesthetics & Design
Web as a Medium: Aesthetics & Designguest2d5207
 
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...Logo Design Guru
 
Digital Age - Content. Production. Promotion
Digital Age - Content. Production. PromotionDigital Age - Content. Production. Promotion
Digital Age - Content. Production. PromotionVera Chernysh
 
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6Rakuten Group, Inc.
 
Software Requirements
 Software Requirements Software Requirements
Software RequirementsZaman Khan
 
Infrastructure Strategy Plan
Infrastructure Strategy Plan Infrastructure Strategy Plan
Infrastructure Strategy Plan Tarry Singh
 
Enterprise solution design principles
Enterprise solution design principlesEnterprise solution design principles
Enterprise solution design principlesLeo Barella
 
How to implement Electronic Records Management?
How to implement Electronic Records Management?How to implement Electronic Records Management?
How to implement Electronic Records Management?Atle Skjekkeland
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement SpecificationNiraj Kumar
 
EHR Implementation Plan Presentation
EHR Implementation Plan PresentationEHR Implementation Plan Presentation
EHR Implementation Plan PresentationDavid Montanez, PMP
 
Design Principles
Design PrinciplesDesign Principles
Design PrinciplesDavid Gelb
 
Content Management System, Web, Social and Beyond
Content Management System, Web, Social and BeyondContent Management System, Web, Social and Beyond
Content Management System, Web, Social and BeyondDanielle Brigida
 
Introduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use CasesIntroduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use CasesZabbix
 
User Interface Design
User Interface DesignUser Interface Design
User Interface DesignJReifman
 
Designing an IT Solution
Designing an IT SolutionDesigning an IT Solution
Designing an IT SolutionPhilippe Julio
 

Destacado (15)

Web as a Medium: Aesthetics & Design
Web as a Medium: Aesthetics & DesignWeb as a Medium: Aesthetics & Design
Web as a Medium: Aesthetics & Design
 
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...
Humanizing Design: 13 Ways to Provoke Psychological Responses through Custom ...
 
Digital Age - Content. Production. Promotion
Digital Age - Content. Production. PromotionDigital Age - Content. Production. Promotion
Digital Age - Content. Production. Promotion
 
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6
[RakutenTechConf2013] [E-3] Financial Web System with Java EE 6
 
Software Requirements
 Software Requirements Software Requirements
Software Requirements
 
Infrastructure Strategy Plan
Infrastructure Strategy Plan Infrastructure Strategy Plan
Infrastructure Strategy Plan
 
Enterprise solution design principles
Enterprise solution design principlesEnterprise solution design principles
Enterprise solution design principles
 
How to implement Electronic Records Management?
How to implement Electronic Records Management?How to implement Electronic Records Management?
How to implement Electronic Records Management?
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
EHR Implementation Plan Presentation
EHR Implementation Plan PresentationEHR Implementation Plan Presentation
EHR Implementation Plan Presentation
 
Design Principles
Design PrinciplesDesign Principles
Design Principles
 
Content Management System, Web, Social and Beyond
Content Management System, Web, Social and BeyondContent Management System, Web, Social and Beyond
Content Management System, Web, Social and Beyond
 
Introduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use CasesIntroduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use Cases
 
User Interface Design
User Interface DesignUser Interface Design
User Interface Design
 
Designing an IT Solution
Designing an IT SolutionDesigning an IT Solution
Designing an IT Solution
 

Similar a introduction to Web system

Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systemsReza Gh
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxAlokKumar250045
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxhishamousl
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT Vpkaviya
 
05.m3 cms list-ofwebserver
05.m3 cms list-ofwebserver05.m3 cms list-ofwebserver
05.m3 cms list-ofwebservertarensi
 
Web Server Types - Understanding a Web Server
Web Server Types - Understanding a Web ServerWeb Server Types - Understanding a Web Server
Web Server Types - Understanding a Web ServerCloudtechtiq
 
Unit VI Overlays
Unit VI OverlaysUnit VI Overlays
Unit VI Overlayssangusajjan
 
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy Issues
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy IssuesIWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy Issues
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy IssuesIWMW
 
21 Www Web Services
21 Www Web Services21 Www Web Services
21 Www Web Servicesroyans
 
Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016Jack Zheng
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overviewYoohyun Kim
 
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.pptweb-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt20521742
 
Web Database
Web DatabaseWeb Database
Web Databaseidroos7
 

Similar a introduction to Web system (20)

Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systems
 
WP Chap 1 & 2.pptx
WP Chap 1 & 2.pptxWP Chap 1 & 2.pptx
WP Chap 1 & 2.pptx
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptx
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptx
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT V
 
05.m3 cms list-ofwebserver
05.m3 cms list-ofwebserver05.m3 cms list-ofwebserver
05.m3 cms list-ofwebserver
 
Web Server Types - Understanding a Web Server
Web Server Types - Understanding a Web ServerWeb Server Types - Understanding a Web Server
Web Server Types - Understanding a Web Server
 
Unit VI Overlays
Unit VI OverlaysUnit VI Overlays
Unit VI Overlays
 
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy Issues
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy IssuesIWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy Issues
IWMW 2003: C7 Bandwidth Management Techniques: Technical And Policy Issues
 
21 Www Web Services
21 Www Web Services21 Www Web Services
21 Www Web Services
 
Web server
Web serverWeb server
Web server
 
0130225347
01302253470130225347
0130225347
 
Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overview
 
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.pptweb-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
 
Web Database
Web DatabaseWeb Database
Web Database
 
Ch-1_.ppt
Ch-1_.pptCh-1_.ppt
Ch-1_.ppt
 

Más de hashim102

Polymorphism
PolymorphismPolymorphism
Polymorphismhashim102
 
Politicial instability in bloachistan
Politicial instability in bloachistanPoliticial instability in bloachistan
Politicial instability in bloachistanhashim102
 
Writing skills
Writing skillsWriting skills
Writing skillshashim102
 
Reading skills
Reading skillsReading skills
Reading skillshashim102
 
Differnce of two processors
Differnce of two processorsDiffernce of two processors
Differnce of two processorshashim102
 
cpu scheduling
cpu schedulingcpu scheduling
cpu schedulinghashim102
 
data structure
data structuredata structure
data structurehashim102
 

Más de hashim102 (11)

Web layers
Web layersWeb layers
Web layers
 
Holography
HolographyHolography
Holography
 
Polymorphism
PolymorphismPolymorphism
Polymorphism
 
Bad news
Bad newsBad news
Bad news
 
Politicial instability in bloachistan
Politicial instability in bloachistanPoliticial instability in bloachistan
Politicial instability in bloachistan
 
Writing skills
Writing skillsWriting skills
Writing skills
 
Reading skills
Reading skillsReading skills
Reading skills
 
Differnce of two processors
Differnce of two processorsDiffernce of two processors
Differnce of two processors
 
Gpu
GpuGpu
Gpu
 
cpu scheduling
cpu schedulingcpu scheduling
cpu scheduling
 
data structure
data structuredata structure
data structure
 

Último

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinojohnmickonozaleda
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 

Último (20)

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipino
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 

introduction to Web system

  • 2. Given Credit Where It is Due • Most of the slides are from Beyhan Akporay at Bilkent University,Turkey and Aditya Akella at University of Wisconsin, Madison. • Some slides are from Dijiang Huang at Arizona State University, Marlon Pierce at Indiana University and http://www.brics.dk/ixwt/slides.html. • Some slides are from Stefan Saroiu at University of Toronto and Chiyoung Seo at University of Southern California • I have modified and added some slides.
  • 3. INTRODUCTION • What is World Wide Web?
  • 4. INTRODUCTION  The World Wide Web (WWW) can be viewed as a huge distributed system with millions of clients and servers for accessing linked documents.  Servers maintain collections of documents while clients provide users an easy-to-use interface for presenting and accessing those documents.  A document is fetched from a server, transferred to a client, and presented on the screen. To a user there is conceptually no difference between a document stored locally or in another part of the world.
  • 5. INTRODUCTION  Now, Web has become more than just a simple document based system.  With the emergence of Web services, it is becoming a system of distributed services rather than just documents offered to any user or machine.  What can we get from WWW?  Read news, listen to music and watch video;  Buy or sell goods such as books, airline tickets;  Make reservations on hotel room, rental car, restaurant, etc.;  Pay bills and transfer money from one bank account to another;  …
  • 6. TRADITIONAL WEB-BASED SYSTEMS  Many Web-based systems are still organized as simple client-server architectures.
  • 7. TRADITIONAL WEB-BASED SYSTEMS  The core of a Web site: a process that has access to a local file system storing documents.
  • 8. TRADITIONAL WEB-BASED SYSTEMS  How to refer to a document?  URL (Uniform Resource Locator)?
  • 9. Uniform Resource Locator  A reference called Uniform Resource Locator (URL) is used to refer a document.  The DNS name of its associated server along with a file name is specified.  The URL also specifies the protocol for transferring the document across the network.  Example: http://www.cse.unl.edu/~ylu/csce855/notes/web- system.ppt
  • 10. TRADITIONAL WEB-BASED SYSTEMS  A client interacts with Web servers through a special application known as browser.  What’s the key function of a browser?  Responsible for displaying documents.
  • 11. WEB DOCUMENTS  A Web document does not only contain text, but it can include all kinds of dynamic features such as audio, video, animations, etc.  In many cases special helper applications (interpreters) are needed, and they are integrated into the browser.  E.g., Windows Media Player and QuickTime Player for playing streaming content  The variety of document types forces browser to be extensible. As a result, plug-ins are required to follow a standard interfaces so that they can be easily integrated with the browsers.
  • 12. MULTITIERED ARCHITECTURES  Web documents can be built in two ways: Static – locates and returns the object identified in the request. Static objects include predefined HTML pages and JPEG or GIF files. does not require web servers to communication with any server-side application. Dynamic – the request is forwarded to an application system where the reply is generated dynamically, i.e. data is generated through a server-side program execution.  Although Web started as simple two-tiered client-server architecture for static Web documents, this architecture has been extended to support advanced type of documents.
  • 13. MULTITIERED ARCHITECTURES  Because of the server-side processing, many Web sites are now organized as three-tiered architectures consisting of a Web server, an application server, and a database server.  User data comes from an HTML form, specifying the program and parameters.  Server-side scripting technologies are used to generate dynamic content: Microsoft: Active Server Pages (ASP.NET) Sun: Java Server Pages (JSP) Netscape: JavaScript Free Software Foundation: PHP
  • 14. • What is the most popular Web server software? – By far the most popular Web server is Apache. As of March 2007, 58% of all websites are using it.
  • 15. • How to make a web site scalable?
  • 16. WEB SERVER CLUSTERS Web servers are replicated and combined with a front end to improve performance.
  • 17. WEB SERVER CLUSTERS  The front end can be designed in two ways: Transport-layer switch – simply passes data sent along the TCP connection to one of the servers, depending on some measurement of the server’s load. Content-aware request distribution – it first inspects the HTTP request and decides which server it should forward that request to. For example, if the front end always forwards requests for the same document to the same server, the server may cache the document resulting in better response times. Approach that combines the efficiency of transport-layer switch and the functionality of content-aware distribution has been developed.
  • 18. WEB SERVER CLUSTERS  Another alternative to set up a Web server cluster is to use round-robin DNS.  With round-robin DNS a single domain name is associated with multiple IP addresses.  When resolving a host name, a browser would receive a list of multiple addresses, each address corresponding to a server.  Normally, browsers choose the first address on the list, but most DNS servers circulate the entries.  As a result, simple distribution of requests over the servers in the cluster is achieved.
  • 19. HTTP  All communication between clients and servers is based on HTTP. Servers listen on port 80.  HTTP is a simple protocol; a client sends a request to a server and waits for a response.  HTTP is stateless; it does not have any concept of open connection and does not require a server to maintain information on its clients. (Can use HTTP cookies to store session information.)  HTTP is based on TCP; whenever a client issues a request to a server, it first sets up a TCP connection and sends the message on that connection. The same connection is used for receiving the response.  One of the problems with the first versions of HTTP was its inefficient use of TCP connections.  HTTP 1.0 vs. HTTP 1.1
  • 20. HTTP CONNECTIONS  A Web document is constructed from a collection of different files from the same server.  In HTTP version 1.0 and older, each request to a server required setting up a separate connection. When server had responded, the connection was broken down. These connections are referred as nonpersistent.  In HTTP version 1.1, several requests and their responses can be issued without the need for a separate connection. These connections are referred as persistent.  Furthermore, a client can issue several requests in a row without waiting for the response to the first request which is referred as pipelining.
  • 21. HTTP CONNECTIONS (a) Using non-persistent connections. (b) Using persistent connections.
  • 22. HTTP Caching • Clients often cache documents – Challenge: update of documents – If-Modified-Since requests to check • When/how often should the original be checked for changes? – Check every time? – Check each session? Day? Etc? – Use “Expires” header • If no Expires, often use Last-Modified as estimate 22
  • 23. CSC2231: Internet Systems Stefan Saroiu 2005 Benefits of Proxy Caching • Proxy caching is the most commonly used method to improve Web performance – Duplicate requests to the same document served from the cache – Hits reduce latency, network utilization, and server load – Introduces problems: • Misses increase latency (extra hops) • cache consistency Clients Proxy Cache Servers Hits Misses Misses Internet
  • 24. Cache Consistency • Fresh-enough is good-enough • One writer, many readers – Most content changes slowly wrt # reads • Cache consistency governed by standards • “Expiration” based cache consistency – Expires timestamp on each object – Cache revalidates content beyond that time • Why not callbacks?
  • 25. Problems • Over 50% of all HTTP objects are uncacheable – why? • Not easily solvable – Dynamic data  stock prices, scores, web cams – CGI scripts  results based on passed parameters – SSL  encrypted data is not cacheable – Cookies  results may be based on passed data – Hit metering  owner wants to measure # of hits for revenue, etc. 25
  • 26. CSC2231: Internet Systems Stefan Saroiu 2005 Cache Deployments $ Web Server Client Cache Where else?
  • 27. CSC2231: Internet Systems Stefan Saroiu 2005 Cache Deployments $ $ $ $ $ $ $ Web Server Client Browser Cache CDN Reverse Proxy/ Accelerator CDN CDNCDN Proxy Cache
  • 28. Content Distribution – Lots of excitement? – Akamai, Digital Island/Sandpiper, Speedera – What is a Content Distribution Network (CDN)? • Outsourced caching and replication services
  • 29. Content Distribution – Lots of excitement? – Akamai, Digital Island/Sandpiper, Speedera – What is a Content Distribution Network (CDN)? • Outsourced caching and replication services
  • 30. CSC2231: Internet Systems Stefan Saroiu 2005 Content Providers’ Advantages • CDN provider maintains networks and servers – Capacity management • Sharing resources across a large number of sites – Economy of scale – Control of content placement and routing • Protects content provider from unpredictable load bursts • Communication between content provider and CDN network is not governed by standards – Don’t even need to use HTTP – Can cache “uncacheable” documents – Can deploy alternative cache consistency – Can place requirements on content providers
  • 31. CDN’s Challenges • How to replicate content? • Where to replicate content? • How to find replicated content? • How to choose among known replicas? • How to direct clients towards replica?
  • 32. Content Distribution Networks • Replicate content on many servers 32 Figure 12-18. The general organization of a CDN as a feedback- control system (adapted from Sivasubramanian et al., 2004b).
  • 33. How Akamai Works • Clients fetch html document from primary server – E.g. fetch index.html from cnn.com • “Akamaized” URLs for replicated content are replaced in html – E.g. <img src=“http://cnn.com/af/x.gif”> replaced with <img src=“http://a73.g.akamaitech.net/7/23/cnn.com/af/x.g if”> • Client is forced to resolve aXYZ.g.akamaitech.net hostname 33
  • 34. How Akamai Works • Root server gives NS record for akamaitech.net • akamaitech.net name server returns NS record for g.akamaitech.net • g.akamaitech.net name server chooses server in region 34
  • 35. How Akamai Works End-user 35 cnn.com (content provider) DNS root server 1 2 3 4 Akamai high-level DNS server Akamai low-level DNS server Nearby matching Akamai server 11 6 7 8 9 10 Get index. html Get /cnn.com/foo.jpg 12 Get foo.jpg 5
  • 36. Akamai – Subsequent Requests End-user 36 cnn.com (content provider) DNS root server 1 2 Akamai high-level DNS server Akamai low-level DNS server 7 8 9 10 Get index. html Get /cnn.com/foo.jpg Nearby matching Akamai server
  • 37. What is a Web Service? • Web Service: “Web-based applications that dynamically interact with other Web applications using open standards that include XML, UDDI and SOAP” • Service-Oriented Architecture (SOA): “Development of applications from distributed collections of smaller loosely coupled service providers” “A collection of services or software agents that communicate freely with each other”
  • 38. Web Service Advantages for E- Business • Allow companies to reduce the cost of doing e-business, to deploy solutions faster – Need a common program-to-program communications model • Allow heterogeneous applications to be integrated more rapidly, easily and less expensively • Facilitate deploying and providing access to business functions over the Web
  • 39. Web Services Terminology • SOAP (Simple Object Access Protocol) – exchanging XML messages on a network – Like RPC, it provides a way to communicate between applications – Unlike RPC, it communicates over HTTP – Because HTTP is supported by all Internet browsers and servers, SOAP can run on different operating systems, with different technologies and programming languages • WSDL (Web Service Description Language ) – describing interfaces of Web services • UDDI (Universal Description, Discovery and Integration) – managing registries of Web services
  • 41. Web Service Model (2/3) • Roles in a Web Service Architecture – Service provider • Owner of the service • Platform that hosts access to the service – Service requestor • Business that requires certain functions to be satisfied • Application looking for and invoking an interaction with a service – Service registry • Searchable registry of service descriptions where service providers publish their service descriptions
  • 42. Web Service Model (3/3) • Operations in a Web Service Architecture – Publish • Service descriptions need to be published in order for service requestor to find them – Find • Service requestor queries the service registry for the service required – Bind • Service requestor invokes or initiates an interaction with the service at runtime
  • 43. Fault Tolerance Challenges  How to deal with web service replications  How to combine Byzantine fault tolerance with web services  Merideth et al. “Thema: Byzantine-Fault-Tolerant Middleware for Web-Service Applications”, 2005.
  • 44. Web Security Issues  The Web has become the visible interface of the Internet  Many corporations now use the Web for advertising, marketing and sales  Web servers might be easy to use but…  Complicated to configure correctly and difficult to build without security flaws  They can serve as a security hole by which an adversary might access other data and computer systems Threats Consequences Countermeasures Integrity Modification of Data Trojan horses Loss of Information Compromise of Machine MACs (mandatory access control) and Hashes Confidentiality Eavesdropping Theft of Information Loss of Information Privacy Breach Encryption DoS Stopping Filling up Disks and Resources Stopped Transactions Authentication Impersonation Data Forgery Misrepresentation of User Accept false Data Signatures, MACs
  • 45. So Where to Secure the Web?  There are many strategies to securing the web 1. We may attempt to secure the IP Layer of the TCP/IP Stack: this may be accomplished using IPSec, for example. 2. We may leave IP alone and secure on top of TCP: this may be accomplished using the Secure Sockets Layer (SSL) or Transport Layer Security (TLS) 3. We may seek to secure specific applications by using application-specific security solutions: for example, we may use Secure Electronic Transaction (SET)  The first two provide generic solutions, while the third provides for more specialized services
  • 46. A Quick Look at Securing the TCP/IP Stack TCP IP/IPSEC HTTP FTP SMTP TCP IP HTTP FTP SMTP SSL/TLS TCP IP S/MIME PGP UDP Kerberos SMTP SET HTTP At the Network Level At the Transport Level At the Application Level

Notas del editor

  1. Uniform Resource Locator (URL)