Socket level packet scheduling for connectionless protocols
First Claim
Patent Images
1. A system, comprising:
- a server for a plurality of data files, wherein the server is configured to receive requests from remote clients via a connection-oriented protocol, wherein each request identifies one or more data files requested by one of the remote clients and one or more desired performance metrics for transmitting the requested one or more data files to the remote client over a network, the server comprising;
a processor; and
a memory coupled to the processor and storing program instructions executable by the processor to implement;
an operating system comprising a packet scheduler for scheduling data transmissions via a connectionless network protocol; and
an application configured to;
receive the requests from the remote clients; and
for each request, indicate to the operating system, via a system call interface of the operating system, that the operating system should transmit the one or more data files identified by the request, according to one or more performance metrics including the one or more desired performance metrics identified by the request and via the connectionless network protocol, to a corresponding one of the remote clients;
wherein, in response to each indication from the application specifying one or more desired performance metrics for a data transfer of one or more of the data files via the connectionless network protocol over the network to the corresponding remote client, the packet scheduler in the operating system is configured to schedule the data transfer in accordance with the one or more desired performance metrics, wherein application of the one or more desired performance metrics to the data transfer is handled by the operating system'"'"'s packet scheduler instead of by the application that received the request, and wherein one of the performance metrics specified by the application includes a maximum tolerable jitter;
wherein the operating system is configured to transfer the one or more data files to the remote client via the connectionless protocol without the application copying contents of the one or more data files to an address space of the application.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for socket-level packet scheduling over connectionless network protocols includes a processor and a memory coupled to the processor. The memory contains program instructions executable by the processor to implement an operating system including a packet scheduler for scheduling data transmissions via a connectionless network protocol. In response to a request from an application specifying one or more desired performance metrics for a data transfer via the connectionless network protocol, the packet scheduler is configured to schedule the data transfer in accordance with the one or more desired performance metrics.
-
Citations
16 Claims
-
1. A system, comprising:
a server for a plurality of data files, wherein the server is configured to receive requests from remote clients via a connection-oriented protocol, wherein each request identifies one or more data files requested by one of the remote clients and one or more desired performance metrics for transmitting the requested one or more data files to the remote client over a network, the server comprising; a processor; and a memory coupled to the processor and storing program instructions executable by the processor to implement; an operating system comprising a packet scheduler for scheduling data transmissions via a connectionless network protocol; and an application configured to; receive the requests from the remote clients; and for each request, indicate to the operating system, via a system call interface of the operating system, that the operating system should transmit the one or more data files identified by the request, according to one or more performance metrics including the one or more desired performance metrics identified by the request and via the connectionless network protocol, to a corresponding one of the remote clients; wherein, in response to each indication from the application specifying one or more desired performance metrics for a data transfer of one or more of the data files via the connectionless network protocol over the network to the corresponding remote client, the packet scheduler in the operating system is configured to schedule the data transfer in accordance with the one or more desired performance metrics, wherein application of the one or more desired performance metrics to the data transfer is handled by the operating system'"'"'s packet scheduler instead of by the application that received the request, and wherein one of the performance metrics specified by the application includes a maximum tolerable jitter; wherein the operating system is configured to transfer the one or more data files to the remote client via the connectionless protocol without the application copying contents of the one or more data files to an address space of the application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A method, comprising:
-
an operating system for a server comprising a processor, the operating system providing an interface for specifying one or more desired performance metrics for a data transfer of one or more data files, wherein the data transfer is via a connectionless network protocol; the operating system receiving a request from an application on the server, via a system call interface of the operating system, to perform a data transfer of the one or more data files to a remote client according to one or more desired performance metrics specified by the client, wherein the application sends the request to the operating system in response to a request received by the application from the remote client via a connection-oriented protocol to transmit the data files to the remote client over a network, wherein the request from the remote client identifies one or more performance metrics including the one or more desired performance metrics specified by the client, and wherein the one or more performance metrics identified in the request include a maximum tolerable jitter; and in response to the request from the application, a packet scheduler within the operating system scheduling the data transfer of one or more of the data files via the connectionless network protocol over the network to the remote client in accordance with the one or more performance metrics identified in the request, wherein application of the one or more performance metrics identified in the request to the data transfer is handled by the packet scheduler instead of by the application, and wherein the transfer is performed without the application copying contents of the one or more data files to an address space of the application. - View Dependent Claims (10, 11, 12)
-
-
13. A computer readable medium comprising program instructions, wherein the instructions are executable to implement an operating system configured to:
-
provide a system call interface for specifying one or more performance metrics for a data transfer of one or more data files, wherein the data transfer is via a connectionless network protocol; receive a request from an application via the system call interface, the request specifying one or more performance metrics and one or more data files for the data transfer, wherein the application is configured to send the request in response to receiving a request from a remote client via a connection-oriented protocol to transmit the one or more data files to the remote client over a network, wherein the request from the remote client identifies one or more desired performance metrics, wherein the one or more performance metrics specified in the request from the application include the one or more desired performance metrics identified in the request from the remote client, wherein the one or more performance metrics specified in the request from the application include a maximum tolerable jitter; and in response to the request, schedule the data transfer at a packet scheduler within the operating system in accordance with the one or more desired performance metrics, wherein application of the one or more desired performance metrics to the data transfer is handled by the packet scheduler instead of by the application, and wherein the data transfer is performed without the application copying contents of the one or more data files to an address space of the application. - View Dependent Claims (14, 15, 16)
-
Specification