Computer Networking: A Top-Down Approach, CH3

0.0(0)
studied byStudied by 1 person
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/41

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

42 Terms

1
New cards
TRANS: Transport Layer Services
TRANS: Provide logical communication between processes on different end systems; Break app messages into segments
2
New cards
TRANS: Transport Layer vs. Network Layer
TRANS: Network layer - logical communication between hosts
Transport layer - logical communication between processes
3
New cards
TRANS: 2 Transport Layer Protocols
TRANS: TCP, UDP
4
New cards
TRANS: Multiplexing
TRANS: Handle data from multiple sockets, add transport header
5
New cards
TRANS: Demultiplexing
TRANS: Use header info to deliver received segments to correct socket
6
New cards
TRANS: Connectionless demultiplexing
TRANS: When creating datagram, specify destination IP and port number. When receiving UDP segment, direct to socket with that port number. Datagrams with same destination port number with different source IP address/port number directed to same socket at destination.
7
New cards
TRANS: Connection-oriented demultiplexing
TRANS: TCP socket identified by source IP address and port number and destination IP address and port number. Receiver uses all four values to direct segment to socket. Server may support simultaneous TCP sockets (threading).
8
New cards
TRANS: What does UDP stand for?
TRANS: User Datagram Protocol
9
New cards
TRANS: Describe UDP
TRANS: no frills, bare bones, best effort service
Segments may be lost or out of order
Connectionless
Used in streaming multimedia, DNS, SNMP
Add reliability at application layer
10
New cards
TRANS: Why is there UDP?
TRANS: no connection (reduces delay)
simple (no connection states)
small header size
no congestion control (fast as desired)
11
New cards
TRANS: 4 UDP header values
TRANS: Source port
Destination port
Length
Checksum
12
New cards
TRANS: Goal of Checksum
TRANS: error detection
13
New cards
TRANS: How to calculate checksum
TRANS: complement sum of 16-bit segment headers
14
New cards
TRANS: rdt 1.0
TRANS: underlying channel reliable
no bit errors
no packet loss
15
New cards
TRANS: rdt 2.0
TRANS: underlying channel may flip bits
error detection: checksum
feedback: ACK, NAK
16
New cards
TRANS: Stop-and-wait
TRANS: sender send one packet, then waits for receiver to respond
17
New cards
TRANS: rdt 2.1
TRANS: handles garbled ACK/NAK
Sequence numbers
18
New cards
TRANS: rdt 2.2
TRANS: NAK-free
Receiver include sequence number of ACKed packet
19
New cards
TRANS: rdt 3.0
TRANS: underlying channel can lose packets (data, ACKs)
sender waits for ACK
retransmit if no ACK received in time
sequence number handles retransmission duplicates
requires countdown timer
20
New cards
TRANS: Sender Utilization
TRANS: Fraction of time sender busy sending
(N*L/R) / (RTT + L/R), where N is number of packets sent at a time
21
New cards
TRANS: Pipelining
TRANS: Sender allows multiple, in-flight, yet-to-be-ACKed packets
Range of sequence numbers must be increased
Buffering at sender or receiver
Increases sender utilization
22
New cards
TRANS: 2 Pipelined Protocols
TRANS: Go-Back-N
Selective Repeat
23
New cards
TRANS: Describe TCP
TRANS: Point-to-point (one sender, one receiver)
Reliable, in-order byte stream
Pipelined
Full duplex data (bidirectional data flow)
Connection-oriented
Flow controlled
24
New cards
TRANS: MSS
TRANS: maximum segment size
25
New cards
TRANS: 16 TCP segment headers
TRANS: Source port
Dest port
Options
Unused
6 flags - UAPRSF
Checksum
Receive window
Urg data pointer
Sequence number
Acknowledgement number
Header length
26
New cards
TRANS: Exponential Weighted Moving Average
TRANS: EstimatedRTT = (1-a) * EstimatedRTT + a*SampleRTT
(a = 0.125)
27
New cards
TRANS: Timeout Interval
TRANS: Timeout Interval = EstimatedRTT + 4*DevRTT
28
New cards
TRANS: SampleRTT deviation from EstimatedRTT
TRANS: DevRTT = (1-b) *DevRTT + b*|SampleRTT - EstimatedRTT|
(b = 0.25)
29
New cards
TRANS: TCP cumulative ACK
TRANS: ACK the packet you expect next
30
New cards
TRANS: TCP fast retransmit
TRANS: if sender receives 3 ACKs for same data (triple duplicate ACK), resend unacked segment with smallest sequence number
31
New cards
TRANS: TCP flow control
TRANS: Receiver advertises free buffer space in TCP header, sender limits unacked data to receivers rwnd value, guarantees receive buffer will not overflow
32
New cards
TRANS: TCP 3-way handshake

TRANS: 1) Client sets sequence number and set SYN, sends to server 2) Server sets sequence number and set SYN, ACKS clients information 3) Receives ACKS, ACKS server information with data

33
New cards
TRANS: TCP Closing Connections

TRANS: 1) Client sets FIN, sends with sequence number 2) Server ACKS 3) Client waits for server to close 4) Server sets FIN, sends with sequence number 5) Client ACKS 6) Client waits 2 * max segment lifetime

34
New cards
TRANS: TCP Congestion Control
TRANS: Additive Increase, Multiplicative Decrease
35
New cards
TRANS: Additive Increase
TRANS: Increase window by 1 MSS every RTT until loss detected
36
New cards
TRANS: Multiplicative Decrease
TRANS: Cut window in half after loss
37
New cards
TRANS: TCP sending rate
TRANS: window/RTT
38
New cards
TRANS: TCP Slow Start
TRANS: When connection begins, increase rate exponentially until first lost event
39
New cards
TRANS: TCP Reaction to Loss
TRANS: Loss indicated by timeout - window set to 1, then slow start to threshold, then grows linearly
RENO: Loss indicated by triple duplicate ACK - cut window to half then grow linearly
TAHOE: set window to 1after timeout or triple duplicate ACK
40
New cards
TRANS: When exponential increase switch to linear
TRANS: when window gets to 1/2 its value before timeout
41
New cards
TRANS: TCP throughput
TRANS: 3/4 window/RTT
42
New cards
TRANS: Transport Layer Protocols
TRANS: UDP/TCP