Lecture 4: 15th October 2019 Flashcards

Design considerations of protocols and systems

1
Q

What is the hourglass model?

A

The modelling of protocols that operate the Internet, with IP being the only internetworking layer protocol that exists, forming its “waist” in the middle.

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

What are the advantages of IP being the only interworking protocol?

A

allows for heterogeneity by abstracting the lower layers; easy to develop for - only 1 interface; simple service, provisioning, and maintenance; common functionality

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

What is opex?

A

operational expenditure = maintenance, wages, office rental

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

What is capex?

A

capital expenditure = one-time costs such as buying a server or datacentre warehouse

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

What functionality is added to the interworking layer?

A

multicast transmissions, QoS, VoIP, etc

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

What are the consequences of adding functioanlity to the inrterworking layer?

A

increased complexity, num service interfaces, maintenance overhead, and reduced interoperability

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

What are the two chocies for interworking protocols and the differences between them?

A

IPv4 and IPv6. v4 fully deployed, v6 partially. v6 uses 128 bit addresses vs 32 bit in v4. v6 supports QoS.

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

What is IPSec?

A

IPSec = IP security = a suite of protocols that provide data authentication, integrity, and confidentiality across an IP network - in IP packets.

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

What is tunelling?

A

A tunneling protocol is a communications protocol that allows for the movement of data from one network to another. It involves allowing private network communications to be sent across a public network (such as the Internet) through a process called encapsulation. It can be done with encryption.

Can be one protocol over another (IPv6 over IPv4 if IPv6 unavailable from ISP) or for security with a VPN.

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

What does it mean to say that there are a break and mismatch in the waist of the hourglass model?

A

There is a break in the end-to-end principle of the Internet caused by NAT and ALGs such as middleboxes

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

What are ALGs?

A

ALG = Application-Level Gateway = a conceptual network security component that is implemented by a firewall proxy server that augments a firewall or NAT employed in a computer network to improve the network’s security.

ALGs map between different protocols implementing the same functionality, e.g. a company’s internal email service to external SMTP servers.

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

What is NAT?

A

Network address translation = a technique that maps multiple local IP addresses on a local network to one or more global IP addresses that send, receive, and route the traffic of the local addresses to and from the Internet.

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

What are middleboxes?

A

An intermediary networking device that performs functions other than the normal functions of a router on IP packets between their sender and receiver.

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

What is the end-to-end principle of the Internet?

A

A design concept in computer networking that specifies that application-specific features reside solely in the communicating end nodes of the network, and not in intermediary nodes, such as gateways and routers, that exist to establish the connection.

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

How do middleboxes break the end-to-end principle?

A

They can perform application-specific functionality outside of the hosts at each endpoint.

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

What are the problems with IPv6?

A

slow deployment rate; problems interoperating with v4 => forced to change network and app interfaces; doubles maintenance; increases use of tunneling (e.g. to get v6 or v6 features over v4 if ISP doesn’t provide directly)

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

What are the differences between the common services at the core IP network and transport layer?

A

Common services in the core network for IP:
– Connectionless, packet/datagram service.
– Packet forwarding.
– Routing.
– No end-to-end state to avoid “fate-sharing”.

Transport layer common services with TCP:
– Reliable, ordered byte-stream for applications.
– Flow control for receiver.
– Congestion control for network.
– Can survive network faults/route changes

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

How is UDP seen today, particularly with QUIC?

A

UDP seen as an “interface on to IP”. The official position for QUIC is that UDP is not a transport protocol. It’s debated, but some people see it as a mix between a transport and session protocol.

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

Why does keeping to the end-to-end principle make it hard to implement security and privacy?

A

It’s hard to decide which layer should implement security and privacy. Can’t be the network layer, as not all comms need secure transfer. The app layer would seem best as it knows from its state whether to encrypt. So it would encrypt a stream to the transport layer (via session where applicable). But the app layer needs to use IP addresses which can easily be used to identify and locate users, resulting in a loss of privacy.

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

What is the plane model?

A

A central part of SDN, the modelling of different network functions as being in separate “planes”; the three planes are the data plane (routing), control plane (making routing tables), and management (device config, maintenance, and monitoring) plane. The management plane is the least important.

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

What is the data plane?

A

The parts of a computer network responsible for moving user traffic to its next hop along its path, according to logic and instructions from the control plane, which decides where traffic is sent (i.e. paths and next hops).

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

What is the data plane aka?

A

user plane and forwarding plane

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

What is the control plane?

A

The parts of a computer network responsible for deciding where traffic is sent. It defines routing and forwarding tables and the network topology. The routing tables it defines are used by the data plane to move packets to their next hop.

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

What is the control plane aka?

A

signaling plane

25
Q

What is the management plane?

A

The parts of a computer network responsible for maintaining, configuring, and monitoring all the devices on a network.

26
Q

What is a SDN?

A

SDN = Software-defined networking = an approach to network management that seeks to make networks fast and adaptable. SDN attempts to dissociate the forwarding process of network packets (data plane) from the routing process (control plane). These are the most important of three planes, the other being the management plane.

The control plane dictates the network topology and constructs routing and forwarding tables. The data plane carries out data routing and forwarding: moving packets to their next hop. The management plane maintains, configures, and monitors network devices.

27
Q

What should you consider when designing protocols and systems such as the Internet?

A

Design assuming devices using the network will be heterogeneous (different) and that the network can change in scope: purpose and userbase and scale.

Choose a single, simple approach. Don’t reinvent stuff. Don’t constrain scalability. Consider performance in field sizes, data types, etc. Implement modularity and loose couplings.

Avoid circular dependencies, to avoid bootstrapping
problems: services that rely on each other to be in place. Perform real-world tests on anything built - first draft designs rarely work.

28
Q

Why is testing a vital piece of the design of systems?

A

Paper designs rarely work the first time.

29
Q

What is a monotonically increasing function?

A

As x increases, f(x) increases or stays level: doesn’t decrease.

30
Q

What is the Architectural Component Proportionality Law?

A

Essentially as the number of distinct components of an architecture increases, its complexity increases and the probability of making a stable implementation of it decreases.

Complexity(A) = O(w(|A|))
P(stable implementation of A) = O(1 / w(|A|))

w = monotonically increasing function
|A| = number of distinct components in the service delivery path of architecture A.
31
Q

Why does DNS scale and perform well?

A
  • hierarchy: uses a distributed namespace
  • request indirection/redirection: distribute request load throughout the hierarchy
  • caches updates with localised timing to avoid impacting accuracy
  • simple protocol: UDP-based and stateless to avoid TCP overheads
32
Q

Does TCP congestion control violate the end-to-end principle? Why?

A

No, because it is only implemented on end-user devices and isn’t vital network functionality.

33
Q

What should we assess to determine the success of a protocol?

A

Checking it remains scalable and performs well for other unintended uses (e.g. Internet for video not text) and on an unforeseen scale as well as for intended uses and scale. Successful protocols meet their original scale and functions but wildly successful protocols perform well beyond their original purposes and scale.

34
Q

What is RSVP-TE?

A

Resource Reservation Protocol - Traffic Engineering is a control plane protocol extending RSVP to include traffic engineering, which involves using statistics paired with measurements to plan the movement of data on networks ahead of time to improve their efficiency and performance.

35
Q

What are wildly successful protocols?

A

Protocols that perform well in their original purposes and scale and then go on to also perform well in further purposes and at greater scales.

36
Q

What are the issues with the surpassing of the original design constraints of wildly successful protocols?

A

Performance and security problems; creeping functionality; side effects of original design hindering possible future applications; becomes a prominent target for hackers.

37
Q

What are MIME encodings?

A

An Internet standard that extends the format of (originally email message) data to support text in character sets other than ASCII, as well as attachments of audio, video, images, and application programs. They allow people to interpret and read binary data.

38
Q

What is creeping functionality?

A

When you repeatedly add more functionality to a single protocol rather than using different ones to perform new and different functions. The protocol becomes a monolith as a result.

39
Q

Why may you encrypt data at the app layer?

A

Only app layer knows when to encrypt, based on state. It could tell the transport layer to do so, but encryption in the transport layer would stop middleboxes working as they wouldn’t be able to look at data from lower layers to perform their functionality. You also may not trust services at lower layers that you are doing so to handle encrypting your data.

40
Q

How may it be argued that HTTP is becoming the new waist of the hourglass?

A

May be becoming another waist or the new one in the hourglass model due to the amount of functionality that has been implemented on it. Many protocols moving to be over HTTP, firewalls don’t block it, mature and stable, already deployed and compatible with infrastructure and end-user devices…

41
Q

Why does the use and prevelance of middleboxes impact the design of the Internet?

A

They must be supported by ISPs or customers will go to competitors so are very prevalent; they are hard to change and deploy updates to, leading to ossification.

42
Q

What is Internet ossification?

A

The architecture of the Intenet becoming increasingly “set in stone” and unchangeable. From the process of bone generation, in which bone layers are successively laid down.

43
Q

Why do middleboxes contribute to the ossification of the Internet?

A

They are hard to change and deploy changes to, and companies must continue to support them to keep customers. This means Internet infrastructure will continue to support them for as long as they are used (which will be a long time as people will keep them until they break). This means the Internet’s architecture will have to remain the same (or at least compatible) for a long time, resulting in ossification.

44
Q

What is DCCP?

A

Datagram Congestion Control Protocol = a message-oriented transport layer protocol that implemented congestion control mechanisms.

45
Q

What were the issues with DCCP?

A

It was blocked by firewalls so it wasn’t used. This is why people make new services over HTTP.

46
Q

What is MP-TCP?

A

Multi-path TCP = an effort towards enabling a single TCP connection to use multiple flows: IP addresses/network interfaces. A common interface is given to TCP. The aims include better resource utilisation, better throughput and smoother reaction to failures.

47
Q

What were the issues with MP-TCP?

A

Issues with firewall blocking, NAT, and security. Got more success than DCCP due to backing from Apple and the Internet community.

48
Q

What is QUIC?

A

Quick UDP Internet Connections = a new transport layer Internet protocol to improve upon and replace TCP. It’s faster and encrypted-by-default.

49
Q

Why is QUIC more successful than DCCP and MP-TCP?

A

NATs, firewalls, and middleboxes see it as just being UDP, so it isn’t blocked and is supported by legacy technologies.

50
Q

What would encryption at the transport layer do to middleboxes?

A

Encryption in the transport layer would stop middleboxes working as they wouldn’t be able to look at data from lower layers to perform their functionality.

51
Q

What do middleboxes do?

A

Any network action that is not a normal action of an IP router. They manipulate packets and traffic for purposes other than routing and forwarding and implement some other purpose, such as filtering in firewalls for security.

52
Q

What do new services and protocols require to work with applications?

A

A new API. This takes a lot of effort to deploy to and integrate with all your existing devices, especially without a good incentive, so legacy support should be implemented as dual support in the API. Software engineers must understand the new APIs and then convince their managers to use them.

53
Q

How is ILNP similar to QUIC?

A

ILNP looks like IPv6 on the wire in the same way QUIC looks like UDP; this makes them both compatible with devices that handle IPv6 and UDP, respectively, without any further changes.

54
Q

What are the elements to balance when trying to use a new service or protocol with applications?

A

The ability to fulfil the new functionality desired and its compatibility with existing network infrastructure.

55
Q

How does the Internet impact people? Was this in its original scope?

A

It now impacts human rights and lives directly. Involved in freedom of information, expression, thought, speech…

No lol it was just uni email

56
Q

What is the consequence of Internet ossification?

A

Innovation and performance are constrained

57
Q

What are the consequences of centralised ownership of Internet services?

A

reduced utility and privacy as well as commercial self-interest dominating interests of the general population

58
Q

What is the consideration with the size of entities involved with governance and control of the Internet?

A

We need to decide if few, large, well-known commercial entities or many, smaller, diverse but less well-known commercial entities are better to govern the Internet for the interests of the general population.

59
Q

How do commercial interests narrow the focus of R&D?

A

To get funding, you need to involve a commercial interest of a company. So research narrowly focuses on what helps companies - not just everyone in general.