Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals.

Similar presentations


Presentation on theme: "Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals."— Presentation transcript:

1 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals

2 1-2 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.1 A Brief Intro to the Internet Internet History Internet Protocols

3 1-3 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.1 Internet History Origins ARPAnet - late 1960s and early 1970s Network reliability For ARPA-funded research organizations BITnet, CSnet - late 1970s & early 1980s email and file transfer for other institutions NSFnet - 1986 Originally for non-DOD funded places Initially connected five supercomputer centers By 1990, it had replaced ARPAnet for non-military uses Soon became the network for all (by the early 1990s) NSFnet eventually became known as the Internet

4 1-4 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.1 Internet History What the Internet is: A world-wide network of computer networks At the lowest level, since 1982, all connections use TCP/IP TCP/IP hides the differences among devices connected to the Internet

5 1-5 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.1 Internet Protocols Internet Protocol (IP) Addresses Every node has a unique numeric address Form: 32-bit binary number New standard, IPv6, has 128 bits (1998) Organizations are assigned groups of IPs for their computers Problem: By the mid-1980s, several different protocols had been invented and were being used on the Internet, all with different user interfaces (Telnet, FTP, Usenet, mailto

6 1-6 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.1 Internet Protocols Domain names Form: host-name.domain-names First domain is the smallest; last is the largest Last domain specifies the type of organization Fully qualified domain name - the host name and all of the domain names DNS servers - convert fully qualified domain names to IPs

7 1-7 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Client and Server Clients and Servers are programs that communicate with each other over the Internet A Server runs continuously, waiting to be contacted by a Client Each Server provides certain services Services include providing web pages A Client will send a message to a Server requesting the service provided by that server The client will usually provide some information, parameters, with the request

8 1-8 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.2 The World-Wide Web A possible solution to the proliferation of different protocols being used on the Internet Origins Tim Berners-Lee at CERN proposed the Web in 1989 Purpose: to allow scientists to have access to many databases of scientific work through their own computers Document form: hypertext Pages? Documents? Resources? We’ll call them documents Hypermedia – more than just text – images, sound, etc.

9 1-9 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.2 The World-Wide Web Web or Internet? The Web uses one of the protocols, http, that runs on the Internet--there are several others (telnet, mailto, etc.)

10 1-10 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.3 Web Browsers Browsers are clients - always initiate, servers react (although sometimes servers require responses) Mosaic - NCSA (Univ. of Illinois), in early 1993 First to use a GUI, led to explosion of Web use Initially for X-Windows, under UNIX, but was ported to other platforms by late 1993 Most requests are for existing documents, using HyperText Transfer Protocol (HTTP) But some requests are for program execution, with the output being returned as a document

11 1-11 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Servers Provide responses to browser requests, either existing documents or dynamically built documents Browser-server connection is now maintained through more than one request-response cycle All communications between browsers and servers use Hypertext Transfer Protocol (HTTP)

12 1-12 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation Web servers run as background processes in the operating system – Monitor a communications port on the host, accepting HTTP messages when they appear All current Web servers came from either 1.The original from CERN 2.The second one, from NCSA

13 1-13 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation Details Web servers have two main directories: 1.Document root (servable documents) 2.Server root (server system software) Document root is accessed indirectly by clients – Its actual location is set by the server configuration file – Requests are mapped to the actual location

14 1-14 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation Details Virtual document trees Secondary area from which documents can be served Documents may outgrow space on primary disk So documents may be placed on a secondary disk Secondary disk may be on primary server computer or on another computer Virtual hosts Many servers can support more than one site Secondary hosts are virtual hosts

15 1-15 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation Details Proxy servers Servers that serve documents that are in the document root of other machines Web servers now support other Internet protocols other than HTTP ftp, Golpher,….

16 1-16 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation : Apache Apache (open source, fast, reliable) – Directives (operation control): ServerName ServerRoot ServerAdmin, DocumentRoot Alias Redirect DirectoryIndex UserDir

17 1-17 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation : Apache Apache (open source, fast, reliable) – Configuration file – In directory C:\xampp\apache\conf – File: httpd.conf – ServerName – gives the name and port that the server uses to identify itself – Default: – ServerName localhost:80 – DocumentRoot "C:/xampp/htdocs" – ServerRoot "C:/xampp/apache”

18 1-18 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation : Apache Apache (open source, fast, reliable) – Directives – ServerName – gives the name and port that the server uses to identify itself – Default: – ServerName localhost:80 – DocumentRoot – The directory out of which you will serve your documents – Default: – DocumentRoot "C:/xampp/htdocs"

19 1-19 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation : Apache Apache (open source, fast, reliable) – Directives – ScriptAlias – This controls which directories contain server scripts. – Default – ScriptAlias /cgi-bin/ "C:/xampp/cgi-bin/" – ServerName – gives the name and port that the server uses to identify itself – Default: – ServerName localhost:80

20 1-20 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.4 Web Server Operation : IIS IIS -Operation is maintained through a program with a GUI interface

21 1-21 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.5 URLs General form: scheme:object-address The scheme is often a communications protocol, such as telnet or ftp For the http protocol, the object-address is: http://fully-qualified-domain-name/path-to-document http://socrates.troy.edu/~mmariano/OSWeb/index.html For the file protocol, only the doc path is needed file://path-to-file file://c:/xampp/htdocs/

22 1-22 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.5 URLs For the file protocol, only the doc path is needed file://path-to-file file://c:/xampp/htdocs/ file://c:/xampp/htdocs/index.htmlfile://c:/xampp/htdocs/index.html Slash is for directory htdocs

23 1-23 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.5 URLs Host name may include a port number, as in zeppo:80 (80 is the default, so this is silly) http://localhost:80/index.htmlhttp://localhost:80/index.html http://localhost:80/xampp/htdocs/index.htmllocalhost:80 URLs cannot include spaces or any of a collection of other special characters (semicolons, colons,...) The doc path may be abbreviated as a partial path The rest is furnished by the server configuration If the doc path ends with a slash, it means it is a directory

24 1-24 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.5 URLs The doc path may be abbreviated as a partial path The rest is furnished by the server configuration http://localhost:/index.html converts to pathhttp://localhost:/index.html c:/xampp/htdocs/index.html c:/xampp/htdocs/ comes from the DocumentRoot directive If the doc path ends with a slash, it means it is a directory

25 1-25 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.6 Multipurpose Internet Mail Extensions (MIME) Originally developed for email Used to specify to the browser the form of a file returned by the server (attached by the server to the beginning of the document it sends to client) Type specifications Form: type/subtype Examples: text/plain, text/html, image/gif, image/jpeg

26 1-26 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.6 Multipurpose Internet Mail Extensions (MIME) Server gets type from the requested file name’s suffix (.html implies text/html) Browser gets the type explicitly from the server Experimental types Subtype begins with x- e.g., video/x-msvideo Experimental types require the server to send a helper application or plug-in so the browser can deal with the file

27 1-27 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 The HyperText Transfer Protocol The protocol used by ALL Web communications Request Phase Form: HTTP method domain part of URL HTTP ver. Header fields blank line Message body An example of the first line of a request: GET /degrees.html HTTP/1.1

28 1-28 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 The HyperText Transfer Protocol: Methods GET - Fetch a document POST - Execute the document, using the data in body HEAD - Fetch just the header of the document PUT - Store a new document on the server DELETE - Remove a document from the server

29 1-29 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Headers Four categories of header fields: General, request, response, & entity Common request fields: Accept Specifies preference of the browser for the MIME type Accept: text/plain Accept: text/* If-Modified_since: date (only send if modified since the given data)

30 1-30 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Headers Common response fields: Content-length: 488 ( length of request body) Content-type: text/html -Can communicate with HTTP without a browser -Connect with telnet -Provide HTTP commands > telnet blanca.uccs.edu http GET /respond.html HTTP/1.1 Host: blanca.uccs.edu

31 1-31 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Response Form: Status line Response header fields blank line Response body Status line format: HTTP version status code explanation Example: HTTP/1.1 200 OK (Current version is 1.1)

32 1-32 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Response Status code is a three-digit number; first digit specifies the general status 1 => Informational 2 => Success 3 => Redirection 4 => Client error 5 => Server error The header field, Content-type, is required

33 1-33 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Headers Four categories of header fields: General, request, response, & entity Common request fields: Accept Specifies preference of the browser for the MIME type Accept: text/plain Accept: text/* If-Modified_since: date Common response fields: Content-length: 488 Content-type: text/html -Can communicate with HTTP without a browser > telnet blanca.uccs.edu http GET /respond.html HTTP/1.1 Host: blanca.uccs.edu

34 1-34 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.7 HTTP Response Example HTTP/1.1 200 OK Date: Tues, 18 May 2004 16:45:13 GMT Server: Apache (Red-Hat/Linux) Last-modified: Tues, 18 May 2004 16:38:38 GMT Etag: "841fb-4b-3d1a0179" Accept-ranges: bytes Content-length: 364 Connection: close Content-type: text/html, charset=ISO-8859-1 Both request headers and response headers must be followed by a blank line

35 1-35 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 The Web Programmer’s Toolbox Document languages and programming languages that are the building blocks of the web and web programming XHTML Plug-ins Filters XML Javascript Java, Perl, Ruby, PHP

36 1-36 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 XHTML To describe the general form and layout of documents An XHTML document is a mix of content and controls Controls are tags and their attributes Tags often delimit content and specify something about how the content should be arranged in the document Attributes provide additional information about the content of a tag

37 1-37 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Creating XHTML documents XHTML editors - make document creation easier Shortcuts to typing tag names, spell-checker, Altova’s XML Spy WYSIWYG XHTML editors Need not know XHTML to create XHTML documents

38 1-38 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Plugins and Filters Plug ins Integrated into tools like word processors, effectively converting them to WYSIWYG XHTML editors Filters Convert documents in other formats to XHTML

39 1-39 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Plugins and Filters: Advantages and Disadvantages Advantages of both filters and plug-ins: Existing documents produced with other tools can be converted to XHTML documents Use a tool you already know to produce XHTML Disadvantages of both filters and plug-ins: XHTML output of both is not perfect - must be fine tuned XHTML may be non-standard You have two versions of the document, which are difficult to synchronize

40 1-40 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 XML A meta-markup language Used to create a new markup language for a particular purpose or area Because the tags are designed for a specific area, they can be meaningful No presentation details A simple and universal way of representing data of any textual kind

41 1-41 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 JavaScript A client-side HTML-embedded scripting language Only related to Java through syntax Dynamically typed and not object-oriented Provides a way to access elements of HTML documents and dynamically change them

42 1-42 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Java General purpose object-oriented programming language Based on C++, but simpler and safer Our focus is on applets, servlets, and JSP

43 1-43 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Perl Provides server-side computation for HTML documents, through CGI (see next slide for definition) Perl is good for CGI programming because: Direct access to operating systems functions Powerful character string pattern-matching operations Access to database systems Perl is highly platform independent, and has been ported to all common platforms Perl is not just for CGI

44 1-44 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Perl Provides server-side computation for HTML documents, through CGI CGI is Common Gateway Interface A standard way in which a server and a browser communicate to runa program on the server and return the output of that program to the browser

45 1-45 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 PHP A server-side scripting language An alternative to CGI Similar to JavaScript Great for form processing and database access through the Web

46 1-46 Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1.8 Other tools Ruby Rails Ajax


Download ppt "Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals."

Similar presentations


Ads by Google