• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/13

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

13 Cards in this Set

  • Front
  • Back

What is the main goal of TCP Fast Open?

To decrease application network latency by one full RTT.

Why is reducing the number of round trips required for the transfer of web objects more effective than decreasing propagation delay to improve latency of web applications?

Propagation delay is constrained by the speed pf light.

What limited utility do HTTP persistent connections have?

1/3 of HTTP requests use new TCP connections. This can be due to NATs or Middleboxes terminating connections or parallel connections to download webpages.

What consequences are there with exchanging data during an initial handshake.

Security: a simple approach would be vulnerable to denial of service attacks. An attacker could spoof a request's source address causing the server to perform expensive request processing and send a large response to a victim host.

What was the main motivation behind creating TCPFO

Improvements in latency lead to noticeable increase in user satisfaction and site visits.

What's the difference between a cold request and a warm request?

Requests that reuse TCP connections are warm requests. Requests used on new connections are cold requests.

About what percentage of latency does an initial handshake have on a cold request?

8% to 28%

What constraints were on creating TCPFO?

* Safely transmit data.


* Deal with delayed or duplicate SYN packets


* Server applications are only notified of new connections when the the first ACK is received from the client.

What assumptions were made about the setting in which TFO is deployed?

* Servers cannot maintain permanent or semi-permanent per client state


* Servers may be behind load balancers or network devices.


* Servers cannot perform any operation to support TFO that are not reasonable to implement on the kernel's critical path

How does TFO prevent source address spoofing?

It uses a security cookie.

What are the steps a client performs to request a TFO cookie?

1) Client sends SYN packet to server with cookie request


2) Server creates cookie by encrypting client's IP address and sends ACK with cookie


3) Client caches cookie

What are the steps the client follows to use a TFO cookie if it's invalid and the client's data is not acknowledged?

1) Client sends SYN with cached cookie and app data


2) Server validates cookie


3) SYN-ACK is dropped and connection proceeds through regular 3WHS


4) Client sends ACK for server SYN. Client's data is re-transmitted with ACK


5) Connection proceeds like normal TCP connection.

What are the steps the client follows to use a TFO cookie if it's valid and client's data is acknowledged?

1) Client sends SYN with cached cookie and app data


2) Server validates cookie


3) If cookie is valid, server sends SYN-ACK. Data is delivered to server application


4) Server may transmit additional response data segments to client before receiving ACK from client.


5) Client sends ACK for server SYN.


6) Connection proceeds like normal TCP connection.