Method and apparatus for providing quality-of-service delivery facilities over a bus
Abstract
The invention provides quality-of-service (QoS) delivery services over a computer bus having isochronous data transfer capabilities. A transmitting node on the bus transmits a message to an intended recipient indicating a requested bandwidth for a connection. If the intended recipient has sufficient resources, it allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits the data on the allocated channel. If the recipient cannot allocate a channel, it does not respond, and the transmitter thereafter detects a time-out condition and begins transmitting using a “best efforts” scheme (i.e., non-guaranteed time delivery). In a second variation, a receiving node detects that it is receiving large quantities of data from a transmitting node. In response, the receiving node allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits using the allocated isochronous channel. In a third variation, multiple receiving nodes that need to receive streaming data from a single transmitting node share a common isochronous data channel. In any of these variations, each receiver can periodically transmit a “deadman” timer message on a broadcast channel to indicate that it is still receiving on a given channel. If a transmitter detects that the deadman timer has expired, it reverts to transmitting data using a “best-efforts” scheme. A transmitter can transmit both to receivers that can handle QoS services and those that cannot explicitly support QoS services.
Claims
exact text as granted — not AI-modified1 . A method of providing time-guaranteed delivery of data packets over a bus that supports both isochronous and asynchronous modes of data transmission, comprising the steps of:
(1) establishing an isochronous mode of data communication over the bus between a transmitting node and a first receiving node and transmitting a plurality of data packets from the transmitting node to the first receiving node over an isochronous data channel allocated by the first receiving node; (2) in a second receiving node, receiving information regarding the isochronous data channel allocated to support the transmission of data packets in step (1); and (3) in the second receiving node, receiving the plurality of data packets from the transmitting node using the isochronous data channel allocated in step (1).
2 . The method of claim 1 , further comprising the step of setting a flag in the first receiving node indicating that the second receiving node is sharing the allocated isochronous data channel, wherein the first receiving node inhibits deallocation of the allocated isochronous data channel if the flag is set, and otherwise deallocates the allocated isochronous data channel if it is no longer to be used by the first receiving node.
3 . A computer-readable medium comprising computer instructions which, when executed by a computer node coupled to a bus that supports both isochronous and asynchronous data transmission modes, performs the steps of:
(1) establishing an isochronous mode of data communication over the bus and receiving a plurality of data packets over an isochronous data channel allocated by the computer node; (2) in response to receiving a request to share the isochronous data channel by another computer node, setting a flag that inhibits deallocation of the isochronous data channel while it is being shared by the another computer node; and (3) in response to detecting that the isochronous data channel is no longer needed and is not being shared by the another computer node, deallocating the isochronous data channel.
4 . A system comprising a first computer node and a second computer node coupled over a communication bus that provides both asynchronous and isochronous communication modes,
wherein the first computer node transmits a request for time-guaranteed bandwidth using the isochronous communication mode to the second computer node and, in response to detecting a time-out condition for failing to receive a response to the request, transmits data packets to the second computer node using the asynchronous communication mode.Join the waitlist — get patent alerts
Track US2006190654A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.