Show simple item record

dc.contributor.authorMcKeown, Nick
dc.contributor.authorChole, Sharad
dc.contributor.authorChuang, Shang-Tse
dc.contributor.authorAgrawal, Anurag
dc.contributor.authorEdsall, Tom
dc.contributor.authorSivaraman Kaushalram, Anirudh
dc.contributor.authorSubramanian, Suvinay
dc.contributor.authorAlizadeh Attar, Mohammadreza
dc.contributor.authorBalakrishnan, Hari
dc.contributor.authorKatti, Sachin Rajsekhar
dc.date.accessioned2017-07-18T16:17:54Z
dc.date.available2017-07-18T16:17:54Z
dc.date.issued2016-08
dc.identifier.isbn9781450341936
dc.identifier.urihttp://hdl.handle.net/1721.1/110763
dc.description.abstractSwitches today provide a small menu of scheduling algorithms. While we can tweak scheduling parameters, we cannot modify algorithmic logic, or add a completely new algorithm, after the switch has been designed. This paper presents a design for a {\em programmable} packet scheduler, which allows scheduling algorithms---potentially algorithms that are unknown today---to be programmed into a switch without requiring hardware redesign. Our design uses the property that scheduling algorithms make two decisions: in what order to schedule packets and when to schedule them. Further, we observe that in many scheduling algorithms, definitive decisions on these two questions can be made when packets are enqueued. We use these observations to build a programmable scheduler using a single abstraction: the push-in first-out queue (PIFO), a priority queue that maintains the scheduling order or time. We show that a PIFO-based scheduler lets us program a wide variety of scheduling algorithms. We present a hardware design for this scheduler for a 64-port 10 Gbit/s shared-memory (output-queued) switch. Our design costs an additional 4% in chip area. In return, it lets us program many sophisticated algorithms, such as a 5-level hierarchical scheduler with programmable decisions at each level.en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant CNS-1563826)en_US
dc.description.sponsorshipCisco Research Centeren_US
dc.language.isoen_US
dc.publisherAssociation for Computing Machineryen_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/2934872.2934899en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alikeen_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en_US
dc.sourceMIT Web Domainen_US
dc.titleProgrammable Packet Scheduling at Line Rateen_US
dc.typeArticleen_US
dc.identifier.citationSivaraman, Anirudh, Nick McKeown, Suvinay Subramanian, Mohammad Alizadeh, Sharad Chole, Shang-Tse Chuang, Anurag Agrawal, Hari Balakrishnan, Tom Edsall, and Sachin Katti. “Programmable Packet Scheduling at Line Rate.” Proceedings of the 2016 Conference on ACM SIGCOMM 2016 Conference - SIGCOMM ’16 (2016).en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.mitauthorSivaraman Kaushalram, Anirudh
dc.contributor.mitauthorSubramanian, Suvinay
dc.contributor.mitauthorAlizadeh Attar, Mohammadreza
dc.contributor.mitauthorBalakrishnan, Hari
dc.contributor.mitauthorKatti, Sachin Rajsekhar
dc.relation.journalProceedings of the 2016 conference on ACM SIGCOMM 2016 Conference - SIGCOMM '16en_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/JournalArticleen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dspace.orderedauthorsSivaraman, Anirudh; McKeown, Nick; Subramanian, Suvinay; Alizadeh, Mohammad; Chole, Sharad; Chuang, Shang-Tse; Agrawal, Anurag; Balakrishnan, Hari; Edsall, Tom; Katti, Sachinen_US
dspace.embargo.termsNen_US
dc.identifier.orcidhttps://orcid.org/0000-0003-4034-0918
dc.identifier.orcidhttps://orcid.org/0000-0001-7701-8303
dc.identifier.orcidhttps://orcid.org/0000-0002-0014-6742
dc.identifier.orcidhttps://orcid.org/0000-0002-1455-9652
mit.licenseOPEN_ACCESS_POLICYen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record