History of the Internet Hamid Zarrabi-Zadeh Web Programming – Fall 2013 2 Outline • Course Information • History of the Internet • The HTTP Protocol HTTP Requests HTTP Responses • Summary Course Information 4 Contents • HTML/CSS • JavaScript • Data Storage • Server Interaction • Python • Web Architectures • Django • Advanced Topics 5 Grading Assignments 20% Final Exam 25% Projects 25% Midterm 20% Quizzes 10% 6 Resources • Course Website Syllabus Assignments Resources • Piazza Discussions Announcements 7 Tutorials • Head-TA Behnam Hatami • Tutorial Sessions Saturdays, 12:00 – 13:30 • Office Hours Sun-Tue, 15:00 – 16:30 History of the Internet 9 Origins of the Internet • J.C.R. Licklider (MIT) wrote about the Galactic Network concept in January 1960 • Became the first head of Information Processing Office at DARPA (Defense Advanced Research Projects Agency) and convinced his successors about the importance of the project 10 Origins of the Internet (cont’d) • Leonard Kleinrock (MIT) published the first paper and book in packet switching theory in 1961 and 1964, respectively. • Kleinrock convinced Laurence G. Roberts of the theoretical feasibility of the project. 11 Origins of the Internet (cont’d) • In 1966, Roberts (MIT) went to DARPA and started development of ARPANET • The first ARPANET link was established between UCLA and Stanford Research Institute at 22:30 October 29, 1969 "Do you see the L?“ "Yes, we see the L," came the response. We typed the O, and we asked, "Do you see the O.“ "Yes, we see the O.“ Then we typed the G, and the system crashed ... 12 Internet Timeline: 1970s • 1972: Email program was modified for use on ARPANET • 1973: First international connections to ARPANET (England and Norway) • 1976: Elizabeth II send email! • 1979: USENET (Newsgroups) established 13 Internet Timeline: 1980s • 1983: ARPANET split into ARPANET (civilian) and MILNET (military) • 1984: Domain Name System (DNS) introduced • 1985: File Transfer Protocol (FTP) introduced • 1987: Number of hosts exceeds 10,000 14 Internet Timeline: 1990s • 1990: Tim Berners-Lee (CERN) invents HTTP and implements server and browser • 1993: NCSA Mosaic takes the Internet by storm • 1995: Sun launches Java (including applets) • 1995: Netscape introduces LiveScript (JavaScript) • 1996: Beginning of Browser Wars (Mosaic vs. Netscape then later Netscape vs. Microsoft) • 1998: Google search was launched 15 Internet Timeline: 2000s • 2001: Wikipedia • 2002: Weblogs (blogs) become hip • 2004: Facebook • 2006: Twitter microblogging • 2008: DropBox • 2009: Google Docs 16 Internet Users 17 Internet Hosts 18 Popular Browsers • Most popular web browsers (Aug. 2013) Internet Explorer: 12% Firefox: 28% Chrome: 53% Safari, Opera: 6% • Most widely-used Internet protocol: HTTP • Highest bandwidth consumption: Peer-to-peer file sharing protocols The Hypertext Transfer Protocol 20 History of HTTP • Initial version by Tim Berners-Lee (CERN) and implemented in the World's first web browser/server (Dec. 1990) • HTTP 0.9 defined in 1991 • HTTP 1.0 defined in 1996 • HTTP 1.1 defined in 1997 21 HTTP Protocol Summary • A typical HTTP transaction: Web Client Request Response Web Server 22 Uniform Resource Locator • URL (Uniform Resource Locator) A Subset of Uniform Resource Identifiers (URIs) • Format: protocol://host:port/path?query#frag • Examples: http://ce.sharif.edu/courses/92-93/1/ https://www.google.com/?q=test 23 The HTTP Request • Request includes a header and optional body GET /courses/ HTTP/1.1 Host: ce.sharif.edu Connection: keep-alive Cache-Control: max-age=0 Accept: text/html,application/xml;q=0.9,*/*;q=0.8 User-Agent: Chrome/29.0.1547.66 Safari/537.36 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-GB,en-US;q=0.8,en;q=0.6 Cookie: PHPSESSID=91ef778df57dd25aab1520845ed7076d; 24 Main HTTP Request Types • GET Retrieve a resource • HEAD Same as GET, but only retrieve HTTP header • PUT Put information on the server • POST Send information to the server • OPTIONS Get information about the server 25 The HTTP Response • Response includes a header and optional body, separated by a blank line HTTP/1.1 200 OK Date: Sat, 14 Sep 2013 23:09:14 GMT Server: Apache/2.2.16 (Debian) Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Content-Length: 1719 Keep-Alive: timeout=15, max=99 Connection: Keep-Alive Content-Type: text/html <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> ... 26 Common Response Codes • 200 OK Success • 404 Not Found The specified resource does not exist • 403 Forbidden The specified resource exists, but can not be accessed • 301 & 302 Document Moved The resource is at the new (specified) location 27 Summary • The basic HTTP transaction is a request from the client followed by a reply from the server • Both requests and replies have a header followed by an optional body • 200 indicates a success • 4xx indicates an error 28 References • Wikipedia http://en.wikipedia.org/wiki/History_of_the_Internet • Hobbes' Internet Timeline http://www.zakon.org/robert/internet/timeline/ • Internet Programming Course by Pat Morin http://cg.scs.carleton.ca/~morin/teaching/2405/
© Copyright 2026 Paperzz