Google Tech TalksNovember, 27 2007Internet applications currently have a choice betweenstream and datagram transport abstractions. Datagramsefficiently support small transactions and streams aresuited for long-running conversations, but neitherabstraction adequately supports applications like HTTP thatexhibit a mixture of transaction sizes, or applications likeFTP and SIP that use multiple transport instances.Structured Stream Transport (SST) enhances the traditionalstream abstraction with a hierarchical hereditary structure,allowing applications to create lightweight child streamsfrom any existing stream. Unlike TCP streams, theselightweight streams incur neither 3-way handshaking delayson startup nor TIME-WAIT periods on close. Each streamoffers independent data transfer and flow control, allowingdifferent transactions to proceed in parallel withouthead-of-line blocking, but all streams share one congestioncontrol context. SST supports both reliable and best-effortdelivery in a way that semantically unifies datagrams withstreams and solves the classic "large datagram" problem,where a datagram's loss probability increases exponentiallywith fragment count. Finally, an application can prioritizeits streams relative to each other and adjust prioritiesdynamically through out-of-band signaling. A user-spaceprototype shows that SST is TCP-friendly to within 2%, andperforms comparably to a user-space TCP and to within 10% ofkernel TCP on a WiFi network.Speaker: Bryan Ford, PhD CS MIT (June 2008)PhD Advisor: Frans Kaashoek
Questions about Structured Streams: A New Transport Abstraction
Want more info about Structured Streams: A New Transport Abstraction?
Get free advice from education experts and Noodle community members.