CA2292479A1 - System, device, and method for providing low access delay for time-sensitive applications in a shared medium network - Google Patents
System, device, and method for providing low access delay for time-sensitive applications in a shared medium network Download PDFInfo
- Publication number
- CA2292479A1 CA2292479A1 CA002292479A CA2292479A CA2292479A1 CA 2292479 A1 CA2292479 A1 CA 2292479A1 CA 002292479 A CA002292479 A CA 002292479A CA 2292479 A CA2292479 A CA 2292479A CA 2292479 A1 CA2292479 A1 CA 2292479A1
- Authority
- CA
- Canada
- Prior art keywords
- mac
- priority
- low
- polling
- users
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
- H04L12/4035—Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6421—Medium of transmission, e.g. fibre, cable, radio, satellite
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6424—Access arrangements
- H04L2012/6427—Subscriber Access Module; Concentrator; Group equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6445—Admission control
- H04L2012/6448—Medium Access Control [MAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6464—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A system, device, and method for providing low access delay for time-sensitive applications in a shared medium network segregates MAC Users into a highpriority group and a low-priority group. Where the MAC User priorities are not known a priori, the MAC User priorities are inferred from the size of the data packets transmitted by the MAC Users. MAC Users transmitting small packets are placed in the high-priority group, while MAC Users transmitting large packets are placed in the low-priority group. The headend unit first polls all of the high-priority MAC Users, and then polls low-priority MAC Users until either all low-priority MAC Users have been polled or the low-priority MAC Users have been serviced for a predetermined maximum polling time. The headend unit repeats this polling sequence in sequential polling cycles to provide the highpriority MAC Users with expedited access to the shared channel.
Description
System, Device, And Method For Providing Low Access Delay For Time-Sensitive Applications In A Shared Medium Network Background 1. Field of the Invention The invention relates generally to communication systems and, more particularly, to multiple access protocols for use over a shared communications medium 2. Discussion of Related Art In today's information age, there is an increasing need for high speed communications that provides guaranteed quality of service (QoS) for an ever-increasing number of communications consumers. To that end, communications networks and technologies are evolving to meet current and future demands.
Specifically, new networks are being deployed which reach a larger number of end users, and protocols are being developed to utilize the added bandwidth of these networks efficiently.
One technology that will be employed increasingly in the future is the shared-medium network. A shared medium network is one in which a single communications channel (the shared channel) is shared by a number of end users such that uncoordinated transmissions from different end users may interfere with each other. In modern broadband communications networks, the shared communications channel is typically one of a number of frequency bands carried over a shared physical medium, such as a hybrid fiber-optic/coaxial cable (HFC) network or by electromagnetic waves in free space. Since communications networks typically have a limited number of communications channels, the shared medium network allows many end users to gain access to the network over a single communications channel, thereby allowing the remaining communications channels to be used for other purposes. However, the shared medium network is only feasible when each end user only transmits data intermittently, allowing other end users to transmit during periods of silence.
!n the shared medium network, each end user interfaces to the shared channel by means of an Access Interface Unit (AIU) which allows the end user to transmit and receive information via the shared channel. A single AIU may support i one or a number of end users. Each end user wishing to utilize the shared channel participates in a Medium Access Control (MAC) protocol which provides a set of rules and procedures for accessing the shared channel. For convenience, each participant in the MAC protocol is referred to as a MAC User.
S FIG. 1 is a logical representation of a shared medium network 100 as is known in the art. As illustrated in FIG. 1, a headend unit 110 is coupled to a plurality of AIUs 120a through 120 (collectively referred to as AIUs 120) via a shared channel 130. In the preferred embodiment, the shared channel 130 is one of a number of communications channels carried by a shared physical medium such as an HFC or wireless network. In other embodiments, the shared physical medium may be coaxial cable, fiber-optic cable, twisted pair wires, and so on, and may also include air, atmosphere, or space for wireless and satellite communication. The headend unit 110 is also coupled to a communications network 140, which may include networks such as the Internet, on-line services, telephone and cable networks, and other communication systems.
Continuing to refer to FIG. 1, in the preferred embodiment, the shared physical medium, such as an HFC or wireless network, has or supports a plurality of communications channels. For ease of reference, the communications channels in which a headend unit, such as the headend unit 110, transmits information, signals, or other data to an AIU, such as AIU 120, are referred to as downstream channels. Also for ease of reference, the communications channels in which an AIU, such as AIU 120, transmits information, signals, or other data to a headend unit, such as headend unit 110, are referred to as upstream channels.
These various upstream and downstream channels may, of course, be the same physical channel or may be separate physical channels, for example, through time-division multiplexing or frequency-division multiplexing. These various channels may also be logically divided in other ways, in addition to upstream and downstream directions. In the preferred embodiment, the communications medium is an HFC network, with downstream channels in the frequency spectrum (band) typically 50 - 750 MHz (and up to 1 GHz), and with upstream channels in the frequency spectrum typically 5 - 42 MHz.
In a simple model of ar: exemplary HFC network, the headend unit uses a single downstream channel to send information, including poll messages, to the MAC Users, and a single upstream channel is used by the MAC Users to send information to the headend unit. Since the headend unit is the only device which transmits on the downstream channel, the downstream channel is not a "shared channel" as that term is applied to the present invention. However, since multiple MAC Users transmit on the upstream channel, the upstream channel is a shared channel, and the MAC protocol must provide for orderly access to the channel so as to maximize the data throughput over the channel.
A number of different access techniques have been developed for use over a shared channel. These techniques can generally be categorized as contention-free, which avoid collisions on the shared channel by means of various scheduling methods, and contention-based, which do not avoid collisions but instead resolve any collisions that do occur on the shared channel. Contention-free protocols, such as time-division multiple access (TDMA) and round-robin polling protocols, are typically less efficient than contention-based protocols under light loads because the contention-free protocols generally allocate some amount of bandwidth to each MAC User whether or not the MAC User has information to send. On the other hand, contention-based protocols only allocate bandwidth to those MAC Users that have information to send, although some amount of bandwidth is wasted whenever collision resolution is required. Hybrid protocols, utilizing both contention-free and contention-based access, have been developed in an attempt to gain the advantages of both techniques.
In many multiple access protocols, some form of round-robin polling is used.
In the round-robin polling technique, a list of MAC Users is maintained, and the MAC Users on the list are polled sequentially, one after the other, to provide each MAC User with an opportunity to transmit data on the shared channel. In straight round-robin polling, each MAC User is provided equal access to the shared channel whether the MAC User is "active" (i.e., is actively generating data) or "inactive" (i.e., infrequency has data to transmit).
Some round-robin polling protocols attempt to improve the effectiveness and efficiency of polling by segregating the MAC Users into multiple lists according to the frequency with which the MAC User has data to transmit. The "active"
MAC
Users are typically placed on a "fast poll" list, and are polled at a relatively high frequency, while the "inactive" MAC Users are typically placed on a "slow poll" list, and are poll at a relatively low frequency. An alternative approach maintains a list of "recently active" MAC Users (i.e., MAC Users that are currently "inactive"
but had recently been "active") which are polled less frequently than the MAC Users on the 3 S fast poll list but more frequently than the MAC Users on the slow poll fist. By polling a MAC User at a frequency commensurate with its likelihood of having data to transmit, bandwidth efficiency may be improved.
Hybrid protocols go one step further and replace the round-robin polling of "inactive" MAC Users with contention-based access. The "inactive" MAC Users are provided opportunities to contend for access to the shared channel along with other "inactive" MAC Users. In this way, individual poll messages are not wasted on "inactive" MAC Users that have no data to transmit.
One problem with round-robin polling is that the MAC Users on each poll list are treated as having equal priority and are provided equal access to the shared channel, even if the MAC Users have different priorities. For example, an "active"
MAC User having high-priority, time-sensitive data is polled in the same manner, and at the same frequency, as an "active" user having low-priority, time-insensitive data. In that case, the data from the high-priority MAC User may be delayed while data from low-priority MAC Users is being transmitted. Clearly, segregating MAC
Users according to data availability alone does not adequately address the issue of prioritizing MAC User transmissions. A knowledge of the MAC User priority a priori would allow the polling sequence to account for MAC User priority.
However, the MAC User priority is typically not known at the time the MAC User enters the system, and may change over time as the MAC User accesses various services over the network. Therefore, a need remains for a system, device, and method for providing low access delay for time-sensitive applications in a shared medium network.
Brief Descripfion of the Drawing In the Drawing, FIG. 1 is a block diagram of a shared medium network as is known in the art;
FIG. 2 is a logic flow diagram for processing an upstream burst transmission; and FIG. 3 is a logic flow diagram for a polling cycle.
Detailed Description As discussed above, the need remains for a system, device, and method for providing low access delay for time-sensitive applications in a shared medium network. The present invention provides such low access delay by having the WO 99/00941 PCTlUS98/09715 headend unit segregate MAC Users into a high-priority group and a low-priority group. The headend unit first polls all of the high-priority MAC Users, and then polls low-priority MAC Users until either all low-priority MAC Users have been polled or the low-priority MAC Users have been serviced for a predetermined maximum polling time. The headend unit repeats this polling sequence in sequential polling cycles to provide the high-priority MAC Users with expedited access to the shared channel.
In order for the headend unit to segregate the MAC Users into the high-priority group and the low-priority group, the headend unit must be able to determine the relative priority of each MAC User. In some networks, the MAC
User priorities may be known a priori, for example, through configuration by a network administrator or by service class designations in an ATM or other network. In other networks, the MAC User priorities may not be known a priori, and, in fact, may change over time as the end users access different applications over the network.
In networks where the MAC User priorities are not explicitly known, the headend unit must determine the MAC User priorities by other means.
In the preferred embodiment, the MAC User priority is not known a priori and is instead inferred from the characteristics of the upstream transmissions generated by the MAC User. The headend unit monitors the MAC User transmissions and determines the delay requirements of the MAC User according to a predetermined set of parameters such as the burst/packet sizes transmitted by the MAC User, the packet types included in the MAC User transmissions, the applications accessed by the MAC User, and any of a number of other parameters that will be apparent to the skilled artisan. The headend unit may use one or more parameters to determine the relative priority of the MAC User, and may use a different set of parameters for each MAC User.
In the preferred embodiment, the MAC User priority is inferred solely from the size of the data packets transmitted by the MAC User. It has been observed that time-sensitive, low-latency applications typically generate small data packets while time-insensitive applications typically generate larger data packets.
For example, in a typical shared medium network carrying TCP/IP traffic, much of the upstream traffic for a TCP/IP application will be TCP acknowledgement packets which are transmitted over the upstream channel to allow TCP/IP traffic to continue flowing over the downstream channel. Web surfing and gaming applications will likewise typically generate small data packets in the upstream direction.
These WO 99/00941 PCTlUS98/09715 small data packets transmitted over the upstream channel are time-sensitive, since a delay in their delivery may result in noticeably unacceptable performance of the application. Upstream file transfers, on the other hand, will typically be characterized by large data packets transmitted over the upstream channel.
These large data packets transmitted over the upstream channel are considered time-insensitive, since a delay in their delivery will typically go unnoticed.
While it is not universally true that time-sensitive applications transmit small packets over the upstream channel and that time-insensitive applications transmit large packets over the upstream channel, the size of the packets is used by the headend unit to make an assumption as to the delay requirements of the application and therefore to categorize the MAC Users as either high-priority or low-priority.
Since transmit packet sizes may vary between transmissions, the preferred embodiment utilizes an exponential weighted average of the received burst size for each MAC User. The headend unit calculates the exponential weighted average for each MAC User as bursts are received over the upstream channel.
MAC Users having an average packet size below a predetermined threshold packet size are placed in the high-priority group, while the remaining MAC
Users are placed in the low-priority group. The exponential weighted average for a MAC
User is calculated according to the following formula:
avg_packet size = a * avg~acket size + (1 - a) * received_burst size where a is a predetermined weighting factor and received burst size is the size of the most recent burst received from the MAC User.
Each time an upstream burst transmission is received from a MAC User, the headend unit updates the average packet size calculation for the MAC User and re-categorizes the MAC User into either the high-priority group or the low-priority group. A logic flow diagram for processing an upstream burst transmission is shown in FIG. 2. The logic begins in step 210, and upon receiving a burst transmission from the MAC User in step 220, the logic updates the average packet size for the MAC User, in step 230. The logic then determines whether the average packet size is below the predetermined threshold packet size, in step 240.
If the average packet size for the MAC User is below the predetermined threshold packet size (YES in step 240), then the logic categorizes the MAC User in the high-priority group, in step 250; otherwise, the logic categorizes the MAC
User in the low-priority group, in step 260. The logic terminates in step 299.
Specifically, new networks are being deployed which reach a larger number of end users, and protocols are being developed to utilize the added bandwidth of these networks efficiently.
One technology that will be employed increasingly in the future is the shared-medium network. A shared medium network is one in which a single communications channel (the shared channel) is shared by a number of end users such that uncoordinated transmissions from different end users may interfere with each other. In modern broadband communications networks, the shared communications channel is typically one of a number of frequency bands carried over a shared physical medium, such as a hybrid fiber-optic/coaxial cable (HFC) network or by electromagnetic waves in free space. Since communications networks typically have a limited number of communications channels, the shared medium network allows many end users to gain access to the network over a single communications channel, thereby allowing the remaining communications channels to be used for other purposes. However, the shared medium network is only feasible when each end user only transmits data intermittently, allowing other end users to transmit during periods of silence.
!n the shared medium network, each end user interfaces to the shared channel by means of an Access Interface Unit (AIU) which allows the end user to transmit and receive information via the shared channel. A single AIU may support i one or a number of end users. Each end user wishing to utilize the shared channel participates in a Medium Access Control (MAC) protocol which provides a set of rules and procedures for accessing the shared channel. For convenience, each participant in the MAC protocol is referred to as a MAC User.
S FIG. 1 is a logical representation of a shared medium network 100 as is known in the art. As illustrated in FIG. 1, a headend unit 110 is coupled to a plurality of AIUs 120a through 120 (collectively referred to as AIUs 120) via a shared channel 130. In the preferred embodiment, the shared channel 130 is one of a number of communications channels carried by a shared physical medium such as an HFC or wireless network. In other embodiments, the shared physical medium may be coaxial cable, fiber-optic cable, twisted pair wires, and so on, and may also include air, atmosphere, or space for wireless and satellite communication. The headend unit 110 is also coupled to a communications network 140, which may include networks such as the Internet, on-line services, telephone and cable networks, and other communication systems.
Continuing to refer to FIG. 1, in the preferred embodiment, the shared physical medium, such as an HFC or wireless network, has or supports a plurality of communications channels. For ease of reference, the communications channels in which a headend unit, such as the headend unit 110, transmits information, signals, or other data to an AIU, such as AIU 120, are referred to as downstream channels. Also for ease of reference, the communications channels in which an AIU, such as AIU 120, transmits information, signals, or other data to a headend unit, such as headend unit 110, are referred to as upstream channels.
These various upstream and downstream channels may, of course, be the same physical channel or may be separate physical channels, for example, through time-division multiplexing or frequency-division multiplexing. These various channels may also be logically divided in other ways, in addition to upstream and downstream directions. In the preferred embodiment, the communications medium is an HFC network, with downstream channels in the frequency spectrum (band) typically 50 - 750 MHz (and up to 1 GHz), and with upstream channels in the frequency spectrum typically 5 - 42 MHz.
In a simple model of ar: exemplary HFC network, the headend unit uses a single downstream channel to send information, including poll messages, to the MAC Users, and a single upstream channel is used by the MAC Users to send information to the headend unit. Since the headend unit is the only device which transmits on the downstream channel, the downstream channel is not a "shared channel" as that term is applied to the present invention. However, since multiple MAC Users transmit on the upstream channel, the upstream channel is a shared channel, and the MAC protocol must provide for orderly access to the channel so as to maximize the data throughput over the channel.
A number of different access techniques have been developed for use over a shared channel. These techniques can generally be categorized as contention-free, which avoid collisions on the shared channel by means of various scheduling methods, and contention-based, which do not avoid collisions but instead resolve any collisions that do occur on the shared channel. Contention-free protocols, such as time-division multiple access (TDMA) and round-robin polling protocols, are typically less efficient than contention-based protocols under light loads because the contention-free protocols generally allocate some amount of bandwidth to each MAC User whether or not the MAC User has information to send. On the other hand, contention-based protocols only allocate bandwidth to those MAC Users that have information to send, although some amount of bandwidth is wasted whenever collision resolution is required. Hybrid protocols, utilizing both contention-free and contention-based access, have been developed in an attempt to gain the advantages of both techniques.
In many multiple access protocols, some form of round-robin polling is used.
In the round-robin polling technique, a list of MAC Users is maintained, and the MAC Users on the list are polled sequentially, one after the other, to provide each MAC User with an opportunity to transmit data on the shared channel. In straight round-robin polling, each MAC User is provided equal access to the shared channel whether the MAC User is "active" (i.e., is actively generating data) or "inactive" (i.e., infrequency has data to transmit).
Some round-robin polling protocols attempt to improve the effectiveness and efficiency of polling by segregating the MAC Users into multiple lists according to the frequency with which the MAC User has data to transmit. The "active"
MAC
Users are typically placed on a "fast poll" list, and are polled at a relatively high frequency, while the "inactive" MAC Users are typically placed on a "slow poll" list, and are poll at a relatively low frequency. An alternative approach maintains a list of "recently active" MAC Users (i.e., MAC Users that are currently "inactive"
but had recently been "active") which are polled less frequently than the MAC Users on the 3 S fast poll list but more frequently than the MAC Users on the slow poll fist. By polling a MAC User at a frequency commensurate with its likelihood of having data to transmit, bandwidth efficiency may be improved.
Hybrid protocols go one step further and replace the round-robin polling of "inactive" MAC Users with contention-based access. The "inactive" MAC Users are provided opportunities to contend for access to the shared channel along with other "inactive" MAC Users. In this way, individual poll messages are not wasted on "inactive" MAC Users that have no data to transmit.
One problem with round-robin polling is that the MAC Users on each poll list are treated as having equal priority and are provided equal access to the shared channel, even if the MAC Users have different priorities. For example, an "active"
MAC User having high-priority, time-sensitive data is polled in the same manner, and at the same frequency, as an "active" user having low-priority, time-insensitive data. In that case, the data from the high-priority MAC User may be delayed while data from low-priority MAC Users is being transmitted. Clearly, segregating MAC
Users according to data availability alone does not adequately address the issue of prioritizing MAC User transmissions. A knowledge of the MAC User priority a priori would allow the polling sequence to account for MAC User priority.
However, the MAC User priority is typically not known at the time the MAC User enters the system, and may change over time as the MAC User accesses various services over the network. Therefore, a need remains for a system, device, and method for providing low access delay for time-sensitive applications in a shared medium network.
Brief Descripfion of the Drawing In the Drawing, FIG. 1 is a block diagram of a shared medium network as is known in the art;
FIG. 2 is a logic flow diagram for processing an upstream burst transmission; and FIG. 3 is a logic flow diagram for a polling cycle.
Detailed Description As discussed above, the need remains for a system, device, and method for providing low access delay for time-sensitive applications in a shared medium network. The present invention provides such low access delay by having the WO 99/00941 PCTlUS98/09715 headend unit segregate MAC Users into a high-priority group and a low-priority group. The headend unit first polls all of the high-priority MAC Users, and then polls low-priority MAC Users until either all low-priority MAC Users have been polled or the low-priority MAC Users have been serviced for a predetermined maximum polling time. The headend unit repeats this polling sequence in sequential polling cycles to provide the high-priority MAC Users with expedited access to the shared channel.
In order for the headend unit to segregate the MAC Users into the high-priority group and the low-priority group, the headend unit must be able to determine the relative priority of each MAC User. In some networks, the MAC
User priorities may be known a priori, for example, through configuration by a network administrator or by service class designations in an ATM or other network. In other networks, the MAC User priorities may not be known a priori, and, in fact, may change over time as the end users access different applications over the network.
In networks where the MAC User priorities are not explicitly known, the headend unit must determine the MAC User priorities by other means.
In the preferred embodiment, the MAC User priority is not known a priori and is instead inferred from the characteristics of the upstream transmissions generated by the MAC User. The headend unit monitors the MAC User transmissions and determines the delay requirements of the MAC User according to a predetermined set of parameters such as the burst/packet sizes transmitted by the MAC User, the packet types included in the MAC User transmissions, the applications accessed by the MAC User, and any of a number of other parameters that will be apparent to the skilled artisan. The headend unit may use one or more parameters to determine the relative priority of the MAC User, and may use a different set of parameters for each MAC User.
In the preferred embodiment, the MAC User priority is inferred solely from the size of the data packets transmitted by the MAC User. It has been observed that time-sensitive, low-latency applications typically generate small data packets while time-insensitive applications typically generate larger data packets.
For example, in a typical shared medium network carrying TCP/IP traffic, much of the upstream traffic for a TCP/IP application will be TCP acknowledgement packets which are transmitted over the upstream channel to allow TCP/IP traffic to continue flowing over the downstream channel. Web surfing and gaming applications will likewise typically generate small data packets in the upstream direction.
These WO 99/00941 PCTlUS98/09715 small data packets transmitted over the upstream channel are time-sensitive, since a delay in their delivery may result in noticeably unacceptable performance of the application. Upstream file transfers, on the other hand, will typically be characterized by large data packets transmitted over the upstream channel.
These large data packets transmitted over the upstream channel are considered time-insensitive, since a delay in their delivery will typically go unnoticed.
While it is not universally true that time-sensitive applications transmit small packets over the upstream channel and that time-insensitive applications transmit large packets over the upstream channel, the size of the packets is used by the headend unit to make an assumption as to the delay requirements of the application and therefore to categorize the MAC Users as either high-priority or low-priority.
Since transmit packet sizes may vary between transmissions, the preferred embodiment utilizes an exponential weighted average of the received burst size for each MAC User. The headend unit calculates the exponential weighted average for each MAC User as bursts are received over the upstream channel.
MAC Users having an average packet size below a predetermined threshold packet size are placed in the high-priority group, while the remaining MAC
Users are placed in the low-priority group. The exponential weighted average for a MAC
User is calculated according to the following formula:
avg_packet size = a * avg~acket size + (1 - a) * received_burst size where a is a predetermined weighting factor and received burst size is the size of the most recent burst received from the MAC User.
Each time an upstream burst transmission is received from a MAC User, the headend unit updates the average packet size calculation for the MAC User and re-categorizes the MAC User into either the high-priority group or the low-priority group. A logic flow diagram for processing an upstream burst transmission is shown in FIG. 2. The logic begins in step 210, and upon receiving a burst transmission from the MAC User in step 220, the logic updates the average packet size for the MAC User, in step 230. The logic then determines whether the average packet size is below the predetermined threshold packet size, in step 240.
If the average packet size for the MAC User is below the predetermined threshold packet size (YES in step 240), then the logic categorizes the MAC User in the high-priority group, in step 250; otherwise, the logic categorizes the MAC
User in the low-priority group, in step 260. The logic terminates in step 299.
Because the categorization of a MAC User represents an assumption as to the delay requirements of the MAC User, the values selected for the predetermined weighting factor a and the predetermined threshold packet size affect whether or not a valid categorization is made. The selection of the predetermined weighting factor a is a policy-based determination as to the weight placed on the most recently received burst relative to the historical average calculated over prior bursts. In the preferred embodiment, the predetermined weighting factor a is selected to be 0.5, which places equal weight on the most recently received burst and the historical average. The selection of the predetermined threshold packet size is based on observed traffic characteristics.
In the preferred embodiment, the predetermined threshold packet size is selected to be 200 bytes.
A logic flow diagram for a polling cycle is shown in FIG. 3. The logic for each polling cycle begins in step 310 and proceeds to poll the next high-priority MAC User in the high-priority round-robin polling list, in step 320. After polling the MAC User in step 320, the logic proceeds to step 330 where it determines if all of the high-priority MAC Users have been polled during the polling cycle. If all of the high-priority MAC Users have not been polled during the polling cycle (NO in step 330), then the logic recycles to step 320 to poll the next high-priority MAC
User.
However, if ali of the high-priority MAC Users have been polled during the polling cycle (YES in step 330), then the logic proceeds to step 340 where it polls the next low-priority MAC User in the low-priority round-robin polling list. After polling the next low-priority MAC User in step 340, the logic determines if all of the low-priority MAC Users have been polled during the polling cycle, in step 350. If all of the low-priority MAC Users have been polled during the polling cycle (YES in step 350), then the logic recycles to step 310 to begin a new polling cycle. However, if all of the low-priority MAC Users have not been polled during the polling cycle (NO
in step 350), then the logic determines whether the low-priority MAC Users have been serviced for a predetermined maximum polling time, in step 360. if the low-priority MAC Users have not been serviced for the predetermined maximum polling time (NO in step 360), then the logic recycles to step 340 to poll the next low-priority MAC User. However, if the predetermined maximum polling time has been reached (YES in step 360), then the logic recycles to step 310 to begin a new polling cycle.
If the headend unit terminates a polling cycle before polling all of the low-priority MAC Users (i.e., by reaching the predetermined maximum polling time in step 360), then polling of the low-priority MAC Users in step 340 during the next polling cycle begins with the next low-priority MAC User in the list following the last low-priority MAC User polled. As a result, the low-priority MAC Users may be round-robin polled over a number of polling cycles.
The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive.
What is claimed is:
In the preferred embodiment, the predetermined threshold packet size is selected to be 200 bytes.
A logic flow diagram for a polling cycle is shown in FIG. 3. The logic for each polling cycle begins in step 310 and proceeds to poll the next high-priority MAC User in the high-priority round-robin polling list, in step 320. After polling the MAC User in step 320, the logic proceeds to step 330 where it determines if all of the high-priority MAC Users have been polled during the polling cycle. If all of the high-priority MAC Users have not been polled during the polling cycle (NO in step 330), then the logic recycles to step 320 to poll the next high-priority MAC
User.
However, if ali of the high-priority MAC Users have been polled during the polling cycle (YES in step 330), then the logic proceeds to step 340 where it polls the next low-priority MAC User in the low-priority round-robin polling list. After polling the next low-priority MAC User in step 340, the logic determines if all of the low-priority MAC Users have been polled during the polling cycle, in step 350. If all of the low-priority MAC Users have been polled during the polling cycle (YES in step 350), then the logic recycles to step 310 to begin a new polling cycle. However, if all of the low-priority MAC Users have not been polled during the polling cycle (NO
in step 350), then the logic determines whether the low-priority MAC Users have been serviced for a predetermined maximum polling time, in step 360. if the low-priority MAC Users have not been serviced for the predetermined maximum polling time (NO in step 360), then the logic recycles to step 340 to poll the next low-priority MAC User. However, if the predetermined maximum polling time has been reached (YES in step 360), then the logic recycles to step 310 to begin a new polling cycle.
If the headend unit terminates a polling cycle before polling all of the low-priority MAC Users (i.e., by reaching the predetermined maximum polling time in step 360), then polling of the low-priority MAC Users in step 340 during the next polling cycle begins with the next low-priority MAC User in the list following the last low-priority MAC User polled. As a result, the low-priority MAC Users may be round-robin polled over a number of polling cycles.
The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive.
What is claimed is:
Claims (10)
1. A method for segregating a plurality of MAC Users into a high-priority group and a low-priority group, the method comprising the steps of:
calculating the average packet size for each MAC User; and for each MAC User:
categorizing the MAC User in the high-priority group, if the average packet size for the MAC User is below a predetermined threshold packet size;
and categorizing the MAC User in the low-priority group otherwise.
calculating the average packet size for each MAC User; and for each MAC User:
categorizing the MAC User in the high-priority group, if the average packet size for the MAC User is below a predetermined threshold packet size;
and categorizing the MAC User in the low-priority group otherwise.
2. The method of claim 1 wherein the average packet size for a MAC User is determined according to an exponential weighted average of the sizes of bursts received from the MAC User calculated according the formula:
average packet size = .alpha. * average packet size + (1 - .alpha.) * received burst size;
where a is a predetermined weighting factor and the received burst size is the size of the most recently received burst from the MAC User.
average packet size = .alpha. * average packet size + (1 - .alpha.) * received burst size;
where a is a predetermined weighting factor and the received burst size is the size of the most recently received burst from the MAC User.
3. A method for providing low access delay for time-sensitive applications in a shared medium network wherein each application accesses the shared medium network by way of a MAC User, the method comprising the steps of:
segregating the MAC Users into a high-priority group and a low-priority group; and polling the MAC Users in a series of polling cycles, where each polling cycle comprises the steps of:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
segregating the MAC Users into a high-priority group and a low-priority group; and polling the MAC Users in a series of polling cycles, where each polling cycle comprises the steps of:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
4. The method of claim 3 wherein the step of segregating the MAC Users comprises the steps of:
monitoring the transmissions of each MAC User; and for each MAC User:
determining the access delay requirements of the MAC User from said transmissions;
placing the MAC User in the high-priority group, if the MAC User requires low access delay; and placing the MAC User in the low-priority group otherwise.
monitoring the transmissions of each MAC User; and for each MAC User:
determining the access delay requirements of the MAC User from said transmissions;
placing the MAC User in the high-priority group, if the MAC User requires low access delay; and placing the MAC User in the low-priority group otherwise.
5. The method of claim 4 wherein the step of determining the access delay requirements of the MAC User comprises the steps of:
calculating the average packet size for the MAC User; and determining that the MAC User requires low access delay, if the average packet size for the MAC User is below a predetermined threshold packet size.
calculating the average packet size for the MAC User; and determining that the MAC User requires low access delay, if the average packet size for the MAC User is below a predetermined threshold packet size.
6. The method of claim 3 wherein each polling cycle comprises the steps of:
(a) polling a next high-priority MAC User;
(b) determining if all of the high-priority MAC Users have been polled during the polling cycle;
(c) if at feast one high-priority MAC User remains to be polled during the polling cycle, recycling to step (a);
(d) if all of the high-priority MAC Users have been polled during the contention cycle, polling a next low-priority MAC User;
(e) determining if alt of the low-priority MAC Users have been polled during the polling cycle;
(f) if all of the low-priority MAC Users have been polled during the contention cycle, recycling to step (a) to begin a next polling cycle;
(g) if at least one of the low-priority MAC Users remains to be polled during the contention cycle, determining whether the low-priority MAC Users have been serviced for the predetermined maximum polling time;
(h) if the low-priority MAC Users have not been serviced for the predetermined maximum polling time, recycling to step (d); and (i) if the low-priority MAC Users have been serviced for the predetermined maximum polling time, recycling to step (a) to begin the next polling cycle.
(a) polling a next high-priority MAC User;
(b) determining if all of the high-priority MAC Users have been polled during the polling cycle;
(c) if at feast one high-priority MAC User remains to be polled during the polling cycle, recycling to step (a);
(d) if all of the high-priority MAC Users have been polled during the contention cycle, polling a next low-priority MAC User;
(e) determining if alt of the low-priority MAC Users have been polled during the polling cycle;
(f) if all of the low-priority MAC Users have been polled during the contention cycle, recycling to step (a) to begin a next polling cycle;
(g) if at least one of the low-priority MAC Users remains to be polled during the contention cycle, determining whether the low-priority MAC Users have been serviced for the predetermined maximum polling time;
(h) if the low-priority MAC Users have not been serviced for the predetermined maximum polling time, recycling to step (d); and (i) if the low-priority MAC Users have been serviced for the predetermined maximum polling time, recycling to step (a) to begin the next polling cycle.
7. A device for providing low access delay for time-sensitive applications in a shared medium network wherein each application accesses the shared medium network by way of a MAC User, the device comprising:
logic for segregating the MAC Users into a high priority group and a low-priority group; and logic for polling the MAC Users in a series of polling cycles, where each polling cycle comprises:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
logic for segregating the MAC Users into a high priority group and a low-priority group; and logic for polling the MAC Users in a series of polling cycles, where each polling cycle comprises:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
8. The device of claim 7 wherein the logic for segregating the MAC Users into a high priority group and a low-priority group comprises:
logic for calculating the average packet size for each MAC User;
logic for categorizing the MAC User in the high-priority group, if the average packet size for the MAC User is below a predetermined threshold packet size;
and logic for categorizing the MAC User in the low-priority group otherwise.
logic for calculating the average packet size for each MAC User;
logic for categorizing the MAC User in the high-priority group, if the average packet size for the MAC User is below a predetermined threshold packet size;
and logic for categorizing the MAC User in the low-priority group otherwise.
9. The device of claim 8 wherein the average packet size for a MAC User is determined according to an exponential weighted average of the sizes of bursts received from the MAC User calculated according the formula:
average packet size = .alpha. * average packet size + (1 - .alpha.) * received burst size;
where a is predetermined weighting factor and the received burst size is the size of the most recently received burst from the MAC User.
average packet size = .alpha. * average packet size + (1 - .alpha.) * received burst size;
where a is predetermined weighting factor and the received burst size is the size of the most recently received burst from the MAC User.
10. A system comprising a headend unit for controlling access by a plurality of MAC Users to a shared transmission medium, wherein the headend unit includes:
logic for segregating the MAC Users into a high priority group and a low-priority group; and logic for polling the MAC Users in a series of polling cycles, where each polling cycle comprises:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
logic for segregating the MAC Users into a high priority group and a low-priority group; and logic for polling the MAC Users in a series of polling cycles, where each polling cycle comprises:
polling each of the high-priority MAC Users; and subsequent to polling each of the high-priority MAC Users, polling a number of the low-priority MAC Users until one of:
all low-priority MAC Users have been polled; and the low-priority MAC Users have been serviced for a predetermined maximum polling time.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88452797A | 1997-06-27 | 1997-06-27 | |
US08/884,527 | 1997-06-27 | ||
PCT/US1998/009715 WO1999000941A1 (en) | 1997-06-27 | 1998-05-13 | System, device, and method for providing low access delay for time-sensitive applications in a shared medium network |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2292479A1 true CA2292479A1 (en) | 1999-01-07 |
Family
ID=25384828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002292479A Abandoned CA2292479A1 (en) | 1997-06-27 | 1998-05-13 | System, device, and method for providing low access delay for time-sensitive applications in a shared medium network |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP0990331A1 (en) |
JP (1) | JP2002506593A (en) |
KR (1) | KR20010014200A (en) |
CN (1) | CN1262008A (en) |
AU (1) | AU720470B2 (en) |
BR (1) | BR9810343A (en) |
CA (1) | CA2292479A1 (en) |
WO (1) | WO1999000941A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103248675A (en) * | 2013-04-23 | 2013-08-14 | 浪潮电子信息产业股份有限公司 | Polling method for monitoring state of server hardware |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100598078B1 (en) | 2001-01-05 | 2006-07-10 | 삼성전자주식회사 | Wireless communication apparatus, wireless communication system employing the same and the method thereof |
KR100442346B1 (en) * | 2001-11-19 | 2004-07-30 | 엘지전자 주식회사 | Polling list employment method in ieee802.11 mac layer |
KR100846767B1 (en) * | 2002-01-29 | 2008-07-16 | 삼성전자주식회사 | Method and apparatus for preventing collision between appliances in the network |
KR100461539B1 (en) * | 2002-11-26 | 2004-12-17 | 한국전자통신연구원 | Packet scheduler method for considering accumulation counter in wireless communication system |
CN1302637C (en) * | 2003-01-28 | 2007-02-28 | 华为技术有限公司 | A multiple spanning tree protocol bridge priority coordination method |
US7085256B2 (en) * | 2003-07-31 | 2006-08-01 | Motorola, Inc. | System and method for adaptive polling in a WLAN |
US7885245B2 (en) * | 2004-07-19 | 2011-02-08 | Interdigital Technology Corporation | Method and apparatus for enhanced uplink multiplexing |
CN100401709C (en) * | 2004-12-17 | 2008-07-09 | 中兴通讯股份有限公司 | WLAN subgroup polling method based on fixed service quality assurance policy |
CN100401708C (en) * | 2004-12-17 | 2008-07-09 | 中兴通讯股份有限公司 | WLAN subgroup polling method based on self-adaptive service quality assurance |
US7969878B2 (en) * | 2006-04-28 | 2011-06-28 | Siemens Enterprise Communications Gmbh & Co. Kg | Quality guarantee for real-time applications over shared networks |
CN102291836B (en) * | 2010-06-21 | 2016-01-20 | 中兴通讯股份有限公司 | A kind of random access control method and system |
EP2936764B1 (en) * | 2012-12-18 | 2020-03-25 | Telefonaktiebolaget LM Ericsson (publ) | Method and apparatus for managing media access control addresses |
US11228996B2 (en) * | 2018-09-28 | 2022-01-18 | Qualcomm Incorporated | Delivery time windows for low latency communications |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0388574B1 (en) * | 1989-03-23 | 1994-06-15 | International Business Machines Corporation | Method and apparatus for distributed queue multiple access in a communication system |
US5892910A (en) * | 1995-02-28 | 1999-04-06 | General Instrument Corporation | CATV communication system for changing first protocol syntax processor which processes data of first format to second protocol syntax processor processes data of second format |
-
1998
- 1998-05-13 KR KR1019997012278A patent/KR20010014200A/en not_active Application Discontinuation
- 1998-05-13 BR BR9810343-1A patent/BR9810343A/en not_active IP Right Cessation
- 1998-05-13 CN CN98806655A patent/CN1262008A/en active Pending
- 1998-05-13 EP EP98922235A patent/EP0990331A1/en not_active Withdrawn
- 1998-05-13 AU AU74831/98A patent/AU720470B2/en not_active Ceased
- 1998-05-13 CA CA002292479A patent/CA2292479A1/en not_active Abandoned
- 1998-05-13 JP JP50553099A patent/JP2002506593A/en active Pending
- 1998-05-13 WO PCT/US1998/009715 patent/WO1999000941A1/en not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103248675A (en) * | 2013-04-23 | 2013-08-14 | 浪潮电子信息产业股份有限公司 | Polling method for monitoring state of server hardware |
Also Published As
Publication number | Publication date |
---|---|
EP0990331A1 (en) | 2000-04-05 |
WO1999000941A1 (en) | 1999-01-07 |
AU7483198A (en) | 1999-01-19 |
CN1262008A (en) | 2000-08-02 |
KR20010014200A (en) | 2001-02-26 |
BR9810343A (en) | 2000-09-05 |
JP2002506593A (en) | 2002-02-26 |
AU720470B2 (en) | 2000-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5886993A (en) | System, device, and method for sharing contention mini-slots among multiple priority classes | |
US5960000A (en) | System, device, and method for contention-based reservation in a shared medium network | |
AU720470B2 (en) | System, device, and method for providing low access delay for time-sensitive applications in a shared medium network | |
US6114968A (en) | Hybrid contention/polling access method | |
EP0791255A1 (en) | Entry polling method, device and router for providing contention-based reservation mechanism within minislots | |
WO1999011025A9 (en) | Method of sharing communication channels utilizing both contention and polling schemes | |
WO2006074382A1 (en) | Methods and media access controller for mesh networks with adaptive quality-of-service management | |
US20020052956A1 (en) | Method for allocating resources | |
WO2006050664A1 (en) | System and method for controlling access to a wireless medium | |
WO2002041590A1 (en) | Media access control for wireless systems | |
US5909444A (en) | System, device, and method for aggregating users in a shared-medium network | |
JPH09319671A (en) | Data transmitter | |
Liao et al. | Adaptive slot allocation in DOCSIS-based CATV networks | |
CN112261667B (en) | FIWI network media access control system and method based on edge calculation | |
US7957318B1 (en) | Systems and methods for transitioning between fragmentation modes | |
AU743272B2 (en) | Offered load estimation and applications for using same in a communication network | |
WO2003077487A1 (en) | Shared-communications channel utilization for applications having different class of service requirements | |
Ju et al. | Adaptive scheduling in DOCSIS-based CATV networks | |
Lin et al. | Adaptive bandwidth sharing mechanism for quality of service administration in infrastructure wireless networks | |
CA2268794A1 (en) | System, device, and method for scheduling variable bit rate traffic in a communication network | |
Laias et al. | Performance Evaluation of Pervasive Networks based on WiMAX Networks | |
Morishita et al. | Prioritized ACK transfer mechanisms for PLC media control access | |
Chen et al. | A preemptive priority scheme for collision resolution in HFC networks | |
Gaur | Effective Channel Utilization in 802. 11 WLANs | |
EP0963639A1 (en) | Method of sharing communication channels utilizing both contention and polling schemes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
FZDE | Dead |