Provisioning and redundancy for RFID middleware servers

Abstract
The present invention provides for the provisioning and redundancy of RFID middleware servers. Middleware servers can be automatically provisioned and RFID device/middleware server associations can be automatically updated. Some implementations of the invention provide for automatic detection of middleware server malfunctions. Some such implementations provide for automated provisioning and automated updating of RFID device/middleware server associations, whether a middleware server is automatically brought online or is manually replaced. Changes and reassignments of the RFID device populations may be accommodated.
Description
BACKGROUND OF THE INVENTION

1. Field of the Invention


The present invention relates to provisioning and redundancy for devices in an RFID network.


2. Description of the Related Art


Bar codes containing a Universal Product Code (“UPC”) have become a nearly ubiquitous feature of modern life. The vast majority of products, as well as packages, containers and other elements in the stream of commerce now bear a bar code to allow for convenient tracking and inventory control.


However, bar codes have some drawbacks. Bar codes are “read only,” in that they are merely a printed set of machine-readable parallel bars that cannot be updated. Bar codes cannot transmit information, but instead must be read by a scanner. Bar codes must be scanned within a relatively short distance and must be properly oriented for the bar code to be read.


“Smart labels,” generally implemented by RFID tags, have been developed in an effort to address the shortcomings of bar codes and add greater functionality. RFID tags have been used to keep track of items such as airline baggage, items of clothing in a retail environment, cows and highway tolls. As shown in FIG. 1, an RFID tag 100 includes microprocessor 105 and antenna 110. In this example, RFID tag 100 is powered by a magnetic field 145 generated by an RFID reader 125. The tag's antenna 110 picks up the magnetic signal 145. RFID tag 100 modulates the signal 145 according to information coded in the tag and transmits the modulated signal 155 to the RFID reader 125.


Most RFID tags use one of the Electronic Product Code (“EPC” or “ePC”) formats for encoding information. EPC codes may be formed in various lengths (common formats are 64, 96 and 128 bits) and have various types of defined fields, which allow for identification of, e.g., individual products as well as associated information. These formats are defined in various documents in the public domain. One such document is EPC Tag Data Standards Version 1.1 Rev 1.24 (EPCglobal® 2004), which is hereby incorporated by reference for all purposes.


One exemplary RFID tag format is shown in FIG. 1. Here, EPC 120 includes header 130, EPC Manager field 140, Object class field 150 and serial number field 160. EPC Manager field 140 contains manufacturer information. Object class field 150 includes a product's stock-keeping unit (“SKU”) number. Serial number field 160 is a 40-bit field that can uniquely identify the specific instance of an individual product i.e., not just a make or model, but also down to a specific “serial number” of a make and model.


In theory, RFID tags and associated RFID devices (such as RFID readers and printers) could form part of a network for tracking a product (or a group of products) and its history. However, various difficulties have prevented this theory from being realized. One problem that has required considerable time and energy from RF engineers is the development of lower-cost RFID tags with acceptable performance levels. Inductively-coupled RFID tags have acceptable performance levels. These tags include a microprocessor, a metal coil and glass or polymer encapsulating material. Unfortunately, the materials used in inductively-coupled RFID tags make them too expensive for widespread use.


Capacitively-coupled RFID tags use conductive ink instead of the metal coil used in inductive RFID tags. The ink is printed on a paper label by an RFID printer, creating a lower-cost, disposable RFID tag. However, conventional capacitively-coupled RFID tags have a very limited range. In recent years, RF engineers have been striving to extend the range of capacitively-coupled RFID tags.


In part because of the significant efforts that have been expended in solving the foregoing problems, prior art systems and methods for networking RFID devices are rather primitive. RFID devices have only recently been deployed with network interfaces. Device provisioning for prior art RFID devices is not automatic, but instead requires a time-consuming process for configuring each individual device.


Prior art RFID devices and systems are not suitable for large-scale deployment of networks of RFID devices.


Moreover, many RFID devices and related network devices, such as switches and middleware servers, are deployed in a hostile industrial environment (such as a warehouse or factory) by relatively unskilled “IT” personnel. If a device deployed in one location fails, for example, it may simply be removed and replaced by a new device or a device that was deployed in another location.


Currently, RFID middleware is manually configured. RFID readers are statically paired to RFID middleware under current EPCG1oba1 standards. Moreover, RFID middleware has little to no redundancy. If there is a failure of a middleware server, there is currently no systematic method of determining the failure. Therefore, current methods of failure detection involve expensive IT resources. Worse yet, because there is a one-to-one mapping between middleware servers and groups of RFID readers, if a middleware server goes down the associated readers all go down.


If the RFID device population increases, there is currently no automatic way of provisioning RFID middleware to accommodate the increase. Similarly, if the RFID device population requires middleware assignment change, there is currently no automatic way of changing RFID middleware provisioning. It would be desirable to address at least some of these shortcomings of the prior art.


SUMMARY OF THE INVENTION

The present invention provides for the provisioning and redundancy of RFID middleware servers. Middleware servers can be automatically provisioned and RFID device/middleware server associations can be automatically updated. Some implementations of the invention provide for automatic detection of middleware server malfunctions. Some such implementations provide for automated provisioning and automated updating of RFID device/middleware server associations, whether a middleware server is automatically brought online or is manually replaced. Changes and reassignments of the RFID device populations may be accommodated.


According to some implementations of the invention, a combination of EPC code information and existing networking standards form the basis of identifying and provisioning methods. For implementations using the Dynamic Host Configuration Protocol (“DHCP”), DHCP Options may be used to pass identification, location and provisioning information. For example, selected DHCP Options may be used to indicate a device type, to provide an EPC code uniquely identifying the particular device, indicating the company name using the device and indicating how the device is being used.


In some implementations of the invention, location and ID information included in a DHCPDISCOVER request can be used to determine appropriate configurations for networked devices. Some such implementations of the invention use DHCPINFORM (RFC 2131) and DHCP Options (RFCs 2132 and 3004) to pass current provisioning and personality information. Moreover, some such implementations of the invention use the DHCPFORCERENEW command (RFC 3203) from a DHCP server to initiate an update or to complete reconfiguration, as Required. The DHCP server may be part of a central server or “metaserver.”


Some aspects of the invention provide a provisioning method. This method includes the following steps: receiving a DHCPDISCOVER request from an RFID middleware server; determining, based at least in part upon the DHCPDISCOVER request, appropriate provisioning data for the RFID middleware server; and providing the RFID middleware server with at least some of the appropriate provisioning data.


In some implementations, when it is determined that there has been a change in at least one of the RFID middleware server ID and the location information, a complete set of provisioning data is provided.


The determining step may involve determining at least one of (a) whether the RFID middleware server has been moved; (b) whether the RFID middleware server has been replaced; and (c) whether the RFID middleware server is requesting a complete configuration. The determining step may involve inspecting DHCP Option data in the DHCPDISCOVER request.


For example, the determining step may include these steps: determining a first ID and first location information from the DHCPDISCOVER request; and comparing the first ID and first location information with stored second ID and second location information for a known RFID middleware server. The first and second ID may be, for example, an EPC code and a MAC address. The first and second location information may be a switch identifier, a switch port identifier, DHCP option information and/or DHCP header information.


Alternative network management methods are provided by the present invention. One such method includes these steps: determining a failure of a first RFID middleware server; disabling a first switch port of a switch in communication with the first RFID middleware server; allocating RFID devices formerly associated with the first RFID middleware server to a second RFID middleware server; enabling a second switch port in communication with the second RFID middleware server; and automatically provisioning the second RFID middleware server.


Preferably, at least one of the determining, disabling, allocating and enabling steps are performed automatically. The determining step may involve receiving a change-of-state message from the switch and/or a failure determination by a monitor.


The change-of-state message could be, for example, an SNMP trap and/or an indication of a lack of heartbeat.


Some embodiments of the invention provide a network device that includes the following elements: at least one memory for storing middleware server configuration, ID and location information, and for storing associations of middleware servers and RFID devices; a port configured for communication with an


RFID network; and at least one logic device. The RFID network includes an active middleware server in communication with a switch via a first switch port, a standby middleware server in communication with the switch via a second switch port and a plurality of RFID devices associated with and in communication with the active middleware server.


At least one logic device is configured to perform the following steps: determine a failure of the first middleware server; instruct the switch to disable the first port; re-assign at least a portion of the plurality of RFID devices to the standby middleware server; instruct the switch to enable the second port; and provision the standby middleware server.


Other implementations of the invention provide a network management method that includes the following steps: inspecting a DHCPDISCOVER request of an RFID device; provisioning the RFID device based, at least in part, upon location information in the DHCPDISCOVER request; and determining whether a middleware server associated with the RFID device supports DHCP ForceRenew. The middleware server can be provisioned via DHCP ForceRenew, when feasible. Otherwise, the middleware server may be reprovisioned, e.g., during a next DHCP lease renewal.


The methods of the present invention may be implemented, at least in part, by hardware and/or software. For example, some embodiments of the invention provide computer programs embodied in machine-readable media. The computer programs include instructions for controlling one or more devices to perform the methods described herein.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a diagram illustrating an RFID tag. FIG. 2 illustrates an exemplary RFID network according to the present invention.



FIGS. 3A and 3B are flow charts that outline methods 300 and 305 of the present invention.



FIGS. 3C-3F are simplified DNS tables that correspond with various stages of methods 300 and 305.



FIG. 4 is a flow chart that outlines method 400 of the present invention.



FIGS. 5A -5C are flow charts that outline methods of the present invention.



FIG. 6 illustrates another exemplary RFID network according to the present invention.



FIG. 7 is a block diagram of an exemplary RFID reader that may be configured to perform some methods of the present invention.



FIG. 8 is a block diagram of an exemplary RFID printer that may be configured to perform some methods of the present invention.



FIG. 9 is a block diagram of an exemplary RFID system that may be configured to perform some methods of the present invention.



FIG. 10 illustrates an example of a network device that may be configured to implement some methods of the present invention.





DETAILED DESCRIPTION OF THE INVENTION

In this application, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be obvious, however, to one skilled in the art, that the present invention may be practiced without some or all of these specific details. In other instances, well known process steps have not been described in detail in order not to obscure the present invention.


Although the present invention involves methods and devices for locating, identifying and provisioning devices in an RFID network, many aspects of the present invention can be applied to identifying and provisioning devices, including wireless and wired devices, in other types of networks. For example, the present invention may also be used for locating, identifying and provisioning manufacturing devices, networked sensor devices, IPphones, portable digital assistants and related network devices, such as servers and switches. Similarly, although much of the discussion herein applies to implementations using the DHCP protocol, the present invention is not protocol-specific and may be used, for example, in implementations using UPnP, 802.1ab or similar discovery protocols. Likewise, while the implementations described herein refer to exemplary DHCP Options, other DHCP Options and the DHCP header may advantageously be used to implement the present invention.


The methods and devices of the present invention have very broad utility, both in the public and private sectors. Any enterprise needs to keep track of how its equipment is being deployed, whether that equipment is used for commercial purposes, for military purposes, etc. RFID devices that are networked according to the present invention can provide necessary information for allowing enterprises to track equipment and products (or groups of products). The information that will be provided by RFID devices that are networked according to the present invention will be of great benefit for enterprise resource planning, including the planning of manufacturing, distribution, sales and marketing.



FIG. 2 illustrates a portion of a simplified RFID network 200 that will be used to describe some implementations of the invention. The details of network 200 are purely illustrative. Application server 205 operates according to instructions from application software 210 that resides in a memory device of, or accessible to, application server 205. Application server 205 is in communication with middleware servers 215 and 220 of site 225, via a virtual local area network (“VLAN”) 230 in this example. In this example, at least one of middleware servers 270 and 280 is a standby middleware server, the use of which will be described below.


Site 225, which is “Warehouse 14” in this example, includes numerous locations at which RFID devices are deployed. One such location is door 235, where a plurality of RFID devices 240 are positioned.


RFID devices 240 are in communication with metaserver 245 via VLAN 242. A metaserver will sometimes be referred to herein as a “central server” or the like. As will be discussed in more detail below, in some preferred implementations metaserver 245 includes servers and associated devices that provide various functions, including those of DHCP server 263, assigner 253 and registrar 253. Accordingly, some of the functionality provided by the registrar and assigner as described in the Cross-Referenced Applications will be performed by metaserver 245. In some implementations, metaserver 245 is a single device and in other implementations metaserver 245 is an association of separate physical devices. Metaserver 245 may also include a load balancer. Middleware servers 215, 220, 270 and 280 can communicate with metaserver 245 and registrar 260 via VLAN 250.



FIG. 3A is a flow chart that provides an overview of method 300 according to the present invention. Those of skill in the art will appreciate that the steps of the methods discussed herein, including method 300, need not be performed (and in some implementations are not performed) in the order shown. Moreover, some implementations of the methods discussed herein may include more or fewer steps than those shown, e.g., in FIG. 3A.


In step 301, RFID devices in a network boot up and are provisioned. The functions a device performs, as well as the unique settings to perform those functions, will be referred to herein as the device “personality.” As used herein, “provisioning” a device can include, but is not limited to, providing network configuration, providing personality configuration, incorporating the device into a network database and enabling the device with software. The RFID devices may be dynamically provisioned, for example, according to the methods described in the Cross-Referenced Applications. As described in the Cross-Referenced Applications, the RFID devices can be provided with the network address of DHCP server (e.g., DHCP server 263 of metaserver 245) and instructions for sending a request for a middleware server to the DHCP server.


The DHCP protocol is used in some preferred implementations of the present invention because it offers various convenient features. For example, the DHCP protocol allows pools or “scopes” of TCP/IP addresses to be defined. A DHCP server can temporarily allocate or “lease” these TCP/IP addresses to host devices. An IP address that is not used for the duration of the lease is returned to the pool of unallocated IP addresses. In addition, the DHCP server will provide all related configuration settings, such as the default router, Domain Name Service (“DNS”) servers, subnet mask, etc., that are required for the proper functioning of TCP/IP.


For implementations using the DHCP protocol, DHCP Options may be used to pass provisioning information. The DHCP protocol is defined in RFC 2131 and


DHCP Options are set forth in, for example, RFCs 2132, 3004 and 3046. RFCs 2131, 2132, 3004 and 3046 are hereby incorporated by reference for all purposes. In some preferred implementations, an EPC corresponding to an RFID device is put inside a DHCP request sent from the RFID device to a DHCP server. The EPC uniquely identifies the RFID device.


Some implementations employ Domain Name Service (“DNS”) and dynamic DNS (“DDNS”) to allow yet easier identification of RFID devices. RFC 1034 and RFC 1035 are hereby incorporated by reference and for all purposes.



FIG. 3C illustrates one format for DNS entries in a DNS table 350 for RFID devices 240. In this example, DNS Table 350 is stored in 260, but DNS Table 350 could be stored elsewhere in network 200. In DNS table 350, the DNS entries have the following format:


<Device>.<Location>.<Site>.RFID.<Domain>

Accordingly, entry 355 for RFID device A of FIG. 2 includes domain name “A.Door235.W14.RFID.cisco.com” and the associated IP address. Corresponding entries 360 and 365 are formed for RFID devices B and C. One of skill in the art will readily understand that this format is merely one example and that many other suitable formats could be used for this purpose.


Referring to FIG. 3B, in process 305 middleware servers in the network boot up and are provisioned. Process 305 is an automated process; a manual process is described elsewhere herein.


In steps 302 and 304, a middleware server (e.g., middleware server 220 of FIG. 2) initializes and transmits a DHCPDISCOVER request to a DHCP server (here,


DHCP server 263 of metaserver 245) that includes ID information and location information. The ID information and location information may be included in any manner described in the Cross-Referenced Applications with regard to the provisioning of RFID devices. In this example, the ID information includes an EPC code for the middleware server in Option 61 of the DHCPDISCOVER request. However, the ID information could include other types of ID information, such as MAC address information.


Similarly, the location information could take various forms and could be included in the DHCPDISCOVER request in various ways, e.g., including the location information in one or more DHCP Options and/or the header. Here, a switch in communication with the middleware server inserts location information (in the form of switch and port identifiers) in Option 82. (Step 304.)


In step 306, DHCP server 263 (or another component of metaserver 245) inspects the DHCPDISCOVER request to determine (in step 308) whether the middleware server has been moved or replaced. In this example, step 308 involves comparing the middleware ID and location information with stored middleware server ID/location associations. If a known middleware ID is coming from a new location, it is presumed that the middleware server has been moved. If a new middleware server appears in a location previously associated with another middleware server, it is presumed that a middleware server has been replaced. If the middleware server has been moved or replaced, a complete provisioning process is performed. (Step 310.) If the middleware server has not been moved or replaced, a partial provisioning process is performed, e.g., according to a predetermined set of parameters that have been selected by the responsible IT personnel. In one such example, it has been determined that the middleware server will simply be given an IP address and a domain name. (Step 312.)


As part of the provisioning process, middleware servers 215 and 220 are provided with network addresses, including domain names and IP addresses. Accordingly, entries 370 and 375 are added to DNS table 350, as shown in FIG. 3D.


Returning again to FIG. 3A, a site DNS is created for Warehouse 14 in step 315. This entry could be created by application server 205, by another device or manually. Entry 380 of FIG. 3E illustrates such a DNS entry, in the format <site>.RFID.<domain>. In step 320, RFID devices request middleware servers. Here, the RFID devices transmit requests for middleware servers to assigner 253 of metaserver 245. Assigner 253 determines that RFID devices A and C will be associated with middleware server 220 and RFID device B will be associated with middleware server 215 (step 325).


In step 330, the middleware servers update the DNS entry for each RFID device with identification information for the middleware server. In this example, the DNS entry for each RFID device is updated with a TXT record that states the domain name of the associated middleware server.


Accordingly, TXT record 385 (“TXT mw-srv-1.W14.RFID.cisco.com”) is added to DNS entry 355 for RFID device A. (See FIG. 3F.) Similarly, TXT record 390 (“TXT mw-srv-2.W14.RFID.cisco.com”) is added to DNS entry 360 for RFID device B and TXT record 395 (“TXT mw-srv-1.W14.RFID.cisco.com”) is added to DNS entry 365 for RFID device C. Preferably, the same procedure applies if an


RFID device is added/replaced after other RFID devices in the network have been initialized, provisioned, etc., as described above.


Although assigner 253 is included in metaserver 245 in this example, assigner 253 could be implemented in various ways, e.g., as a stand-alone device, as hardware and/or software incorporated into a module of another network device, etc. The network device could be, for example, a switch (e.g., a Catalyst 6500 switch provided by Cisco) or a middleware server.


In this example, assigner 253 is a type of load balancer. However, assigner 253 preferably does not re-allocate RFID devices to other middleware servers as frequently as a normal TCP load balancer would re-route network traffic. Instead, assigner 253 preferably re-allocates RFID devices to other middleware servers only when certain conditions exist, e.g., when devices boot up, during a maintenance cycle, when middleware servers are added to the network, etc. Otherwise, the associations between middleware servers and RFID devices would frequently change and the new associations would need to be communicated to other parts of network 200 (e.g., to application server 205).


According to some implementations, the protocol used for the query/response between the RFID device and the metaserver differs from the protocol used in routine communications on the RFID network. In some such implementations of the assigner described herein, the protocol is one used by conventional TCP load balancers.



FIG. 4 is a flowchart that outlines method 400 for obtaining RFID data from a location according to some implementations of the present invention. In step 405, application software 210 requests RFID data from a location. In this example, the location is location 235, which is a door of Warehouse 14. The DNS entry 380 for this site is resolved (step 410) and an application request is made for the IP address for W14, Door 235 (step 415).


In response, application server 205 queries for the network addresses of all RFID devices deployed at door 235, e.g., “*.Door235.W14.RFID.cisco.com.” (Step 420.) (The asterisk here signifies a search for all entries that match or have entries related to Door 235.) Network addresses for these RFID devices (including the TXT records that indicate associated middleware servers) are returned to application server 205 (step 425). Accordingly, the application server now knows the middleware server associated with each RFID device deployed at door 235 of Warehouse 14. The application server can then poll these middleware servers (step 430) in order to obtain RFID data for door 235 and complete the application request. (Step 435.)


Some methods of the present invention provide for redundancy of middleware servers and dynamic re-assignment of RFID devices from an unavailable middleware server to one or more available middleware servers. The flow charts of FIGS. 5A and 5B outline two such methods according to the present invention.


Method 500 of FIG. 5A outlines an automated process according to some implementations of the invention. Method 500 begins after RFID devices and associated middleware servers have previously been initialized and provisioned, e.g., according to the present invention, and have been “up and running ” For example, such devices may be in the condition that would exist upon completion of step 330 of method 300.


In step 501, an assigned middleware server (in this example, middleware server 220) begins to malfunction and in step 503, the malfunctioning condition is detected. For example, step 503 may involve the detection of a change-of-state (“COS”) message such as a Simple Network Management Protocol (“SNMP”) trap by a network device (e.g., a switch) in communication with the malfunctioning middleware server. Chapter 56 of the Internetworking Technologies Handbook, entitled “Simple Network Management Protocol” (Cisco Systems 2005) is hereby incorporated by reference.


Alternatively, step 503 could manifest in a variety of other ways. For example, step 503 may involve a monitor's detection of a failure condition (e.g., the absence of a heartbeat) and a corresponding message. In another example, before taking a middleware server off line for maintenance and/or a software upgrade, a network administrator could send a signal indicating that the middleware server is no longer available. However step 503 is manifested, the metaserver receives an indication that the middleware server is malfunctioning.


In response, communications with the first middleware server are interrupted in step 505. For example, step 505 may involve the disabling of a switch port with which the first middleware server was in communication, e.g., in response to a command from the metaserver.


In step 507, the metaserver allocates RFID devices formerly associated with the first middleware server to a backup middleware server (e.g., middleware server 270) and the corresponding DNS entries are updated to indicate the new middleware server/RFID device associations (step 510). In alternative implementations, the RFID devices are dynamically re-assigned to other active middleware servers, e.g., as described in the Cross-Referenced Applications (see, e.g., U.S. patent application No. 11/129,709, FIG. 5 and the corresponding discussion). This procedure could also be performed via an IP Force Renew to the RFID device.


Other components of network 200 should be made aware of the new RFID device/middleware server associations. For example, the cached DNS resolves of application server 205 corresponding to the prior RFID device/middleware server associations need to be purged and the caches need to be refreshed with the new RFID device/middleware server associations (step 512). In some implementations, when an application server can no longer communicate with a middleware server and/or an RFID device, the application server will make a query for the device and use the results of this query to refresh its cache of DNS entries.


Alternatively (or additionally), purging and refreshing of cashed DNS resolves is controlled by a time to live (“TTL”) indication received from a middleware server with the RFID device/middleware server associations. According to some such alternative implementations, after the TTL has run the application server makes a query for RFID device/middleware server associations and uses the results of this query to refresh its cache of DNS entries.


In step 515, the backup middleware server initializes and is provisioned, preferably in an automated fashion as described elsewhere herein. The RFID network may then resume normal operation. (Step 518.)


If middleware server 220 is later brought back on line, it could be initialized, provisioned, etc. (e.g., as described above). In some implementations, middleware server 220 notifies metaserver 245 that it is back online and metaserver 245 updates a table/database of available middleware servers for site 225. RFID devices could subsequently be assigned to middleware server 220, e.g., as described above.



FIG. 5B outlines an alternative method 525 of the invention, which is a partially manual and partially automated process. In step 527, a first middleware server malfunctions and in step 530 the malfunction is detected. In this example, an


SNMP trap or the lack of a heartbeat alerts a monitoring station, which may or may not include human operators.


In step 532, the monitoring station contacts a technician, who disconnects the first middleware server and connects a backup middleware server, preferably in the same jack (e.g., an Ethernet jack) to which the first middleware server was connected. (Step 535.) In step 538, the backup middleware server initializes and transmits a DHCPDISCOVER request (including ID and location information) to the metaserver. For example, the ID could be a MAC address and/or an EPC code. The location information could be, e.g., switch and port ID information that has been inserted in DHCP Option 82 by the switch.


The metaserver inspects the DHCPDISCOVER request and determines that a new middleware server has been connected (here, by detecting a mismatch between the location and the middleware server ID). (Step 540.) The metaserver then provisions the new middleware server. (Step 542.) Preferably, the new middleware server is fully provisioned, so that the technician does not need to make potentially erroneous decisions regarding what configurations, etc., need to be changed.


The RFID devices formerly associated with the first middleware server are re-allocated to the new middleware server and the corresponding DNS entries are modified. (Step 545.) In step 547, cached DNS resolves are purged and refreshed to indicate the new middleware server/RFID device associations and normal RFID network operation resumes. (Step 550.)



FIG. 5C outlines method 555 of the invention, which is particularly useful for accommodating RFID device population changes. In step 560, a new RFID device is connected to a switch of an RFID network and initializes. Location information and device ID information are included in a DHCPDISCOVER request (step 565) and the device is provisioned as described elsewhere herein (e.g., by a DHCP server associated with the metaserver). (Step 570.) The metaserver updates the corresponding RFID device/middleware server mappings. (Step 575.)


The middleware server will then be provisioned according to its desired functionality. In step 580, the central server determines whether the middleware server supports DHCP ForceRenew. If so, the central server immediately initiates a provisioning cycle via a ForceRenew command. (Step 585.) If the middleware server does not support DHCP ForceRenew, the middleware server is reprovisioned as soon as practicable. For example, the next DHCP lease renewal could spawn a reprovisioning process. (Step 590.)


The methods and devices of the present invention have very broad utility, both in the public and private sectors. Any enterprise needs to keep track of how its equipment is being deployed, whether that equipment is used for commercial purposes, for military purposes, etc. RFID devices that are networked according to the present invention can provide necessary information for allowing enterprises to track equipment and products (or groups of products). The information that will be provided by RFID devices that are networked according to the present invention will be of great benefit for enterprise resource planning, including the planning of manufacturing, distribution, sales and marketing.


Using the devices and methods of the present invention, RFID tags and associated RFID devices (such as RFID readers and printers) can form part of a network for tracking a product and its history. For example, instead of waiting in a checkout line to purchase selected products, a shopper who wishes to purchase products bearing RFID tags can transport the products through a door that has multiple RFID readers deployed nearby. The readers may be virtualized and data from the virtualized readers may be obtained by application software. For example, the application software may obtain EPC information regarding the products and can use this information to update a store inventory, cause a financial account to be debited, update manufacturers', distributors' and retailers' product sales databases, etc.


Read/write RFID tags can capture information regarding the history of products or groups of products, e.g., temperature and other environmental changes, stresses, accelerations and/or vibrations that have acted upon the product. It will be particularly useful to record such information for products that are relatively more subject to spoilage or other damage, such as perishable foods and fragile items. By using the methods of the present invention, this information will be used to update databases maintained by various entities (e.g., manufacturers, wholesalers, retailers, transportation companies and financial institutions). The information will be used not only to resolve disputes (for example, regarding responsibility for product damage) but also to increase customer satisfaction, to avoid health risks, etc.


Another example of an RFID network is depicted in FIG. 6. Here, RFID network 600 includes warehouse 601, factory 605, retail outlet 610, financial institution 615 and headquarters 620. As will be appreciated by those of skill in the art, network 600 could include many other elements and/or multiple instances of the elements shown in FIG. 6. For example, network 600 could include a plurality of warehouses, factories, etc.


In this illustration, products 627 are being delivered to warehouse 601 by truck 675. Products 627, which already include RFID tags, are delivered through door 625. In this example, RFID reader 652 is connected to port 662 of switch 660.


Here, active middleware server 607 and standby middleware server 609 are connected to ports 664 and 668, respectively. Middleware server 607 provides data collection and filtering services, such as taking out redundancies, searching for particular RFID tag reads, etc. Only a portion of the data received by a middleware server is routinely made available to higher-level applications. Accordingly, middleware server 607 filters the RFID reads from RFID readers in warehouse 601 and transmits only selected reads to headquarters 620. In this example, headquarters 620 includes storage devices 665, workstations 667, metaserver 670 and application server 677.


Here, switches 630 and 660 are connected to the rest of RFID network 600 via gateway 650 and network 625. Network 625 could be any convenient network, but in this example network 625 is the Internet. RFID reader 652 reads each product that passes through door 625 and transmits the EPC code corresponding to each product on RFID network 600.


RFID tags may be used for different levels of a product distribution system.


For example, there may be an RFID tag for a pallet of cases, an RFID tag for each case in the pallet and an RFID tag for each product. Accordingly, after products 627 enter warehouse 601, they are assembled into cases 646. RFID printer 656 makes an RFID tag for each of cases 646. In this example, RFID printer 656 is connected to port 666 of switch 660. RFID printer 656 could operate under the control of PC 647 in warehouse 601, one of PCs 667 in headquarters 620, or some other device.


RFID reader 624, which is connected to port 614 of switch 630, reads the EPC code of each case 646 and product 627 on conveyor belt 644 and transmits this information to middleware server 607. Similarly, RFID reader 626, which is connected to port 616, reads the EPC code of each case 646 and product 627 that exits door 604 and transmits this information to middleware server 607. Cases 646 are loaded onto truck 685 for distribution to another part of the product chain, e.g., to retail outlet 610.


Each of the RFID devices in network 600 preferably has a “personality” suitable for its intended use. For example, device 652 could cause reassuring tone to sound and/or a green light to flash if an authorized person or object enters door 625. However, device 652 might cause an alarm to sound and/or an alert to be sent to an administrator on network 600 if a product exits door 625 or an unauthorized person enters or exits door 625.



FIG. 7 illustrates an RFID reader that can be configured to perform methods of the present invention. RFID reader 700 includes one or more RF radios 705 for transmitting RF waves to, and receiving modulated RF waves from, RFID tags. RF radios 705 provide raw RF data that is converted by an analog-to-digital converter (not shown) and conveyed to other elements of RFID reader 700. In some embodiments, these data are stored, at least temporarily, by CPU 710 in memory 715 before being transmitted to other parts of RFID network 200 via network interface 725. Network interface 725 may be any convenient type of interface, such as an Ethernet interface.


Flash memory 720 is used to store a program (a “bootloader”) for booting/initializing RFID reader 700. The bootloader, which is usually stored in a separate, partitioned area of flash memory 720, also allows RFID reader 700 to recover from a power loss, etc. In some embodiments of the invention, flash memory 720 includes instructions for controlling CPU 710 to form “DHCPDISCOVER” requests, as described elsewhere herein, to initiate a provisioning/configuration cycle. In some implementations, flash memory 720 is used to store personality information and other configuration information obtained from, e.g., a DHCP server during such a cycle.


However, in preferred implementations, such information is only stored in volatile memory 715 after being received from, e.g. a DHCP server. There are advantages to keeping RFID devices “dumb.” For example, a network of dumb RFID devices allows much of the processing load to be centralized (e.g., performed by server 270 of network 200), instead of being performed by the RFID devices.


Alternatively, the processing load can be decentralized, but only to trusted devices (such as PC 247 of network 200).


Configuration information is downloaded from, e.g., a central server to memory 715. Updates may be instigated by the central server or selected, trusted devices. New versions of the image file (e.g., the running, base image necessary to operate the RFID device) are copied into flash memory 720. Alternative embodiments of RFID devices implement the methods of the present invention yet lack flash memory.


Newer RFID devices also include dry contact input/output leads to connect to signal lights, industrial networks or the equivalent. These newer RFID devices typically have evolved in the amount of memory, flash, CPU capacity and methods of determination of the number, type and content of RFID tags in their field of view.



FIG. 8 is a block diagram illustrating an exemplary RFID printer 800 that may be configured to perform some methods of the present invention. RFID printer 800 has many of the same components as RFID reader 700 and can be configured in the same general manner as RFID reader 700.


RFID printer also includes printer interface 830, which may be a standard printer interface. Printer interface prints a label for each RFID tag, e.g. according to instructions received from network 200 via network interface 825.


RF Radio 805 is an outbound radio that is used to send RF signals to the antenna of an RFID tag under the control of CPU 810, thereby encoding information (e.g. an EPC) on the tag's microprocessor. Preferably, RF Radio 805 then checks the encoded information for accuracy. The RFID tag is sandwiched within the label produced by printer interface 830.



FIG. 9 illustrates RFID system 900 that includes control portion 901 and RF radio portion 902. The components of control portion 901 are substantially similar to those described above with reference to FIGS. 7 and 8. Interconnect 930 of control portion 901 is configured for communication with interconnect 935 of RF radio portion 902. The communication may be via any convenient medium and format, such as wireless, serial, point-to-point serial, etc. Although only one RF radio portion 902 is depicted in FIG. 9, each control portion 901 may control a plurality of RF radio portions 902. RFID system 900 may be deployed on a single framework or chassis (e.g., on a forklift) or in multiple chassis.



FIG. 10 illustrates an example of a network device that may be configured to implement some methods of the present invention. Network device 1060 includes a master central processing unit (CPU) 1062, interfaces 1068, and a bus 1067 (e.g., a PCI bus). Generally, interfaces 1068 include ports 1069 appropriate for communication with the appropriate media. In some embodiments, one or more of interfaces 1068 includes at least one independent processor 1074 and, in some instances, volatile RAM. Independent processors 1074 may be, for example ASICs or any other appropriate processors. According to some such embodiments, these independent processors 1074 perform at least some of the functions of the logic described herein. In some embodiments, one or more of interfaces 1068 control such communications-intensive tasks as media control and management. By providing separate processors for the communications-intensive tasks, interfaces 1068 allow the master microprocessor 1062 efficiently to perform other functions such as routing computations, network diagnostics, security functions, etc.


The interfaces 1068 are typically provided as interface cards (sometimes referred to as “line cards”). Generally, interfaces 1068 control the sending and receiving of data packets over the network and sometimes support other peripherals used with the network device 1060. Among the interfaces that may be provided are Fibre Channel (“FC”) interfaces, Ethernet interfaces, frame relay interfaces, cable interfaces, DSL interfaces, token ring interfaces, and the like. In addition, various very high-speed interfaces may be provided, such as fast Ethernet interfaces, Gigabit Ethernet interfaces, ATM interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, ASI interfaces, DHEI interfaces and the like.


When acting under the control of appropriate software or firmware, in some implementations of the invention CPU 1062 may be responsible for implementing specific functions associated with the functions of a desired network device. According to some embodiments, CPU 1062 accomplishes all these functions under the control of software including an operating system (e.g. Linux, VxWorks, etc.), and any appropriate applications software.


CPU 1062 may include one or more processors 1063 such as a processor from the Motorola family of microprocessors or the MIPS family of microprocessors. In an alternative embodiment, processor 1063 is specially designed hardware for controlling the operations of network device 1060. In a specific embodiment, a memory 1061 (such as non-volatile RAM and/or ROM) also forms part of CPU 1062.


However, there are many different ways in which memory could be coupled to the system. Memory block 1061 may be used for a variety of purposes such as, for example, caching and/or storing data, programming instructions, etc.


Regardless of network device's configuration, it may employ one or more memories or memory modules (such as, for example, memory block 1065) configured to store data, program instructions for the general-purpose network operations and/or other information relating to the functionality of the techniques described herein. The program instructions may control the operation of an operating system and/or one or more applications, for example.


Because such information and program instructions may be employed to implement the systems/methods described herein, the present invention relates to machine-readable media that include program instructions, state information, etc. for performing various operations described herein. Examples of machine-readable media include, but are not limited to, magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks; magneto-optical media; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory devices (ROM) and random access memory (RAM). The invention may also be embodied in a carrier wave traveling over an appropriate medium such as airwaves, optical lines, electric lines, etc. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.


Although the system shown in FIG. 10 illustrates one specific network device of the present invention, it is by no means the only network device architecture on which the present invention can be implemented. For example, an architecture having a single processor that handles communications as well as routing computations, etc. is often used. Further, other types of interfaces and media could also be used with the network device. The communication path between interfaces/line cards may be bus based (as shown in FIG. 10) or switch fabric based (such as a cross-bar).


Other Embodiments


Although illustrative embodiments and applications of this invention are shown and described herein, many variations and modifications are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those of ordinary skill in the art after perusal of this application.


Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims
  • 1. A method, comprising: determining a failure of a first radio frequency identification (“RFID”) middleware server;disabling a first switch port of a switch in communication with the first RFID middleware server;allocating RFID devices formerly associated with the first RFID middleware server to a second RFID middleware server;enabling a second switch port in communication with the second RFID middleware server; andautomatically provisioning the second RFID middleware server.
  • 2. The method of claim 1, wherein at least one of the determining, disabling, allocating or enabling steps are performed automatically.
  • 3. The method of claim 1, wherein the determining step comprises at least one of receiving a change-of-state message from the switch or a failure determination by a monitor.
  • 4. The method of claim 3, wherein the change-of-state message comprises at least one of an SNMP trap or an indication of a lack of heartbeat.
  • 5. A central server, comprising: at least one memory for storing middleware server configuration, ID and location information, and for storing associations of middleware servers and RFID devices;a port configured for communication with an RFID network, the RFID network comprising an active middleware server in communication with a switch via a first switch port, a standby middleware server in communication with the switch via a second switch port and a plurality of RFID devices associated with and in communication with the active middleware server; andat least one logic device configured to:determine a failure of the first middleware server;instruct the switch to disable the first port;re-assign at least a portion of the plurality of RFID devices to the standby middleware server;instruct the switch to enable the second port; andprovision the standby middleware server.
  • 6. The central server of claim 5, wherein at least one of the determining, instructing the switch to disable the first sport, re-assigning, instructing the switch to enable the second port, or provisioning are performed automatically.
  • 7. The central server of claim 5, wherein the determining step comprises at least one of receiving a change-of-state message from the switch or a failure determination by a monitor.
  • 8. The central server of claim 7, wherein the change-of-state message comprises at least one of an SNMP trap or an indication of a lack of heartbeat.
  • 9. A non-transitory computer-readable medium storing thereon computer-readable instructions, comprising: instructions for determining a failure of a first radio frequency identification (“RFID”) middleware server;instructions for disabling a first switch port of a switch in communication with the first RFID middleware server;instructions for allocating RFID devices formerly associated with the first RFID middleware server to a second RFID middleware server;instructions for enabling a second switch port in communication with the second RFID middleware server; andinstructions for automatically provisioning the second RFID middleware server.
  • 10. The non-transitory computer-readable medium of claim 9, wherein at least one of the determining, disabling, allocating or enabling steps are performed automatically.
  • 11. The non-transitory computer-readable medium of claim 9, wherein determining a failure of the first RFID middleware server comprises at least one of receiving a change-of-state message from the switch or a failure determination by a monitor.
  • 12. The non-transitory computer-readable medium of claim 11, wherein the change-of-state message comprises at least one of an SNMP trap or an indication of a lack of heartbeat.
CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a divisional application and claims priority from U.S. patent application Ser. No. 11/182,312, entitled “Provisioning and Redundancy for RFID Middleware Servers,” filed on Jul. 14, 2005, by Arthur G. Howarth, which is incorporated herein by reference for all purposes. This application is related to U.S. patent application Ser. No. 10/866,506, entitled “Methods and Devices for Uniquely Provisioning RFID Devices” and filed on Jun. 9, 2004, to U.S. patent application Ser. No. 10/866,507, entitled “Methods and Devices for Locating and Uniquely Provisioning RFID Devices” and filed on Jun. 9, 2004, to U.S. patent application Ser. No. 10/866,285, entitled “Methods and Devices for Assigning RFID Device Personality” and filed on Jun. 9, 2004, to U.S. patent application Ser. No. 10/891,238, entitled “Methods and Devices for Determining the Status of a Device” and filed on Jul. 13, 2004, to U.S. patent application Ser. No. 10/876,410, entitled “System and Method for Automatically Configuring Switch Ports with Appropriate Features” and filed Jul. 21, 2004, to U.S. patent application Ser. No. 11/010,089, entitled “Methods and Devices for Providing Scalable RFID Networks” and filed on Dec. 9, 2004, to U.S. patent application Ser. No. 11/104,140, filed on Apr. 11, 2005, entitled “Automated Configuration of Network Device Ports,” to U.S. patent application Ser. No. 11/119,169, filed on Apr. 29, 2005, entitled “Locating and Provisioning Devices in a Network” and to U.S. patent application Ser. No. 11/129,709, filed on May 12, 2005, entitled “Locating, Provisioning and Identifying Devices in a Network” (collectively, the “Cross-Referenced Applications”), all of which are hereby incorporated by reference for all purposes.

US Referenced Citations (186)
Number Name Date Kind
4625081 Lotito et al. Nov 1986 A
4688026 Scribner et al. Aug 1987 A
5339073 Dodd et al. Aug 1994 A
5574722 Slykhouse et al. Nov 1996 A
5588009 Will Dec 1996 A
5646616 Komatsu Jul 1997 A
5819042 Hansen Oct 1998 A
5832503 Malik et al. Nov 1998 A
5850187 Carrender et al. Dec 1998 A
5887176 Griffith et al. Mar 1999 A
5949335 Maynard Sep 1999 A
6070187 Subramaniam et al. May 2000 A
6073178 Wong et al. Jun 2000 A
6111517 Atick et al. Aug 2000 A
6115079 McRae Sep 2000 A
6212563 Beser Apr 2001 B1
6272113 McIntyre Aug 2001 B1
6282186 Wood, Jr. Aug 2001 B1
6300903 Richards et al. Oct 2001 B1
6324575 Jain et al. Nov 2001 B1
6330597 Collin et al. Dec 2001 B2
6381465 Chern et al. Apr 2002 B1
6393458 Gigliotti et al. May 2002 B1
6473858 Shimomura et al. Oct 2002 B1
6539281 Wan et al. Mar 2003 B2
6553489 Osler et al. Apr 2003 B1
6567408 Li et al. May 2003 B1
6587874 Golla et al. Jul 2003 B1
6657408 Goto et al. Dec 2003 B2
6665713 Hada et al. Dec 2003 B1
6677852 Landt et al. Jan 2004 B1
6714985 Malagrino et al. Mar 2004 B1
6721798 Kubista Apr 2004 B1
6772204 Hansen et al. Aug 2004 B1
6810040 Lee et al. Oct 2004 B1
6843121 DeBar et al. Jan 2005 B1
6912213 Kim Jun 2005 B2
6931574 Coupal et al. Aug 2005 B1
6963282 Yeates et al. Nov 2005 B1
6995655 Ertin et al. Feb 2006 B2
7002907 Chen et al. Feb 2006 B1
7038573 Bann May 2006 B2
7054924 Harvey et al. May 2006 B1
7057511 Shanks et al. Jun 2006 B2
7064660 Perkins et al. Jun 2006 B2
7075412 Reynolds et al. Jul 2006 B1
7081819 Martinez de Velasco Cortina et al. Jul 2006 B2
7103040 Aalbers et al. Sep 2006 B2
7103886 Haller et al. Sep 2006 B2
7117364 Hepper et al. Oct 2006 B1
7120139 Kung et al. Oct 2006 B1
7129837 Shannon et al. Oct 2006 B2
7150017 Vogl et al. Dec 2006 B1
7165722 Shafer et al. Jan 2007 B2
7177915 Kopchik Feb 2007 B2
7205897 Lin Apr 2007 B2
7221660 Simonson et al. May 2007 B1
7242303 Patel et al. Jul 2007 B2
7249170 Tindal et al. Jul 2007 B2
7260115 DeFord Aug 2007 B1
7302370 Nickerson et al. Nov 2007 B2
7308715 Gupta et al. Dec 2007 B2
7322523 Howarth et al. Jan 2008 B2
7323988 Krstulich Jan 2008 B2
7325734 Howarth et al. Feb 2008 B2
7333001 Lane et al. Feb 2008 B2
7333479 Jalkanen et al. Feb 2008 B2
7336175 Howarth et al. Feb 2008 B2
7345585 Singhal et al. Mar 2008 B2
7394381 Hanson et al. Jul 2008 B2
7411915 Spain et al. Aug 2008 B1
7422152 Howarth et al. Sep 2008 B2
7568015 Wang et al. Jul 2009 B2
7590715 Raanan Sep 2009 B1
7590739 Swildens et al. Sep 2009 B2
7593427 Wongsonegoro et al. Sep 2009 B1
7648070 Droms et al. Jan 2010 B2
7658319 Howarth et al. Feb 2010 B2
7750793 Juels Jul 2010 B2
7789308 Droms et al. Sep 2010 B2
7949355 Brown et al. May 2011 B2
7953826 Howarth May 2011 B2
8060623 Vogel et al. Nov 2011 B2
8113418 Howarth et al. Feb 2012 B2
8249953 Howarth et al. Aug 2012 B2
20010012292 Merrill et al. Aug 2001 A1
20010028308 De La Huerga Oct 2001 A1
20020001307 Nguyen et al. Jan 2002 A1
20020014964 Okamura Feb 2002 A1
20020016739 Ogasawara Feb 2002 A1
20020046263 Camerini et al. Apr 2002 A1
20020075805 Gupta et al. Jun 2002 A1
20020075843 Lau Jun 2002 A1
20020091636 Carroll Bullard Jul 2002 A1
20020136403 Henson et al. Sep 2002 A1
20020150102 Janko et al. Oct 2002 A1
20020161868 Paul et al. Oct 2002 A1
20020161907 Moon Oct 2002 A1
20030014662 Gupta et al. Jan 2003 A1
20030048195 Trossen Mar 2003 A1
20030065784 Herrod Apr 2003 A1
20030084279 Campagna May 2003 A1
20030095032 Hoshino et al. May 2003 A1
20030126248 Chambers Jul 2003 A1
20030174714 Manik et al. Sep 2003 A1
20030177374 Yung et al. Sep 2003 A1
20030188192 Tang et al. Oct 2003 A1
20030202536 Foster et al. Oct 2003 A1
20030220835 Barnes Nov 2003 A1
20030226887 Komine et al. Dec 2003 A1
20040010594 Boyd et al. Jan 2004 A1
20040021569 Lepkofker et al. Feb 2004 A1
20040061646 Andrews et al. Apr 2004 A1
20040064577 Dahlin et al. Apr 2004 A1
20040069852 Seppinen et al. Apr 2004 A1
20040073600 Elo et al. Apr 2004 A1
20040100383 Chen et al. May 2004 A1
20040108795 Meek et al. Jun 2004 A1
20040128389 Kopchik Jul 2004 A1
20040145474 Schmidtberg et al. Jul 2004 A1
20040257202 Coughlin et al. Dec 2004 A1
20040259557 Bey Dec 2004 A1
20050021626 Prajapat et al. Jan 2005 A1
20050027778 Dimitrelis et al. Feb 2005 A1
20050060208 Gianantoni Mar 2005 A1
20050080881 Voorhees et al. Apr 2005 A1
20050088284 Zai et al. Apr 2005 A1
20050093679 Zai et al. May 2005 A1
20050099270 Diorio et al. May 2005 A1
20050102406 Moon May 2005 A1
20050198228 Bajwa et al. Sep 2005 A1
20050199716 Shafer et al. Sep 2005 A1
20050209947 Shafer Sep 2005 A1
20050228887 Wang et al. Oct 2005 A1
20050252957 Howarth et al. Nov 2005 A1
20050252970 Howarth et al. Nov 2005 A1
20050252971 Howarth et al. Nov 2005 A1
20050253717 Howarth et al. Nov 2005 A1
20050253718 Droms et al. Nov 2005 A1
20050253722 Droms et al. Nov 2005 A1
20050264420 Vogel et al. Dec 2005 A1
20060005035 Coughlin Jan 2006 A1
20060010086 Klein Jan 2006 A1
20060022801 Husak et al. Feb 2006 A1
20060031374 Lu et al. Feb 2006 A1
20060033606 Howarth et al. Feb 2006 A1
20060044111 Kollar et al. Mar 2006 A1
20060047464 Kumar et al. Mar 2006 A1
20060053234 Kumar et al. Mar 2006 A1
20060071790 Duron et al. Apr 2006 A1
20060072497 Buehler et al. Apr 2006 A1
20060080467 Gould et al. Apr 2006 A1
20060089935 Clifford et al. Apr 2006 A1
20060091999 Howarth May 2006 A1
20060098662 Gupta et al. May 2006 A1
20060123226 Kumar et al. Jun 2006 A1
20060123425 Ramarao et al. Jun 2006 A1
20060123467 Kumar et al. Jun 2006 A1
20060132304 Cabell Jun 2006 A1
20060143318 Prajapat et al. Jun 2006 A1
20060146879 Anthias et al. Jul 2006 A1
20060208885 Lin Sep 2006 A1
20060249010 John et al. Nov 2006 A1
20060253590 Nagy et al. Nov 2006 A1
20060259183 Hayes et al. Nov 2006 A1
20060262721 Radunovic et al. Nov 2006 A1
20060266832 Howarth et al. Nov 2006 A1
20060279412 Holland et al. Dec 2006 A1
20060280181 Brailas et al. Dec 2006 A1
20070013518 Howarth Jan 2007 A1
20070027966 Singhal et al. Feb 2007 A1
20070058634 Gupta et al. Mar 2007 A1
20070080784 Kim et al. Apr 2007 A1
20070109100 Jett et al. May 2007 A1
20070112574 Greene May 2007 A1
20070258048 Pitchers Nov 2007 A1
20070283001 Spiess et al. Dec 2007 A1
20080025230 Patel et al. Jan 2008 A1
20080052757 Gulati et al. Feb 2008 A1
20080087730 Howarth et al. Apr 2008 A1
20080104209 Singhal et al. May 2008 A1
20080136599 Sugano et al. Jun 2008 A1
20080186136 Raphaeli et al. Aug 2008 A1
20080197980 Howarth et al. Aug 2008 A1
20090049191 Tolliver Feb 2009 A1
20120036243 Vogel et al. Feb 2012 A1
Foreign Referenced Citations (15)
Number Date Country
1355448 Oct 2003 EP
1376456 Jan 2004 EP
05009063 Apr 2005 EP
2365662 Feb 2002 GB
WO 98-26530 Jun 1998 WO
WO 03-021465 Mar 2003 WO
WO2004-012424 Feb 2004 WO
WO 2005-114604 May 2005 WO
WO 2005-060208 Jun 2005 WO
WO 2005-114545 Dec 2005 WO
WO 2005-114602 Dec 2005 WO
WO 2005-114603 Dec 2005 WO
WO 2007-011591 Jul 2006 WO
WO 2007-011591 Jan 2007 WO
WO 2008-016488 Feb 2008 WO
Non-Patent Literature Citations (190)
Entry
US Non-Final Office Action dated Nov. 26, 2008, from U.S. Appl. No. 11/182,312.
US Final Office Action dated Jun. 10, 2009, from U.S. Appl. No. 11/182,312.
US Notice of Allowance dated May 11, 2010, from U.S. Appl. No. 11/182,312.
US Notice of Allowance dated Sep. 1, 2010, from U.S. Appl. No. 11/182,312.
J. Littlefield, Vendor-Identifying Vendor Options for Dynamic Host Configuration Protocol version 4 (DPHCPv4), RFC 3925, Oct. 2004, 9 pages.
P. Mockapetris, “Domain Names—Implementation and Specification”, RFC 1035, 55 pages.
Girardot, Marc and Sundaresan, Neel, “Millau: an encoding format for efficient representation and exchange of XML over the web” [Retrieved Jan. 31, 2005]. Retrieved from the internet: http:www9.org/w9cdrom/154/154.html 25 pages.
Mohl, Dirk S., “IEEE 1588: Running Real-Time on Ethernet; Getting the Right web server—Time to consider Ethernet for I/O,” retrieved from Internet at <http://ethernet.industrial-networking.com/articles/i17 real-time.asp>; downloaded on Mar. 10, 2004.
Montague, Jim (2003) “Ethernet Hits Real-Time . . . Really,” Control Engineering, Dec. 1, 2003, copyright 2004 Reed Business Information, a division of Reed Elsevier Inc.; retrieved from Internet at <http://www.manufacturing.net/ctl/iindex.asp?dlayout=articlePrint&- articleID=CA339683>; downloaded on Mar. 1, 2004.
EPCglobal EPC Generation 1 Tag Data Standards Version 1.1 Rev. 1.27; http://www.epcglobalinc.org/standards/tds/tds—|—|rev—|—27-standard-2005051.pdf; 87 pgs (submitted in 3 parts).
PCT International Search Report dated Jul. 13, 2006 issued in WO2005-114603 [PCT/US2005/016319].
PCT International Preliminary Examination Report dated Nov. 14, 2006 issued in WO2005-114603 [PCT/US2005/016319].
Chinese Office Action [third] dated Feb. 20, 2009 issued in CN1954327 [CN200580015167.4].
US Office Action mailed Jan. 18, 2007 from (related) U.S. Appl. No. 10/866,507, 4 pp.
US Notice of Allowance dated Jun. 22, 2009 issued in U.S. Appl. No. 11/954,721.
US Office Action mailed Nov. 13, 2006 from (related)U.S. Appl. No. 11/073,245, 12 pp.
US Examiner's Amendment dated Nov. 7, 2007 issued in U.S. Appl. No. 11/195,160.
Abbott, et al., “Alternatives for Providing Routing and Location Information to Support Emergency Calling from IP Enterprises”, NENA Technical Information Document; Oct. 3, 2003, XP002323684, 16 pgs.
Canadian Examination Report dated Oct. 14, 2010, from CA Appl. No. 2565099.
EP Supplementary European Search Report dated Aug. 9, 2010, in Appl. No. EP05750091.0.
EP Office Action dated Oct. 8, 2010, in Appl. No. EP05750091.0.
EP Supplementary European Search Report dated Aug. 6, 2010, in Appl. No. EP05743006.8.
EP Office Action dated Oct. 18, 2010, in Appl. No. EP05743006.8.
EP Supplementary European Search Report dated Aug. 6, 2010, in Appl. No. EP05747434.8.
EP Office Action dated Oct. 26, 2010, in Appl. No. EP05747434.8.
EP Supplementary European Search Report dated Aug. 6, 2010, in Appl. No. EP05753531.2.
EP Office Action dated Oct. 8, 2010, in Appl. No. EP05753531.2.
PCT International Preliminary Examination Report mailed on Feb. 3, 2009, from PCT/US2007/16321.
PCT International Preliminary Examination Report mailed on Mar. 17, 2009, from PCT/US2006/026970.
US Final Office Action dated Nov. 17, 2010, from U.S. Appl. No. 10/891,238.
US Office Action dated Oct. 28, 2010, from U.S. Appl. No. 11/304,944.
US Non-Final Office Action dated Oct. 26, 2010, from U.S. Appl. No. 12/082,635.
US Non-Final Office Action dated Nov. 22, 2010, from U.S. Appl. No. 11/496,779.
US Non-Final Office Action dated Aug. 23, 2010, from U.S. Appl. No. 11/104,140.
US Office Action dated Nov. 16, 2010, from U.S. Appl. No. 11/965,693.
US Office Action dated Apr. 15, 2011, issued in U.S. Appl. No. 10/891,238.
US Final Office Action dated Sep. 29, 2011, issued in U.S. Appl. No. 10/891,238.
US Notice of Allowance dated Apr. 16, 2012, issued in U.S. Appl. No. 10/891,238.
US Office Action dated Feb. 7, 2011, issued in U.S. Appl. No. 11/304,944.
US Final Office Action dated Jul. 20, 2011, issued in U.S. Appl. No. 11/304,944.
US Office Action dated Feb. 15, 2013, issued in U.S. Appl. No. 11/304,944.
US Office Action dated May 12, 2011, issued in U.S. Appl. No. 11/496,779.
US Notice of Allowance dated Oct. 11, 2011, issued in U.S. Appl. No. 11/496,779.
US Final Office Action dated Apr. 4, 2011, issued in U.S. Appl. No. 12/082,635.
US Office Action dated Sep. 29, 2011, issued in U.S. Appl. No. 12/082,635.
US Final Office Action dated Mar. 14, 2012, issued in U.S. Appl. No. 12/082,635.
US Notice of Allowance dated Aug. 11, 2011 issued in U.S. Appl. No. 11/104,140.
US Office Action dated May 2, 2012 issued in U.S. Appl. No. 13/246,642.
US Final Office Action dated Oct. 11, 2012 issued in U.S. Appl. No. 13/246,642 .
US Office Notice of Allowance dated Dec. 9, 2010, issued in U.S. Appl. No. 11/182,312.
US Office Action dated Nov. 16, 2010, issued in U.S. Appl. No. 11/965,693.
US Office Action dated May 23, 2012, issued in U.S. Appl. No. 11/965,693.
US Office Action dated Dec. 6, 2012, issued in U.S. Appl. No. 11/965,693.
US Office Action dated Feb. 25, 2013, issued in U.S. Appl. No. 11/346,739.
Canadian Examination Report dated Apr. 16, 2012, issued in CA Appl. No. 2,565,099.
Canadian Office Action dated Jul. 5, 2011, issued in CA Appl. No. 2,565,451.
Canadian Office Action dated Sep. 18, 2012, issued in CA Appl. No. 2,565,451.
Conte et al., (2000) “A Black Box Framework for an Application Protocol Stack”, IEEE, 6 pages.
Crocker et al., (1995) “MIME Object Security Services,” Network Working Group, downloaded at http://tools.ietf.org/html/rfc1848, on May 16, 2012, 48 pages.
De et al., (2004) “An Ubiquitous Architectural Framework and Protocol for Object Tracking using RFID tags,” Proceedings of the First Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services, IEEE, 9 pages.
Gildea et al., Convergence Technologies for Sensor Systems in the Next Generation Networks (NGN), 2007, 8 pp.
Grand, et al., (1993) “MIME Overview,” 15 pages.
ITB Journal, Issue No. 8, Dec. 2003, 156 pages.
Jena et al., (2002) “Modeling and Evaluation of Internet Applications,” Blekinge Institute of Technology Research Report No. 2002:08, 22 pages.
Lee, (1996) “Principle and Technique for Encapsulation of User Control and Data Information in Separate Frames,” IEEE, 10 pages.
Lee et al. (2004) “System Architecture for Context-Aware Home Application,” Proceedings of the Second IEEE Workshop on Software Technologies for Future Embedded and Ubiquitous Systems, IEEE, 5 pp.
O'Donnell et al., “On Achieving Software Diversity for Improved Network Security using Distributed Coloring Algorithms” 2004, 13 pp.
Radunovic, EP 05009063.8, Receiving Data in a Sensor Network, Apr. 2005, 40 pages.
Salem et al., “An Interoperability Framework for Sensor and UMTs Networks,” Mar. 2007, 6 pp.
Zimmermann (1980) “OSI Reference Model—The ISO Model of Architecture for Open Systems Interconnection”, IEEE Transactions on Communications, 28(4):8pp.
R. Droms, Dynamic Host Configuration Protocol, http://www.ietf.org/rfc/, Bucknell University, Mar. 1997 (RFC 2131), printed Mar. 24, 2005, 43 pages.
S. Alexander et al., DHCP Options and BOOTP Vendor Extensions, http://www.ietf.org/rfc/, Silicon Graphics, Inc., Mar. 1997 (RFC 2132), printed Mar. 24, 2005, 32 pages.
G. Stump et al., The User Class Option for DHCP, http://www.ietf.org/rfc/, IBM, Nov. 2000 (RFC 3004), printed Mar. 24, 2005, 6 pages.
Y. T'Joens, DHCP Reconfigure Extension, http://www.ietf.org/rfc/, Alcatel, Dec. 2001, printed Mar. 24, 2005 (RFC 3203), 6 pages.
M. Patrick, DHCP Relay Agent Information Option, http://www.ietf.org/rfc/, Motorola BCS, Jan. 2001 (RFC 3046), printed Mar. 24, 2005, 14 pages.
EPCgl, Frequently Asked Questions, http://www.epcglobalinc.com/about/faqs.html, printed Mar. 24, 2005, 9 pages.
Simple Network Management Protocol, Internetworking Technologies Handbook, Chapter-56, printed Jul. 14, 2005, 12 pages.
R. Johnson, TFTP Server Address DHCP Option draft-raj-dhc-tftp-addr-option-00.txt, Internet-Draft, Feb. 6, 2005, 7 pages.
J. Littlefield, Vendor—Identifying Vendor Options for Dynamic Host Configuration Protocol version 4 (DPHCPv4), RFC 3925, Oct. 2004, 9 pages.
H. Schulzrinne, Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Option for Civic Addresses Configuration Information, draft-ietf-geopriv-dhcp-civil-05, Internet-Draft, Feb. 19, 2004.
J. Polk et al., Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information, RFC 3825, Jul. 2004, 15 pages.
International Search Report dated Oct. 13, 2005, from corresponding International Application No. PCT/US05/16484, 6 pp. including Notification of Transmittal.
Written Opinion of the International Searching Authority dated Oct. 13, 2005, from corresponding International Application No. PCT/US05/16484, 5 pp.
D. Harrington et al, An Architecture for DescribingSimple Network Management Protocol (SNMP) Management Frameworks, RFC 3411, Dec. 2002, 64 pages.
R. Presuhn, Editor, Version 2 of the Protocol Operations for the Simple Network Management Protocol (SNMP), RFC 3416, Dec. 2002, 31 pages.
EPCTM Tag Data Standards Versioin 1.1 Rev.1.24, EPCglobal, Standard Specification, Apr. 1, 2004, 78 pages.
“The EPCglobal Architecture Framework” EPCglobal Final Version of Jul. 1, 2005, pp. 1-53.
P. Mockapetris, “Domain Names—Concepts and Facilities”, RFC 1034, Nov. 1987, 43 pages.
Lonvick, C., The BSD Syslog Protocol, RFC 3164, Aug. 2001, 28 pages.
Johnston, M., DHCP Preboot Execution Environment (PXE) Options draft-ietf-dhc-pxe-options-01.txt, Internet-Draft, Jan. 21, 2005, 7 pages.
AeroScout Visibility System: Bridging the Gap Between Wi-Fi, Active RFID and Telemetry, AeroScout Enterprise Visibility Solutions, http://www.aeroscout.com/content.asp?page=SystemOverview, printed Apr. 16, 2005, 3 pages.
WhereNet, Products, http://wherenet.com/products—main.html, printed Apr. 16, 2005, 2 pages.
Global Location Number (GLN) Implementation Guide, Uniform Code Council, Inc., May 2002, 13 pages.
The Global Language of Business, retrieved from the internet: http://www.ean-int.org/locations.html, [retrieved Mar. 24, 2005], 5 pages.
“Cisco Application-Oriented Networking: A Network-Based Intelligent Message Routing System”, http://www.cisco.com/en/US/products/ps6438/products—data—sheet0900aecd802c1f9c.html Data Sheet, Cisco Systems, Inc., Jul. 13, 2005, pp. 1-7.
“Cisco Catalyst 6500 Series Application-Oriented Networking Module”, http://www.cisco.com/en/US/products/ps6438/products—data—sheet0900aecd802c1fe9.html Data Sheet, Cisco Systems, Inc. Jul. 13, 2005, pp. 1-3.
“Cisco Application-Oriented Networking—A Network Embedded Intelligent Message Routing System”, http://www.cisco.com/en/US/products/ps6438/prod—bulletin0900aecd802c201b.html Product Bulletin No. 2886, Cisco Systems, Inc. Jul. 13, 2005, pp. 1-3.
“Cisco Catalyst 6500 Series Application-Oriented Networking Module: Large Photo”, Photo, Retrieved from the internet: http://www.cisco.com/en/US/products/ps6448/prod—view—selector.html [Retrieved Jul. 13, 2005], Cisco Systems, Inc. 1 page.
Girardot, Marc and Sundaresan, Neel, “Milieu: an encoding format for efficient representation and exchange of XML over the web” [Retrieved Jan. 31, 2005]. Retrieved from the internet: http:www9.org/w9cdrom/154/154.html 25 pages.
Fujitsu Limited, et al., “Web Services Reliability (WS-Reliability) Ver1.0”, Jan. 8, 2003. pp. 1-45.
Biloruset, Ruslan et al., “Web Services Reliable Messaging Protocol (WS-ReliableMessaging)”, Mar. 2004, pp. 1-40.
Mohl, Dirk S., “IEEE 1588: Running Real-Time on Ethernet; Getting the Right web server—Time to consider Ethernet for I/O,” retrieved from Internet at <http://ethernet.industrial-networking.com/articles/i17real-time.asp>; downloaded on Mar. 10, 2004.
Montague, Jim (2003) “Ethernet Hits Real-Time . . . Really,” Control Engineering, Dec. 1, 2003, copyright 2004 Reed Business Information, a division of Reed Elsevier Inc.; retrieved from Internet at <http://www.manufacturing.net/ctl/iindex.asp?dlayout=articlePrint&- articleID=CA339683>; downloaded on Mar. 1, 2004.
Stump et al., “The User Class Option for DHCP,” RFC 3004, Nov. 2000, 6 pages.
EPCglobal EPC Generation 1 Tag Data Standards Version 1.1 Rev. 1.27; http://www.epcglobalinc.org/standards/tds/tds—|—rev—|—27-standard-2005051.pdf; 87 pgs (submitted in 3 parts).
RFC-2236 Internet Group Management Protocol, v.1, Nov. 1997, retrieved from the Internet on Oct. 22, 2007 and Aug. 5, 2010 at http://www.faqs.org/rfcs/rfc2236.html, 19pgs.
PCT International Search Report dated Nov. 8, 2005 issued in WO2005-114545 [PCT/US2005/016484].
PCT Written Opinion dated Nov. 8, 2005 issued in WO2005114545 [PCT/US2005/016484].
PCT International Preliminary Examination Report dated Nov. 14, 2006 issued in WO2005114545 [PCT/US2005/016484].
International Preliminary Report on Patentability mailed Nov. 23, 2006, Application No. PCT/US2005/016484.
International Search Report dated Feb. 17, 2006, from related International Application No. PCT/US05/15322, 5 pp. including Notification of Transmittal.
Written Opinion of the International Searching Authority dated Feb. 17, 2006, from related International Application No. PCT/US05/15322, 3 pp.
International Preliminary Report on Patentability mailed Nov. 23, 2006, Application No. PCT/US2005/015322.
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration and International Search Report for PCT Application No. PCT/US07/16321, dated May 19, 2008.
Written Opinion for PCT Application No. PCT/US07/16321, dated May 19, 2008.
PCT International Search Report dated Jul. 13, 2006 issued in W02005-114603 [PCT/US2005/016319].
PCT Written Opinion dated Jul. 13, 2006 issued in WO2005-114603 [PCT/US2005/016319].
PCT International Preliminary Examination Report dated Nov. 14, 2006 issued in WO2005114603 [PCT/US2005/016319].
International Preliminary Report on Patentability mailed Nov. 23, 2006, Application No. PCT/US2005/016319.
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration and International Search Report for PCT Application No. PCT/US05/16958, dated Sep. 12, 2007.
Written Opinion of the International Searching Authority for PCT Application No. PCT/US05/16958, dated Sep. 12, 2007.
International Preliminary Report on Patentability mailed Oct. 11, 2007, Application No. PCT/US2005/016958.
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration and International Search Report for PCT Application No. PCT/US06/, dated Mar. 6, 2008.
Written Opinion for PCT Application No. PCT/US06/, dated Mar. 6, 2008.
Australian Examination Report dated Apr. 17, 2009 issued in AU 2005246794.
Canadian Examination Report dated Nov. 17, 2008 issued in CA2565099.
Office Action from Canadian Patent Application No. 2,565,099 issued Feb. 4, 2008.
Office Action from the Canadian Patent Application No. 2,565,099 mailed Nov. 17, 2008.
Office Action from Canadian Patent Application No. 2,565,456 issued on Feb. 1, 2008.
Canadian Office Action dated Oct. 7, 2009 issued is CA 2,565,451.
First Office Action from the Chinese Patent Application No. 200580015167.4 issued on Feb. 29, 2008.
Second Office Action from the Chinese Patent Application No. 200580015167.4 Mailed Aug. 15, 2008.
Chinese Office Action [third] dated Feb. 20, 2009 issued in CN1954327 [0N200580015167.4 ].
First Office Action from the Chinese Patent Application No. 200580015169.3 issued on Feb. 29, 2008.
Second Office Action from the Chinese Patent Application No. 200580015169.3 mailed Aug. 15, 2008.
First Office Action from the Chinese Patent Application No. 200580015168.9 issued on Feb. 29, 2008.
Second Office Action for CN Patent Application No. 200580015168.9 dated Aug. 15, 2008.
Chinese Office Action dated Oct. 23, 2009 issued in CN200580015166.X.
US Office Action mailed Oct. 6, 2006 from (related) U.S. Appl. No. 10/866,506.
US Office Action mailed Mar. 22, 2007 from (related) U.S. Appl. No. 10/866,506.
Notice of Allowance and Notice of Allowability, mailed Sep. 10, 2007 from U.S. Appl. No. 10/866,506.
US Office Action mailed Aug. 9, 2006 from related U.S. Appl. No. 10/866,507.
US Office Action mailed Jan. 18, 2007 from (related) U.S. App. No. 10/866,507, 4 pp.
Notice of Allowance and Notice of Allowability, mailed Sep. 28, 2007 from U.S. Appl. No. 10/866,507.
US Office Action mailed Oct. 6, 2006 from (related) U.S. Appl. No. 10/866,285.
US Office Action mailed Apr. 4, 2007 from (related) U.S. Appl. No. 10/866,285.
Notice of Allowance and Notice of Allowability, mailed Sep. 10, 2007 from U.S. Appl. No. 10/866,285.
Office Action mailed Aug. 13, 2008 from U.S. Appl. No. 11/954,721.
US Notice of Allowance dated Feb. 11, 2009 issued in U.S. Appl. No. 11/954,721.
US Notice of Allowance dated Jun. 1, 2009 issued in U.S. Appl. No. 11/954,721.
US Notice of Allowance dated Sep. 22, 2009 issued in U.S. Appl. No. 11/954,721.
US Office Action dated Jul. 31, 2009 issued in U.S. Appl. No. 10/891,238.
US Office Action Final dated Feb. 4, 2010 issued in U.S. Appl. No. 10/891,238.
US Office Action dated Jun. 10, 2010 issued in U.S. Appl. No. 10/891,238.
US Office Action dated Mar. 31, 2009 issued in U.S. Appl. No. 11/304,944.
US Final Office Action dated Oct. 30, 2009 issued in U.S. Appl. No. 11/304,944.
US Office Action dated Apr. 14, 2010 issued in U.S. Appl. No. 11/304,944.
US Office Action mailed Jun. 18, 2007 from (related) U.S. Appl. No. 11/010,089.
Notice of Allowance and Notice of Allowability, mailed Oct. 11, 2007 from U.S. Appl. No. 11/010,089.
Second Notice of Allowance and Notice of Allowability, mailed Jan. 11, 2008 for U.S. Appl. No. 10/010,089.
US Office Action dated Aug. 4, 2009 issued in U.S. Appl. No. 11/496,779.
US Office Action Final dated Jan. 26, 2010 issued in U.S. Appl. No. 11/496,779.
US Office Action mailed Nov. 13, 2006 from (related) U.S. Appl. No. 11/073,245, 12 pp.
Office Action mailed May 12, 2008 from U.S. Appl. No. 11/104,140.
Office Action mailed Oct. 6, 2008 from U.S. Appl. No. 11/104,140.
US Examiner Interview Summary dated Jan. 14, 2009 issued in U.S. Appl. No. 11/104,140.
US Office Action dated Mar. 4, 2009 issued in U.S. Appl. No. 11/104,140.
US Final Office Action dated Sep. 30, 2009 issued in U.S. Appl. No. 11/104,140.
Office Action [Restriction Requirement] mailed Apr. 1, 2008 from U.S. Appl. No. 11/119,169.
Office Action mailed Aug. 6, 2008 from U.S. Appl. No. 11/119,169.
US Notice of Allowance and Examiners Amendment dated Feb. 11, 2009 issued in U.S. Appl. No. 11/119,169.
US Notice of Allowance dated Jun. 4, 2009 issued in U.S. Appl. No. 11/119,169.
US Notice of Allowance dated Dec. 15, 2009 issued in U.S. Appl. No. 11/119,169.
US Notice of Allowance dated Apr. 19, 2010 issued in U.S. Appl. No. 11/119,169.
Notice of Allowance mailed Mar. 26, 2008 for U.S. Appl. No. 11/129,709.
Notice of Allowance and Allowability, mailed Aug. 8, 2008, from U.S. Appl. No. 11/129,709.
Notice of Allowance and Allowability, mailed Nov. 10, 2008, from U.S. Appl. No. 11/129,709.
US Notice of Allowance dated Apr. 13, 2009 issued in U.S. Appl. No. 11/129,709.
US Notice of Allowance dated Aug. 31, 2009 issued in U.S. Appl. No. 11/129,709.
U.S. Office Action mailed Jun. 26, 2007 from U.S. Appl. No. 11/195,160.
Notice of Allowance and Notice of Allowability, mailed Sept 19, 2007 from U.S. Appl. No. 11/195,160.
Supplemental Notice of Allowance and Notice of Allowability, mailed Oct. 22, 2007 from U.S. Appl. No. 11/195,160.
US Examiners Amendment dated Nov. 7, 2007 issued in U.S. Appl. No. 11/195,160.
US Office Action dated Jun. 1, 2009 issued in U.S. Appl. No. 11/965,693.
US Office Final Action dated Nov. 2, 2009 issued in U.S. Appl. No. 11/965,693.
US Office Action dated Apr. 28, 2010 issued in U.S. Appl. No. 11/965,693.
US Office Action dated Oct. 2, 2009 issued in U.S. Appl. No. 11/346,739.
US Office Action Final dated Apr. 14, 2010 issued in U.S. Appl. No. 11/346,739.
US Notice of Allowance and Examiner Amendment dated Mar. 27, 2008 issued in U.S. Appl. No. 10/896,410.
US Office Action dated Oct. 10, 2007 issued in U.S. Appl. No. 10/896,410.
Related Publications (1)
Number Date Country
20110004781 A1 Jan 2011 US
Divisions (1)
Number Date Country
Parent 11182312 Jul 2005 US
Child 12874773 US