Chapter 4: Core Web Technologies. Contents - Chapter 1 o Exchanging information over the Internet ÞHTTP, HTML ÞURI, URI ÞWeb server, web browser o Web.

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Chapter 17: WEB COMPONENTS
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
An architecture for webb applications, J2EE
Introduction to Java 2 Enterprise Edition About myself –Neutrinos, Cancer Research, IT Applications Today’s topic: J2EE –Context –Advantages –Components.
 Java  Python  Bigtable(Bt) is a distributed storage system for managing structured data that is designed to scale to a very large size.  Query Language.
JAVA Technology. Java Technology Java technology is a portfolio of products that are based on the power of networks and the idea that the same software.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
The Internet Useful Definitions and Concepts About the Internet.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Internet…issues Managing the Internet
Technologies For use on different layers. Technologies Client tier Client tier to middle tier protocols Middle tier technologies Middle tier to data tier.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Definitions, Definitions, Definitions Lead to Understanding.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
WWW and Internet The Internet Creation of the Web Languages for document description Active web pages.
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
 Proxy Servers are software that act as intermediaries between client and servers on the Internet.  They help users on private networks get information.
©Brooks/Cole, 2003 Chapter 6 Computer Networks. ©Brooks/Cole, 2003 Understand the rationale for the existence of networks. Distinguish between the three.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
FORESEC Academy FORESEC Academy Security Essentials (II)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Plattner Melanie Leschinger Bernhard
EJB Overview Celsina Bignoli Distributed Business Applications Server DB Client DB Server DB.
Distributed Multitiered Applications The J2EE platform uses a multitiered distributed application model. Application logic is divided into components 1.
CHAPTER 2 PCs on the Internet Suraya Alias. The TCP/IP Suite of Protocols Internet applications – client/server applications The client requested data.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
Chapter 4: Core Web Technologies
HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel Copyright Springer Verlag Berlin Heidelberg 2004.
Ing. Ignacio Roqueta ARTech GeneXus and J2EE.
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
Postacademic Interuniversity Course in Information Technology – Module C1p1 Contents Data Communications Applications –File & print serving –Mail –Domain.
Client presentation layer resource management layer application logic layer information system Copyright Springer Verlag Berlin Heidelberg 2004.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
第十四章 J2EE 入门 Introduction What is J2EE ?
Enterprise Java v120131Intro to JavaEE1 Java EE 5 TM Introduction.
Chapter 4 Networking and the Internet. © 2005 Pearson Addison-Wesley. All rights reserved 4-2 Chapter 4: Networking and the Internet 4.1 Network Fundamentals.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
NETWORK HARDWARE AND SOFTWARE MR ROSS UNIT 3 IT APPLICATIONS.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Assignment of JAVA id : BSSE-F10-M-10-JAVA1 Overview of J2EE/Session 2/Slide 1 of 38.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
WWW Programming Model. WWW Model The Internet WWW architecture provides a flexible and powerful programming model. Applications and content are presented.
WEB SERVER SOFTWARE FEATURE SETS
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
Application of the Internet 1998/12/09 KEIO University, JAPAN Mikiyo
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
1 Chapter 22 World Wide Web (HTTP) Chapter 22 World Wide Web (HTTP) Mi-Jung Choi Dept. of Computer Science and Engineering
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
CX Introduction to Web Programming
Instructor Materials Chapter 5 Providing Network Services
WWW and HTTP King Fahd University of Petroleum & Minerals
Web Development Web Servers.
Distributed System Using Java 2 Enterprise Edition (J2EE)
Presentation transcript:

Chapter 4: Core Web Technologies

Contents - Chapter 1 o Exchanging information over the Internet ÞHTTP, HTML ÞURI, URI ÞWeb server, web browser o Web services for supporting remote clients ÞApplets ÞCommon Gateway Interface (CGI) ÞServlets o Application servers ÞMiddleware for Web applications ÞJ2EE o Web technologies for application integration ÞMiddleware extensions ÞFirewalls and tunneling

Before and after the web o Early protocols, applications ÞTelnet: to log in to a remote machine ÞSMTP: Simple Mail Transfer Protocol ÞFTP: File Transfer Protocol ÞArchie: FTP to create a distributed file system ÞGopher: GUI for publishing and accessing text files over the Internet o Web technologies ÞWeb server ÞWeb browser ÞHTTP: HyperText Transfer Protocol ÞHTML: HyperText Markup Language ÞURI: Uniform Resource Identifier ÞURL: Uniform Resource Locator

Proxy o Acts as a server and client o Caching o Block undesired sites o Log usage o Bypass blocks o Scan outgoing traffic HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel

Gateway o Acts as an intermediary for a server o Keeps machines anonymous o Controls access to the network o Performs load-balancing, authentication, decryption HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel

Firewall o Blocks unauthorized access, permits authorized communications o permit / deny / encrypt / decrypt / proxy all computer traffic between different security domains HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel

Tunnel o Acts as a blind relay between two connections o Encapsulate protocols within HTTP or SSH (Secure Shell) to get through what the firewall would prevent HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel

Secure Socket Layer (SSL) o Normally HTTP traffic is not encrypted, it can be “sniffed” o SSL uses public key encryption o HTTPS: HyperText Transfer Protocol over Secure sockets layer o HTTP “cookies” are used to store data on the client machine HTTPS client Secure Sockets Layer (SSL) HTTPS server TCP/IP network layer application layer

client server (resource manager) middleware wide area network (Internet) HTTP client HTTP server Copyright Springer Verlag Berlin Heidelberg 2004 A 3-tier architecture on the web o “Let’s put an ATM” in every home” o Business-to-consumer (B2C) interaction o The web browser is a universal client

middleware Web server client browser java virtual machine applet wide area network (Internet) firewall server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004 Applets o HTTP is a document exchange protocol, it’s static o Applets are downloadable programs o The server sends the appropriate program each time o The web browser becomes a universal client o Code must be small for rapid transfer

middleware Web server browser wide area network (Internet) firewall HTTP GET request client CGI program server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004 Common Gateway Interface o The CGI program is on the server and it has a URL o When the URL is accessed, the CGI program is executed and its output is saved as an HTML document o This saved document is returned to the web browser which then displays it o It is possible to pass parameters to CGI programs

middleware browser wide area network (Internet) firewall HTTP GET request client Web server Java server process Java thread server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004 Servlets o Similar to CGI, but “lightweight” o Run as Java threads o Saves the cost of context switching o Memory efficient o Can be stateless

connection to resource mgmt layer presentation layer resource management layer application logic layer client application server Web server wide area network (Internet) firewall HTTP browser other protocols other servers ( , SOAP,..) Copyright Springer Verlag Berlin Heidelberg 2004 Application servers o It’s a middleware platform that provides support for Web access o Covers both the application logic and the presentation layer o Prepares, dynamically generates, manages document

support for communication and presentation Servlets JavaServer Pages (JSP) Enterprise Java Beans (EJB) Java DataBase Connectivity (JDBC) Java Naming and Directory Interface (JNDI) support for the application integration Java 2 Connector Architecture (J2CA) Java Message Service (JMS) Java transaction API (JTA) Java API for XML Processing (JAXP) JavaMail Java Authentication and Authorization Service (JAAS) support for access to resource managers Copyright Springer Verlag Berlin Heidelberg 2004 J2EE – main components

Enterprise Java Beans (EJB) o Implement the application logic o Deliver application specific functionality o Three types of beans ÞSession beans: handle session with a client (stateful/stateless) ÞEntity beans: persistent beans stored in a database ÞMessage-driven beans: can create asynchronous interaction with clients o EJB container provides the environment in which the beans are run ÞWeb server ÞWeb browser ÞHTTP: HyperText Transfer Protocol ÞHTML: HyperText Markup Language ÞURI: Uniform Resource Identifier ÞURL: Uniform Resource Locator

application logic layer presentation layer services (load balancing, pooling, caching, transaction, persistence,…) administration (management and security) application server EJB JDBC EJB JNDI J2CA resource adapter other adapters DBMS applications enterprise system 1 enterprise system 2 enterprise system n EJB container JMS Copyright Springer Verlag Berlin Heidelberg 2004

Web server server servers for other connections (e.g., WAP) presentation layer ServletsJSPs multidevice content delivery personalization logic connection to resource mgmt layer resource management layer application logic layer services (load balancing, pooling, caching,…) XML support Web services support administration (management and security) application server client Copyright Springer Verlag Berlin Heidelberg 2004

Clients supported by an application server o Web browsers requesting HTML pages with or without applets Use HTTP or HTTPS. o Applications similar to those in conventional middleware o Devices such as cell phones or PDAs Wireless application protocol (WAP), wireless markup language (WML) o programs Simple mail transport protocol (SMTP) o Web services clients Simple Object Access Protocol (SOAP)

client server (resource manager) middleware client server (resource manager) middleware wide area network (Internet) Copyright Springer Verlag Berlin Heidelberg 2004 Possible ways to connect

client server (resource manager) middleware client server (resource manager) middleware wide area network (Internet) remote-middleware protocol WAN communication protocol remote-middleware protocol WAN communication protocol Copyright Springer Verlag Berlin Heidelberg 2004 Direct integration of middleware platforms

client wide area network (Internet) Web server client Web server firewall HTTP tunnel server (resource manager) server (resource manager) middleware remote-middleware protocol WAN communication protocol middleware remote-middleware protocol WAN communication protocol Copyright Springer Verlag Berlin Heidelberg 2004

Using integrated platforms o Firewalls and tunneling ÞTunneling: protocols which would be blocked by the firewall are hidden under protocols that are accepted by the firewall ÞMostly done through HTTP or SSH (Secure Shell) ÞResults in a cumbersome architecture o EDIFACT (Electronic Data Interchange for Administration, Commerce, and Transport) ÞProvides standard templates for messages and contents of messages ÞContains fields such as: Interchange header (ID, password, date/time) Message header (type of message) User data segments (the payload) Message Trailer (end message, check for completeness) Interchange trailer (end interchange, check for completeness)

Summary o Decades of accumulated knowledge on multi-tier architectures o Use the same technology over the Internet o The client can be on ÞA Local Area Network (LAN) ÞOver the Internet ÞArchitectural implications and design constraints from using the Web are important