Person:
Schwan, Karsten

Associated Organization(s)
Organizational Unit
ORCID
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 10 of 11
  • Item
    Leveraging Block Decisions and Aggregation in the ShareStreams QoS Architecture
    (Georgia Institute of Technology, 2003) Krishnamurthy, Rajaram B. ; Yalamanchili, Sudhakar ; Schwan, Karsten ; West, Richard
    ShareStreams (Scalable Hardware Architectures for Stream Schedulers) is a canonical architecture for realizing a range of scheduling disciplines. This paper discusses the design choices and tradeoffs made in the development of a Endsystem/Host-based router realization of the ShareStreams architecture. We evaluate the impact of block decisions and aggregation on the ShareStreams architecture. Using processor resources for queuing and data movement, and FPGA hardware for accelerating stream selection and stream priority updates, ShareStreams can easily meet the wire-speeds of 10Gbps links. This allows provision of customized scheduling solutions and interoperability of scheduling disciplines. FPGA hardware uses a single-cycle Decision block to compare multiple stream attributes simultaneously for pairwise ordering and a Decision block arrangement in a recirculating network to conserve area and improve scalability. Our hardware implemented in the Xilinx Virtex family easily scales from 4 to 32 stream-slots on a single chip. A running FPGA prototype in a PCI card under systems software control can provide scheduling support for a mix of EDF, static-priority and fair-share streams based on user specifications and meet the temporal bounds and packet-time requirements of multi-gigabit links.
  • Item
    RASA (Reconfigurable Architectures for Scheduling Activities) Architecture and Hardware for Scheduling Gigabit Packet Streams
    (Georgia Institute of Technology, 2002) Krishnamurthy, Rajaram B. ; Yalamanchili, Sudhakar ; Schwan, Karsten ; West, Richard
    We present an architecture and hardware for scheduling gigabit packet streams in server clusters that combines a Network Processor datapath and an FPGA for use in server NICs and server cluster switches. Our architectural framework can provide EDF, static-priority, fair-share and DWCS native scheduling support for best-effort and real-time streams. This allows (i) interoperability of scheduling hardware supporting different scheduling disciplines and (ii) helps in providing customized scheduling solutions in server clusters based on traffic type, stream content, stream volume and cluster hardware using a hardware implementation of a scheduler running at wire-speeds. The architecture scales easily from 4 to 32 streams on a single Xilinx Virtex 1000 chip and can support 64-byte - 1500-byte Ethernet frames on a 1 Gbps link and 1500-byte Ethernet frames on a 10 Gbps link. A running hardware prototype of a stream scheduler in a Virtex 1000 PCI card can divide bandwidth based on user specifications and meet the temporal bounds and packet-time requirements of multi-gigabit links.
  • Item
    Coordinated CPU and Event Scheduling for Distributed Multimedia Applications
    (Georgia Institute of Technology, 2001) Poellabauer, Christian ; Schwan, Karsten ; West, Richard
    Distributed multimedia applications require support from the underlying operating system to achieve and maintain their desired Quality of Service (QoS). This has led to the creation of novel task and message schedulers and to the development of QoS mechanisms that allow applications to explicitly interact with relevant operating system services. However, the task scheduling techniques developed to date are not well equipped to take advantage of such interactions. As a result, important events such as position update messages in virtual environments may be ignored. If a CPU scheduler ignores these events, players will experience a lack of responsiveness or even inconsistencies in the virtual world. This paper argues that real-time and multimedia applications can benefit from coordinated schemes for CPU and event scheduling and we describe a novel event delivery mechanism, termed ECalls, that supports such coordination. We then use ECalls to reduce variations in inter-frame times for media streams, and to reduce event response times for real-time applications like distributed virtual worlds.
  • Item
    QUIC: A Quality of Service Network Interface Layer for Communication in NOWs
    (Georgia Institute of Technology, 2000) West, Richard ; Krishnamurthy, Rajaram B. ; Norton, W. K. (William K.) ; Schwan, Karsten ; Yalamanchili, Sudhakar
    This paper presents the overall project goals from the QUIC project - a joint effort between ECE and CS at Tech. The design of hardware, software Network Interface layers and applications is discussed.
  • Item
    A Network Co-processor-Based Approach to Scalable Media Streaming
    (Georgia Institute of Technology, 2000) Krishnamurthy, Rajaram B. ; Schwan, Karsten ; West, Richard ; Rosu, Marcel-Catalin
    This paper presents the embedded construction and experimental results for a media scheduler on i960 RD equipped I2O Network Interfaces (NI) used for streaming. We utilize the Distributed Virtual Communication Machine (DVCM) infrastructure developed by us which allows run-time extensions to provide scheduling for streams that may require it. The scheduling overhead of such a scheduler is 65 microseconds with the ability to stream MPEG video to remote clients at requested rates. Moreover, placement of scheduler action Close to the network on the Network Interface(NI) allows tighter coupling of computation and communication, eliminating traffic from the host bus and memory subsystem and allowing increased host CPU utilization for other tasks. This makes media scheduling a viable and strong candidate for offloading on NIs. Architectures to build scalable media scheduling servers are explored - by distributing media schedulers and media stream producers among NIs within a server and clustering a number of such servers using commodity hardware and software.
  • Item
    Flexible Event Delivery for Kernel Extensions in ELinux
    (Georgia Institute of Technology, 2000) Poellabauer, Christian ; Schwan, Karsten ; West, Richard
    Many applications rely on the kernel's ability specialize and extend its functionality in order to achieve high performance and meet application-specif QoS requirements. However, general-urpose operating systems lack sufficient support for flexible and scalable event-based communication between user-level applications and kernel-level extensions. This presents problems especially for real-time applications, which typically require notification of events and response to events in a timely manner. This paper introduces ECalls, a lightweight, bidirectional user/kernel event delivery facility. ECalls not only supports the timely delivery of events, but it also reduces the cost and frequency of user/kernel boundary crossings. ECalls is a communication tool that allows (a) kernel extensions to register their offered services adn (b) applications to register their interest in these services. Using ECalls, applications ause lightweight system calls to generate events, while kernel extensions raise realtime signals or invoke handler functions (residing in either user of kernel space), or they may use kernel threads to handle events on behalf of applications. ECalls can also influence the CPU scheduler such that a process with pending events is given preference over aother processes. To demonstrate their utility, this paper implements an I/O event delivery mechanism using ECalls. This mechanism is shown to improve the performance of two applications: a web server and a distributed video player.
  • Item
    Experimentation with Event-Based Methods of Adaptive Quality of Service Management
    (Georgia Institute of Technology, 1999) West, Richard ; Schwan, Karsten
    Many complex distributed applications require quality of service (QoS) guarantees on the end-to-end transfer of information across a distributed system. A major problem faced by any system, or infrastructure, providing QoS guarantees to such applications is that resource requirements and availability may change at run-time. Consequently, adaptive resource (and, hence, service) management mechanisms are required to guarantee quality of service to these applications. This paper describes different methods of adaptive quality of service management, implemented with the event-based mechanisms offered by the Dionisys quality of service infrastructure. Dionisys allows applications to influence: (1) how service should be adapted to maintain required quality, (2) when such adaptations should occur, and (3) where these adaptations should be performed. In Dionisys, service managers execute application-specific functions to monitor and adapt service (and, hence, resource usage and allocation), in order to meet the quality of service requirements of adaptable applications. This approach allows service managers to provide service in a manner specific to the needs of individual applications. Moreover, applications can monitor and pin-point resource bottlenecks, adapt their requirements for heavily-demanded resources, or adapt to different requirements of alternative resources, in order to improve or maintain their overall quality of service. Likewise, service managers can cooperate with other service managers and, by using knowledge of application-specific resource requirements and adaptation capabilities, each service manager can make better decisions about resource allocation. Using a real-time client-server application, built on top of Dionisys, we compare alternative strategies for adapting and coordinating CPU and network services. In this fashion, we demonstrate the importance of flexibility in quality of service management.
  • Item
    Scalable Scheduling Support for Loss and Delay Constrained Media Streams
    (Georgia Institute of Technology, 1998) West, Richard ; Schwan, Karsten ; Poellabauer, Christian
    Real-time media servers need to service hundreds and, possibly, thousands of clients, each with their own quality of service (QoS) requirements. To guarantee such diverse QoS requires fast and efficient scheduling support at the server. This paper describes the practical issues concerned with the implementation of a scalable real-time packet scheduler resident on a server, designed to meet service constraints on information transferred across a network to many clients. Specifically, we describe the implementation issues and performance achieved by Dynamic Window-Constrained Scheduling (DWCS), which is designed to meet the delay and loss constraints on packets from multiple streams with different performance objectives. In fact, DWCS is designed to limit the number of late packets over finite numbers of consecutive packets in loss-tolerant and/or delay-constrained, heterogeneous traffic streams. We show how DWCS can be efficiently implemented to provide service guarantees to hundreds of streams. We compare the costs of different implementations, including an approximation algorithm, which trades service quality for speed of execution.
  • Item
    Interactors: Capturing Tradeoffs in Bandwidth Versus CPU Usage for Quality of Service Constrained Objects
    (Georgia Institute of Technology, 1998) West, Richard ; Schwan, Karsten
    Complex distributed applications, including virtual environments, and real-time multimedia require performance guarantees in the end-to-end transfer of information across a network. To make such guarantees requires the management of processing, memory, and network resources. This paper describes the Dionisys end-system quality of service (QoS) approach to specifying, translating, and enforcing end-to-end, object-level QoS constraints. Dionisys differs from previous work on QoS architectures by supporting QoS constraints on distributed shared objects, as well as multimedia streams. Consequently, we introduce 'interactors', which capture the QoS constraints and resource requirements at each stage in the generation, processing, and transfer of information between multiple cooperating objects. Using interactors, Dionisys is able to coordinate both thread and packet-level scheduling, so that information is processed and transmitted at matching rates. However, there are tradeoffs in the use of CPU cycles for scheduling and the need to meet QoS constraints on the information transferred between interacting objects. We show, empirically, the packet scheduling frequency to minimize CPU overheads while maximizing bandwidth usage.
  • Item
    Dynamic Window-Constrained Scheduling for Multimedia Applications
    (Georgia Institute of Technology, 1998) West, Richard ; Schwan, Karsten
    Advances in network technologies have introduced opportunities for applications such as video conferencing, tele-medicine, and real-time multimedia applications. These applications require strict performance (or quality of service) requirements on the information transferred across a network. This paper describes a new algorithm, called Dynamic Window-Constrained Scheduling (DWCS), designed to meet the service constraints on packets from multiple streams with different performance objectives. Using only two attributes, a deadline and a loss-tolerance per packet stream, we show DWCS: (1) can limit the number of late packets over finite numbers of consecutive packets in loss-tolerant or delay-constrained, heterogeneous traffic streams, (2) does not require a-priori knowledge of the worst-case loading from multiple streams to establish the necessary bandwidth allocations to meet per-stream delay and loss-constraints, (3) can safely drop late packets in lossy streams without unnecessarily transmitting them, thereby avoiding unnecessary bandwidth consumption, and (4) can exhibit both fairness and unfairness properties when necessary. In fact, DWCS can perform fair-bandwidth allocation, static priority (SP) and earliest-deadline first (EDF) scheduling. We show the effectiveness of DWCS using a streaming video application, running over ATM.