Foundations

Web-Based Services (INFOSYS 290-3)

Erik Wilde, UC Berkeley iSchool
Wednesday, August 30, 2006
Creative Commons License

This work is licensed under a Creative Commons
Attribution-NonCommercial-ShareAlike 2.5 License.

Abstract

Web-based services are using Web technologies for implementing services on top of an existing networking infrastructure. The most important concepts are the basics of computer networking, in particular the way how networking protocols are arranged in layers, so that different functionalities required in a networking infrastructure can be isolated and implemented independently. On top of the networking infrastructure of the Internet, the Domain Name System (DNS) provides name-to-address mappings.

Outline (Service Infrastructures)

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

Services need Foundations

Layering

Layering in Systems

Layering in Communication Systems

Layers and Protocols

Middleware

Software Engineering

There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.

C. A. R. Hoare, The Emperor's Old Clothes, 1980 Turing Award Lecture

Outline (Computer Networks)

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

Network History

Networks vs. Internetworks

Outline (Networking Protocols)

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

Internet vs. ISO/OSI

Internet

Internet Principles

Be liberal in what you accept, and conservative in what you send.

Jon Postel, RFC 1122

Whenever possible, communications protocol operations should be defined to occur at the end-points of a communications system, or as close as possible to the resource being controlled.

J. Saltzer, D. Reed, D. Clark, End-to-end Arguments in System Design

ISO/OSI (Open Systems Interconnection)

OSI vs. Internet

Internet Protocols

Outline (Internet Protocol (IP))

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

IP Features

IP Addresses

IP Address Classes

Outline (Transmission Control Protocol (TCP))

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

TCP Features

Reliable Connections

TCP Window

Outline (Domain Name System (DNS))

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

Naming vs. Addressing

DNS Properties

Names Matter

Domain Name Space

Using DNS

DNS Request Processing

Outline (Other Internet Protocols)

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

User Datagram Protocol (UDP)

Address Resolution Protocol (ARP)

ARP Operation

Outline (Conclusions)

  1. Service Infrastructures [7]
  2. Computer Networks [23]
    1. Networking Protocols [6]
    2. Internet Protocol (IP) [3]
    3. Transmission Control Protocol (TCP) [3]
    4. Domain Name System (DNS) [6]
    5. Other Internet Protocols [3]
  3. Conclusions [2]

Internet Technologies

Web Technologies