Signaled receiver processing

  • Authors:
  • José Brustoloni;Eran Gabber;Abraham Silberschatz;Amit Singh

  • Affiliations:
  • Information Sciences Research Center, Lucent Technologies-Bell Laboratories, Murray Hill, NJ;Information Sciences Research Center, Lucent Technologies-Bell Laboratories, Murray Hill, NJ;Information Sciences Research Center, Lucent Technologies-Bell Laboratories, Murray Hill, NJ;Information Sciences Research Center, Lucent Technologies-Bell Laboratories, Murray Hill, NJ

  • Venue:
  • ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Protocol processing of received packets in BSD Unix is interrupt-driven and may cause scheduling anomalies that are unacceptable in systems that provide quality of service (QoS) guarantees. We propose an alternative mechanism, Signaled Receiver Processing (SRP), that generates a signal to the receiving process when a packet arrives. The default action of this signal is to perform protocol processing asynchronously. However, a receiving process may catch, block, or ignore the signal and defer protocol processing until a subsequent receive call. In any case, protocol processing occurs in the context of the receiving process and is correctly charged. Therefore, SRP allows the system to enforce and honor QoS guarantees. SRP offers several advantages over Lazy Receiver Processing (LRP), a previous solution to BSD's scheduling anomalies: SRP is easily portable to systems that support neither kernel threads nor Resource Containers (e.g., FreeBSD); gives applications control over the scheduling of protocol processing; uses a demultiplexing strategy that is appropriate for both hosts and gateways; and easily enables real-time or proportional-share scheduling.