• 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/30

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;

30 Cards in this Set

  • Front
  • Back
What does TCP provide over IP?
- Virtual Circuit: setup/teardown
- Buffered: Can buffer bytes on sender/receiver
- Full duplex: once connection established, either endpoint can send
- Reliable: positive ACKs + timers, retransmission
- Checksum of data
- Port
What is the algorithm for the TCP/UDP/IP header checksum?
One's complement of 16-bit one's complement sum.
What does UDP provide over IP?
- Checksum of data
- Port
DOES NOT PROVIDE: Reliability, Flow/Congestion Control, Segmentation
What does TCP stand for?
Transmission Control Protocol
What does UDP stand for?
User Datagram Protocol
TCP flag: URG
Urgent pointer valid. The urgent pointer points to number of octets from segment beginning to last octet of urgent data (16-bit)
TCP flag: ACK
Acknowledgement is valid
TCP flag: PSH
Requests that sender/receiver doesn't buffer data
TCP flag: RST
Directs TCP to abort this connection
TCP flag: SYN
Requests establishing a connection
TCP flag: FIN
Sender is done sending (but not receiving) data
TCP header: window size
(16 bit) Number of octets permitted to transmit starting at the acknowledged octet
Considering the latency model for dynamic congestion windows, which components contribute to latency?
Round trip time (RTT), the sum of all the stalled times, the transmission time of the object (O/R)
When a TCP segment arrives to a host, the socket to which the segment is directed depends on what?
local and foreign addresses, local and foreign ports, and protocol
Stop and wait protocol
...
Highly inefficient when when there is a large distance between source and destination and the transmission rate is high.
Pipelining requires what?
unique sequence numbers for each in-transit packet, sender-side buffering of unacknowledged packets, transmitting many packets before receiving acknowledgements
With SYN cookies, when a server receives a SYN segment, it returns a SYNACK with:
an initial sequence number that is a hash of the IP addresses and port numbers in the SYN segment (as well as of other things).
Over a TCP connection, suppose host A sends two segments to host B, host B sends an acknowledgement for each segment, the first acknowledgement is lost, but the second acknowledgement arrives before the timer for the first segment expires. What will host A do?
Host A will retransmit neither segments
When a UDP segment arrives to a host, in order to direct the segment to the appropriate socket, the OS uses what?
Destination port number
TCP applies fast retransmit to a segment when ___?
when it receives three ACKs for an earlier segment
Nmap is often used to do what?
port scans over a range of ports at a target host
RTT
Round Trip Time
Three Way Handshake
1. The client requests a connection by sending a SYN (synchronize) message to the server with initial sequence number X.
2. The server acknowledges this request by sending SYN-ACK back to the client with SYN initial sequence number Y and ACK X+1.
3. The client responds with an ACK of Y+1, and the connection is established.
List some UDP application protocols
DNS, DHCP, TFTP, SNMP
Why not use initial sequence number of 0?
1. Delayed packets from an old connection could cause confusion.

2. Makes connection hijacking easier.
What is the rule for going into a time wait on a FIN?
If you send a FIN before you receive a FIN, you must go into time wait.
Example when client will go into time wait:
echo protocol, Tweetster when server sends something unexpected.
Example when server will go into time wait:
HTTP, Tweetster when there's an error caused by the client.
Formula for Round Trip Time (RTT)
RTT = (alpha * RTT) + ((1 - alpha) * M)
M = latest measurement of actual RTT
0<=alpha<=1 : weight on old RTT (typically 7/8)
Formula for Retransmission Timeout (RTO)
RTO = RTT + 4D
D (deviation) = alpha * D + (1-alpha) |RTT-M|
alpha = weight on previous deviation (commonly 7/8)
initial RTO = beta * RTT
beta = scalar multiplier (generally arbitrary)