Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web fundamentals: Clients, Servers, and Communication

Similar presentations


Presentation on theme: "Web fundamentals: Clients, Servers, and Communication"— Presentation transcript:

1 Web fundamentals: Clients, Servers, and Communication

2 SWE 444:: based on Jeffrey C. Jackson’s slides
The Internet Internet: the network of networks connected via the public backbone and communicating using TCP/IP communication protocol SWE 444:: based on Jeffrey C. Jackson’s slides

3 SWE 444:: based on Jeffrey C. Jackson’s slides
Internet Protocols Communication protocol: how computers talk how you answer and end call, what language you speak, etc. Internet protocols developed as part of ARPANET research ARPANET began using TCP/IP in 1982 Designed for use both within local area networks (LAN’s) and between networks SWE 444:: based on Jeffrey C. Jackson’s slides

4 Internet Protocol (IP)
IP is the fundamental protocol defining the Internet (as the name implies!) IP address: 32-bit number (in IPv4) connected with at most one device at a time (although device may have more than one) Written as four dot-separated bytes, e.g SWE 444:: based on Jeffrey C. Jackson’s slides

5 SWE 444:: based on Jeffrey C. Jackson’s slides
IP IP function: transfer data from source device to destination device IP source software creates a packet representing the data Header: source and destination IP addresses, length of data, etc. Data itself If destination is on another LAN, packet is sent to a gateway that connects to more than one network SWE 444:: based on Jeffrey C. Jackson’s slides

6 SWE 444:: based on Jeffrey C. Jackson’s slides
IP Source Network 1 Gateway Destination Gateway Network 3 Network 2 SWE 444:: based on Jeffrey C. Jackson’s slides

7 SWE 444:: based on Jeffrey C. Jackson’s slides
IP Source LAN 1 Gateway Destination Gateway LAN 2 Internet Backbone SWE 444:: based on Jeffrey C. Jackson’s slides

8 Transmission Control Protocol (TCP)
Limitations of IP: No guarantee of packet delivery (packets can be dropped) Communication is one-way (source to destination) TCP adds concept of a connection on top of IP Provides guarantee that packets delivered Provide two-way (full duplex) communication SWE 444:: based on Jeffrey C. Jackson’s slides

9 SWE 444:: based on Jeffrey C. Jackson’s slides
TCP { Source Destination Can I talk to you? Establish connection. OK. Can I talk to you? OK. { Here’s a packet. Send packet with acknowledgment. Got it. { Here’s a packet. Resend packet if no (or delayed) acknowledgment. Here’s a resent packet. Got it. SWE 444:: based on Jeffrey C. Jackson’s slides

10 Domain Name Service (DNS)
DNS is the “phone book” for the Internet Map between host names and IP addresses Host names Labels separated by dots, e.g., Final label is top-level domain Generic: .com, .org, etc. Country-code: .us, .il,.sa, etc. SWE 444:: based on Jeffrey C. Jackson’s slides

11 SWE 444:: based on Jeffrey C. Jackson’s slides
World Wide Web Originally, one of several systems for organizing Internet-based information Characteristic of Web: support for hypertext (text containing links) Communication via Hypertext Transport Protocol (HTTP) Document representation using Hypertext Markup Language (HTML) SWE 444:: based on Jeffrey C. Jackson’s slides

12 SWE 444:: based on Jeffrey C. Jackson’s slides
World Wide Web The Web is the collection of machines (Web servers) on the Internet that provide information, above all HTML documents, via HTTP. Machines that access information on the Web are known as Web clients. A Web browser is software used by an end user to access the Web. SWE 444:: based on Jeffrey C. Jackson’s slides

13 Hypertext Transport Protocol (HTTP)
HTTP is based on the request-response communication model: Client sends a request Server sends a response HTTP is a stateless protocol: The protocol does not require the server to remember anything about the client between requests. SWE 444:: based on Jeffrey C. Jackson’s slides

14 SWE 444:: based on Jeffrey C. Jackson’s slides
HTTP Normally implemented over a TCP connection standard browser-server interaction: User enters Web address in browser Browser uses DNS to locate IP address Browser opens TCP connection to server Browser sends HTTP request over connection Server sends HTTP response to browser over connection Browser displays body of response in the client area of the browser window SWE 444:: based on Jeffrey C. Jackson’s slides

15 SWE 444:: based on Jeffrey C. Jackson’s slides
HTTP The information transmitted using HTTP is often totally text Can use the Internet’s Telnet protocol to simulate browser request and view server response SWE 444:: based on Jeffrey C. Jackson’s slides

16 SWE 444:: based on Jeffrey C. Jackson’s slides
Client Caching A cache is a local copy of information gets from some other source SWE 444:: based on Jeffrey C. Jackson’s slides

17 SWE 444:: based on Jeffrey C. Jackson’s slides
Client Caching Client Server Browser Web Server 1. HTTP request for image 2. HTTP response containing image 3. Store image Cache SWE 444:: based on Jeffrey C. Jackson’s slides

18 SWE 444:: based on Jeffrey C. Jackson’s slides
Client Caching Client Server Browser Web Server This… HTTP request for image HTTP response containing image I need that image again… Cache SWE 444:: based on Jeffrey C. Jackson’s slides

19 SWE 444:: based on Jeffrey C. Jackson’s slides
Client Caching Client Server Browser Web Server I need that image again… Get image … or this Cache SWE 444:: based on Jeffrey C. Jackson’s slides

20 SWE 444:: based on Jeffrey C. Jackson’s slides
Client Caching Cache advantages (Much) faster than HTTP request/response Less network traffic Less load on server Cache disadvantage Cached copy of resource may be invalid (inconsistent with remote version) SWE 444:: based on Jeffrey C. Jackson’s slides

21 SWE 444:: based on Jeffrey C. Jackson’s slides
Web Clients Many possible web clients: Text-only “browser” Mobile phones Robots (software-only clients) etc. We will focus on traditional web browsers SWE 444:: based on Jeffrey C. Jackson’s slides

22 SWE 444:: based on Jeffrey C. Jackson’s slides
Web Browsers Primary tasks: Convert web addresses (URL’s) to HTTP requests Communicate with web servers via HTTP make (properly display) documents returned by a server SWE 444:: based on Jeffrey C. Jackson’s slides

23 SWE 444:: based on Jeffrey C. Jackson’s slides
Web Browsers Standard features Save web page to disk Fill forms automatically (passwords, CC numbers, …) Set preferences (language, character set, cache and HTTP parameters) Modify display style (e.g., increase font sizes) Choose browser themes (skins) View history of web addresses visited Bookmark favorite pages for easy return SWE 444:: based on Jeffrey C. Jackson’s slides

24 SWE 444:: based on Jeffrey C. Jackson’s slides
Web Browsers Additional functionality: Execution of scripts (e.g., drop-down menus) Event handling (e.g., mouse clicks) GUI for controls (e.g., buttons) Secure communication with servers Display of non-HTML documents (e.g., PDF) via plug-ins SWE 444:: based on Jeffrey C. Jackson’s slides

25 URL Uniform Resource Locator
Represents the address of a resource on the Internet. 25 Guy-Vincent Jourdan :: CSI 3140 :: based on Jeffrey C. Jackson’s slides

26 Web Standards and the W3C Consortium
W3C – World Wide Web Consortium takes a proactive role in developing recommendations and prototype technologies related to the Web produces specifications, called Recommendations, in an effort to standardize web technologies WAI – Web Accessibility Initiative

27 Web Accessibility WAI – Web Accessibility Initiative
Develops recommendations for web content developers, web authoring tool developers, developers of web browsers, and developers of other user agents to facilitate use of the web by those with special needs. Section 508 of the Rehabilitation Act requires that government agencies must give individuals with disabilities access to information technology that is comparable to the access available to others

28 Markup Languages SGML HTML Standard Generalized Markup Language
A standard for specifying a markup language or tag set HTML Hypertext Markup Language The set of markup symbols or codes placed in a file intended for display on a web browser.

29 Markup Languages (2) XML XHTML eXtensible Markup Langauge
A text-based language designed to describe, deliver, and exchange structured information. It is not intended to replace HTML extends the power of HTML by separating data from presentation. XHTML eXtensible Hypertext Markup Language Developed by the W3C as the reformulation of HTML 4.0 as an application of XML. It combines the formatting strengths of HTML 4.0 and the data structure and extensibility strengths of XML.

30 Markup Languages (3) The relationship between XHTML, HTML, and XML
XML Syntax


Download ppt "Web fundamentals: Clients, Servers, and Communication"

Similar presentations


Ads by Google