\section{High-Speed Networks}

% -----------------------------------------------------------------
\begin{slide}{}

   \begin{sitem}
      \item 1Mbps and 1Gbps cross-country links have the same latency
      \begin{sitem}
         \item limited by the speed of light
      \end{sitem}
      \item To transfer a 1MB file takes...
      \begin{sitem}
         \item 100 RTTs on a 1Mbps link
         \item doesn't fill a 1Gbps link (12.5MB delay $\times$ bandwidth)
      \end{sitem}

      \pichere{latency.eps,height=3.5in}

      \item Said another way:
      \begin{sitem}
         \item 1MB file is to 1Gbps network what 1KB packet is to 1Mbps network
      \end{sitem}
   \end{sitem}
\end{slide}
% -----------------------------------------------------------------
\begin{slide}{}

   \subsection{Latency/Bandwidth Tradeoff}

   \begin{sitem}
      \item {\tt Throughput = TransferSize / TransferTime}
      \begin{sitem}
         \item if it takes 10ms to transfer 1MB, then the effective
               throughput is 1MB/10ms = 100MBps = 800Mbps
      \end{sitem}
      \item {\tt TransferTime = Latency + 1/Bandwidth $\times$ TransferSize}
      \begin{sitem}
         \item if network bandwidth is 1Gbps (it takes 1/1Gbps $\times$ 
               1MB = 0.8ms to transmit 1MB), an end-to-end transfer that
               requires 1 RTT of 100ms has a total transfer time of 100.8ms
         \item effective throughput is 1MB/100.8ms = 79.4Mbps, not 1Gbps
      \end{sitem}
      \item Notes
      \begin{sitem}
         \item transferring a large amount of data helps improve the
               effective throughput; in the limit, an infinitely large
               transfer size causes the effective throughput to approach
               the network bandwidth
         \item having to endure more than one RTT will hurt the effective
               throughput for any transfer of finite size, and will be most
               noticeable for small transfers
      \end{sitem}
   \end{sitem}
\end{slide}
% -----------------------------------------------------------------
\begin{slide}{}

   \subsection{Implications}

   \begin{sitem}
      \item Congestion control
      \begin{sitem}
         \item feedback based mechanisms require an RTT to adjust
         \item can send 10MB in one 100ms RTT on a 1Gbps network
         \item that 10MB might congest a router and lead to massive losses
         \item can lose half a delay $\times$bandwidth's of data during slow 
               start
         \item reservations work for continuous streams (e.g., video), but
               require an extra RTT for bulk transfers
      \end{sitem}

      \item Retransmissions
      \begin{sitem}
         \item retransmitting a packet costs 1 RTT
         \item dropping even one packet (cell) halves effective bandwidth
         \item retransmission also implies buffering at the sender
         \item possible solution: forward error correction (FEC)
      \end{sitem}
      \item Trading bandwidth for latency
      \begin{sitem}
         \item each RTT is precious
         \item willing to ``waste'' bandwidth to save latency
         \item example: prefetching
      \end{sitem}
   \end{sitem}
\end{slide}

