1 / 20

EE228A Project, Fall 2000

EE228A Project, Fall 2000. Modular TCP. Yunfei Deng, Kenneth Cheung, Daniil Khidekel Professor Jean Walrand 12/5/2000. Outline. TCP basics New Challenges at Internet Era Transport Protocol Design Modular TCP Issues in Implementation Summary. Development of TCP.

hestia
Download Presentation

EE228A Project, Fall 2000

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EE228A Project, Fall 2000 Modular TCP Yunfei Deng, Kenneth Cheung, Daniil Khidekel Professor Jean Walrand 12/5/2000

  2. Outline • TCP basics • New Challenges at Internet Era • Transport Protocol Design • Modular TCP • Issues in Implementation • Summary

  3. Development of TCP • Stream Data Transfer on IP • Connection based • Reliable delivery by retransmissions • In order delivery • Flow control • Congestion Control • Extensions, T/TCP etc.

  4. New Challenges • Vast Internet resources and users • Various kinds of contents: multimedia • Various conditions of Internet connections, from High-speed Broadband access to slow modem • Various requirements on quality of transportation: timing, ordering, and integrity

  5. Examples • A FTP program: may retransmit received but dropped out-of-order data, add traffic into network • A Stock quote program for Day-trader: only the newest correct quotes are meaningful • Online Video playing: lost tolerable, timing is important, out-of-order frames might be useful

  6. TCP RSTP … UDP IP Network Link Current Status • Existing TCP not suitable • UDP is not enough • Various Protocols built on top of UDP: RTSP, SRDP • Opportunity in extending TCP

  7. Transport Protocol Design • Reliability on-demand • Constraints on ordering • Flow Control • Congestion Control • Applications involved Congestion control (M)TCP Reliability RSTP … UDP IP Network Link

  8. Modular TCP • Key idea: Application Level Framing (ALF), D.Clark 1990, M.I.T. • Goals: must-have congestion control, on-demand reliability control, on-demand ordering constraints • Compatible with TCP • Based on existing TCP/IP implementations

  9. ADU in Modular TCP • ADU: Application Data Unit • MTCP deals with ADU from Applications • Different ADU types: • Reliable, In-Order • Reliable, Out-of-Order OK. • Unreliable, In-Order • Unreliable, Out-of-Order OK.

  10. Begin the connection • Add Modular TCP options into TCP header: {MTCP option kind, requested ADU Policy} • When send SYN to initialize connection, mark MTCP option in the header as “MTCP supported”, also in replies • Use Modular TCP only when both sides support it, otherwise use traditional TCP

  11. During the connection • More ADU options in TCP header un-favored • Additional ADU header after TCP header: {name, seq#, range, options} • ADU Policies: • Reliable, In-Order delivery • Reliable, Out-of-Order delivery • Unreliable, In-Order delivery • Unreliable, Out-of-Order delivery • Mixture delivery

  12. During the connection (cont’d) • More About mixture ADU types: • Conservative approach: use the most constrained level of delivery • More complex scheme: permit various types of ADU in the same connection, but need additional semantics defining the ordering constraints between different types of ADU

  13. Sender of the connection • Sender receives ADUs from Applications • ADU Fragmentation, Packet queuing, … • Sender keeps the sliding window proceeding with the coming ACKs • Reaction of lost packet: • Reliable ADU packets need to be retransmitted • Unreliable ADU packets don’t need to retransmitted, but need congestion control

  14. Receiver of the connection • Calculate checksum, Acknowledgement • Queue partial ADU packets • Re-organize the packets into ADUs • Delivery to Applications • In-Order required: queue/drop out-of-order ADUs • Out-of-Order OK.: instantaneous delivery to application

  15. Acknowledgements • TCP’s positive cumulative ACK scheme doesn’t work for unreliable ADUs • SACK: Selective Acknowledgement • Selectively acknowledge non-contiguous blocks of data not covered by the Cumulative Acknowledgement field • Update Cumulative ACK field when ADU delivered (reliable or unreliable) or dropped (unreliable)

  16. Flow and Congestion Control • SACK for all types of ADU • Use SACK info to detect lost, congestion • Apply normal TCP slow start, congestion avoidance, fast recovery

  17. ECN

  18. Implementation Modular TCP • linux

  19. Summary

  20. Thank You!

More Related