Network user priority assignment system
Claim Score by NHIP
Abstract
A network user priority assignment system (“NUPAS”) for assigning network user priorities on a network is described. The NUPAS may include a host and a gateway in signal communication with the host. The host may be configured to transmit a request message signal and the gateway may be configured to receive the transmitted request signal and in response generate an acknowledgement signal having a traffic descriptor.

Term
Projected expiry 8 January 2032.
- Priority
- Filed
- Published
- Today
- Projected expiry
29 claims: 4 independent, 25 dependent
- 1A method for assigning network user priorities on a network having a Configuration Server and a Host, the method comprising:receiving a discover message signal, the discover message signal having a first traffic descriptor;transmitting a first offer message signal, the offer message signal having a candidate traffic descriptor;receiving a request message signal, the request message signal having a second traffic descriptor;and transmitting an acknowledgement signal, the acknowledgement signal having a third traffic descriptor.
- 8A method for assigning network user priorities on a network having a Configuration Server and a Host, the method comprising:transmitting a first discover message signal, the first discover message signal having a first traffic descriptor;receiving an offer message signal, the offer message signal having a candidate traffic descriptor;transmitting a first request message signal, the first request message signal having a second traffic descriptor;and receiving an acknowledgement signal, the acknowledgement signal having a third traffic descriptor.
- 17Broadest claimClaim Score 79, broad(NHIP)A Configuration Server in signal communication with a Host, the Configuration Server comprising:a Server configured to receive a request message signal from the Host;and a User Priority Policy module in signal communication with the Server, the User Priority Policy module configured to generate a network user priority value in response to the Server receiving the request message signal.
- 23A Host in signal communication with a Configuration Server, the Host comprising:an application module;and a Client module in signal communication with the application module, the Client module configured to send a request message signal to the Configuration Server, and to receive an acknowledgement signal having a first traffic descriptor, wherein the first traffic descriptor includes the network user priority value.
Independent claims4
57 paragraphs in 5 sections, as filed
CROSS-REFERENCE TO RELATED APPLICATIONS
0001This application claim priority under Title 35, United States Code Section 119(e), to U.S. Provisional Application Ser. No. 60/593,474, titled “Method for Assigning Network User Priorities,” filed Jan. 17, 2005, which is incorporated herein, in its entirety, by this reference.
BACKGROUND OF THE INVENTION
00021. Field of the Invention
0003This invention is related to networks, and in particular to networks incorporating Quality of Service (“QOS”) features.
00042. Related Art
0005There is an increasing interest in providing Quality of Service (“QoS”) to applications utilized on a network. There have been many approaches in the past for providing QoS for networks including Network User Priority-based QoS (often referred to simply as “priority-based QoS”) approaches. In these priority-based QoS networks, an individual application running on the network utilizes one or more priorities of a set of priorities for some of the individual application's data packet transmissions. For example, transmission of real-time voice communication data packets may need a high priority to maintain clear speech, but a transfer of data to print may incur brief pauses that are not perceptible to humans and therefore would not require a high priority. Additionally, each data packet transmitted has a priority. Generally, the individual application may arbitrarily assign a priority for a given transmitted data packet; however, it is often desirable to manage the use of these assigned priorities on the priority-based QoS network so that these priorities are not overused or oversubscribed. Thus there is need for assigning priorities on a priority-based QoS network for different types of data packets on the network without overusing or oversubscribing these priorities.
0006As a result, systems have been proposed for assigning priorities on these types of networks including, for example, the UPnP™ QoS specifications from the UPnP™ Forum that describe an UPnP™ architecture for QoS. UPnP™ stands for “Universal Plug and Play” and is defined by the documents listed via the Internet at website http://upnp.org. In the UPnP™ QoS architecture, a device or module (implemented in either hardware or software) known as “QoS Policy Holder” is utilized for assigning priorities on the network. Unfortunately, the approach of utilizing an UPnP™ QoS architecture is complex and expensive and a typical network may not have a unique QoS Policy Holder and, therefore, would be unable to have priorities assigned intelligently on the network. Further, some network devices may have more than one application or more than one type of data packets.
0007Therefore, there is a need for assigning priorities on a priority-based QoS network for different types of data packets on the network without overusing or oversubscribing these priorities. There is also a need for assigning priorities without having to utilize complex network architectures.
SUMMARY
0008A network user priority assignment system (“NUPAS”) is disclosed. The NUPAS may include a host and a configuration server in signal communication with the host. The host may be configured to transmit a request message signal and the configuration server may be configured to receive the transmitted request message signal and in response generate an acknowledgement signal having a traffic descriptor that includes a network user priority value.
0009In an example of operation, the NUPAS may perform a process that may include transmitting a traffic descriptor using a discover message signal and receiving an offer message signal having a candidate traffic description. The process may also include transmitting a traffic descriptor using a request message signal and receiving an acknowledgement signal having a traffic descriptor including a network user priority value.
0010Other systems, methods and features of the invention will be or will become apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the accompanying claims.
BRIEF DESCRIPTION OF THE DRAWINGS
0011The invention can be better understood with reference to the following figures. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. In the figures, like reference numerals designate corresponding parts throughout the different views.
0012<figref idref="DRAWINGS">FIG. 1</figref> is an example of an implementation of an example network architecture utilizing a network user priority assignment system (“NUPAS”) in accordance with the present invention.
0013<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram of an example of an implementation of the NUPAS shown in <figref idref="DRAWINGS">FIG. 1</figref>.
0014<figref idref="DRAWINGS">FIG. 3</figref> is a signal flow diagram illustrating an example of operation of the NUPAS shown in <figref idref="DRAWINGS">FIG. 2</figref>.
DETAILED DESCRIPTION
0015A network user priority assignment system (“NUPAS”) is disclosed. The NUPAS may include a host and a configuration server in signal communication with the host. The host may be configured to transmit a request message signal and the configuration server may be configured to receive the transmitted request message signal and in response generate an acknowledgement signal having a traffic descriptor.
0016In an example of operation, the NUPAS may perform a process that includes transmitting a traffic descriptor using a discover message signal and receiving an offer message signal having a candidate traffic description. The example process also includes transmitting a traffic descriptor using a request message signal and receiving an acknowledgement signal having a traffic descriptor including a network user priority value.
0017As an example, the configuration server may include a user priority policy module in signal communication with the configuration server. The configuration server may be configured to receive request message signals from the host and the user priority policy module may be configured to generate a network user priority value in response to the configuration server receiving the request message signals. Further the configuration server may include a transmitter that is configured to transmit an acknowledgement signal having a traffic descriptor to the host, wherein the traffic descriptor includes the network user priority value. As an example, the configuration server may be implemented within a gateway device and the user priority policy module may be either incorporated within the configuration server or incorporated within the gateway device external to the configuration server.
0018The host may also include, as an example, at least one application module and a client module in signal communication with the application module. The client module may be configured to send the request message signal to the gateway and to receive the acknowledgement signal. The application modules may be, for example, a web browser application, voice over internet protocol (“VoIP”) application module, video server application module, or print server application module.
0019In general, the NUPAS may be configured to assign Network User Priorities for applications on devices that may be in signal communication with a heterogeneous network that may have both wired and wireless communication segments. As an example, the NUPAS may be implemented utilizing the Dynamic Host Configuration Protocol (“DHCP”).
Overview of DHCP
0020For the configuration of internet protocol (“IP”) addresses and related information, networks commonly utilize DHCP as defined in RFC 2131, which is herein incorporated by reference. For reference, RFC 2131 is described on web page http://www.ietf.org/rfc/rfc2131.txt. The DHCP protocol uses a DHCP Server to respond to requests for IP addresses and other configuration information. The DHCP Server implements a DHCP server function in accordance with the Server requirements as defined by RFC 2131. As an example of operation, network devices wishing to utilize the DHCP Server implement a DHCP client function in accordance with the client requirements as defined by RFC 2131.
0021The DHCP protocol also allows for the transfer of other information in addition to IP Address information. As an example, the information may be defined and described, as shown in Table 1, in RFC 2132, herein incorporated by reference, or the Internet Assigned Numbers Authority (“IANA”) Databases, or the information may be vendor specific.
0022In an example case defined by RFC 2132, both the DHCP Server and client devices (i.e., network devices) may support various DHCP Options. As an example of operation, when a network device and the DHCP Server communicate across a network utilizing DHCP communication, the network device may provide both its application information and its configuration information to the DHCP Server through DHCP Option codes. As an example, the network device may pass a Client ID utilizing DHCP Option 61, Client Identifier, as defined by RFC 2132. It is appreciated by those skilled in the art that the network device may be also identified by its media access controller (“MAC”) address.
0023Similarly, the DHCP Server may pass information to the network device. As an example, the DHCP Server may pass the system log (log server or “SYSLOG”) server IP address to the network device utilizing DHCP Option 7, DHCP OFFER, as defined by RFC 2132. Other example DCHP Options are shown in Table 1. <tables id="TABLE-US-00001" num="1"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 1</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Listing of some example DHCP Options as defined by RFC 2132</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="49PT" align="center" /><colspec colname="2" colwidth="98PT" align="left" /><colspec colname="3" colwidth="70PT" align="left" /><tbody valign="top"><row><entry>Option</entry><entry /><entry /></row><row><entry>Number</entry><entry>Option Function</entry><entry>Defaults</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1" /></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="49PT" align="char" char="." /><colspec colname="2" colwidth="98PT" align="left" /><colspec colname="3" colwidth="70PT" align="left" /><tbody valign="top"><row><entry>0</entry><entry>Pad</entry><entry>N/A</entry></row><row><entry>255</entry><entry>End</entry><entry>N/A</entry></row><row><entry>1</entry><entry>Subnet Mask</entry><entry>255.255.255.0</entry></row><row><entry>2</entry><entry>Time Offset</entry><entry>0</entry></row><row><entry>3</entry><entry>Router Option</entry><entry>192.168.0.1</entry></row><row><entry>6</entry><entry>Domain Name Server</entry><entry>192.168.0.1</entry></row><row><entry>7</entry><entry>Log Server</entry><entry>0.0.0.0</entry></row><row><entry>12</entry><entry>Host Name</entry><entry>N/A</entry></row><row><entry>15</entry><entry>Domain Name</entry><entry>Null String</entry></row><row><entry>23</entry><entry>Default Time-to-live</entry><entry>255</entry></row><row><entry>26</entry><entry>Interface MTU</entry><entry>1520</entry></row><row><entry>43</entry><entry>Vendor Specific Information</entry><entry>Vendor Selected</entry></row><row><entry>50</entry><entry>Requested IP Address</entry><entry>N/A</entry></row><row><entry>51</entry><entry>IP Address Lease Time</entry><entry>60</entry></row><row><entry>54</entry><entry>Server Identifier</entry><entry>192.168.0.1</entry></row><row><entry>55</entry><entry>Parameter Request List</entry><entry>N/A</entry></row><row><entry>60</entry><entry>Vendor Class Identifier</entry><entry>N/A</entry></row><row><entry>61</entry><entry>Client- identifier</entry><entry>N/A</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0024As described in RFC 2131, a typical DHCP sequence of events includes that upon reset, or other similar action, a network device will issue a DHCP DISCOVER broadcast message to initiate the process of acquiring an IP address lease, providing configuration information, and receiving configuration information from a DCHP Server. In this example, there may be one DHCP Server or multiple DHCP Servers on the network that receive the DHCP DISCOVER message from the network device. In response, each DHCP Server responds with a DHCP OFFER message. The network device then selects a DHCP Server and responds to the selected DHCP Server with a DHCP REQUEST message. In response, the selected DHCP Server responds to the network device with a DHCP ACK (i.e., acknowledgement) which contains committed configuration information. Additionally, in the case of transmission and/or reception errors, RFC 2131 describes exception and error recovery procedures that may be utilized.
0025It is appreciated by those skilled in the art that DHCP messages may contain other information within the DHCP Options not shown in Table 1 but defined by RFC 2132. In general, DHCP options are of variable-length having a length octet following a tag octet. The value of the length octet does not include two octets specifying the tag and length. The length octet is followed by “length” octets of data. Additionally, Option codes 128 to 254 (decimal) in RFC 2132 are reserved for site-specific options (i.e., the codes do not need to be registered in order to use them) and may be optionally encoded by system designers because they are basically empty codes that have no functionality associated with them and allow the system designers to pass proprietary data. In a DHCP implementation example, the NUPAS may utilize this type of encoding.
0026In its initial DHCP DISCOVER or DHCP REQUEST message, the network device may provide the DHCP Server with a list of specific parameters that a DHCP Client module in the network device is interested in utilizing. This list is generally known as the “Parameter Request List” Option. This option is used by a DHCP Client to request values for specified configuration parameters. The list of requested parameters is specified as n octets, where each octet is a valid DHCP Option code as defined, for example, in Table 3 shown below.
0027The network device may also include other DHCP Option fields in the DHCP DISCOVER and DHCP REQUEST messages it broadcasts to the DHCP Servers. These other options may represent “hints” at configuration parameters, descriptions of the client configuration, or requests for other information that is allowed in a DHCP DISCOVER or DHCP REQUEST message.
Implementation of the NUPAS
0028As an example of an implementation, the NUPAS may be implemented utilizing DCHP. The NUPAS may include a Configuration Server and a Host. The Configuration Server may be a DCHP Server and the Host may be a network device (such as, for example, a personal computer “PC,” network storage device, or other network enabled component) that includes a DCHP Client module. The Host may be a network device that utilizes a single IP address per interface. The Host may include one or more application modules that are configured to run different applications and each application module may request and use parameters on the same interface. The Host may then request Network User Priorities for packets of data that it will transmit based on the application module.
0029In this example, the information sent from the Host to the DHCP Server may include a traffic descriptor. The traffic descriptor may be included in either a transmitted DHCP DISCOVER message signal or DHCP REQUEST message signal. The traffic descriptor may include a Traffic Descriptor ID, suggested Network User Priority for the Traffic Descriptor ID, Traffic Class, Traffic Identifier String, Source port number, Destination IP address, and/or Destination port number. The Traffic Descriptor ID may be a 32-bit integer value that is unique for each set of traffic descriptor on the Host. The Traffic Class may be the traffic class associated with the traffic stream of data from the Host. The Traffic Class may be an enumerated variable that can be assigned to one of the following list of values: network control, streaming control, voice, audio and/or video, data, images, gaming, background, or other similar types of information data. An example list of values is shown in Table 2. <tables id="TABLE-US-00002" num="2"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 2</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example list of Traffic Class values</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="OFFSET" colwidth="42PT" align="left" /><colspec colname="1" colwidth="70PT" align="left" /><colspec colname="2" colwidth="105PT" align="center" /><tbody valign="top"><row><entry /><entry /><entry>Value</entry></row><row><entry /><entry>Traffic Class Name</entry><entry>(hex)</entry></row><row><entry /><entry namest="OFFSET" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>Network Control</entry><entry>07<sub>16</sub></entry></row><row><entry /><entry>Streaming Control</entry><entry>17<sub>16</sub></entry></row><row><entry /><entry>Voice</entry><entry>06<sub>16</sub></entry></row><row><entry /><entry>AV</entry><entry>05<sub>16</sub></entry></row><row><entry /><entry>Audio</entry><entry>15<sub>16</sub></entry></row><row><entry /><entry>Gaming</entry><entry>25<sub>16</sub></entry></row><row><entry /><entry>Data</entry><entry>00<sub>16</sub></entry></row><row><entry /><entry>Images</entry><entry>10<sub>16</sub></entry></row><row><entry /><entry>Other</entry><entry>20<sub>16</sub></entry></row><row><entry /><entry>Background</entry><entry>01<sub>16</sub></entry></row><row><entry /><entry>Printing</entry><entry>11<sub>16</sub></entry></row><row><entry /><entry namest="OFFSET" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0030In response to receiving the information from the Host at the DHCP Server, the DHCP Server sends information to the Host that also includes a traffic descriptor, which may be included in either a transmitted DHCP OFFER message signal or DHCP ACK message signal. The traffic descriptor includes a Traffic Descriptor ID (that is the same as the Traffic Descriptor ID sent by the Host) and a Network User Priority for the Traffic Descriptor ID.
0031In this implementation example, the NUPAS may utilize the format of the DHCP Options to communicate the Network User Priority. As an example, the Vendor Class Identifier Option (i.e., DHCP option <b>60</b>) defines a network device class and may contain the string “Vendor name” to identify the network device with the actual name of the vendor. The NUPAS may utilize this string (or others) to identify the vendor specific information such as, for example, the string may include the letters “NUP.”
0032The Vendor Specific Information option (i.e., DHCP Option 43) may further identify the type of network device and its capabilities. The option may describe the type of network device that is making the request, the components or applications that are contained in the network device, the network device serial number, and also allows network device specific parameters. Example lists of DHCP Options for network device requests are shown in both Table 3 and Table 4. <tables id="TABLE-US-00003" num="3"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 3</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example list of DHCP Options for network device requests</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="4"><colspec colname="1" colwidth="70PT" align="left" /><colspec colname="2" colwidth="63PT" align="left" /><colspec colname="3" colwidth="49PT" align="left" /><colspec colname="4" colwidth="35PT" align="center" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry></row><row><entry namest="1" nameend="4" align="center" rowsep="1" /></row><row><entry>Option 55</entry><entry>Parameter Request</entry><entry>Octets (request</entry><entry>3</entry></row><row><entry /><entry>List</entry><entry>Option 43)</entry></row><row><entry>Option 60</entry><entry>“NUP”</entry><entry>String</entry><entry>3</entry></row><row><entry>Option 61</entry><entry>Device Identifier</entry><entry>String</entry><entry>Variable</entry></row><row><entry>Option 43 sub-option 1</entry><entry>Traffic Descriptor</entry><entry>32-bit integer</entry><entry>4</entry></row><row><entry /><entry>ID</entry></row><row><entry>Option 43 sub-option 2</entry><entry>Network User</entry><entry>8-bit integer</entry><entry>1</entry></row><row><entry /><entry>Priority</entry></row><row><entry>Option 43 sub-option 3</entry><entry>Traffic Class</entry><entry>8-bit integer</entry><entry>1</entry></row><row><entry>Option 43 sub-option 4</entry><entry>Traffic Identifier</entry><entry>String</entry><entry>Variable</entry></row><row><entry>Option 43 sub-option 5</entry><entry>Source Port</entry><entry>16-bit integer</entry><entry>2</entry></row><row><entry>Option 43 sub-option 6</entry><entry>Destination IP</entry><entry>32-bit integer</entry><entry>4</entry></row><row><entry /><entry>Address</entry></row><row><entry>Option 43 sub-option 7</entry><entry>Destination Port</entry><entry>16-bit integer</entry><entry>2</entry></row><row><entry namest="1" nameend="4" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0033<tables id="TABLE-US-00004" num="4"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 4</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example list of DHCP Options for network device requests</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="4"><colspec colname="1" colwidth="70PT" align="left" /><colspec colname="2" colwidth="70PT" align="left" /><colspec colname="3" colwidth="49PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry></row><row><entry namest="1" nameend="4" align="center" rowsep="1" /></row><row><entry>Option 60</entry><entry>“NUP”</entry><entry>String</entry><entry>3</entry></row><row><entry>Option 43 sub-option 1</entry><entry>Traffic Descriptor ID</entry><entry>32-bit inetgre</entry><entry>4</entry></row><row><entry>Option 43 sub-option 2</entry><entry>Network User Priority</entry><entry>8-bit inetger</entry><entry>1</entry></row><row><entry namest="1" nameend="4" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
Implementation Example of a NUPAS Architecture
0034In <figref idref="DRAWINGS">FIG. 1</figref>, an example of an implementation of an example network architecture <b>100</b> utilizing a network user priority assigning system (“NUPAS”), in accordance with the present invention, is shown. The network architecture <b>100</b> may be a communication network that may include a broadband access provider (“BAP”) <b>102</b>, Configuration Server (which may be incorporated within a gateway device) <b>104</b>, media center server <b>106</b> with a video monitor (such as a television) <b>108</b>, network attached storage (“NAS”) <b>110</b>, first host (such as a PC Host) <b>112</b>, bridge access point <b>114</b>, media client <b>116</b> with a video monitor (such as a television) <b>118</b>, a second host (such as another PC Host) <b>120</b>, cellular and wireless network phone <b>122</b> (where the wireless network may be wireless fidelity “Wi-Fi®,” Bluetooth®, or other similar wireless type wireless network), and a wireless service provider <b>124</b>. The gateway <b>104</b> may be in signal communication with the BAP <b>102</b>, via signal path <b>126</b>, and in signal communication with Media Center Server <b>106</b>, bridge access point <b>114</b>, and media client <b>116</b> via signal path <b>128</b>. The gateway may also be in signal communication with NAS <b>110</b>, first host <b>112</b>, and cellular and wireless network phone <b>122</b> via signal paths <b>130</b>, <b>132</b>, and <b>134</b>, respectively. The Media Center Server <b>106</b> may be in signal communication with the video monitor <b>108</b>, via signal path <b>136</b>, and the Media Client <b>116</b> may be in signal communication with video monitor <b>118</b> via signal path <b>138</b>. The bridge access point <b>114</b> may be in signal communication with the second Host <b>120</b>, via signal path <b>140</b>, and the cellular and wireless network phone <b>122</b> may be in signal path with the wireless service provider <b>124</b> via signal path <b>142</b>.
0035As an example, the signal path <b>128</b> may be a wired network that allows the gateway <b>104</b>, the media center server <b>106</b>, the media client <b>116</b>, and the bridge access point <b>114</b> to communicate with each other. Similarly, signal paths <b>130</b>, <b>132</b>, <b>134</b> may define a wireless network A <b>144</b> that allows the gateway <b>104</b>, NAS <b>110</b>, first Host <b>112</b>, and Cellular and wireless network Phone <b>122</b> to communicate with each other.
0036In this example, the gateway <b>104</b> may be in signal communication, via signal path <b>126</b>, that may include, for example, an internal or external modem to the BAP <b>102</b> that may be, for example, an Internet service provider (“ISP”). The gateway <b>104</b> may be located in any premises requiring broadband access or providing network services including, for example, residential and business settings. The second Host <b>120</b> may be also in wireless communication with the gateway <b>104</b> via the wired network signal path <b>128</b>, the bridge access point <b>114</b>, and a second wireless network B via signal path <b>140</b>. The BAP <b>102</b> may include, for example, a campus network, a cable network, a digital subscriber line (“DSL”) network, a satellite network, a T1 or T3 synchronous digital network, or any other broadband network technologies. The gateway <b>104</b> may provide wired or wireless access to the communication bandwidth of the BAP <b>102</b> via the wired network <b>128</b>, wireless network A <b>144</b>, and wireless network B <b>140</b>. As an example, the wired network <b>128</b> may be, for example, a Ethernet (e.g., IEEE 802.3) network, a powerline (e.g., HomePlug) Network, a phoneline (e.g., HomePNA) network, a HomePNA over Coax network, a Multimedia over Coax (“MoCA”) network, an 802.11 over coax network, or any a wired network based upon any of a variety of other communication technologies. The wireless networks A <b>144</b> and B <b>140</b> may be, for example, Institute of Electrical and Electronics Engineers (“IEEE”) 802.11 networks such as IEEE 802.11a/b/g/n, an 802.15 network, an 802.16 network, a Bluetooth network, or any wireless network based upon a variety of other wireless networking standards.
0037In this implementation example, the gateway <b>104</b> may enable the assignment of Network User Priorities for any of the other network entities (i.e., network devices) in signal communication via the wired network <b>128</b> or the wireless networks A <b>144</b> and B <b>140</b> to the gateway <b>104</b>. Such setup, configuration, or provisioning may be performed by a pre-configuration with the gateway <b>104</b>, or by an operator of the broadband network <b>102</b>, or by an authenticated and authorized third party having access to the gateway <b>104</b> via the broadband network <b>102</b>.
0038In <figref idref="DRAWINGS">FIG. 2</figref>, a block diagram of an example of an implementation of NUPAS <b>200</b> in signal communication with BAP <b>102</b> via signal path <b>202</b> is shown. The NUPAS <b>200</b> may correspond to a portion of the communication network <b>100</b> shown in <figref idref="DRAWINGS">FIG. 1</figref>. The NUPAS <b>200</b> may include a Configuration Server <b>204</b> and a Host <b>206</b> that may correspond to the gateway <b>104</b> and first host <b>112</b> in <figref idref="DRAWINGS">FIG. 1</figref>, respectively. The Host <b>206</b> may be a component capable of operation on the network such as, for example, a PC, media server, media client, NAS, or cellular and wireless network phone. The Configuration Server <b>204</b> may be in signal communication with a remote operator <b>208</b> via the BAP <b>102</b> and signal paths <b>202</b> and <b>210</b>. The BAP <b>102</b> may be, for example, a campus network, cable network, DSL network, satellite network, or other form of communication network infrastructure. In addition, the Configuration Server <b>204</b> may be in signal communication with the Host <b>206</b> via a wired and/or wireless communication link along signal path <b>212</b>.
0039As an example of an implementation, the Configuration Server <b>204</b> may be a gateway device that includes a DHCP Server <b>214</b> where the DHCP Server <b>214</b> may include a Network User Priority Policy module <b>216</b>. The Network User Priority module <b>216</b> may be optionally part of the DHCP Server <b>214</b> or part of the Configuration Server <b>204</b> and external to the DHCP Server <b>214</b>. Similarly, the Host <b>206</b> may include a DHCP Client <b>218</b>, voice over Internet protocol (“VoIP”) Application module <b>220</b>, a Web Browser Application module <b>222</b>, a Video Server Application module <b>224</b>, and a Print Server Application module <b>226</b>.
0040In an example of operation, an application module on the Host <b>206</b> may want to transmit data packets to or via Configuration Server <b>204</b> (such as, for example, gateway <b>104</b>, <figref idref="DRAWINGS">FIG. 1</figref>) using Network User Priorities, as described above. For example, VoIP Application module <b>220</b> may wish to transmit VoIP data packets with Network User Priorities. Using the DHCP Client <b>218</b>, a DHCP DISCOVER message is constructed include the following DHCP Option parameters as defined in Table 5. <tables id="TABLE-US-00005" num="5"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 5</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP DISCOVER DHCP Options for</entry></row><row><entry>Host with VoIP Application Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="56PT" align="left" /><colspec colname="3" colwidth="35PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="49PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 55</entry><entry>Parameter</entry><entry>Octets</entry><entry>3</entry><entry>55 01 43</entry></row><row><entry /><entry>Request List</entry><entry>(request</entry></row><row><entry /><entry /><entry>Option 43)</entry></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 61</entry><entry>Device Identifier</entry><entry>String</entry><entry>8</entry><entry>“BRCM1234”</entry></row><row><entry>Option 43</entry><entry>Traffic</entry><entry>32-bit</entry><entry>4</entry><entry>10000033<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry>Descriptor ID</entry><entry>integer</entry></row><row><entry>Option 43</entry><entry>Traffic Class</entry><entry>8-bit</entry><entry>1</entry><entry>0616</entry></row><row><entry>sub-option 3</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0041Similarly, Tables 6, 7, and 8 describe example DHCP Request Options for DHCP OFFER, DHCP REQUEST, and DHCP ACK messages for a Host with a VoIP application request that may be utilized by the NUPAS <b>200</b>. <tables id="TABLE-US-00006" num="6"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 6</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP OFFER DHCP Options for</entry></row><row><entry>Host with a VoIP Application Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="70PT" align="left" /><colspec colname="3" colwidth="28PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="42PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 43</entry><entry>Traffic Descriptor ID</entry><entry>32-bit</entry><entry>4</entry><entry>10000033<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry /><entry>integer</entry></row><row><entry>Option 43</entry><entry>Network User Priority</entry><entry>8-bit</entry><entry>1</entry><entry>6</entry></row><row><entry>sub-option 2</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0042<tables id="TABLE-US-00007" num="7"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 7</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP REQUEST DHCP Options for</entry></row><row><entry>Host with a VoIP Application Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="56PT" align="left" /><colspec colname="3" colwidth="35PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="49PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 55</entry><entry>Parameter</entry><entry>Octets</entry><entry>3</entry><entry>55 01 43</entry></row><row><entry /><entry>Request List</entry><entry>(request</entry></row><row><entry /><entry /><entry>Option 43)</entry></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 61</entry><entry>Device Identifier</entry><entry>String</entry><entry>8</entry><entry>“BRCM1234”</entry></row><row><entry>Option 43</entry><entry>Traffic</entry><entry>32-bit</entry><entry>4</entry><entry>10000033<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry>Descriptor ID</entry><entry>integer</entry></row><row><entry>Option 43</entry><entry>Network User</entry><entry>8-bit</entry><entry>1</entry><entry>6</entry></row><row><entry>sub-option 2</entry><entry>Priority</entry><entry>integer</entry></row><row><entry>Option 43</entry><entry>Traffic Class</entry><entry>8-bit</entry><entry>1</entry><entry>0616</entry></row><row><entry>sub-option 3</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0043<tables id="TABLE-US-00008" num="8"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 8</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP ACK DHCP Options for Host</entry></row><row><entry>with a VoIP Application Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="70PT" align="left" /><colspec colname="3" colwidth="28PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="42PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 43</entry><entry>Traffic Descriptor ID</entry><entry>32-bit</entry><entry>4</entry><entry>10000033<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry /><entry>integer</entry></row><row><entry>Option 43</entry><entry>Network User Priority</entry><entry>8-bit</entry><entry>1</entry><entry>6</entry></row><row><entry>sub-option 2</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0044If the Host <b>206</b> already has an IP address from the DHCP Server <b>214</b> and has another application module that wants to obtain a Network User Priority, the DHCP Client <b>218</b> may be in the DHCP RENEW state and may begin the process with a DHCP REQUEST message. As an example, if the Application module is a Video Server Application module <b>224</b>, the DHCP sequence may be described in Tables 9 and 10. <tables id="TABLE-US-00009" num="9"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 9</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP REQUEST DHCP Options for Host with</entry></row><row><entry>a Video Server Application Module Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="56PT" align="left" /><colspec colname="3" colwidth="35PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="49PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 55</entry><entry>Parameter</entry><entry>Octets</entry><entry>3</entry><entry>55 01 43</entry></row><row><entry /><entry>Request List</entry><entry>(request</entry></row><row><entry /><entry /><entry>Option 43)</entry></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 61</entry><entry>Device Identifier</entry><entry>String</entry><entry>8</entry><entry>“BRCM1234”</entry></row><row><entry>Option 43</entry><entry>Traffic</entry><entry>32-bit</entry><entry>4</entry><entry>10000034<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry>Descriptor ID</entry><entry>integer</entry></row><row><entry>Option 43</entry><entry>Traffic Class</entry><entry>8-bit</entry><entry>1</entry><entry>0516</entry></row><row><entry>sub-option 3</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0045<tables id="TABLE-US-00010" num="10"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="217PT" align="center" /><thead><row><entry namest="1" nameend="1" align="center">TABLE 10</entry></row></thead><tbody valign="top"><row><entry /></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row><row><entry>Example DHCP ACK DHCP Options for Host with</entry></row><row><entry>a Video Server Application Module Request</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="49PT" align="left" /><colspec colname="2" colwidth="70PT" align="left" /><colspec colname="3" colwidth="28PT" align="left" /><colspec colname="4" colwidth="28PT" align="center" /><colspec colname="5" colwidth="42PT" align="left" /><tbody valign="top"><row><entry>DHCP Request</entry><entry /><entry /><entry>Length</entry><entry /></row><row><entry>Options</entry><entry>Name</entry><entry>Type</entry><entry>(octets)</entry><entry>Value</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row><row><entry>Option 60</entry><entry>Device Class</entry><entry>String</entry><entry>3</entry><entry>“NUP”</entry></row><row><entry>Option 43</entry><entry>Traffic Descriptor ID</entry><entry>32-bit</entry><entry>4</entry><entry>10000034<sub>16</sub></entry></row><row><entry>sub-option 1</entry><entry /><entry>integer</entry></row><row><entry>Option 43</entry><entry>Network User Priority</entry><entry>8-bit</entry><entry>1</entry><entry>5</entry></row><row><entry>sub-option 2</entry><entry /><entry>integer</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0046Similar sequences may be utilized for other applications such as the Print Server Application module <b>226</b> or the Web Browser Application module <b>222</b>. Once the Network User Priority value has been received in a DHCP ACK message, data packets associated with that Application module are transmitted with that Network User Priority. If a Network User Priority is not received, data from that application module is transmitted at Best Effort priority which is typically “0.”
0047To select the Network User Priority, the DHCP Server <b>214</b> may use one of several methods to evaluate the information in the Traffic Descriptor. For example, the DHCP Server <b>214</b> may only examine the Traffic Class and assign the priority based on that Traffic Class. It may use the lower three bits to select the priority. The DHCP Server <b>214</b> may look at the destination address or port to assign the priority. The DHCP Server <b>214</b> may consult a pre-configured database in Network User Priority Policy module <b>216</b>. Or the database (not shown) may be configured by the remote operator <b>208</b>.
0048As another example, the Configuration Server <b>204</b> may be in signal communication with an optional external input <b>250</b> via signal path <b>252</b>. The optional external input <b>250</b> may be a device external to the NUPAS <b>200</b>, a user, or the remote operator <b>208</b>. In general, the external input <b>250</b> may be an input that directs the Network User Priority Policy module <b>216</b> to assign a specific network user priority value to a given application module based on some, or all, of the information that may be contained in a traffic descriptor. An example of the optional external input <b>250</b> may include a mechanical switch located on the gateway device that assigns higher priorities to certain types of data. For example, the switch may selectively assign higher priority values for VoIP applications or Video Server applications than print server applications. The optional external input <b>250</b> may also be a device that monitors the type of data traffic on the network and in response directs the Network User Priority Policy module <b>216</b> to assign network user priority values to the Host <b>206</b> based on the type of data analyzed by the optional external input <b>250</b>. Similarly, the external input <b>250</b> may be a user located at the remote operator <b>208</b> that is capable of modifying the network user priority values produced by the Network User Priority Policy module <b>216</b>.
0049In <figref idref="DRAWINGS">FIG. 3</figref>, a signal flow diagram <b>300</b> illustrating an example of operation of the NUPAS <b>200</b>, in <figref idref="DRAWINGS">FIG. 2</figref>, is shown. The NUPAS <b>200</b> performs a process that assigns a Network User Priority in a heterogeneous network. The process begins when the Host <b>206</b> transmits a traffic descriptor using a DHCP DISCOVER message signal <b>302</b> to the Configuration Server <b>204</b>. The Configuration Server <b>204</b> receives the DHCP DISCOVER message signal and in response produces a candidate Traffic Descriptor in a DHCP OFFER message signal and transmits <b>304</b> the DHCP OFFER message signal to the Host <b>206</b>. The Host <b>206</b> receives the candidate Traffic Descriptor and in response transmits a second Traffic Descriptor to the Configuration Server <b>204</b> using a DHCP REQUEST message signal <b>306</b>. The Configuration Server <b>204</b> receives the DHCP REQUEST message signal and in response produces and transmits to the Host <b>206</b> a DHCP ACK signal <b>308</b> having traffic descriptor that includes a network user priority value. The host receives the DHCP ACK message signal and the process ends.
0050The example process may also include a procedure for exception and error recovery that may be optionally similar to procedures described in RFC 2131. As an example in the case of exception and error recovery, if the Host <b>206</b> transmits a traffic descriptor using a DHCP DISCOVER message signal <b>302</b> to the Configuration Server <b>204</b> but does not receive a DHCP OFFER message signal, the Host <b>206</b> may again transmit a traffic descriptor using an optional second DHCP DISCOVER message signal <b>310</b> to the Configuration Server <b>204</b>. If the Configuration Server <b>204</b> did not receive the original DHCP DISCOVER message signal <b>302</b>, the Host <b>206</b> may continue to transmit traffic descriptors using an optional DHCP DISCOVER message signals (not shown) to the Configuration Server <b>204</b> until the Configuration Server <b>204</b> receives the DHCP DISCOVER message signals and in response produces the candidate Traffic Descriptor in a DHCP OFFER message signal and transmits <b>304</b> the DHCP OFFER message signal to the Host <b>206</b>. If the Configuration Server <b>204</b> did receive the original DHCP DISCOVER message signal <b>302</b> but the Host <b>206</b> did not receive the candidate Traffic Descriptor in a DHCP OFFER message signal transmitted by the Configuration Server <b>204</b>, the Host <b>206</b> may continue to transmit traffic descriptors using optional DHCP DISCOVER message signals (not shown) to the Configuration Server <b>204</b> until the Configuration Server <b>204</b> receives the DHCP DISCOVER message signals and in response produces the candidate Traffic Descriptor in a DHCP OFFER message signal and transmits <b>304</b> the DHCP OFFER message signal to the Host <b>206</b>.
0051Similarly, if the Host <b>206</b> transmits the DHCP REQUEST message signal <b>306</b> to the Configuration Server <b>204</b> but does not receive a DHCP ACK signal <b>308</b> having a traffic descriptor that includes a network user priority value, the Host <b>206</b> may again transmit a traffic descriptor using an optional second DHCP REQUEST message signal <b>312</b> to the Configuration Server <b>204</b>. If the Configuration Server <b>204</b> did not receive the original DHCP REQUEST message signal <b>306</b>, the Host <b>206</b> may continue to transmit optional DHCP REQUEST message signals (not shown) to the Configuration Server <b>204</b> until the Configuration Server <b>204</b> receives the DHCP REQUEST message signals and in response produces the DHCP ACK signal <b>308</b> having traffic descriptor that includes a network user priority value to the Host <b>206</b>. If the Configuration Server <b>204</b> did receive the original DHCP REQUEST message signal <b>306</b> but the Host <b>206</b> did not receive the DHCP ACK signal <b>308</b> having traffic descriptor that includes a network user priority value transmitted by the Configuration Server <b>204</b>, the Host <b>206</b> may continue to transmit optional DHCP REQUEST message signals (not shown) to the Configuration Server <b>204</b> until the Configuration Server <b>204</b> receives the optional DHCP REQUEST message signals (not shown) and in response produces the DHCP ACK signal <b>308</b> having traffic descriptor that includes a network user priority value to the Host <b>206</b>.
0052Additionally, if the Configuration Server <b>204</b> transmits a DHCP OFFER message signal <b>304</b> to the Host <b>206</b> but does not receive a DHCP request message <b>306</b>, the Configuration Server <b>204</b> may transmit optional additional DHCP OFFER message signals (not shown) to the Host <b>206</b> until the Configuration Server <b>204</b> receives the DHCP REQUEST message signal <b>306</b>. The Configuration Server <b>204</b> then responds by transmitting the DHCP ACK message signal <b>308</b>.
0053Persons skilled in the art will understand and appreciate, that one or more processes, sub-processes, or process steps described may be performed by hardware and/or software. Additionally, the process described above may be implemented completely in software that would be executed within a microprocessor, general-purpose processor, combination of processors, digital signal processor (“DSP”), and/or application specific integrated circuit (“ASIC”). If the process is performed by software, the software may reside optionally in software memory (not shown) in the gateway <b>104</b>, first host <b>112</b>, second host <b>120</b>, remote operator <b>208</b>, an external processor (not shown) in signal communication with the NUPAS <b>200</b>, the optional external input <b>250</b>, or combination. The software in software memory may include an ordered listing of executable instructions for implementing logical functions (i.e., “logic” that may be implemented either in digital form such as digital circuitry or source code or in analog form such as analog circuitry or an analog source such an analog electrical, sound or video signal), and may selectively be embodied in any computer-readable (or signal-bearing) medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that may selectively fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this document, a “machine-readable medium”, “computer-readable medium” and/or “signal-bearing medium” is any means that may contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium may selectively be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples, but nonetheless a non-exhaustive list, of computer-readable media would include the following: an electrical connection (electronic) having one or more wires; a portable computer diskette (magnetic); a RAM (electronic); a read-only memory “ROM” (electronic); an erasable programmable read-only memory (EPROM or Flash memory) (electronic); an optical fiber (optical); and a portable compact disc read-only memory “CDROM” (optical). Note that the computer-readable medium may even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
0054It will be understood that the foregoing description of numerous implementations has been presented for purposes of illustration and description. It is not exhaustive and does not limit the claimed inventions to the precise forms disclosed. Modifications and variations are possible in light of the above description or may be acquired from practicing the invention. The claims and their equivalents define the scope of the invention.
Contents5
4 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2011194507A1 | Cited by | United States of America | Pre-grant |
| US10841273B2 | Cited by | United States of America | Applicant |
| US10484515B2 | Cited by | United States of America | Applicant |
| US8856296B2 | Cited by | United States of America | Search report |
| WO2013022481A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US10044815B2 | Cited by | United States of America | Search report |
| US10044816B2 | Cited by | United States of America | Search report |
| US8732814B2 | Cited by | United States of America | Search report |
| US9215206B2 | Cited by | United States of America | Applicant |
| US7668507B2 | Cited by | United States of America | Search report |
| US10389681B2 | Cited by | United States of America | Search report |
| US10764238B2 | Cited by | United States of America | Applicant |
| US2015052522A1 | Cited by | United States of America | Pre-grant |
| US2013047249A1 | Cited by | United States of America | Pre-grant |
| US7656873B2 | Cited by | United States of America | Search report |
| US2009003330A1 | Cited by | United States of America | Pre-grant |
| US9952885B2 | Cited by | United States of America | Search report |
| US2011142017A1 | Cited by | United States of America | Pre-grant |
| US9361443B2 | Cited by | United States of America | Applicant |
| US12261819B2 | Cited by | United States of America | Search report |
| US2021006535A1 | Cited by | United States of America | Search report |
| US9887960B2 | Cited by | United States of America | Applicant |
| US2017155618A1 | Cited by | United States of America | Pre-grant |
| US11695730B2 | Cited by | United States of America | Applicant |
| US7817642B2 | Cited by | United States of America | Search report |
| US10819676B1 | Cited by | United States of America | Search report |
| US11522830B2 | Cited by | United States of America | Search report |
| US7644205B1 | Cited by | United States of America | Search report |
| US2009010263A1 | Cited by | United States of America | Pre-grant |
| US2017155619A1 | Cited by | United States of America | Pre-grant |
| US8752143B2 | Cited by | United States of America | Applicant |
| US9001748B2 | Cited by | United States of America | Search report |
| US2007293193A1 | Cited by | United States of America | Pre-grant |
| US2021344640A1 | Cited by | United States of America | Search report |
| US2002075875A1 | Cites | United States of America | Pre-grant |
| US2005013280A1 | Cites | United States of America | Pre-grant |
| US2005021777A1 | Cites | United States of America | Pre-grant |
| US2006223222A1 | Cites | United States of America | Pre-grant |
| US2006577628A1 | Cites | United States of America | Pre-grant |
8 members in 5 offices; this record represents the family
Priority claims6
| Document | Office | Kind | Date |
|---|---|---|---|
| 59347405 | United States of America | P | |
| 59347405 | United States of America | P | |
| 33160606 | United States of America | A | |
| 60593474 | – | – | – |
| US20050593474P | – | – | – |
| US20060331606 | – | – | – |
Members8
| Document | Office | Kind | |
|---|---|---|---|
| US2006161663A1 | United States of America | A1 | |
| WO2006078929A1 | World Intellectual Property Organization (WIPO) | A1 | |
| CN101019387A | China | A | |
| EP1842346A1 | European Patent Office (EPO) | A1 | |
| EP1842346B1 | European Patent Office (EPO) | B1 | |
| DE602006017510D1 | Germany | D1 | |
| CN101019387B | China | B | |
| US9628393B2 | United States of America | B2 |
118 transactions on the USPTO file
Allowed after 3 non-final rejections, 3 final rejections, 2 RCEs and 1 appeal.
- Non-final rejections
- 3
- Final rejections
- 3
- RCEs
- 2
- Appeals
- 1
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Payment of Maintenance Fee, 8th Year, Large EntityM1552 | M1552 | |
| Payment of Maintenance Fee, 4th Year, Large EntityM1551 | M1551 | |
| Post Issue Communication - Certificate of CorrectionN423 | N423 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Response to Reasons for AllowanceREAS | REAS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Email NotificationEML_NTR | EML_NTR | |
| Printer Rush- No mailingTCPB | TCPB | |
| Mailing Corrected Notice of AllowabilityMCNOA | MCNOA | |
| Examiner's Amendment CommunicationEX.A | EX.A | |
| Corrected Notice of AllowabilityCNOA | CNOA | |
| Pubs Case Remand to TCPUBTC | PUBTC | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail BPAI Decision on Appeal - ReversedMAPDR | MAPDR | |
| BPAI Decision - Examiner ReversedAPDR | APDR | |
| Email NotificationEML_NTR | EML_NTR | |
| Docketing Notice Mailed to AppellantAP_DK_M | AP_DK_M | |
| Assignment of Appeal NumberAPAS | APAS | |
| Appeal Awaiting BPAI DocketingAPWD | APWD | |
| Appeal ready for BPAI reviewARBP | ARBP | |
| Reply Brief FiledAPRB | APRB | |
| Appeal ready for BPAI docketingTCWD | TCWD | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Miscellaneous Communication to ApplicantMM327 | MM327 | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Miscellaneous Communication to Applicant - No Action CountM327 | M327 | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Return of Undocketed appeal to the TCTCRD | TCRD | |
| Exam. Ans. Review CompletePACC | PACC | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Examiner's AnswerMAPEA | MAPEA | |
| Examiner's Answer to Appeal BriefAPEA | APEA | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Appeal Brief Review CompleteAPBR | APBR | |
| Appeal Brief FiledAP.B | AP.B | |
| Mail Appeals conf. Proceed to BPAIMAPCP | MAPCP | |
| Pre-Appeals Conference Decision - Proceed to BPAIAPCP | APCP | |
| track 1 OFFT1OFF | T1OFF | |
| Request for Pre-Appeal Conference FiledAP.C | AP.C | |
| Notice of Appeal FiledN/AP | N/AP | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Mail Interview Summary - Applicant Initiated - TelephonicMEXAT | MEXAT | |
| Response after Non-Final ActionA... | A... | |
| Interview Summary- Applicant InitiatedEXIA | EXIA | |
| Interview Summary - Applicant Initiated - TelephonicEXAT | EXAT | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Examiner Interview Summary (PTOL - 413)MEXIN | MEXIN | |
| Examiner Interview Summary Record (PTOL - 413)EXIN | EXIN | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Examiner Interview Summary (PTOL - 413)MEXIN | MEXIN | |
| Examiner Interview Summary Record (PTOL - 413)EXIN | EXIN | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Request for Continued Examination (RCE)RCEX | RCEX |
11 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Maintenance fee paymentMAFP | MAFP | |
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Certificate of correctionCC | CC | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- 20060161663
- Publication, DOCDB
- 2006161663
- Publication, EPODOC
- US2006161663
- Application
- 11331606
- Application, DOCDB
- 33160606
- Application, EPODOC
- US20060331606
Titles
- English
- Network user priority assignment system
Patent term adjustment
- A delay
- +1,684 daysthe office missed an examination deadline
- B delay
- +142 dayspendency past three years
- C delay
- +444 daysinterference, secrecy order or appeal
- Overlap
- −33 daysdelays counted once
- Applicant delay
- −52 days
- Net adjustment
- 2,185 days
Classification
- CPC, 7
- H04L47/24
- H04L47/15
- H04L47/788
- H04L47/803
- H04L47/805
- H04L47/824
- H04L47/70
- IPC, 2
- G06F15 16
- H04L47 80
- USPC, 1
- 709227000