Module 1: Introduction to Networked Systems Flashcards
As a programmer of distributed systems, what are some of your key concerns?
performance: latency, bandwidth, loss rate, jitter
number of end systems
service interface (how to invoke the service?)
communication model: reliability, unicast vs. multicast, broadcast, anycast, real-time…
describe three communication models:
- broadcast: one machine sends a message to many other machines (within a range)
- unicast: point to point communication; one machine talks to another machine
- multicast: one machine sends a message to a subset of machines
Based on the service-centric view of networks, the basic service networks offer is to:
send and receive information
goal of The Future Network:
“This era will be defined by the digitization and connection of everything and everyone with the goal of automating much of life, effectively creating time, by maximizing the efficiency of everything we do…”
Marcus K. Weldon
three waves of tech revolutions
- 1985-2000: building of internet
- 2000-2015: building new services on top of the internet
- 2015+: building the internet into everything
Analysis of the Growth in Core Network Traffic
Catalytic Technological Drivers for the Future Network
- cloud-integrated network
- internet-connected machines and devices (IoT)
- augmented intelligence systems
- mobile broadband that brings beyond the basic mobile internet access and covers rich applications in the cloud or augmented reality
Briefly describe a switched network and the issue it addresses:
I mentioned earlier that 5 billion people are connected to the internet. If everybody has 2 or 3 devices, that would be 10 to 15 billion devices. Therefore, it is not realistic for every device to be directly connected to every other device. What should we do in this case? In the core internet infrastructure, we have a smaller group of machines called switches, they connect endpoints in the network. When we say endpoint, we mean the end-host machine, it could be a server machine, desktop, iPhone, iPad, android, and so on. These endpoints connect to a nearby switch, if one of them wishes to talk to another host, they have to send messages through this network of switches.
What are the three phases of circuit switching paradigm?
- circuit establishment
- data transfer
- circuit termination
packet switching
- packets - discrete blocks of data
- routed between nodes over data links shared with other traffics
- at each node the entire packet is received, stored, and then forwarded to the next node (store and forward networks)
- links can be shared
datagram packet switching
most well-known example: IP networks (internet protocol)
each packet is independently switched
– each packet header contains destination address
– routing protocol is used to compute next hop
no resources are pre-allocated in advance
no connection state required:
– easy to recover from errors
– minimal network assumptions
how are resources shared in packet-switching?
multiplexing / demultiplexing
one way of achieving multiplexing is time division multiplexing (TDM): time divided in frames and frames divided in slots
– relative slot position inside a frame determines which conversation the data belongs to
– needs synchronization between sender and receiver
advantage of TDM: it is very fair, everyone has a turn to run
disadvantage: limited by time slots, if more connections than slots, then some cannot be sent, every connection gets equal resources, so not very efficient
what is an alternative to TDM? what issues does it have?
frequency division multiplexing: simultaneous transmission in different frequency band
same problem as TDM: inflexible
how does the internet do packet switching today?
statistical multiplexing:
– packets from any convo can be transmitted at any given time on demand
– upper-bound on packet size for fairness
how to tell them apart?
– use meta-data header to describe packets
con: new easy way to deal with congestion, you could drop packets
time-division vs. statistical
virtual-circuit packet switching
hybrid of circuit switching and packet switching
- data is transmitted as packets
- all packets from one packet stream are sent along a pre-established path
- connection oriented
guarantees in-sequence deliver of packets, allocate resources
examples: asynchronous transfer mode (ATM networks), multi-protocol label switching (MPLS)