Data plane Flashcards

1
Q

What is the network layer?

A

Transports segments from sender to receiver.

segments are encapsulated by the sender into datagrams, and then passed up to transport layer by receiver

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

What devices use network layer protocols?

A

Use by every host and router, as it allows for datagrams to be addressed

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

What are the functions of the network layer?

A

Forwarding

Routing

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

What is forwarding?

A

Move packets from router’s input to appropriate output.

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

What is routing?

A

Determine route to be taken by packets from source to destination

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

What is the data plane?

A

Local, per-router function. Determines how datagrams on a router should be forwarded

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

What is the control plane?

A

Network-wide logic, Determine how datagram is routed among routers along end-to-end path

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

What are the two approaches to control-plane implementation?

A

Traditional routing algorithms: Implemented in routers

Software-defined networking (SDN): Implemented in remote server

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

How do traditional routing algorithms work?

A

Individual algo. components in each router interact with the control plane.

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

What is the architecture of a router?

A

Division into control plane and data plane.

Control plane contains routing processor

Data plane contains input/output ports and a high-seed switching fabric which speaks with the routing processor.

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

What is the structure of an input port?

A

Line termination, into link layer protocol (receive), into input buffer which is for queueing lookups and forwarding.

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

What happens at the input buffer in the input port?

A

Input port is given instruction by routing processor.

lookup output port using forwarding table in memory.

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

What types of forwarding is there for a router?

A

Destination-based forwarding: Based on IP address

Generalised forwarding: Forward based on any set of header field values.

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

How do forwarding tables decide what output port to use?

A

Longest prefix matching, find the longest address prefix matching the destination address (basically, most specific)

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

What type of memory is used in routers?

A

TCAMS
Ternary content addressable memories

Allows for the retrieval of an address in one clock cycle.

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

What is a switching fabric?

A

Transfers packet from input buffer to output buffer.

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

What is switching rate?

A

Rate is the rate at which packets can be transferred through the switching fabric.

Often measured as multiple of input/output line rate.

N inputs should aim for N * line rate.

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

What are the three types of switching fabrics?

A

Memory
Bus
Crossbar

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

How does switching via memory work?

A

Packet copied to system’s memory, speed limited by memory bandwidth as it 2 busses have to be crossed per datagram.

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

How does switching via bus work?

A

Datagram from input port memory to output port memory via a shared bus.

BUs contention: Switching speed is limited by bus bandwidth.

As bus is shared, data flows from input to output without leaving it. (think of Harry Potter staircase)

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

How is Switching via crossbar done?

A

Can split datagrams into n length cells and switch them through the network.

Overcomes bus bandwidth limitations.

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

How does input port queuing occur and what can be done about it?

A

Occurs when the switching fabric is slower than the input ports combined, causes delay and loss on buffer overflow.

Can also cause HOL blocking.

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

What is Head-of-the-line (HOL) blocking?

A

Queued datagram at front of the queue prevents others in queue from moving forward.

Caused by output port contention, as only one packet can use an output port at a time.

24
Q

How are output ports structured?

A

Datagram buffer -> Link layer protocol (send) -> Line termination.

25
Q

Why do we need a buffer in the output port?

A

Buffering required when datagrams reach the output port faster than the transmission rate.

26
Q

How are packets chosen for transmission and do we choose what ones to transmit?

A

Scheduling discipline chooses the best way to schedule packets for transmission

Might want different discpilines to prioritise packets due to the application needs

27
Q

What happens when the output buffer overflows?

A

Packets are dropped, however these have to be decided by the router. Can do random drop, or drop last one in.

28
Q

What are the different scheduling mechanisms for output ports?

A

FIFO
Priority
Round Robin
Weighted Fair Queuing

29
Q

How does FIFO deal with output port buffers?

A

Send in order of arrival to queue.

Discard policies:
Drop arriving packet
Drop based on priority basis from queue.
Random drop.

30
Q

How are Priority queues used to deal with output buffers?

A

Send highest priority queued packet. Classify packets into different priorities.

31
Q

How does Round Robin scheduling deal with output buffers?

A

Multiple classes of packets. Scan over queue, sending one complete packet from each class if it’s available.

32
Q

How is Weighted Fair Queueing used for output buffers?

A

Generalised version of round robin, each class gets weighted amount of service in each cycle. IE: 1 here, 2 here, 1 here.

33
Q

What is the format of an IP datagram

A

Version | Head. len | ToS | Length | 16-bit ID | flgs | fragment offset | ttl | upper layer | head checksum | 32b source IP | 32b dest IP | options | Data.

34
Q

What is the length field of an IP datagram?

A

Total datagram length in bytes

35
Q

What is the 16-bit Identifier used for in an IP datagram?

A

Used for fragmentation and reassembly of the content at the receiver side.

36
Q

What is the upper layer field used for in an IP packet?

A

Tells the host what protocol to deliver the payload to.

37
Q

What options are available as per the IP field?

A

Timestamp, record route, specify must-visit routers.

38
Q

How long is the header of a IP packet?

A

20 bytes.

39
Q

Why is data fragmented by IP?

A

Different link types have different MTU’s (Max transfer size), so large IP datagram is divided within the network. Only reassembled at the final destination.

40
Q

What’s important about the offset field?

A

Divide the number of bytes by 8 to get the number of offset.

41
Q

What is an IP address?

A

32-bit identifier for host, router interface.

42
Q

What is an interface?

A

Connection between host/router and physical link.

IP address for each interface.

43
Q

What is a subnet?

A

Group of interfaces with the same subnet part of IP address, ie /16. Can physically reach each other without intervening router.

44
Q

What is CIDR?

A

Classless InterDomain Routing

Subnet portion of address is of arbitrary length, a.b.c.d/x where /x is the number of bits that say what the subnet is.

45
Q

How does a host get an IP address?

A

Can be hardcoded or leased via DHCP.

46
Q

What is DHCP and how does it work?

A

Dynamic Host Configuration Protocol.

Allows host to dynamically obtains its IP address from network server - allowing for reuse of addresses.

47
Q

What are the different DHCP messages?

A

DHCP discover - is there a DHCP server?
DHCP offer - Here’s an address
DHCP request - Can I have that IP?
DHCP ack - Ok, it’s yours.

48
Q

What does DHCP provide other than IP addresses on a subnet?

A

Address of first-hop router for client.

Name and IP address of DNS server.

Subnet mask.

49
Q

How do ISP’s get IP’s to distribute?

A

ICANN allocated addresses, manages DNS and assigns domain names, resolves dipsutes.

50
Q

What is NAT and how does it work?

A

Network Address Translation.

All datagrams leaving network have same source IP, with different source ports.

NAT keeps mapping of port number/host

51
Q

Why do we need NAT?

A

Don’t need a range of IP’s from ISP, just one.

Can change local addresses without notifying outside world.

Can’t explicitly address internal hosts externally.

SCALABLE

52
Q

Why is NAT controversial?

A

Breaks 5-layer model.

Address shortage should be solved by IPv6 and not a ‘hacky’ short-term solutioon.

Violates end-to-end argument, must be taken into account by app designers.

53
Q

What is the motivation for IPv6?

A

Running out of IPv4 addresses.

Header format helps speed processing/forwarding and QoS.

54
Q

What is the stucture of IPv6 datagrams?

A

Fixed-length 40 byte header, no fragmentation allowed.

ver | pri | flow label | payload len | next hdr | hop limit | 128 bits saddr | 128 bits dest addr | data.

55
Q

What is the flow label in the IPv6 header?

A

Identify datagrams in the same flow, which isn’t well defined.

56
Q

What is the next header field user for in the IPv6 header?

A

Identifies the upper layer protocol to be used for the data.

Basically, the upper layer field from IPv4

57
Q

What is tunnelling?

A

Allows for IPv4 routers to deal with IPv6.

IPv4 packets carries IPv6 as payload.