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.
De uitvinding verleent de de kwaliteit-van-dienst (QoS) leveringsdiensten over een computerbus die de isochrone mogelijkheden van de gegevensoverdracht heeft. Een overbrengende knoop op de bus brengt een bericht aan een voorgenomen ontvanger over die op een gevraagde bandbreedte voor een verbinding wijst. Als de voorgenomen ontvanger voldoende middelen heeft, wijst het een isochroon gegevenskanaal op de bus toe en deelt de zender van het toegewezen kanaal mee. Daarna, brengt de zender de gegevens over het toegewezen kanaal over. Als de ontvanger een kanaal niet kan toewijzen, antwoordt het niet, en de zender ontdekt daarna een onderbrekingsvoorwaarde en begint overbrengend gebruikend een "beste inspanningen" regeling (d.w.z., niet-gewaarborgd tijdlevering). In een tweede variatie, ontdekt een ontvangende knoop dat het grote hoeveelheden gegevens van een overbrengende knoop ontvangt. In reactie, wijst de ontvangende knoop een isochroon gegevenskanaal op de bus toe en deelt de zender van het toegewezen kanaal mee. Daarna, brengt de zender het gebruiken van het toegewezen isochrone kanaal over. In een derde variatie, kanaliseert het veelvoud dat knopen ontvangt die stromende gegevens van één enkel overbrengend knoopaandeel moeten ontvangen een gemeenschappelijk isochroon gegeven. In om het even welk van deze variaties, kan elke ontvanger een "deadman" tijdopnemerbericht op een te wijzen op uitzendingskanaal periodiek overbrengen dat het nog op een bepaald kanaal ontvangt. Als een zender ontdekt dat de deadman tijdopnemer is verlopen, keert het aan het overbrengen van gegevens terug gebruikend een "best-inspanningen" regeling. Een zender kan zowel aan ontvangers die de diensten kunnen behandelen QoS en die overbrengen die de diensten niet kunnen uitdrukkelijk steunen QoS.