Embedded Software in Network Processors — Models and Algorithms
We introduce a task model for embedded systems operating on packet streams, such as network processors. This model along with a calculus meant for reasoning about packet streams allows a unified treatment of several problems arising in the network packet processing domain such as packet scheduling, task scheduling and architecture/algorithm explorations in the design of network processors. The model can take into account quality of service constraints such as data throughput and deadlines associated with packets. To illustrate its potential, we provide two applications: (a)a new task scheduling algorithm for network processors to support a mix of real-time and non-real-time flows, (b)a scheme for design space exploration of network processors.
KeywordsSchedule Algorithm Task Schedule Task Graph Packet Schedule Design Space Exploration
Unable to display preview. Download preview PDF.
- 4.S.K. Baruah. Dynamic-and static-priority scheduling of recurring real-time tasks, 2001. To appear in Real-Time Systems.Google Scholar
- 5.A. Bavier and L. Peterson. BERT: A scheduler for best effort and real-time tasks. Technical Report TR-602-99, Department of Computer Science, Princeton University, 2001. Revised in January 2001.Google Scholar
- 7.J.Y. Le Boudec. Application of network calculus to guaranteed service networks. IEEE Trans on Information theory, 44(3), May 1998.Google Scholar
- 8.J.Y. Le Boudec and P. Thiran. Network Calculus-A Theory of Deterministic Queuing Systems for the Internet. LNCS 2050, Springer Verlag, 2001.Google Scholar
- 9.G.C. Buttazzo. Hard Real-Time Computing Systems-Predictable Scheduling Algorithms and Applications. Kluwer Academic Publishers, 1997.Google Scholar
- 15.A. Demers, S. Keshav, and S. Shenkar. Analysis and simulation of a fair queueing algorithm. Journal of Internetworking Research and Experience, 1(1):3–26, 1990.Google Scholar
- 17.J. Lehoczky, L. Sha, and Y. Ding. The rate monotonic scheduling algorithm. In Proc. IEEE Real-Time Systems Symposium, pages 166–171, 1989.Google Scholar
- 20.G. De Micheli. Synthesis and Optimization of Digital Circuits. McGraw-Hill International Editions, New York, 1994.Google Scholar
- 22.The Moses project homepage.http://www.tik.ee.ethz.ch/moses/.
- 23.M. Naedele, L. Thiele, and M. Eisenring. General task and resource models for processor task scheduling, 1998. TIK Report 45, ETH Zürich.Google Scholar
- 24.M. Naedele, L. Thiele, and M. Eisenring. Characterizing variable task releases and processor capacities. In Proceedings of the 14th IFAC World Congress, 1999.Google Scholar
- 26.S. Prakash and A. C. Parker. Synthesis of application-specific multiprocessor systems including memory components. In Proc. IEEE Application Specific Array Processors, 1992.Google Scholar
- 27.X. Qie, A. Bavier, L. Peterson, and S. Karlin. Scheduling computations on a software-based router. In Proc. SIGMETRICS, 2001.Google Scholar
- 28.S. Shenker and J. Wroclawski. General characterization parameters for integrated service network elements. RFC 2215, IETF, September 1997.Google Scholar
- 29.L. Thiele, S. Chakraborty, and M. Naedele. Real-time calculus for scheduling hard real-time systeme. In Proc. IEEE Internation Conference on Circuits and Systems, 2000.Google Scholar