An Introduction to the Internet and the Web Frank McCown COMP 250 – Internet Development Harding University Photos were obtained from the Web, and copyright is held by the respective owners. Short History of Computing by Frank McCown is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported LicenseCreative Commons Attribution-NonCommercial 3.0 Unported License
The Internet is a global system of interconnected computer networks that use the standard Internet Protocol Suite (TCP/IP) to serve billions of users worldwide. networksInternet Protocol Suite Internet Computer 1Computer
Internet Protocol Suite Internet Protocol (IP): directs packets to a specific computer using an IP address Transmission Control Protocol (TCP): directs packets to a specific application on a computer using a port number. – Common port numbers: Common port numbers 22 – ssh 23 – telnet 25 – 80 – Web
Web VoIP IM Streaming video Internet != Web The Internet File transfer
Overview of the Web Internet Client – Web BrowserWeb Server World Wide Web: The system of interlinked hypertext documents accessed over the Internet using the HTTP protocol
Web Browser Software that runs on the client used to access and display web content
Mobile Web Browser Mobile browsers account for 18% of web access in Aug 2013
Web Server A computer (or software running on a computer) on the Internet that listens for HTTP requests, typically on port 80, and responds with HTTP responses Apache : 52.2% Microsoft IIS: 19.7% ngnix: 13.6% Google: 3.9% Market Share for Top Servers Across All Domains, Aug 1995 – July
Hypertext Transfer Protocol (HTTP) Protocol that runs over TCP/IP and governs communication between web browsers and web servers Client Request GET /comp/ HTTP/1.1 Host: Server Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Example request for
Uniform Resource Locator (URL) A URL identifies the location of a resource on the Web. schemehostnamepath local hostname domain name TLD
Domain Name System (DNS) DNSDNS is a hierarchical look-up service that converts a given hostname into its equivalent IP address Etc... DNS Server DNS servers contact parent servers for missing entries Authoritative name servers are responsible for specific domains Warning: DNS cache poisoningDNS cache poisoning
Example: Web Page Request Client (Web Browser)Web Server (4) HTTP GET bar.html (1) Enter URL (6) HTTP Response (5) Locate the resource (7) Parse HTML & display (8) HTTP GET image1 (N) HTTP GET imageX Potentially many requests & responses DNS (2) foo.org (3)
Dissecting the Request GET /comp/ HTTP/1.1 Host: User-Agent: Mozilla/5.0 Firefox/3.6.8 Request type
Dissecting the Request GET /comp/ HTTP/1.1 Host: User-Agent: Mozilla/5.0 Firefox/3.6.8 Relative URL
Dissecting the Request GET /comp/ HTTP/1.1 Host: User-Agent: Mozilla/5.0 Firefox/3.6.8 HTTP version
Dissecting the Request GET /comp/ HTTP/1.1 Host: User-Agent: Mozilla/5.0 Firefox/3.6.8 Hostname
Dissecting the Request GET /comp/ HTTP/1.1 Host: User-Agent: Mozilla/5.0 Firefox/3.6.8 Identify client
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body HTTP version Status code & phrase
Status Line HTTP/ OK Popular status codesPopular status codes: 200Successful 301 Moved permanently 302 Found under different temporary URI 304Not modified 403Forbidden 404Not found 500Internal server error HTTP version Status code & phrase
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body Number of bytes in response
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body MIME type
Popular MIME types text/html text/plain image/jpeg image/gif image/png application/pdf application/msword application/vnd.ms-excel video/quicktime IANA list of MIME types
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body URI for resource
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body When the file was last modified on the server
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body Web server software
Dissecting the Response HTTP/ OK Content-Length: 6018 Content-Type: text/html Content-Location: Last-Modified: Mon, 05 Jul :49:40 GMT Server: Microsoft-IIS/6.0 Harding University - Computer Science Etc... Header Message body HTML displayed in the browser
How can I see the HTTP headers? Chrome – Ctrl-Shift-I Developer Tools – Network button Firefox – Ctrl-Shift-K Web Console – Net button should be down Internet Explorer – F12 Developer Tools – Network tab