Shared Flashcard Set

Details

TCP Prelims Fundamentals
CCIE
26
Computer Networking
Professional
01/17/2016

Additional Computer Networking Flashcards

 


 

Cards

Term
What is arq in relation to tcp?
Definition
ARQ is an alternative to error-correcting codes, where lost data is simply resent until it is received.
Term
What types of errors may we encounter with TCP?
Definition
a. packet reordering
b. packet duplication
c. packet drops
d. packet bit errors
Term
A sender has a sliding window of 3 packets, what happens when an ack is received for the first packet that was in flight.
Definition
a. The window slides to the right
b. The copy of the acknowledged packet can be released
c. The next packet is sent
Term
Describe the 2 methods of flow control?
Definition
a. Rate-based flow control gives a sender a data rate allocation, which it can't exceed.
b. Window-based flow control allows a variable window size to be used. A communication method must exist where the receiver can inform the sender of what size to use.
Term
Explain the subtle difference between flow control and congestion control.
Definition
a. Flow control enables the sender and receiver to manage the flow using explicit signalling (Window Advertisement).
b. Congestion Control involves the sender slowing its transmission rate so as not to overwhelm the network. This approach requires some kind of implicit signalling, such as dropped packets.
Term
Who defines the retransmission timeout and what are the consequences of this being too short/long?
Definition
a. The TCP protocol implementation defines the round-trip-time estimation based on the mean of a collection of RTT samples.
b. Too low = unwanted retransmissions.
c. Too high = idle network, less throughput.
Term
Briefly describe TCP.
Definition
a. Connection-oriented, reliable, byte stream service between 2 endpoints. Broadcasting/multicasting does not apply to TCP.
i. Connection-oriented - session must be established before data exchange.
ii. Reliable - error detection and retransmission.
iii. Byte stream - record markers are not communicated between the sender and receiver.
Term
What does a tcp sequence number actually represent?
Definition
The byte offsets of the first byte in each packet in the overall data stream rather than packet numbers.
Term
What is the size range of a tcp header?
Definition
20 bytes with no options, up to 60 bytes with options.
Term
A TCP retransmission timer will be set for what unit of data?
Definition
It will be set for every window of data and is updated when ACKs arrive.
Term
Describe cumulative acknowledgements and its main benefit.
Definition
An ACK indicating byte number "N" implies that all bytes up to "N" (but not including "N") have been successfully received. This may help to overcome ACK loss as a subsequent ACK will likely confirm receipt of previous segments.
Term
Explain how tcp maintains flow control and sequencing, without adding unnecessary segments to the network.
Definition
Once a session is established, the following is sent with every TCP segment that contains data:
a. An ACK for segments flowing in the opposite direction.
b. A Window advertisement.
Term
What will a TCP receiver do with a segment that arrives out of order?
Definition
The segment will be buffered until the missing segment(s) arrives. TCP never delivers data to the receiving application out of order.
Term
What will tcp do with a duplicate segment that arrives?
Definition
Duplicate segments will be dropped.
Term
list the fields and sizes within a tcp header.
Definition
a. source port (16 bit)
b. dest port (16 bit)
c. sequence number (32 bit)
d. acknowledgement number (32 bit)
e. header length (4 bit)
f. reserved (4 bit)
g. flags (8 bit)
h. window size (16 bit)
i. checksum (16 bit)
j. urgent pointer (16 bit)
k. options (variable)
Term
which fields of the header refer to data flowing in the opposite direction, relative to the sender of the segment?
Definition
a. acknowledgement number
b. ECE bit
c. ACK bit
d. window size
Term
describe each of the flags.
Definition
a. CWR - congestion window reduced (sender reduced its sending rate).
b. ECE - ECN Echo (sender received an earlier congestion notification).
c. URG - Urgent (the urgent pointer field is valid - rarely used)
d. ACK - acknowledgement (ack number field is valid - always on once connection is established)
e. PSH - push (receiver should push data to the app asap - not reliably used or implemented)
f. RST - reset connection (connection abort, usually because of an error)
g. SYN - sync sequence numbers to initiate connection.
h. FIN - sender has finished sending data to peer.
Term
describe the sequence number and ack number fields. How is an Ack identified?
Definition
a. sequence number is a 32-bit field that identifies where the first byte of data in the segment belongs in the overall stream being transmitted. As each byte has an associated sequence number, the allocated numbers will wrap back around to 0 after they are exhausted.
b. As every byte is numbered, the acknowledgement number field contains the number of the next byte that the sender of the acknowledgement expects to receive (the last acknowledged byte + 1). This field is only valid if the ACK bit is on.
Term
What type of segment does not consume a sequence number and why?
Definition
ACK's don't consume sequence numbers. Consuming sequence numbers implies reliable delivery and we don't ACK ACK's.
Term
what is the drawback of cumulative acknowledgement and how can this be overcome?
Definition
Segments received out of order cannot be acknowledged. Selective Acknowledgement (SACK) can overcome this.
Term
describe the header length field.
Definition
The 4-bit header length field gives the length of the header in 32-bit words. This is set to 5 when no options are used (20 bytes) and has a max value of 15 (60 bytes).
Term
describe the window size field.
Definition
This is a 16-bit field that signifies how many bytes the receiver is willing to receive, starting with the byte in the ACK field. The Window Size is limited to 65535 bytes, but can be scaled using the Window Scale option.
Term
describe the checksum field.
Definition
a. Mandatory 16 bit pseudo-header calculated by sender and checked by receiver.
b. Calculated on entire TCP segment and elements of IP header.
Term
describe the urgent pointer field.
Definition
a. Marks urgent data and is valid if URG bit is set.
b. when value is added to Sequence Number field, it identifies the last byte of urgent data.
Term
List some common option fields.
Definition
a. MSS.
b. SACK.
c. Timestamp.
d. Window Scale
Term
under what circumstances would a TCP segment with no data be sent?
Definition
a. session establishment
b. session teardown
c. pure ACK
d. window update
e. timeouts
Supporting users have an ad free experience!