Show simple item record

dc.contributor.authorSundararajan, Jay Kumar
dc.contributor.authorShah, Devavrat
dc.contributor.authorMedard, Muriel
dc.contributor.authorJakubczak, Szymon Kazimierz
dc.contributor.authorMitzenmacher, Michael
dc.contributor.authorBarros, Joao
dc.date.accessioned2012-11-26T19:57:40Z
dc.date.available2012-11-26T19:57:40Z
dc.date.issued2011-01
dc.date.submitted2010-03
dc.identifier.issn0018-9219
dc.identifier.issn1558-2256
dc.identifier.urihttp://hdl.handle.net/1721.1/75026
dc.description.abstractThe theory of network coding promises significant benefits in network performance, especially in lossy networks and in multicast and multipath scenarios. To realize these benefits in practice, we need to understand how coding across packets interacts with the acknowledgment (ACK)-based flow control mechanism that forms a central part of today's Internet protocols such as transmission control protocol (TCP). Current approaches such as rateless codes and batch-based coding are not compatible with TCP's retransmission and sliding-window mechanisms. In this paper, we propose a new mechanism called TCP/NC that incorporates network coding into TCP with only minor changes to the protocol stack, thereby allowing incremental deployment. In our scheme, the source transmits random linear combinations of packets currently in the congestion window. At the heart of our scheme is a new interpretation of ACKs-the sink acknowledges every degree of freedom (i.e., a linear combination that reveals one unit of new information) even if it does not reveal an original packet immediately. Thus, our new TCP ACK rule takes into account the network coding operations in the lower layer and enables a TCP-compatible sliding-window approach to network coding. Coding essentially masks losses from the congestion control algorithm and allows TCP/NC to react smoothly to losses, resulting in a novel and effective approach for congestion control over lossy networks such as wireless networks. An important feature of our solution is that it allows intermediate nodes to perform re-encoding of packets, which is known to provide significant throughput gains in lossy networks and multicast scenarios. Simulations show that our scheme, with or without re-encoding inside the network, achieves much higher throughput compared to TCP over lossy wireless links. We present a real-world implementation of this protocol that addresses the practical aspects of incorporating network coding and decoding with TCP's wind ow management mechanism. We work with TCP-Reno, which is a widespread and practical variant of TCP. Our implementation significantly advances the goal of designing a deployable, general, TCP-compatible protocol that provides the benefits of network coding.en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant CNS-0627021)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant CNS-0721491)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant CCF-0915922)en_US
dc.description.sponsorshipUnited States. Defense Advanced Research Projects Agency (Subcontract 18870740-37362-C)en_US
dc.description.sponsorshipUnited States. Defense Advanced Research Projects Agency (Subcontract 060786)en_US
dc.description.sponsorshipUnited States. Defense Advanced Research Projects Agency (Subcontract 069145)en_US
dc.description.sponsorshipUnited States. Defense Advanced Research Projects Agency (Contract N66001-06-C-2020)en_US
dc.description.sponsorshipSpace and Naval Warfare Systems Center San Diego (U.S.) (Contract N66001- 08-C-2013)en_US
dc.language.isoen_US
dc.publisherInstitute of Electrical and Electronics Engineers (IEEE)en_US
dc.relation.isversionofhttp://dx.doi.org/10.1109/JPROC.2010.2093850en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alike 3.0en_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/3.0/en_US
dc.sourceMIT web domainen_US
dc.titleNetwork Coding Meets TCP: Theory and Implementationen_US
dc.typeArticleen_US
dc.identifier.citationSundararajan, Jay Kumar et al. “Network Coding Meets TCP: Theory and Implementation.” Proceedings of the IEEE 99.3 (2011): 490–512.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.mitauthorShah, Devavrat
dc.contributor.mitauthorMedard, Muriel
dc.contributor.mitauthorJakubczak, Szymon Kazimierz
dc.contributor.mitauthorSundararajan, Jay Kumar
dc.relation.journalProceedings of the IEEEen_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/JournalArticleen_US
eprint.statushttp://purl.org/eprint/status/PeerRevieweden_US
dspace.orderedauthorsSundararajan, Jay Kumar; Shah, Devavrat; Médard, Muriel; Jakubczak, Szymon; Mitzenmacher, Michael; Barros, Joãoen
dc.identifier.orcidhttps://orcid.org/0000-0003-4059-407X
dc.identifier.orcidhttps://orcid.org/0000-0003-0737-3259
mit.licenseOPEN_ACCESS_POLICYen_US
mit.metadata.statusComplete


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record