Lesson 2 - Architecture and Principles Flashcards

1
Q

Networking today is…

A

An eclectic mix of theory and practice

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Early internet architects…

A

Set out with clear goals and allowed flexibility in achieving them

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

The internet has its roots in

A

ARPANet (1966-67)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

First operational ARPANet

A

Goal was to connect big academic computers together. First operational nodes came online in 1969 at UCLA, SRI, UCSB, and Utah. Around the same time, the National Physical Laboratory in the UK (NPL) came on.
-1971: around 20 nodes and the first host to host protocol.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

SatNet

A

Operated by satellite

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

TCP/IP

A

Work began in 1973 to replace original network control protocol with TCP/IP (Transmission Control Protocol/Internet Protocol).
Standardized in late 70s. Included in Berkeley Unix in 1981.
Flag Day = Jan 1, 1983, where ARPANet transitioned to TCP/IP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

of computers on internet took off in

A

Mid-1990s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Rollout of the DNS

A

1982

Replaced the hosts.txt file containing all the world’s machine names with a distributed name lookup system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

TCP congestion control

A

1988 (after the net suffered a series of congestion collapses)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

NSF Net, BGP introduced

A
  1. BGP provided domain routing.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

First major search engine

A

AltaVista (1995)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

P2P file sharing

A

Emerged around 2000

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Problems with IPv4

A
  • Running out of addresses (only has 2^32 32-bit addresses)

- Needs to be allocated hierarchically but currently not very efficiently organized

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Goal of Congestion Control

A
  • Match offered load to available capacity
  • Problems with today’s algorithms: insufficient dynamic range, don’t work very well over slow/flaky wireless links, don’t work well over very high-speed intercontinental paths
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Routing

A

The process by which nodes on the internet discover paths to take to reach a detination

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Some ills of BGP

A
  • (BGP is today’s inter-domain routing protocol)

- Suffers from lack of security, ease of misconfiguration, poor convergence, and non-determinism

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is the glue that holds all the internet service providers together?

A

BGP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Security problems

A

We’re reasonably good at encryption and authentication, but not at turning these mechanisms on, and bad at key management, and deploying secure SW and secure communications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Denial of Service

A

Internet does a good job of transmitting packets, even if destination doesn’t want. Makes it easy for an attacker to overload servers or network links to prevent victim from doing work. (DDS attacks are particularly common in today’s internet)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Fixing current problems requires…

A

Changes to basic infrastructure.

-These are difficult, and it’s unclear what process is to achieve consensus on changes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

SDN

A

(Software-defined networking)

-Makes it easier to solve some of these problems by rolling out new SW tech/protocols

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Many of the problems we face today are due to

A

Original design choices. This doesn’t mean they were right or wrong, but just reflect our understanding at the time as well as the environment and constraints the designers faced.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Fundamental design goal of the internet

A

Multiplexed utilization of existing interconnected networks.

-Multiplexed: sharing. One fundamental problem was shared use of single communications channel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Solution to “shared use of single communications channel”

A

Statistical multiplexing/packet switching

25
Q

Solution to “interconnected”

A

Narrow waist

26
Q

Packet switching

A
  • Info for forwarding traffic is contained in destination address of the datagram or packet (like address on a letter)
  • No state
  • Revolutionary, and one of the underlying design principles of the internet that has persisted
27
Q

Best effort service

A

Very few assumptions made about level of service that the network provides

28
Q

Circuit switching

A

Signaling protocol sets up entire path out-of-band

-Dedicated resources for path from recipient to sender

29
Q

Advantage of statistical multiplexing

A

Sender never gets a busy signal

30
Q

Drawbacks of statistical multiplexing

A
  • Variable delay
  • Potential for loss or dropped packets
  • In contrast, circuit switching provides resource control, better accounting, and reservation of resources.
  • Packet switching provides ability to share resources and potentially better resilience properties.
31
Q

Narrow waist

A

Goal to interconnect existing networks and hide underlying technologies from applications. Many protocols layered, with IP at the center. Every device must “speak” IP

32
Q

Layer 1 (bottom)

A

Physical layer (SONET for optimal networks…)

33
Q

Layer 2

A

Link layer, provides p2p connectivity (ethernet is a common link layer protocol)

34
Q

Layer 3

A

Network layer, e2e connectivity (IP)

35
Q

Layer 4

A

Transport layer, congestion control & reliable transport (TCP, UDP)

36
Q

Layer 5

A

Application layer, reliable transport (HTTP, SMTP)

37
Q

Most critical aspect of interconnection design

A

Network layer has 1 real protocol in use (IP). This means every device on the network must speak IP.
-Sometimes called “IP over anything” or “anything over IP”

38
Q

Advantage of narrow waist

A

Fairly easy to get a device on the network if it runs IP

39
Q

Drawback of narrow waist

A

Difficult to make any changes at the network layer, since every device runs IP. People are trying to make changes to this (SDN for example).

40
Q

Goals of DARPA design philosophy paper

A

Sharing, Interconnection, Survivability, Heterogeneity, Distributed Management

41
Q

Survivability

A

Networks should continue to work even if some device is failed or compromised.

42
Q

How to achieve survivability

A
  • Replication (keep state at multiple places in network, so that if any node crashes, there’s a hot standby waiting to take over).
  • Fate sharing: it’s acceptable to lose state information for some entity if that entity itself is lost (ex: if a router crashes, its state AKA routing tables are lost too. makes engineering easier)
43
Q

Heterogeneity

A
  • Supported through TCP/IP protocol stack
  • TCP/IP was designed as a monolithic transport
  • TCP provided flow control and reliable delivery
  • IP provided universal forwarding
  • However, these aren’t always needed (DNS doesn’t always need in-order, reliable delivery, streaming doesn’t need every packet delivered)
  • Narrow waist allowed proliferation of many different transport protocols, not just TCP
  • Best effort service model allows network to lose packets and deliver them out of order and not really provide any quality guarantees.
44
Q

Advantage of heterogeneity:

A

makes for a simple design

45
Q

Drawback of heterogeneity

A

Makes certain kinds of debugging and network management more difficult

46
Q

Examples where distributed mgmt has played out

A
  • Addressing registries (ARIN, RIPE [Europe], etc.)
  • DNS: allows independently operated network to configure its own routing policy
  • BGP: allows each independently operated network to configure its own routing policy
  • No single entity needs to be in charge. Allows for organic growth and stable mgmt.
47
Q

Drawback of Distributed mgmt

A
  • Internet has no owner or single responsible party
  • Hard to figure out who or what is causing a problem
  • Misconfig in a local network can have global effects
48
Q

Other 3 design goals discussed by Clart

A

Cost effectiveness, ease of attachment, accountability

49
Q

Ease of attachment

A

Huge success. IP is essentially plug and play. Lesson is that if one lowers the barrier to innovation, people will get creative about the types of devices and applications that can run on top of the internet. Narrow waist also allows for the network to run on a wide range of physical layers.

50
Q

Accountability

A

(ability to bill, essentially) was mentioned in early TCP/IP papers but not prioritized. Datagram networks can make it tricky. Phone networks much easier/more precise.

51
Q

What’s missing from Clark’s paper

A

Security, Availability, Mobility, Scaling, Probability of other things

52
Q

End to end argument

A

Intelligence required to implement a particular application on the communications system should be placed at the end points, rather than in the middle of the network.

  • “Dumb network, intelligent endpoints”
  • Allowed internet to grow because innovation took place at the edge in apps and services rather than in the middle which can be hard to change
  • it is JUST AN ARGUMENT. many things have come to violate it. It’s not a theorem or principle.
  • Sometimes constrains us. SDN in some ways reverses many aspects of this end to end argument.
53
Q

Examples of end-to-end argument

A
  • Error handling and file transfer
  • Encryption end-to-end vs. hop/ihop
  • Partition of TCP and IP
54
Q

Things that violate the End-to-end argument

A
  • NAT (machines behind it are not globally addressable)
  • VPN tunnels
  • TCP splitting (sometimes connections are split at an intermediate node along an end to end path, particularly when the last end to end path is wireless) - sometimes done to improve performance due to the last hop
  • Spam filters (why?)
  • P2P systems - assembled in chunks
  • Caches and in-network aggregation
55
Q

STUN

A
  • signaling and tunneling through UDP-enabled NAT devices
  • device sends an initial outbound packet somewhere simply to create an entry into the NAT table, and we now have a global address and port to which devices can send traffic
  • Also possible to statically configure these tunnels or mappings on your NAT device at home.
  • Even with these workarounds, it’s clear that NATs are a violation of the end-to-end principle. 2 hosts on the internet cannot communicate directly by default.
56
Q

Violations of the end-to-end argument

A
  • P2P, video sharing. Add extra layer of complication in communication between 2 end hosts
  • NAT device
  • Basically, ANYTHING that interferes between the 2 hosts
  • Arguments against violating e2e: because it violates the fate-sharing principle, which is one of the founding ideals of the Internet. The idea is that it makes it much more difficult to troubleshoot an issue because it adds additional complexity and state information that is contained away from the network
  • Arguments for: Security Engineers would likely argue that NAT is more secure than exposing hosts to the Internet, that proxies are better than giving direct access to websites, etc.
57
Q

What 2 things support heterogeneity

A

TCP/IP and “Best Effort”

58
Q

How do addressing, naming, and routing support distributed management?

A

Addressing: registries (ARIN, RIPE, etc.)
Naming: DNS
Routing: BGP

59
Q

Of the following, which were included in Clark’s original paper?

Support for Security
Support for Heterogeneity
Support for Interconnection
Support for Sharing
Support for Mobility
A

Heterogeneity, Interconnection, and Sharing