Readings: Peterson & Davie, Chapter 1
“We reject kings, presidents, and voting. We believe in rough consensus and running code.”
Website coming Friday! Assignment 1 assigned on Friday. ◦ To be discussed today TODOs: ◦ Log into lab machines Sample Schedule ◦ Sample FAQ ◦ html html
What is a network?
What is a physical Network? We’ll investigate these empirically, starting with the first assignment
What is a virtual network?
“Think of a network as providing the means for a set of application processes that are distributed over [multiple] computers to communicate” We could make every application responsible for their information exchange, but ◦ Lots of redundancy and errors with this approach Instead, lets distill common communication patterns ◦ And offer those as services/protocols in a network stack
App Developer ◦ What do I want? Network Architect ◦ Cost-effective design, reliable, QoS enabled Provider ◦ Account for usage, offer QoS gradients
Links, Nodes, Clouds form network maps Point-to-Point ◦ Quickly becomes unmanageable Multiple-Access ◦ Multiplex a single bus/wire/channel across multiple hosts ◦ Limitations :geographical distance limitations and number of nodes connected. All styles of Networks must cope with Scalability
The most common types of switched networks include: ◦ Circuit-switched POTS ◦ Packet-switched Store-and-forward
Fig 1.3, p8 Switches, nodes (hosts), and links
Packets refer to physical data on the wire, with a well-defined size imposed by each network ◦ Or subnetwork your packet moves through This could introduce packet fragmentation and rebuilding (more on that later) Messages: a data payload usually exchanged at the application level ◦ These messages may not fit into one packet
Internetwork: a connection of independent networks ◦ Visualize these as clouds Gateway: A Node that connects two or more networks (a.k.a router) ◦ Quite similar in spirit to a switch, and thus these terms are frequently blurred
A network may be built by combining existing networks This implies a recursive structure ◦ Where the basis is some physical medium We can recursively build larger and larger networks by connecting existing network clouds ◦ Analog: Fib numbers
A unique* way to identify all nodes on a network Much like a cell-phone number
We need to “share” links effectively STDM ◦ Divide time into quanta and assign the link in a RR fashion FDM ◦ Divide frequencies into channels, like TV Limitations: Dynamic resizing of the quantum or adding new quanta/frequencies is required
Or, On Demand time division multiplexing Effectively uses the link Could introduce starvation, so an upper bound on block-size is determined
Formally, a protocol graph with protocol specifications (a standardization) Multiple models have been proposed ◦ OSI architecture ◦ Internet (IETF) architecture Architects leverage abstraction ◦ This naturally introduces layers in our Network Key: Start with services offered by the layer beneath you and build on top ◦ Lowest layer relies on the underlying hardware ◦ High level services are implemented by lower level services
Application Programs Process-To-Process Channels Host-To-Host Connectivity Hardware
Application Programs Process-To-Process Channels Host-To-Host Connectivity Hardware Application Programs RRC Hardware MSC Host-To-Host Connectivity A “Protocol Stack”
Application Programs RRC Hardware MSC Host-To-Host Connectivity Application Programs RRC Hardware MSC Host-To-Host Connectivity Host 1Host 2 Peer Level Service Level Interfaces define the semantics (form & meaning) o f messages exchanged at a given level …1001…
Each protocol communicates “with its peer” indirectly by handing messages down the protocol stack The only layer to have a non-virtualized p2p relationship is the hardware level
Application Presentation Session Transport End host One or more nodes within the network Network Data link Physical Network Data link Physical Network Data link Physical Application Presentation Session Transport End host Network Data link Physical
Physical Layer transmits bits Data link layer collects bits into frames ◦ NIC and drivers typically implement this Network layer handles routing ◦ Packet-level data ◦ Note that these layers are implemented on switches in the cloud, too Transport and up usually are found on the host ◦ “There is less agreement about the definition of the top three layers”
CSS Defined by Internet Engineering Task Force (IETF) Hourglass Design Application vs Application Protocol (FTP, HTTP) … FTPHTTPNV TFTP TCP UDP IP NET 1 2 n Ethernet, FDDI, etc. Internet Protocol Reliable byte-stream channel Unreliable datagram delivery Focal point for the architecture Netscape, IE, Mosaic, etc.
The “meeting point” in our 4 layers Also, the bottleneck or meeting point of various networking technologies FTP over FDDI, HTTP over Ethernet Transport Protocols ◦ Sometimes called end to end TCP – reliable, in order, slow UDP – unreliable, out
TCPUDP IP Network
We can apply the OSI model (loosely) to the IETF model Note that OSI was assembled after ARPANET
Subnet 1 Header Protocol 2 Header Payload Protocol 1 Headerr Payload Protocol 1 Header Payload Protocol 2 Header Protocol 1 Header Payload
HHP Header Payload RRP Header Payload RRP Header Payload Application Programs RRC Hardware MSC Host-To-Host Connectivity
…
RTT Message Copying V.S. Passing Process-per-protocol v.s. per-message ◦ Context Switching v.s. Function Calls Bandwidth & Latency
We’ll be using this for the class.
Coming up!