How the Internet Works

How the Internet Works

By Konstantin Tennhard

37f941943817785d0d2ccce1e63cd476?s=128

Rails Girls Frankfurt

March 25, 2013
Tweet

Transcript

  1. How the Internet Works A presentation by Konstantin Tennhard

  2. None
  3. railsgirls.com

  4. None
  5. What just happened?

  6. A user’s point of view Your browser just retrieved a

    web page for you – in less than a fraction of a second. That’s it. As a user you don’t need to understand anything else. That’s the beauty of the Internet – it’s easy.
  7. But …

  8. A developer’s point of view There just happened a lot:

    Network requests were issued, resources were obtained, and finally a visual representation was generated and presented to the user.
  9. Communication

  10. Protocols A protocol is a method to formalize communication between

    two entities.
  11. Informal Protocol For users, there are often multiple ways to

    communicate with a computer and they are usually less formalized. Formal Protocol Communication between electronic entities, e.g., servers and clients, is formalized and therefore follows strict rules.
  12. Informal Protocol For users, there are often multiple ways to

    communicate with a computer and they are usually less formalized. Formal Protocol Communication between electronic entities, e.g., servers and clients, is formalized and therefore follows strict rules.
  13. HTTP Hyper Text Transfer Protocol

  14. None
  15. 1 Request

  16. 1 Request Four types of requests: GET, POST, PUT, DELETE

    Text-based
  17. 1 Request

  18. 2 Processing

  19. 2 Processing

  20. 2 Processing

  21. 2 Processing

  22. 3 Response

  23. 3 Response Static files: Images, JavaScript, CSS Generated data: HTML,

    XML, JSON
  24. 3 Response

  25. None
  26. HTTP Hyper Text Transfer Protocol GET / HTTP/1.1 Host: railsgirls.com

    HTTP/1.1 200 OK Content-Length: 2785 Content-Type: text/html <!doctype html> <html lang="en"> <!-- Content omitted --> </html>
  27. Resources

  28. Resource A resource is an addressable and obtainable entity that

    has one or more representations.
  29. Types of Resources Generated Data • Documents (HTML, XML, JSON)

    Static Files • Documents (HTML, XML, JSON) • Code (JavaScript, CSS) • Images (PNG, JPG, GIF, etc.) • Videos
  30. Hyper Text Markup Language HTML <html> <head> <title>Rails Girls</title> </head>

    <body> <p>Hello Rails Girls Frankfurt!</p> </body> <html> Hello Rails Girls Frankfurt!
  31. Cascading Style Sheets CSS p { text-align: center; font-weight: bold;

    font-family: sans-serif; font-size: 36px; } Hello Rails Girls Frankfurt!
  32. JavaScript $('p'). delay(2000). hide(). delay(2000). show(); Hello Rails Girls Frankfurt!

  33. … and Ruby on Rails Ruby …

  34. Thank you! You are welcome to ask questions!