Internetworking Flashcards
What are distributed systems?
Interconnection of computers across a network to provide a common service or set of services e.g. the internet
What is the client-server model?
An application providing a service (server) is contacted by an application that needs to use the service (client)
Name some advantages of a distributed system?
- Access to remote resources
- Access to computing power that you don’t have locally
- Scalability
- Robust (resources duplicated)
In the client-server model, if the web browser you’re using is a client, what is the server?
Web server
What are the 3 main types of computer addresses?
Hostname address
IP address
Hardware address
What does a hostname address look like?
severn.cs.nott.ac.uk
What does an ip address look like?
128.243.10.4
What is a hardware address also known as?
MAC address, physical address, ethernet address
Do organisations typically use one network technology?
No, usually several
What does universal service mean?
Any two computers should be able to communicate
What is internetworking?
The interconnection of several heterogeneous networks to provide a universal service
What is the universal hardware component used to connect heterogeneous networks?
Router
How does internet protocol software provide universal service?
By creating a single virtual network
Can a router connect more than 2 networks?
Usually yes
When did the internet emerge into public domain and who controls it?
1990s
- the IETF, internet engineering task force
What is the layered model?
Application
Transport
Internet
Network interface
What is the internet reference model?
Application
Transport
Internet
Network Interface
Physical
What does host computer mean in TCP/IP?
Any system that connects to the internet and runs applications.
What does IP address stand for?
Internet protocol address
Why are there two versions of IP?
IPv4 and IPv6 because the internet ran out of address space
Under the IP addressing scheme, each host is assigned a…..
Unique binary number
128 bit for IPv6
32 bit for IPv4
What is a 32 bit IP address divided into?
Prefix - physical network the host is attached to
Suffix - a host attached to a given physical network
Where are prefixes and suffixes for IP addresses co-ordinated?
prefixes - globally
suffixes - locally
What does the size of prefixes and suffixes in an IP address determine?
max number of networks and max number of hosts per network
In IPv4 addressing, what do the first four bits of an address determine?
Specifies its class and how the remainder is divided into prefix and suffix
Who assigns IP numbers?
Public internet network numbers are assigned by Internet service providers (ISPs) and then co-ordinated by ICANN (Internet corporation for assigned names and numbers)
What is the difference between subnet addressing and classless addressing?
Subnet addressing was originally just used in large organisations that connected to the internet, classless addressing extends this approach to the entire internet
What is the idea between IPv4 subnet and classless addressing?
Allows the division between the prefix and the suffix to be at an arbitrary boundary
Which version of IP were subnet and classless addressing developed for/in?
IPv4
What is the motivation behind arbitrary boundaries in IP addressing?
The smallest class of address uses 8 bit suffixes but many networks may only need 3,4,5,6,7 bits for the suffix so are wasting part of the address
What are address masks?
They are used to identify the network prefix / prefix/suffix boundary
What is classless addressing also known as?
CIDR: classless inter-domain routing
What does the special IPv4 address all-0s mean?
this computer
What does the special IPv4 address all-1s mean?
A limited broadcast on local network
What does the special IPv4 address with a network prefix and all 0s suffix means?
identifies the network
What is an all 0s IPv4 address used for?
Used during bootstrap
What types of devices are always given two or more IP addresses?
Routers and multi-homed computers
What are multihomed hosts good for?
Increasing performance, connecting to multiple network
What is the more compact address form used for IPv6?
colon hexadecimal
Name the 3 types of special IPv6 addresses?
Unicast, multicast, anycast
What is the purpose of a unicast IPv6 address?
Corresponds to a single computer and any datagrams are routed along the shortest path to it
What is the purpose of a multicast address in IPv6?
Address corresponds to a set of computers and membership to this set can change at any time, a copy of any data is routed to all members
What is the purpose of an anycast IPv6 address?
Corresponds to a set of several computers with the same prefix, a datagram sent to the address is delivered to exactly one of the computers (closest to sender)
What is a datagram and who defines it?
a universal virtual packet defined by an internet protocol
How does the size of IPv4 and v6 datagrams differ?
v4 - 64k octets including header
v6 - 64k octets PLUS header
What does a router use to forward an IP virtual packet?
uses a local forwarding table
What does a local forwarding table contain?
Entries of networks with address, mask, next hop
What does longest prefix match mean?
If a table has both
128.10.0.0/16
128.10.2.0/24
and a datagram arrives for
128.10.2.3
it matches both the first sections but will use longest prefix match and go for 128.10.1.0/24
What situations do IPv4 and IPv6 not guarantee to deal with?
- datagram duplication
- delayed or out of order delivery
- corruption of data
- datagram loss
What is encapsulation?
An IP datagram sent over a physical network is placed in the data area of a frame and the frame type is set to IP
What is MTU?
Maximum transmission unit - max of data that a frame can carry on a given network
If a packet encounters different MTU sizes as it travels, what happens to the datagram?
It is fragmented
What is IPv4 fragmentation?
An IPv4 datagram larger than MTU is split into smaller datagrams, not all of equal size
How does IPv6 fragmentation work?
Datagram has an unfragmentable part so fragmentable part is split up and unfragmentable part is attached to all subdivisions.
How is fragment size controlled in IPv6?
Fragment is chosen to be MTU of network at source and if a router gets a datagram bigger than MTU it sends an error message and doesn’t store or transmit
What do Path MTU and Path MTU discovery mean?
Path MTU - minimum MTU along a path
Path MTU Discovery - process of learning path MTU
What is the process of path MTU discovery?
iterative process of trying a size and seeing if an error gets returned
How does fragmentation reassembly work?
Done at final host (fragments can take separate routes), headers indicate when data is a fragment and then where it goes
How are fragments identified when they don’t always arrive at the destination together or in order?
An identification field determines which datagram the fragment belonged to
A fragment offset field determines where in the original datagram the payload of a fragment goes
What does a receiver do when it receives a fragment?
Starts a timer, if timer expires before all fragments are received it discards them all, fragments are buffered in memory until this point
Why should fragmentation generally be avoided?
On a lossy network, a fragmented datagram is more likely to be lost
How does MTU size affect network design?
A network shouldn’t be designed to involve a sequence of decreasing MTUs
What does ARP stand for?
Address resolution protocol
What does ICMP stand for?
Internet control message protocol
What does DHCP stand for?
Dyanamic host configuration protocol
What does NAT stand for?
Network Address translation
Are IP addresses hardware dependent or independent?
Independent!
At whatlayer are IP addresses mapped to hardware addresses?
Link layer, address resolution protocol (ARP) is used on ethernet
What is mapping between IP adresses and mac addresses known as? When is it done?
Address resolution, done when computers are on the same physical network
What does ARP do?
Translates between IPv4 addresses and hardware addresses
What will a sender use ARP (address resolution protocol) for?
Finding the hardware address of a destination on the same network or a next-hop router if on another network
What is an IPv4 ARP discovery packet?
A packet sent from a host to all other hosts, but only the one with that IP address responds and then the sending host updates it’s ARP cache
What does the ARP cache of a host store?
Mappings of IP to hardware addresses, when it runs out of room the oldest mapping is removed
When is an ARP request sent?
When the host has a datagram to deliver to that address
Does IPv6 use ARP?
No, it uses neighbour discovery (IPv6-ND)
How does IPv6-ND work?
- IPv6 defines a multicast address for all nodes listening
- requestor multicasts and asks neighbours to reply
- records addresses in table in cache
- contacts neighbours periodically to check they are still active
What are the two types of messages in ICMP?
- to report errors
- to obtain information
Using ICMP, what does a router do when it detects a packet is in the wrong place?
Sends an ICMP redirect packet to sender to inform it
- sender can update tables
What’s wrong with ICMP redirects?
- not trustworthy
- can be used to tamper with routing tables
- most dedicated routers are set to ignore them
What information does a router need on boot up that is provided by the system administrator?
IP address for each network connection
Protocol software to run
Initial values for a routing table
What does a device do when plugged into a network?
Obtains an IP address, sets up default route, connects to a DNS server
What does DCHP allow clients to do?
‘lease’ network and administrative parameters from a central DCHP server
- e.g. IP addresses, gateways/default routes, proxy servers
Does a DCHP server need to be on the same network as the host?
No, can run via a DCHP relay
How does DCHP optimise loss recovery?
DCHP ensures missing packets don’t cause misconfiguration - host resending requests or ignoring duplicate requests
What does an IPv6 node do that is unique to v6?
generates its own IP address
How does an IPv6 node generate its own IP address?
- finds network prefix via a mutlicast to all nodes
- generates a unique suffix (its MAC address)
What is it called when IPv6 nodes generate their own IP address?
Autoconfiguration
Where are private addresses used?
internally by a site and never shown to the internet
What does a border router do?
translates between a sites private address and the address space assigned by their ISP
What does NAT do on a border router?
Intercepts packets on their way to the internet, addressed with internal addresses and replaces their source addresses
What is the advantage when a site uses private addressing and a NAT border router?
One single external address can be shared by many computers
What does the basic layer of NAT not handle?
- two hosts attempting to communicate with the same external server
- two or more applications on a given host site attempt simultaneous interaction with different internet destinations
What is NAPT? How does it differ from NAT?
Transport layer NAT, it allows a site to have an arbitrary number of applications running on arbitrary hosts all communicating with any internet destinations
What does NAPT (transport layer NAT) use to distinguish amongst services?
Protocol port numbers
Where is the transport later?
Layer 4 - above IP
What two protocols are in the transport layer?
UDP and TCP
What does UDP stand for?
User Datagram Protocol
What does TCP stand for?
Transport control protocol
What can IP NOT distinguish between?
Multiple applications on the same host
UDP and TCP are known as ‘_____to_____’ protocols
end to end
What does IP (layer 3) consider as the endpoint of communication, how does this differ with layer 4?
IP considers the computer the endpoint but layer 4 is able to have an individual application on a computer as the endpoint
Name some features of the UDP (user datagram protocol).
- end to end
- connectionless
- message orientated
- best effort
- operating system independent
UDP is _____ orientated.
message
What does it mean for an application using UDP that UDP is connectionless?
- no need to establish a connection before sending data
- don’t need to inform network when finished
- can generate/send data any time
- can delay as long as liked between messages
What else does UDP send besides the actual data message?
Nothing! no extra control messages
How does UDP package data?
data sent is packaged in one single message, never split or combined, application must send data that will fit into 1 packet
UDP uses the same best effort delivery method as IP, what problems can this cause?
messages
- lost
- duplicated
- delayed
- delivered out of order
- corrupted
What are the four types of interaction that UDP allows for?
1-1
1-many
many-1
many-many
What identifiers does UDP define?
protocol port numbers
UDP identifies programs with port numbers, what must an individual computer do with these?
Map them to the program identifiers that the operating system uses
What does a UDP header include?
just protocol port numbers
What is a UDP datagram sent within?
An IP datagram across the internet
TCP is a ‘_____to_____’ protocol
end-to-end
UDP is message orientated, TCP is _______ orientated?
connection
What are are TCP connections called?
Virtual connections
Why are TCP connections called virtual connections?
The connections are provided by software
What are the two special control messages used by TCP?
Synchronisation segment, SYN
Finish segment, FIN
TCP requires a startup 3-way handshake, what is sent during this?
each side sends a control message with buffer size and sequence number
How do transport protocols deal with duplicates and out-of-order delivery?
Each packet has a sequence number and packets are stored and delivered in sequence at each layer
What is a common approach to handling lost packets?
Positive acknowledgment with retransmission
What is adaptive retransmission?
The timer for retransmission is adapted based on connection delay
Sometimes packet sequence numbers in transport protocols may be confused with sequence numbers from a previous session when packet is delayed a long time, how is this resolved?
Packets can be given a session identifier
Name two methods of flow control for transport protocols.
stop and go, sliding window
Why is stop and go an inefficient method of flow control?
waste of bandwidth if delay is long
What are sliding window protocols?
a flow control technique where several packets are sent before waiting for acknowledgement on each, amount depends on an agreed window size
Where in the internet does congestion usually occur?
in routers
How does TCP deal with congestion?
Rate control - reducing window size
What does TCP do after its first lost message in a connection?
backs off and sends a small message
What is a slow start in the context of TCP?
TCP starts a connection with a very small message
- doubles amount of data for every ACK until half window size and then slows increase rate