The Bits and Bytes of Computer Networking 3 Flashcards
What is the role of the Transport Layer?
Directs traffic to specific network applications.
What is multiplexing / demultiplexing and where are they handled?
Multiplexing - the sending node can direct traffic towards the specific receiving service.
Demultiplexing - on the receiving node, delivering the incoming traffic to the right service.
Handled by ports.
What is a port, and how is one specified?
Software based, each port is identified by a 16 bit number, the computer knows what kind of traffic is incoming and where it should go, depending on what port it arrives to. Specified after an IP address, following a colon, eg, 9.100.100.0 : 80
What are ephemeral ports?
When a device is requesting data, it specifies a return port of a very high number, so that it can keep all incoming data separate.
What are the 6 TCP control flags and what does each mean?
1 URG = urgent, indicates if the segment is urgent, with a value of 1, if so check urgent pointer field for more info.
2 ACK = acknowledgement, a value of 1 here indicates that the acknowledgement field should be examined.
3 PSH = push, this segment should be sent to the application immediately, instead of being buffered (held somewhere else)
4 RST = reset, information has been lost, need to start again.
5 SYN = synchronize, used when establishing a connection, tells to check the sequence number field for order of segments.
6 FIN = finish, when FIN=1, data is all sent and connection will be closed.
What is a packet at the transport level called?
A TCP segment.
What is a 3 way handshake? When is it used and what is the process?
Used when establishing a TCP connection, uses TCP control flags. Process = >SYN, ACK.
What is a 4 way handshake? When is it used and what is the process?
Used when establishing a TCP connection, uses TCP control flags. Process = ACK, >FIN,
What is a socket in a TCP connection?
The instantiation of an end-point in a potential TCP connection.
What is instantiation?
The actual implementation of something defined elsewhere.
How does a TCP socket become instantiated and what does this mean?
It needs an application to open a socket on that port in order for it to function. You can send traffic to any port but will only get a response if that socket has been instantiated / activated.
What are 7 states that a TCP socket can be in, what do they mean, and which side are they observed on (client / server)?
LISTEN = the socket is ready and listening for incoming connections, only seen on server side.
SYN_SENT = a SYN request is sent but no connection established yet, only on client side.
SYN_RECEIVED = a SYN request has been received, and a SYN/ACK has been sent back. Only server side.
ESTABLISHED = TCP connection established, both sides free to send data. Seen on client and server.
FIN_WAIT = FIN has been sent but no ACK received. Seen on client and server.
CLOSE_WAIT = TCP connection ended, however application has not released the socket yet. Seen on client and server.
CLOSED = connection fully terminated. Seen on client and server.
What are the differences between TCP and UDP?
TCP = establishes a connection. Uses a constant stream of ACKS to ensure all sent data has been received. Less risk of data lost, but more traffic and is overall slower.
UDP = No connections / ACKS, just set the port and send the packet. Faster but less reliable.
What are the 3 types of ports, and what kind of service is each used for? What are the numbers of the first type?
0 - 1023 = Well known ports / system ports - used for well known network services.
Registered ports - less common network services.
Ephemeral ports - used for establishing outbound connections.
What is a Firewall?
A network security system that monitors and controls incoming and outgoing network traffic based on predetermined security rules.