Presentation is loading. Please wait.

Presentation is loading. Please wait.

NR-SACKs for SCTP (Non-Renegable SACKs)

Similar presentations


Presentation on theme: "NR-SACKs for SCTP (Non-Renegable SACKs)"— Presentation transcript:

1 NR-SACKs for SCTP (Non-Renegable SACKs)
draft-natarajan-tsvwg-sctp-nrsack-01 Preethi Natarajan Paul Amer Ertugrul Yilmaz University of Delaware Randall Stewart Cisco Systems Janardhan Iyengar Connecticut College

2 Reneging and SCTP Retransmission queue (RtxQ) – Portion of send buffer containing copies of transmitted data Receiver cannot reneg on cum-acked / delivered data sender discards cum-acked data from rtxq Receiver may reneg on gap-acked data due to buffer overbooking sender does not discard gap-acked data

3 Unordered Data Transfer
sacked, but still in RtxQ Inefficient use of retransmission queue (kernel memory) leads to send buffer blocking SCTP’s SACK mechanism leads to inefficient use of rtxq (kernel memory) when out-of-order data is non-renegable. Sbuf blocking prevents new data trx. With SACKs

4 Proposal: NR-SACKs for SCTP
Peers negotiate NR-SACK capability at INIT time Replace SACKs with NR-SACKs during transfer Sender is expected to perform congestion and flow control as it would with SACKs NR-SACKs contain non-renegable gap-ack blocks; sender can use NR-SACK info to free buffer (see draft for more on structure and use cases)

5 Unordered Data Transfer
sacked, but still in RtxQ nr-sacked data removed; more data flowing Inefficient use of retransmission queue (kernel memory) leads to send buffer blocking SCTP’s SACK mechanism leads to inefficient use of rtxq (kernel memory) when out-of-order data is non-renegable. Sbuf blocking prevents new data trx. With SACKs With NR-SACKs

6 Simulation Setup Unordered bulk data transfer
Bernoulli losses; loss rates: 1%-10% Currently working on simulations with losses from realistic application workloads using Tmix* * M. Weigle et al., “Tmix: a tool for generating realistic TCP application workloads in ns-2,” ACM CCR, 36(3), 2006

7 Throughput at varying send buffer sizes
45ms 1-way delay NR-SACK > SACK at shorter delays 10ms 1-way delay Throughput differences only during losses Blocking increases at smaller send buffers; more improvements at 16K than 64K Higher cwnd and rtxq sizes at lower loss. For a given sbuf, more blocking at lower (1%-3%) loss rates. High speed congestion control algorithms for SCTP such as adaptation of HSTCP for SCTP (on FreeBSD stack) can result in sbuf blocking even for higher sbuf values; and nr-sacks can provide throughput improvements in such scenarios ? Blocked sack transfers experience more timeout recoveries. Transfers at lower RTTs spend more fraction of the transfer time in timeout recoveries. Since NR-SACKs reduce blocking and eliminate the unnecessary RTOs, NR-SACKs’ throughput improvements increase at lower RTTs. NR-SACK > SACK at smaller send buffers lower loss NR-SACK = SACK

8 When there is loss, NR-SACKs always use less memory for RtxQ
Average RtxQ T=File Transfer time. Graph plots average rtxq utilized by the sack/nr-sack transfer; Sbuf of ~64K -- Both sack and nr-sack transfers perform similar As loss increases, average rtxq decreases as expected. During losses, NR-SACKs always use less memory for rtxq than SACKs. In systems where kernel memory is provided on demand to transport connections (such as FreeBSD SCTP stack), NR-SACKs will reduce memory required for rtxq. The savings increase as the number of transport connections increase, and can be huge at a server with concurrent open transport connections (such as a web server). When there is loss, NR-SACKs always use less memory for RtxQ

9 Questions…

10 Mean RTOs for 45ms and 10ms Delays
Sbuf blocking reduces # of dupacks for fast retransmits, resulting in more RTOs; Blocked SACK transfers suffer more RTOs than non-blocked SACK transfers. Nr-sacks effectively reduce RTOs even for lower send buffer sizes (16k).

11 Retransmission Queue (Rtxq) Utilization
Efficient utilization at time t = k/r k = # necessary (in flight or renegable) TPDUs in the rtxq r = size of the rtxq Efficient utilization for the entire file transfer ki/ri = efficient rtxq utilization during ti T = File Transfer time

12 Retransmission queue utilization; 45ms 1-way Delay
SACKs most efficient during no losses SACKs’ inefficiency increases as loss rate increases Increasing send buffer size cannot improve SACKs’ utilization; upper bound to how well SACKs can utilize rtxq By definition of metric, nr-sacks always utilize rtxq most efficiently. For non-blocked transfers, on average, sacks utilize only 90% of rtxq efficiently and the utilization decreases with loss rate. In non-blocked transfers, rtxq size unaffected by further increase in sbuf; hence, rtxq-util values unaffected. Values here are upper bound on how eff sacks can utilize send buffer. Possibility that nr-sacks can achieve sack throughput with smaller rtxq/sbuf


Download ppt "NR-SACKs for SCTP (Non-Renegable SACKs)"

Similar presentations


Ads by Google