System and method for restricting network access using forwarding databases

Information

  • Patent Grant
  • 8964747
  • Patent Number
    8,964,747
  • Date Filed
    Thursday, February 12, 2009
    16 years ago
  • Date Issued
    Tuesday, February 24, 2015
    10 years ago
Abstract
This specification describes a system that can offer, among other advantages, dynamically allowing or rejecting non-DHCP packets entering a switch. In addition, a FDB is commonly used by a bridge or switch to store an incoming packet's source MAC address and its port number, then later on if the destination MAC address of another incoming packet matching any entry in FDB will be forwarded to its associated port. Using the techniques described herein, not only this will be completely transparent to user, the techniques can also result in an increase in switch performance by blocking unwanted traffic at an earlier stage of forwarding process and freeing up other processing units at a later stage, like switch fabric or packet processing stages.
Description
BACKGROUND

A computer network such as a local area network (LAN), a wide area network (WAN), or the Internet facilitates communication among devices (e.g., clients). These devices may include workstations, servers, personal computers, cell phones, PDAs, wireless access points, laptops, and other electronic devices.


Before a client can communicate over or with a network, the client must obtain an Internet Protocol (IP) address. A client may acquire an IP address through, for example, a client-server networking protocol such as, by way of example but not limitation, Bootstrap Protocol (BOOTP) which is a User Datagram Protocol (UDP), Dynamic Host Configuration Protocol (DHCP), that can be used to assign dynamic IP addresses to clients, Point-to-Point Protocol over Ethernet (PPPoE), or some other known or convenient networking protocol.


A network may filter communication to and from a client that has not yet been assigned an IP address. For example, a network may be configured so that one or more Access Control Lists (ACLs) indicate whether to forward or discard a packet or a class of packets. The ACL may be used, by way of example but not limitation, to direct network routers to drop all packets originating from and directed to a client that has not been assigned an IP address.


Filtering mechanisms of the variety described above, however, may consume significant network resources while processing data to and from clients without IP addresses because the packets are not discarded until the routing phase. Moreover, networks using schemes such as ACL configuration to filter packets may unnecessarily complicate decision-making for users and raise additional security issues.


SUMMARY

The following embodiments and aspects thereof are described and illustrated in conjunction with systems, tools, and methods that are meant to be exemplary and illustrative, not limiting in scope. In various embodiments, one or more of the above-described problems have been reduced or eliminated, while other embodiments are directed to other improvements.


A technique for restricting network access involves determining whether a data unit, such as a packet or a frame, has a layer 3 address assignment, such as an IP address assignment. A method according to the technique may include receiving a data unit including layer 2 client-identification data and determining whether the data unit includes layer 3 address data. If the data unit does not include any layer 3 address data, in this example, the method may proceed in determining whether the layer 2 client-identification data has been recorded. If the layer 2 client-identification data has not been recorded, in this example, the method may proceed in recording the layer 2 client-identification data and enabling a layer 3 address assignment status restriction attribute. If, on the other hand, the layer 2 client-identification data has been recorded, unless the address assignment status restriction attribute is enabled, in this example, the method may proceed with forwarding the data unit.


A system according to the technique may include an address restriction engine, coupled to a memory and a switching device, for executing packet forwarding and data traffic filtering functions. The address restriction engine may include an address status restriction module having control logic for manipulating said layer 3 address assignment status restriction attribute and a packet forwarding module having logic for monitoring data traffic and for notifying the address status restriction module that it has received data with layer 3 address assignment data. The address status restriction module may determine whether to disable the layer 3 address assignment status restriction attribute based on data it receives from the packet forwarding module.


The proposed system can offer, among other advantages, to, for example, dynamically allow or reject non-DHCP packets entering a switch. In addition, a FDB is commonly used by a bridge or switch to store an incoming packet's source MAC address and its port number, then later on if the destination MAC address of another incoming packet matching any entry in FDB will be forwarded to its associated port. Using the techniques described herein, not only this will be completely transparent to user, it can also increase switch performance by blocking unwanted traffic at an earlier stage of the packet forwarding process and freeing up other processing units at a later stage, like switch fabric or packet processing stages.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention are illustrated in the figures. However, the embodiments and figures are illustrative rather than limiting; they provide examples of the invention.



FIG. 1 depicts a flowchart of an example of a method for managing an address assignment status restriction attribute in a forwarding database (FDB).



FIG. 2 depicts a flowchart of an example of a method for data filtering.



FIG. 3 is a block diagram illustrating an example of a network system including a forwarding database (FDB) for filtering network traffic based on IP address assignment status.



FIG. 4 is a schematic illustration of an example of a forwarding database entry.



FIG. 5 is a block diagram illustrating an example of a network system including an address restriction engine for filtering data traffic.



FIG. 6 depicts a flowchart 600 of an example of a method for restrictive data forwarding.





The foregoing examples of the related art and limitations related therewith are intended to be illustrative and not exclusive. Other limitations of the related art will become apparent to those of skill in the art upon a reading of the specification and a study of the drawings.


DETAILED DESCRIPTION

In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without one or more of these specific details or in combination with other components or process steps. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.



FIG. 1 depicts a flowchart 100 of an example of a method for managing an address assignment status restriction attribute in a forwarding database (FDB). This method and other methods are depicted as serially arranged modules. However, modules of the methods may be reordered, or arranged for parallel execution as appropriate.


In the example of FIG. 1, the flowchart 100 starts at module 102 where a data packet is received from a client. The client may include, by way of example but not limitation, a cell phone, PDA, personal computer, laptop, notebook computer, workstation, or some other known or convenient wired or wireless device. The client may send to a network a data packet with information including, by way of example but not limitation, source address, destination address, and message data.


The network may include a wired network, a wireless network, a LAN, a WAN, or a network such as the Internet. The term “Internet” as used herein refers to a network of networks which uses certain protocols, such as the TCP/IP protocol, and possibly other protocols such as the hypertext transfer protocol (HTTP) for hypertext markup language (HTML) documents that make up the World Wide Web (the web). The physical connections of the Internet and the protocols and communication procedures of the Internet are well-known to those of skill in the art.


In the Open Systems Interconnection (OSI) communications model, a switch performs a layer 2 or Data-Link layer function. That is, the switch looks at each packet or data unit and determines from a physical address (the “MAC address”) which device a data unit is intended for and switches it out toward that device. However, in wide area networks such as the Internet, the destination address requires a look-up in a routing table by a device known as a router. Some switches also perform routing functions (layer 3 or the Network layer functions in OSI and layer 4 or the Transport layer functions) and are sometimes called IP switches. As used herein, a switching device may be any layer 2, layer 3, or layer 4 device.


The time a switch takes to determine where to forward a data unit is called its latency. The price paid for having the flexibility that switches provide in a network is this latency. Switches are found at the backbone and gateway levels of a network where one network connects with another and at the sub-network level where data is being forwarded close to its destination or origin. The former are often known as core switches and the latter as desktop switches.


In packet-switching, a message is divided into packets, which are units of a certain number of bytes. The network addresses of the sender and of the destination are added to the packet. Each network point looks at the packet to see where to send it next. Packets in the same message may travel different routes and may not arrive in the same order that they were sent. At the destination, the packets in a message are collected and reassembled into the original message.


Referring once again to the example of FIG. 1, the flowchart 100 continues to module 104 where the packet is preprocessed for classification according to, for example, the source of the packet. A packet may originate from one of numerous sources including but not limited to an access point, a network port, or a central processing unit (CPU). Moreover, depending on criteria such as the source of the packet and the configuration of the network, the preprocessing functions may be executed by devices such as, by way of example but not limitation, a network processor, a general processor, or pre-processing software tailored for the task.


In the example of FIG. 1, the flowchart 100 continues to module 106 where additional packet source information is learned. In an embodiment, a network switch receives the packet and learns information associated with the packet. The network switch may include, for example, a switching fabric coupled to a forwarding database (FDB) having a forwarding memory. In an embodiment, the forwarding memory stores a number of entries comprising information including but not limited to address data, port identification (ID), and entry age. The entry age can be used to, for example, facilitate the removal of old entries so that the database is not cluttered with outdated entries. The FDB may store entries according to the client's media access control (MAC) addresses, network addresses, both the MAC and network addresses, or in some other known or convenient manner.


In an embodiment, a network switch performs a look-up in the FDB upon receipt of a packet. If an entry associated with the client's identification information is found in the FDB, no action is required. On the other hand, if the FDB does not include an entry associated with the client's identification information, a new entry is added to the FDB comprising information including but not limited to the client's MAC address, port ID, and a number of other attributes associated with the client. In an embodiment, a processing unit associated with the switch updates the FDB with a new entry. In an alternative embodiment, a CPU coupled to a number of network switches is responsible for learning data traffic passing through these switches and updating a central FDB. Additionally, the processor may be implemented with a number of devices including but not limited to, a specialized network processor or a general processor.


In the example of FIG. 1, the flowchart 100 continues to decision point 107 where a destination of the packet is determined from the information available in the packet. If the destination is from the client, then the flowchart 100 continues to module 108 where an attempt is made to authenticate the client. For example, a CPU associated with the network switch may attempt to authenticate the client using a known or convenient authentication scheme. The CPU may authenticate the client using a cryptographic protocol such as, by way of example but not limitation, the Otway-Rees or the Wide-Mouth Frog protocol. Moreover, the CPU may be configured in a number of ways. In one embodiment, the CPU may be a local processor associated with one network switch and responsible for authenticating data traffic that pass through the network switch. In an alternative embodiment, the CPU may be coupled to a number of network switches and responsible for authenticating data traffic passing through these switches. Additionally, the CPU may be implemented with a number of devices including but not limited to, a specialized network processor or a general processor.


Returning once again to the decision point 107, if the destination of the packet is to the client, or after an attempt to authenticate the client is made at module 108 (if the destination is from the client), then the flowchart continues to decision point 109. It may be noted that if the destination is not determined to be to or from the client (else), the flowchart 100 continues to module 114, which is described later.


In the example of FIG. 1, the flowchart 100 continues from module 108 to decision point 109, where it is determined whether the client is authenticated. If the client is not authenticated (109-NO), the packet is dropped and the client cannot communicate over or with the network. If the client is authenticated (109-YES), the flowchart 100 continues at module 110 where the CPU identifies the client according to information contained in the packet and extracts a service profile associated with the client. The service profile may include information specific to the client, such as a set of minimum requirements. The set of minimum requirements may include, by way of example but not limitation, level of security or Quality of Service (QoS). In an embodiment, the service profile also includes information indicating whether communication with the client is restricted according to IP address assignment status. In an alternative embodiment, the service profile may not include such information, or the information may not be acted upon (e.g., at modules 112, 114). The packet information may include, by way of example but not limitation, the destination address and port ID.


In the example of FIG. 1, the flowchart 100 continues to decision point 112 where it is determined whether IP address assignment restriction is required. In an embodiment, the CPU may make this determination based on the service profile. If the service profile specifies that communication with the client need not be filtered according to IP address assignment status (112-NO), the flowchart 100 continues to module 114 where the network switch proceeds to forward the packet according to packet information (and, for illustrative purposes, the flowchart 100 ends although it should be noted that the packets may continue to be forwarded practically indefinitely). If the service profile indicates that communication with the client is restricted according to IP address assignment status (112-YES), the flowchart 100 continues to module 116 where the packet is dropped and an IP address assignment restriction status attribute associated with the client is enable. In an embodiment, the CPU may enable the IP address assignment restriction status attribute in the FDB.


In the example of FIG. 1, the flowchart 100 continues to decision point 118 where it is determined whether an assignment has been received. A packet that includes an assignment is of particular note because packets cannot be forwarded until, for example, an IP assignment has been made. If it is determined that an assignment has not been received (118-NO), the flowchart 100 continues to decision point 119 where it is determined whether there is an assignment request. If it is determined that there is an assignment request (119-Yes), then the flowchart 100 continues to module 114, which was described previously. If, on the other hand, it is determined that there is no assignment request (119-No), then the flowchart 100 continues to module 120 where the packet is dropped, to module 122 where traffic continues to be monitored (e.g., filtered according to the IP address assignment status associated with data the network switch receives), and back to decision point 118. Advantageously, only packets with, for example, a DHCP protocol are allowed to enter the network switch. This may improve the performance of the switch. If, on the other hand, it is determined that an assignment has been received (118-YES), the flowchart 100 continues to module 124 where verification of the address assignment is attempted. The verification may be by any known or convenient means.


In the example of FIG. 1, the flowchart 100 continues to decision point 126 where it is determined whether the assignment is verified. If it is determined that the assignment is not verified (126-NO), the flowchart 100 continues to module 120 where the packet is dropped, and continues from module 120 as described previously. If, on the other hand, it is determined that the assignment is verified (126-YES), the flowchart 100 continues to module 128 where the IP address assignment restriction status attribute is disabled. The flowchart 100 ends at module 114 where packets are forwarded normally, as previously described. Advantageously, since the IP address assignment restriction status attribute is disabled until after IP address assignment, which prevents the forwarding of potentially many packets to the network switch, the network switch can operate more efficiently.



FIG. 2 depicts a flowchart 200 of an example of a method for data filtering. Data filtering may be used in conjunction with, for example, the method of FIG. 1. In the example of FIG. 2, the flowchart 200 begins at module 202 where switching functions are executed. For example, a forwarding processor associated with a network switch may execute switching functions including, by way of example and not limitation, looking up a FDB, checking FDB entry fields including an IP address assignment status restriction attribute, and forwarding packets to a specified destination. In an embodiment, a CPU or other processor may function as the forwarding processor. In another embodiment, the forwarding processor is an independent processor configured to manage switching tasks. In this alternative embodiment, the CPU does not process data to or from the client while the client has yet to obtain an IP address. The forwarding processor may be implemented, by way of example but not limitation, in a general processor, in the CPU as a sub-processor, or in a specialized network processor.


In the example in FIG. 2, the flowchart 200 continues to decision point 204 where it is determined whether a packet includes address assignment information. For example, each time a forwarding processor receives a packet, the forwarding processor may make a determination as to whether the packet includes IP address assignment information. If the packet does not include IP address assignment information (204-NO), the flowchart continues to module 206 where a look-up is performed, and the client's IP address is allowed to be forwarded. For example, the forwarding processor may perform a look-up function in the FDB associated with the network switch. The packet information the forwarding processor uses for the look-up function may include, by way of example and not limitation, the MAC address or the network address of the packet sender.


In the example of FIG. 2, the flowchart 200 continues to the decision point 208 where it is determined whether the IP address assignment status restriction attribute is enabled. If the attribute is enabled (208-YES), the flowchart 200 proceeds to module 210 where the packet is dropped, from packets originating from or destined for the client, and the flowchart 200 returns to module 202. If the attribute is disabled (208-NO), the flowchart 200 continues to module 212 where the packet is forwarded and the flowchart 200 returns to module 202. For example, the forwarding processor may allow the network switch to forward the packet according to packet information. The packet information may include, by way of example but not limitation, the destination address and port ID.


Returning now to the flowchart 200 at decision point 204. If it is determined that the packet includes address assignment information, then the flowchart 200 continues to module 214 where packet verification is attempted. For example, the forwarding processor may determine that the packet includes IP address assignment information, and send the packet to the CPU for verification.


In the example of FIG. 2, the flowchart 200 continues to decision point 216 where it is determined whether the IP address assignment information can be verified. For example, the CPU may attempt to verify that the packet includes IP address assignment information. If the CPU cannot verify the IP address assignment information (216-NO), the flowchart 200 continues to module 218 where the packet is dropped. If the CPU verifies that the data packet includes IP address assignment information (216-YES), the flowchart 200 continues to decision point 220 where it is determined whether confirmation that an IP address has been assigned has been received. For example, the CPU may determine whether the packet includes confirmation that an IP address has been assigned. The methods for determining whether an IP address assignment has been confirmed may vary and include, by way of example and not limitation, receipt of a packet containing an IP address assignment for the destination device, receipt of a packet acknowledging the receipt of an IP address assignment, or the receipt of both an address assignment and an acknowledgment.


In the example of FIG. 2, if, for example, the CPU determines that the IP address assignment information in the packet does not confirm an address assignment (220-NO), the flowchart 200 loops back to module 218 where the packet is dropped, as described previously. It may be noted that there could be some type of delay or waiting period before dropping the packet depending upon the implementation. It may also be noted that switching functions for other packets may be executing concurrently during the delay. If the CPU determines that the IP address assignment information in the packet confirms an address assignment (220-YES), the flowchart 200 proceeds to module 222 where the IP assignment status restriction is disabled. For example, the CPU may disable the IP assignment status restriction attribute in the FDB entry associated with the device whose address assignment has been confirmed. The flowchart 200 continues to module 224 where the packet is forwarded. For example, the network switch may forward the packet according to packet information. The packet information may include, by way of example but not limitation, the destination address and port ID.



FIGS. 1 and 2 serve to illustrate methods by way of example. Fewer or more modules may be used to promote additional features and alternative embodiments. For example, in one implementation, the CPU may apply address status restrictions on all clients without e.g., checking service profiles. In another implementation, the CPU does not verify a packet identified as having IP address assignment information and proceeds directly to module 118 from module 126. Moreover, terms and examples described serve illustrative purposes only and are not intended to be limiting. For example, although the term “packet” or “data packet” is used to describe a unit of information in the processing and switching operations above, one skilled in the art would appreciate that information may be transmitted in other data unit forms including, by way of example and not limitation, a data packet or a frame. Some instances above describe information filtering for data originating from a source that has not yet obtained an IP address assignment, one skilled in the art would readily perceive that data can be filtered either to or from such a source.



FIG. 3 is a block diagram illustrating an example of a network system 300 including a forwarding database for filtering network traffic based on IP address assignment status. In the example of FIG. 3, the network system 300 includes a FDB 302, a processor 304, a switching device 306, wireless access points (APs) 308-1 to 308-N (referred to hereinafter collectively as APs 308), and clients 310-1 to 310-N (referred to hereinafter collectively as clients 310). It may be noted that in alternative embodiments, two or more of the FDB 302, processor 304, switching device 306, and APs 308 may be located locally with respect to one another.


In the example of FIG. 3, the network system 300 includes a wireless network for illustrative purposes. However, at least some of the techniques described herein could be used in both a wireless and a wired network.


The FDB 302 may be implemented with a forwarding memory (not shown). The forwarding memory stores a table containing entries having identification information extracted from data traffic that the switching device 306 receives and may include, by way of example and not limitation, MAC address, port ID, and virtual LAN (VLAN) ID. Additionally, the entries may include numerous attributes including, by way of example and not limitation, the age of the entry, and the IP address assignment status associated with the identification information. In an alternative embodiment, the FDB 302 may be implemented with a forwarding memory (not shown) for storing entries having information extracted from data traffic and a distinct associated memory (not shown) for storing attribute data associated with each entry in the forwarding memory. The data entries stored in the FDB 302 are used to identify the destination information and forwarding attributes associated with a data packet so that the packet may be forwarded to its specified destination. Entries in the FDB 302 are described in more detail later with reference to FIG. 4. For the purpose of example only, the system 300 could be configured such that the address to be restricted is one that originates from a wireless client, such as one of the wireless clients 310.


In the example of FIG. 3, the processor 304 is coupled to the FDB 302 and the switching device 306. In an embodiment, the processor 304 may execute switching functions using the FDB 302 and the switching device 306. In an embodiment, the processor 304 may be implemented as a CPU that processes data traffic that the switching device 306 receives and accesses the FDB 302 to update the entries therein. The CPU may, by way of example and not limitation, learn an address in a data packet, read associated data corresponding to a data packet, age the entries in the FDB 302, invalidate outdated entries in the FDB 302, replace entries in the FDB 302, access search keys in the FDB 302, and update attributes in the entries of the FDB 302. In one embodiment, the CPU may be configured to monitor and filter the data traffic that the switching device 306 receives with a method such as that described in FIG. 2. In an alternative embodiment, a forwarding processor (not shown) monitors the forwarding data traffic and alerts the CPU with information necessary to update the entries in the FDB 302. In one embodiment, the forwarding processor (not shown) is implemented independently of the CPU with, by way of example and not limitation, a general processor or a network processor. In another embodiment, the forwarding processor (not shown) is implemented as a sub-processor in the CPU.


The switching device 306 may, in an embodiment, have a switching fabric (not shown) including, by way of example and not limitation, one or more switching Application Specific Integrated Circuits (ASICs). Furthermore, the switching ASICs may, for example, be configured to perform level 2 switching functions, level 3 switching functions, level 3 routing functions, level 4 switching functions, and level 4 routing functions. In an alternative embodiment, the switching fabric may implement the level 2 to 4 switching and routing functions by using software or by using hardware not dependents on ASICs. The switching device 306 may channel incoming data from input ports (not shown) to a specific output port that will take data toward an intended destination. On, for example, an Ethernet local area network (LAN), a switching device determines from the physical device (Media Access Control or MAC) address in each incoming message frame which output port to forward it to and out of. In, for example, a wide area packet-switched network such as the Internet, a switching device determines from the IP address in each packet which output port to use for the next part of its trip to the intended destination. In, for example, a circuit-switched network, one or more switching devices are used to set up a dedicated though temporary connection between two or more parties.


In the example of FIG. 3, data from the clients 310 are forwarded through the APs 308 to the switching device 306. In an embodiment where the IP addresses assignment status of clients 310 are restricted, packets sent to and from the clients 310 are discarded, at least until the restriction attribute is disabled in the FDB entries associated with the client 310, as was described previously with reference to FIG. 1 and FIG. 2.



FIG. 4 is a schematic illustration of a FDB entry 400. In the example of FIG. 4, the FDB entry 400 includes a port ID field 402, a MAC address field 404, a VLAN ID field 406, an age field 408, an address status restriction field 410, and possibly other fields. The port ID field 402 identifies the port on which an associated message was received. The MAC address field 404 identifies the physical address of the device from which the message originated. A VLAN allows devices located on different physical LAN segments to communication as though they are on the same physical LAN segments. In so doing, a VLAN promotes efficiency based on traffic pattern rather than proximity. The VLAN ID enables devices grouped in a VLAN to identify each other within the VLAN. The FDB entry shown in FIG. 4 includes both identification data (e.g. MAC address, VLAN address, port ID) and attributes (e.g. age, IP address assignment status). In another embodiment, the FDB includes a forwarding memory (not shown) for storing entries having identification data and a separate associated memory (not shown) for storing attributes associated with the entries in the forwarding memory. In yet another embodiment, filtering based on IP address assignment status is implemented in hardware.



FIG. 5 is a block diagram illustrating an example of a network system 500 including an address restriction engine for filtering data traffic. In the example of FIG. 5, the network system includes a FDB 502, an address restriction engine 510, and a switching device 512. The address restriction engine 510 further includes an address status restriction module 504 and a packet forwarding module 506.


In an embodiment, the FDB 502 may include a forwarding memory (not shown). The forwarding memory stores a table containing entries having information extracted from data traffic that the switching device 512 receives and may include, by way of example and not limitation, MAC address, port ID, and virtual LAN (VLAN) ID. Additionally, the entries may include numerous attributes including, by way of example and not limitation, the age of the entry, and the IP address assignment status associated with the identification information. In an alternative embodiment, the FDB 502 includes a forwarding memory (not shown) for storing entries having information extracted from data traffic and a distinct associated memory (not shown) for storing attribute data associated with each entry in the forwarding memory. The data entries stored in the FDB 502 are used to identify the destination information and forwarding attributes associated with a data packet so that the packet may be forwarded to its specified destination. For the purpose of example only, the system 500 could be configured such that the address to be restricted is one that originates from a wireless client, such as one of the wireless clients 310.


In the example of FIG. 5, the address restriction engine 510 is coupled to the FDB 502 and the switching device 512. In an embodiment, the engine 510 may execute switching functions using the FDB 502 and the switching device 512. In another embodiment, the engine 510 monitors the data traffic that the switching device 512 receives and filters the traffic in addition to executing switching functions. In an embodiment, the engine 510 filters the data traffic passing through the switching device 512 by delegating separate monitoring and switching functions between the address status restriction module 504 and the packet forwarding module 506. In an embodiment, the address status restriction module 504 accesses the FDB 502 to manipulate an entry attribute based on the IP address assignment status of the device associated with the entry. The packet forwarding module 506 monitors the data traffic that the switching device 512 receives for packets that may change the IP address assignment status of a device and notifies the address status restriction module 504 of potential change in address assignments. The address status restriction module 504, in turn, verifies whether an IP address has been assigned based on the information it receives from the packet forwarding module 506. The address restriction engine 510 may be implemented, by way of example and not limitation, with a CPU, a network processor, or a general processor. In one embodiment, the engine 510 is a processor that includes a first sub-processor having the restriction module 504 and a second sub-processor having the forwarding module 506. In an alternative embodiment, the engine 510 includes a first processor (e.g. CPU, general processor, network processor) having the restriction module 504 and a second processor (e.g. CPU, general processor, network processor) having the forwarding module 506.


In an embodiment, the switching device 512 may have a switching fabric (not shown) including, by way of example and not limitation, one or more switching Application Specific Integrated Circuits (ASICs). Furthermore, the switching ASICs may, for example, be configured to perform level 2 switching functions, level 3 switching functions, level 3 routing functions, level 4 switching functions, and level 4 routing functions. In an alternative embodiment, the switching fabric may implement the level 2 to 4 switching and routing functions by using software or by using hardware not dependents on ASICs. The switching device 512 may channel incoming data from input ports (not shown) to a specific output port that will take data toward an intended destination. On, for example, an Ethernet local area network (LAN), a switching device determines from the physical device (Media Access Control or MAC) address in each incoming message frame which output port to forward it to and out of. In, for example, a wide area packet-switched network such as the Internet, a switching device determines from the IP address in each packet which output port to use for the next part of its trip to the intended destination. In, for example, a circuit-switched network, one or more switching devices are used to set up a dedicated though temporary connection between two or more parties.



FIG. 6 depicts a flowchart 600 of an example of a method for restrictive data forwarding. In the example of FIG. 6, the flowchart 600 starts at module 602 with receiving a data unity include layer 2 client-identification data. The flowchart 600 continues to module 604 with determining whether the data unit includes layer 3 address data. If, at decision point 608, it is determined that the data unit does not include layer 3 address data, then the flowchart 600 continues to module 608 with determining whether layer 2 client-identification data has been recorded. If it is determined at decision point 610 that layer 2 data has not been recorded, then the flowchart continues to module 612 with recording the layer 2 data and to module 614 with enabling a layer 3 address assignment status restriction attribute, then the flowchart 600 ends. If, on the other hand, it is determined at decision point 610 that layer 2 data has been recorded, then the flowchart ends at module 616 with forwarding the data unity unless the address assignment status restriction attribute is enabled.


Returning once again to decision point 606 of FIG. 6, if it is determined that the data unit includes layer 3 data (606-Yes), then the flowchart 600 continues to module 618 with determining whether layer 3 address data confirms a layer 3 address assignment. If, at decision point 620, it is determined that the layer 3 address assignment is not confirmed, then the flowchart 600 continues to module 622 with disabling the layer 3 address assignment status restriction attribute, to module 624 with forwarding the data unit, and the flowchart 600 ends. If, on the other hand, it is determined that the layer 3 address assignment is confirmed, then the flowchart 600 ends at module 626 with forwarding the data unit if the layer 3 address data does not confirm a layer 3 address assignment. Where a data unit is not forwarded, it may or may not be dropped, depending upon the implementation.


Terms and examples described above serve illustrative purposes only and are not intended to be limiting. For example, although the term “packet” or “data packet” is used to describe a unit of information in the processing and switching operations above, one skilled in the art would appreciate that information may be transmitted in other data unit forms including, by way of example and not limitation, a data packet or a frame. Some instances above describe information filtering for data originating from a source that has not yet obtained an IP address assignment, one skilled in the art would readily perceive that data can be filtered either to or from such a source.


As used herein, the term “embodiment” means an embodiment that serves to illustrate by way of example but not limitation. It may be noted that, in an embodiment, timestamps can be observed to measure roaming time.


It will be appreciated to those skilled in the art that the preceding examples and embodiments are exemplary and not limiting to the scope of the present invention. It is intended that all permutations, enhancements, equivalents, and improvements thereto that are apparent to those skilled in the art upon a reading of the specification and a study of the drawings are included within the true spirit and scope of the present invention. It is therefore intended that the following appended claims include all such modifications, permutations and equivalents as fall within the true spirit and scope of the present invention.

Claims
  • 1. A method, comprising: receiving a data unit including layer 2 client-identification data;if the data unit does include layer 3 address data, forwarding the data unit, and if the included layer 3 address data confirms a layer 3 address assignment and if a layer 3 address assignment status restriction attribute associated with the received data unit is enabled, disabling the layer 3 address assignment status restriction attribute associated with the received data unit; andif the data unit does not include layer 3 address data and if the layer 3 address assignment status restriction attribute associated with the received data unit is enabled, discarding the data unit.
  • 2. The method claim 1, further comprising: if the layer 3 address data does not confirm the layer 3 address assignment, forwarding the data unit.
  • 3. The method of claim 1 further comprising: if the layer 2 client-identification data has been recorded, determining whether the layer 3 address assignment status restriction attribute associated with the received data unit is enabled.
  • 4. The method of claim 1, wherein the data unit is a packet, further comprising preprocessing the packet.
  • 5. The method of claim 1, further comprising executing switching functions with respect to the data unit.
  • 6. A system comprising: a switching device configured to perform layer 2 functions and receive a data unit;a memory coupled to the switching device, the memory having a forwarding database storing an entry associated with the received data unit, the entry having an associated layer 2 address and a layer 3 address assignment status restriction attribute; anda processor coupled to the memory and the switching device, the processor configured to execute packet forwarding functions, if the received data unit includes layer 3 address data, the switching device forwards the data unit, and if the included layer 3 address data confirms a layer 3 address assignment and if the layer 3 address assignment status restriction attribute associated with the received data unit is enabled, disable the layer 3 address assignment status restriction attribute associated with the received data unit.
  • 7. The system of claim 6, further comprising: a plurality of wireless access points coupled to the switching device.
  • 8. The system of claim 6, further comprising: a plurality of clients coupled to the switching device through one or more wireless access points.
  • 9. The system of claim 6, wherein the layer 2 address is a MAC address.
  • 10. The system of claim 6, wherein the layer 3 address is an IP address.
  • 11. The system of claim 6, wherein the data unit is a packet.
  • 12. The system of claim 6, wherein the data unit is a frame.
  • 13. The system of claim 6, wherein the entry of the forwarding database includes a port ID and a VLAN ID.
  • 14. The system of claim 6, wherein the entry of the forwarding database includes an age parameter.
  • 15. The system of claim 6, wherein if the layer 3 address assignment data does not confirm a layer 3 address assignment, the switching device forwards the data unit.
  • 16. A system comprising: a switching device configured to perform layer 2 functions;a memory coupled to the switching device, the memory configured to have a forwarding database storing an entry associated with a received data, said entry having an associated layer 2 address and a layer 3 address assignment status restriction attribute associated with the received data; andan address restriction engine coupled to the memory and the switching device, the address restriction engine configured to execute packet forwarding and data traffic filtering functions, said address restriction engine having: an address status restriction module having control logic configured to manipulate a layer 3 address assignment status restriction attribute associated with the received data, anda packet forwarding module having logic configured to monitor data traffic and notify the address status restriction module that a first data with layer 3 address assignment data has been received;the address status restriction module configured to disable the layer 3 address assignment status restriction attribute associated with the first data if the layer 3 address assignment data confirms a layer 3 address assignment, based on a second data the address status restriction module receives from the packet forwarding module.
  • 17. The system of claim 16, wherein the layer 2 address is a MAC address.
  • 18. The system of claim 16, wherein the layer 3 address is an IP address.
  • 19. The system of claim 16, wherein the switching device is configured to perform layer 3 functions.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of U.S. application Ser. No. 11/417,993 filed May 3, 2006, (now U.S. Pat. No. 7,558,266), which is incorporated herein in its entirety by reference.

US Referenced Citations (602)
Number Name Date Kind
3641433 Mifflin et al. Feb 1972 A
4168400 De Couasnon et al. Sep 1979 A
4176316 DeRoas et al. Nov 1979 A
4247908 Lockart et al. Jan 1981 A
4291401 Bachmann Sep 1981 A
4291409 Weinberg et al. Sep 1981 A
4409470 Shepard et al. Oct 1983 A
4460120 Shepard et al. Jul 1984 A
4475208 Ricketts Oct 1984 A
4494238 Groth, Jr. Jan 1985 A
4500987 Hasegawa Feb 1985 A
4503533 Tobagi et al. Mar 1985 A
4550414 Guinon et al. Oct 1985 A
4562415 McBiles Dec 1985 A
4630264 Wah Dec 1986 A
4635221 Kerr Jan 1987 A
4639914 Winters Jan 1987 A
4644523 Horwitz Feb 1987 A
4672658 Kavehrad Jun 1987 A
4673805 Shepard et al. Jun 1987 A
4707839 Andren et al. Nov 1987 A
4730340 Frazier Mar 1988 A
4736095 Shepard et al. Apr 1988 A
4740792 Sagey et al. Apr 1988 A
4758717 Shepard et al. Jul 1988 A
4760586 Takeda Jul 1988 A
4789983 Acampora et al. Dec 1988 A
4829540 Waggener et al. May 1989 A
4850009 Zook et al. Jul 1989 A
4872182 Mcrae et al. Oct 1989 A
4894842 Brockhaven et al. Jan 1990 A
4901307 Gilhousen et al. Feb 1990 A
4933952 Albrieux et al. Jun 1990 A
4933953 Yagi Jun 1990 A
4955053 Siegmund Sep 1990 A
4995053 Simpson et al. Feb 1991 A
5008899 Yamamoto Apr 1991 A
5027343 Chan et al. Jun 1991 A
5029183 Tymes Jul 1991 A
5103459 Gilhousen et al. Apr 1992 A
5103461 Tymes Apr 1992 A
5109390 Gilhousen et al. Apr 1992 A
5119502 Kallin et al. Jun 1992 A
5142550 Tymes Aug 1992 A
5151919 Dent Sep 1992 A
5157687 Tymes Oct 1992 A
5187575 Lim Feb 1993 A
5231633 Hluchy et al. Jul 1993 A
5280498 Tymes et al. Jan 1994 A
5285494 Sprecher et al. Feb 1994 A
5327144 Stilp et al. Jul 1994 A
5329531 Diepstraten Jul 1994 A
5339316 Diepstraten Aug 1994 A
5371783 Rose et al. Dec 1994 A
5418812 Reyes et al. May 1995 A
5444851 Woest Aug 1995 A
5448569 Huang et al. Sep 1995 A
5450615 Fortune et al. Sep 1995 A
5465401 Thompson Nov 1995 A
5479441 Tymes et al. Dec 1995 A
5483676 Mahany et al. Jan 1996 A
5488569 Kaplan et al. Jan 1996 A
5491644 Pickering et al. Feb 1996 A
5517495 Lund May 1996 A
5519762 Bartlett May 1996 A
5528621 Heiman et al. Jun 1996 A
5542100 Hatakeyama Jul 1996 A
5546389 Wippenbeck et al. Aug 1996 A
5561841 Markus Oct 1996 A
5568513 Croft et al. Oct 1996 A
5570366 Baker et al. Oct 1996 A
5584048 Wieczorek Dec 1996 A
5598532 Liron Jan 1997 A
5630207 Gitlin et al. May 1997 A
5640414 Blakeney et al. Jun 1997 A
5649289 Wang et al. Jul 1997 A
5668803 Tymes et al. Sep 1997 A
5677954 Hirata et al. Oct 1997 A
5706428 Boer et al. Jan 1998 A
5715304 Nishida et al. Feb 1998 A
5729542 Dupont Mar 1998 A
5734699 Lu et al. Mar 1998 A
5742592 Scholefield et al. Apr 1998 A
5774460 Schiffel et al. Jun 1998 A
5793303 Koga Aug 1998 A
5794128 Brockel et al. Aug 1998 A
5812589 Sealander et al. Sep 1998 A
5815811 Pinard et al. Sep 1998 A
5828653 Goss Oct 1998 A
5828960 Tang et al. Oct 1998 A
5835061 Stewart Nov 1998 A
5838907 Hansen Nov 1998 A
5844900 Hong et al. Dec 1998 A
5852722 Hamilton Dec 1998 A
5862475 Zicker et al. Jan 1999 A
5872968 Knox et al. Feb 1999 A
5875179 Tikalsky Feb 1999 A
5887259 Zicker et al. Mar 1999 A
5896561 Schrader et al. Apr 1999 A
5909686 Muller et al. Jun 1999 A
5915214 Reece et al. Jun 1999 A
5920821 Seazholtz et al. Jul 1999 A
5933607 Tate et al. Aug 1999 A
5938721 Dussell et al. Aug 1999 A
5949988 Feisullin et al. Sep 1999 A
5953669 Stratis et al. Sep 1999 A
5960335 Umemoto et al. Sep 1999 A
5969678 Stewart Oct 1999 A
5970066 Lowry et al. Oct 1999 A
5977913 Christ Nov 1999 A
5980078 Krivoshein et al. Nov 1999 A
5982779 Krishnakumar et al. Nov 1999 A
5987062 Engwer et al. Nov 1999 A
5987328 Ephremides et al. Nov 1999 A
5991817 Rowett et al. Nov 1999 A
5999813 Lu et al. Dec 1999 A
6005853 Wang et al. Dec 1999 A
6011784 Brown et al. Jan 2000 A
6012088 Li et al. Jan 2000 A
6029196 Lenz Feb 2000 A
6041240 McCarthy et al. Mar 2000 A
6041358 Huang et al. Mar 2000 A
6070243 See et al. May 2000 A
6073075 Kondou et al. Jun 2000 A
6073152 De Vries Jun 2000 A
6078568 Wright Jun 2000 A
6088591 Trompower et al. Jul 2000 A
6101539 Kennelly et al. Aug 2000 A
6115390 Chuah Sep 2000 A
6118771 Tajika et al. Sep 2000 A
6119009 Baranger et al. Sep 2000 A
6122520 Want et al. Sep 2000 A
6144638 Obenhuber et al. Nov 2000 A
6148199 Hoffman et al. Nov 2000 A
6154776 Martin Nov 2000 A
6160804 Ahmed et al. Dec 2000 A
6177905 Welch Jan 2001 B1
6188649 Birukawa et al. Feb 2001 B1
6199032 Anderson Mar 2001 B1
6208629 Jaszewski et al. Mar 2001 B1
6208841 Wallace et al. Mar 2001 B1
6212395 Lu et al. Apr 2001 B1
6218930 Katzenberg et al. Apr 2001 B1
6240078 Kuhnel et al. May 2001 B1
6240083 Wright May 2001 B1
6240291 Narasimhan et al. May 2001 B1
6246751 Bergl et al. Jun 2001 B1
6249252 Dupray Jun 2001 B1
6256300 Ahmed et al. Jul 2001 B1
6256334 Adachi Jul 2001 B1
6259405 Stewart et al. Jul 2001 B1
6262988 Vig Jul 2001 B1
6269246 Rao et al. Jul 2001 B1
6285662 Watannabe Sep 2001 B1
6304596 Yamano et al. Oct 2001 B1
6304906 Bhatti et al. Oct 2001 B1
6317599 Rappaport et al. Nov 2001 B1
6326918 Stewart Dec 2001 B1
6336035 Somoza et al. Jan 2002 B1
6336152 Richman et al. Jan 2002 B1
6347091 Wallentin et al. Feb 2002 B1
6356758 Almeida et al. Mar 2002 B1
6393290 Ufongene May 2002 B1
6397040 Titmuss et al. May 2002 B1
6404772 Beach et al. Jun 2002 B1
6421714 Rai et al. Jul 2002 B1
6429879 Sturgeon et al. Aug 2002 B1
6446206 Feldbaum Sep 2002 B1
6456239 Werb et al. Sep 2002 B1
6470025 Wilson et al. Oct 2002 B1
6473449 Cafarella et al. Oct 2002 B1
6493679 Rappaport et al. Dec 2002 B1
6496290 Lee Dec 2002 B1
6512916 Forbes, Jr. Jan 2003 B1
6526275 Calvert Feb 2003 B1
6535732 McIntosh et al. Mar 2003 B1
6564380 Murphy May 2003 B1
6567146 Hirakata et al. May 2003 B2
6567416 Chuah May 2003 B1
6574240 Tzeng Jun 2003 B1
6580700 Pinard et al. Jun 2003 B1
6587680 Ala-Laurila et al. Jul 2003 B1
6587835 Treyz et al. Jul 2003 B1
6603970 Huelamo Platas et al. Aug 2003 B1
6614787 Jain et al. Sep 2003 B1
6615276 Mastrianni et al. Sep 2003 B1
6624762 End, III Sep 2003 B1
6625454 Rappaport et al. Sep 2003 B1
6631267 Clarkson et al. Oct 2003 B1
6650912 Chen et al. Nov 2003 B2
6658389 Alpdemir Dec 2003 B1
6659947 Carter et al. Dec 2003 B1
6661787 O'Connell et al. Dec 2003 B1
6674403 Gray et al. Jan 2004 B2
6677894 Sheynblat et al. Jan 2004 B2
6678516 Nordman et al. Jan 2004 B2
6678802 Hickson Jan 2004 B2
6687498 McKenna et al. Feb 2004 B2
6697415 Mahany Feb 2004 B1
6721334 Ketcham Apr 2004 B1
6725260 Philyaw Apr 2004 B1
6738629 McCormick et al. May 2004 B1
6747961 Ahmed et al. Jun 2004 B1
6756940 Oh et al. Jun 2004 B2
6760324 Scott et al. Jul 2004 B1
6785275 Boivie et al. Aug 2004 B1
6798788 Viswanath et al. Sep 2004 B1
6801782 McCrady et al. Oct 2004 B2
6826399 Hoffman et al. Nov 2004 B1
6839338 Amara et al. Jan 2005 B1
6839348 Tang et al. Jan 2005 B2
6839388 Vaidyanathan Jan 2005 B2
6847620 Meier Jan 2005 B1
6847892 Zhou et al. Jan 2005 B2
6856800 Henry et al. Feb 2005 B1
6879812 Agrawal et al. Apr 2005 B2
6901439 Bonasia et al. May 2005 B1
6917688 Yu et al. Jul 2005 B2
6934260 Kanuri Aug 2005 B1
6937566 Forslow Aug 2005 B1
6938079 Anderson et al. Aug 2005 B1
6957067 Iyer et al. Oct 2005 B1
6973622 Rappaport et al. Dec 2005 B1
6978301 Tindal Dec 2005 B2
6980533 Abraham et al. Dec 2005 B1
6985469 Leung Jan 2006 B2
6993683 Bhat et al. Jan 2006 B2
6996630 Masaki et al. Feb 2006 B1
7013157 Norman et al. Mar 2006 B1
7020438 Sinivaara et al. Mar 2006 B2
7020773 Otway et al. Mar 2006 B1
7024199 Massie et al. Apr 2006 B1
7024394 Ashour et al. Apr 2006 B1
7027773 McMillin Apr 2006 B1
7031705 Grootwassink Apr 2006 B2
7035220 Simcoe Apr 2006 B1
7039037 Wang et al. May 2006 B2
7058414 Rofheart et al. Jun 2006 B1
7062566 Amara et al. Jun 2006 B2
7068999 Ballai Jun 2006 B2
7079537 Kanuri et al. Jul 2006 B1
7089322 Stallmann Aug 2006 B1
7092529 Yu et al. Aug 2006 B2
7110756 Diener Sep 2006 B2
7116979 Backes et al. Oct 2006 B2
7126913 Patel et al. Oct 2006 B1
7134012 Doyle et al. Nov 2006 B2
7139829 Wenzel et al. Nov 2006 B2
7142867 Gandhi et al. Nov 2006 B1
7146166 Backes et al. Dec 2006 B2
7155236 Chen et al. Dec 2006 B2
7155518 Forslow Dec 2006 B2
7158777 Lee et al. Jan 2007 B2
7159016 Baker Jan 2007 B2
7221927 Kolar et al. May 2007 B2
7224970 Smith et al. May 2007 B2
7239862 Clare et al. Jul 2007 B1
7246243 Uchida Jul 2007 B2
7263366 Miyashita Aug 2007 B2
7274730 Nakabayashi Sep 2007 B2
7280495 Zweig et al. Oct 2007 B1
7290051 Dobric et al. Oct 2007 B2
7293136 More et al. Nov 2007 B1
7310664 Merchant et al. Dec 2007 B1
7317914 Adya et al. Jan 2008 B2
7320070 Baum Jan 2008 B2
7324468 Fischer Jan 2008 B2
7324487 Saito Jan 2008 B2
7324489 Iyer et al. Jan 2008 B1
7349412 Jones et al. Mar 2008 B1
7350077 Meier et al. Mar 2008 B2
7359676 Hrastar Apr 2008 B2
7370362 Olson et al. May 2008 B2
7376080 Riddle et al. May 2008 B1
7379423 Caves et al. May 2008 B1
7379475 Minami et al. May 2008 B2
7382756 Barber et al. Jun 2008 B2
7417953 Hicks et al. Aug 2008 B2
7421248 Laux et al. Sep 2008 B1
7421487 Peterson et al. Sep 2008 B1
7440416 Mahany et al. Oct 2008 B2
7443823 Hunkeler et al. Oct 2008 B2
7447502 Buckley Nov 2008 B2
7451316 Halasz et al. Nov 2008 B2
7460855 Barkley et al. Dec 2008 B2
7466678 Cromer et al. Dec 2008 B2
7475130 Silverman Jan 2009 B2
7477894 Sinha Jan 2009 B1
7480264 Duo et al. Jan 2009 B1
7483390 Rover et al. Jan 2009 B2
7489648 Griswold Feb 2009 B2
7493407 Leedom et al. Feb 2009 B2
7505434 Backes Mar 2009 B1
7509096 Palm et al. Mar 2009 B2
7529925 Harkins May 2009 B2
7551574 Peden, II et al. Jun 2009 B1
7551619 Tiwari Jun 2009 B2
7558266 Hu Jul 2009 B2
7570656 Raphaeli et al. Aug 2009 B2
7573859 Taylor Aug 2009 B2
7577453 Matta Aug 2009 B2
7592906 Hanna et al. Sep 2009 B1
7603119 Durig et al. Oct 2009 B1
7636363 Chang et al. Dec 2009 B2
7665132 Hisada et al. Feb 2010 B2
7680501 Sillasto et al. Mar 2010 B2
7693526 Qian et al. Apr 2010 B2
7715432 Bennett May 2010 B2
7716379 Ruan et al. May 2010 B2
7724703 Matta et al. May 2010 B2
7724704 Simons et al. May 2010 B2
7729278 Chari et al. Jun 2010 B2
7733868 Van Zijst Jun 2010 B2
7746897 Stephenson et al. Jun 2010 B2
7788475 Zimmer et al. Aug 2010 B2
7805529 Galluzzo et al. Sep 2010 B2
7817554 Skog et al. Oct 2010 B2
7844298 Riley Nov 2010 B2
7865713 Chesnutt et al. Jan 2011 B2
7873061 Gast et al. Jan 2011 B2
7894852 Hansen Feb 2011 B2
7912982 Murphy Mar 2011 B2
7920548 Lor et al. Apr 2011 B2
7929922 Kubo Apr 2011 B2
7945399 Nosovitsky et al. May 2011 B2
7986940 Lee et al. Jul 2011 B2
8019082 Wiedmann et al. Sep 2011 B1
8116275 Matta et al. Feb 2012 B2
8150357 Aragon Apr 2012 B2
20010007567 Ando et al. Jul 2001 A1
20010024953 Balogh Sep 2001 A1
20020021701 Lavian et al. Feb 2002 A1
20020052205 Belostotsky et al. May 2002 A1
20020060995 Cervello et al. May 2002 A1
20020062384 Tso May 2002 A1
20020069278 Forslow Jun 2002 A1
20020078361 Giroux et al. Jun 2002 A1
20020080790 Beshai Jun 2002 A1
20020087699 Karagiannis et al. Jul 2002 A1
20020094824 Kennedy et al. Jul 2002 A1
20020095486 Bahl Jul 2002 A1
20020101868 Clear et al. Aug 2002 A1
20020116655 Lew et al. Aug 2002 A1
20020157020 Royer Oct 2002 A1
20020174137 Wolff et al. Nov 2002 A1
20020176437 Busch et al. Nov 2002 A1
20020188756 Weil et al. Dec 2002 A1
20020191572 Weinstein et al. Dec 2002 A1
20020194251 Richter et al. Dec 2002 A1
20030014646 Buddhikot et al. Jan 2003 A1
20030018889 Burnett et al. Jan 2003 A1
20030043073 Gray et al. Mar 2003 A1
20030055959 Sato Mar 2003 A1
20030107590 Levillain et al. Jun 2003 A1
20030120764 Laye et al. Jun 2003 A1
20030133450 Baum Jul 2003 A1
20030134642 Kostic et al. Jul 2003 A1
20030135762 Macaulay Jul 2003 A1
20030156586 Lee et al. Aug 2003 A1
20030174706 Shankar et al. Sep 2003 A1
20030193910 Shoaib et al. Oct 2003 A1
20030204596 Yadav Oct 2003 A1
20030227934 White et al. Dec 2003 A1
20040002343 Brauel et al. Jan 2004 A1
20040003285 Whelan et al. Jan 2004 A1
20040019857 Teig et al. Jan 2004 A1
20040025044 Day Feb 2004 A1
20040029580 Haverinen et al. Feb 2004 A1
20040030777 Reedy et al. Feb 2004 A1
20040030931 Chamandy et al. Feb 2004 A1
20040038687 Nelson Feb 2004 A1
20040044749 Harkin Mar 2004 A1
20040047320 Eglin Mar 2004 A1
20040053632 Nikkelen et al. Mar 2004 A1
20040054569 Pombo et al. Mar 2004 A1
20040054774 Barber et al. Mar 2004 A1
20040054926 Ocepek et al. Mar 2004 A1
20040062267 Minami et al. Apr 2004 A1
20040064560 Zhang et al. Apr 2004 A1
20040068668 Lor et al. Apr 2004 A1
20040078598 Barber et al. Apr 2004 A1
20040093506 Grawrock et al. May 2004 A1
20040095914 Katsube et al. May 2004 A1
20040095932 Astarabadi et al. May 2004 A1
20040106403 Mori et al. Jun 2004 A1
20040111640 Baum Jun 2004 A1
20040114546 Seshadri et al. Jun 2004 A1
20040119641 Rapeli Jun 2004 A1
20040120370 Lupo Jun 2004 A1
20040132438 White Jul 2004 A1
20040143428 Rappaport et al. Jul 2004 A1
20040143755 Whitaker et al. Jul 2004 A1
20040165545 Cook Aug 2004 A1
20040174900 Volpi et al. Sep 2004 A1
20040184475 Meier Sep 2004 A1
20040208570 Reader Oct 2004 A1
20040214572 Thompson et al. Oct 2004 A1
20040221042 Meier Nov 2004 A1
20040230370 Tzamaloukas Nov 2004 A1
20040233234 Chaudhry et al. Nov 2004 A1
20040236702 Fink et al. Nov 2004 A1
20040246937 Duong et al. Dec 2004 A1
20040246962 Kopeikin et al. Dec 2004 A1
20040252656 Shiu et al. Dec 2004 A1
20040255167 Knight Dec 2004 A1
20040259542 Viitamaki et al. Dec 2004 A1
20040259555 Rappaport et al. Dec 2004 A1
20040259575 Perez-Breva et al. Dec 2004 A1
20050015592 Lin Jan 2005 A1
20050021979 Wiedmann et al. Jan 2005 A1
20050025105 Rue Feb 2005 A1
20050026611 Backes Feb 2005 A1
20050030894 Stephens Feb 2005 A1
20050030929 Swier et al. Feb 2005 A1
20050037818 Seshadri et al. Feb 2005 A1
20050040968 Damarla et al. Feb 2005 A1
20050054326 Rogers Mar 2005 A1
20050054350 Zegelin Mar 2005 A1
20050058132 Okano et al. Mar 2005 A1
20050059405 Thomson et al. Mar 2005 A1
20050059406 Thomson et al. Mar 2005 A1
20050064873 Karaoguz et al. Mar 2005 A1
20050068925 Palm et al. Mar 2005 A1
20050073980 Thomson et al. Apr 2005 A1
20050078644 Tsai et al. Apr 2005 A1
20050097618 Arling et al. May 2005 A1
20050114649 Challener et al. May 2005 A1
20050120125 Morten et al. Jun 2005 A1
20050122927 Wentink Jun 2005 A1
20050122977 Lieberman Jun 2005 A1
20050128142 Shin et al. Jun 2005 A1
20050128989 Bhagwat et al. Jun 2005 A1
20050144237 Heredia et al. Jun 2005 A1
20050147032 Lyon et al. Jul 2005 A1
20050154933 Hsu et al. Jul 2005 A1
20050157730 Grant et al. Jul 2005 A1
20050159154 Goren Jul 2005 A1
20050163078 Oba et al. Jul 2005 A1
20050163146 Ota et al. Jul 2005 A1
20050175027 Miller et al. Aug 2005 A1
20050180345 Meier Aug 2005 A1
20050180358 Kolar et al. Aug 2005 A1
20050181805 Gallagher Aug 2005 A1
20050190714 Gorbatov et al. Sep 2005 A1
20050193103 Drabik Sep 2005 A1
20050207336 Choi et al. Sep 2005 A1
20050213519 Relan et al. Sep 2005 A1
20050220033 DelRegno et al. Oct 2005 A1
20050223111 Bhandaru et al. Oct 2005 A1
20050239461 Verma et al. Oct 2005 A1
20050240665 Gu et al. Oct 2005 A1
20050243737 Dooley et al. Nov 2005 A1
20050245258 Classon et al. Nov 2005 A1
20050245269 Demirhan et al. Nov 2005 A1
20050259597 Benedetto et al. Nov 2005 A1
20050259611 Bhagwat et al. Nov 2005 A1
20050268335 Le et al. Dec 2005 A1
20050270992 Sanzgiri et al. Dec 2005 A1
20050273442 Bennett et al. Dec 2005 A1
20050276218 Ooghe et al. Dec 2005 A1
20050286466 Tagg et al. Dec 2005 A1
20060030290 Rudolf et al. Feb 2006 A1
20060035662 Jeong et al. Feb 2006 A1
20060039395 Perez-Costa et al. Feb 2006 A1
20060041683 Subramanian et al. Feb 2006 A1
20060045050 Floros et al. Mar 2006 A1
20060046744 Dublish et al. Mar 2006 A1
20060050742 Grandhi et al. Mar 2006 A1
20060073847 Pirzada et al. Apr 2006 A1
20060094440 Meier et al. May 2006 A1
20060098607 Zeng et al. May 2006 A1
20060104224 Singh et al. May 2006 A1
20060114872 Hamada Jun 2006 A1
20060114938 Kalkunte et al. Jun 2006 A1
20060117174 Lee Jun 2006 A1
20060128415 Horikoshi et al. Jun 2006 A1
20060143496 Silverman Jun 2006 A1
20060143702 Hisada et al. Jun 2006 A1
20060152344 Mowery Jul 2006 A1
20060160540 Strutt et al. Jul 2006 A1
20060161983 Cothrell et al. Jul 2006 A1
20060165103 Trudeau et al. Jul 2006 A1
20060168383 Lin Jul 2006 A1
20060173844 Zhang et al. Aug 2006 A1
20060174336 Chen Aug 2006 A1
20060178168 Roach Aug 2006 A1
20060182118 Lam et al. Aug 2006 A1
20060189311 Cromer et al. Aug 2006 A1
20060190721 Kawakami et al. Aug 2006 A1
20060193258 Ballai Aug 2006 A1
20060200862 Olson et al. Sep 2006 A1
20060206582 Finn Sep 2006 A1
20060215601 Vieugels et al. Sep 2006 A1
20060217131 Alizadeh-Shabdiz et al. Sep 2006 A1
20060245393 Bajic Nov 2006 A1
20060248229 Saunderson et al. Nov 2006 A1
20060248331 Harkins Nov 2006 A1
20060268696 Konstantinov et al. Nov 2006 A1
20060274774 Srinivasan et al. Dec 2006 A1
20060276192 Dutta et al. Dec 2006 A1
20060285489 Francisco et al. Dec 2006 A1
20060292992 Tajima et al. Dec 2006 A1
20070002833 Bajic Jan 2007 A1
20070008884 Tang Jan 2007 A1
20070010248 Dravida et al. Jan 2007 A1
20070011318 Roth Jan 2007 A1
20070025265 Porras et al. Feb 2007 A1
20070025306 Cox et al. Feb 2007 A1
20070027964 Herrod et al. Feb 2007 A1
20070054616 Culbert Mar 2007 A1
20070058598 Ling Mar 2007 A1
20070064673 Bhandaru et al. Mar 2007 A1
20070064718 Ekl et al. Mar 2007 A1
20070067823 Shim et al. Mar 2007 A1
20070070937 Demirhan et al. Mar 2007 A1
20070076694 Iyer et al. Apr 2007 A1
20070081477 Jakkahalli et al. Apr 2007 A1
20070082677 Donald Hart et al. Apr 2007 A1
20070083924 Lu Apr 2007 A1
20070086378 Matta et al. Apr 2007 A1
20070086397 Taylor Apr 2007 A1
20070086398 Tiwari Apr 2007 A1
20070091845 Brideglall Apr 2007 A1
20070091889 Xiao et al. Apr 2007 A1
20070098086 Bhaskaran May 2007 A1
20070104197 King May 2007 A1
20070106776 Konno et al. May 2007 A1
20070115842 Matsuda et al. May 2007 A1
20070133494 Lai et al. Jun 2007 A1
20070135159 Sinivaara Jun 2007 A1
20070135866 Baker et al. Jun 2007 A1
20070136372 Proctor et al. Jun 2007 A1
20070143851 Nicodemus et al. Jun 2007 A1
20070150945 Whitaker et al. Jun 2007 A1
20070160046 Matta Jul 2007 A1
20070171909 Pignatelli Jul 2007 A1
20070183375 Tiwari Aug 2007 A1
20070189222 Kolar et al. Aug 2007 A1
20070195793 Grosser et al. Aug 2007 A1
20070230457 Kodera et al. Oct 2007 A1
20070248009 Petersen Oct 2007 A1
20070253380 Jollota et al. Nov 2007 A1
20070255116 Mehta et al. Nov 2007 A1
20070258448 Hu Nov 2007 A1
20070260720 Morain Nov 2007 A1
20070268506 Zeldin Nov 2007 A1
20070268514 Zeldin et al. Nov 2007 A1
20070268515 Freund et al. Nov 2007 A1
20070268516 Bugwadia et al. Nov 2007 A1
20070286208 Kanada et al. Dec 2007 A1
20070287390 Murphy et al. Dec 2007 A1
20070291689 Kapur et al. Dec 2007 A1
20070297329 Park et al. Dec 2007 A1
20080002588 McCaughan et al. Jan 2008 A1
20080008117 Alizadeh-Shabdiz Jan 2008 A1
20080013481 Simons et al. Jan 2008 A1
20080014916 Chen Jan 2008 A1
20080031257 He Feb 2008 A1
20080056200 Johnson Mar 2008 A1
20080056211 Kim et al. Mar 2008 A1
20080064356 Khayrallah Mar 2008 A1
20080069018 Gast Mar 2008 A1
20080080441 Park et al. Apr 2008 A1
20080102815 Sengupta et al. May 2008 A1
20080107077 Murphy May 2008 A1
20080114784 Murphy May 2008 A1
20080117822 Murphy et al. May 2008 A1
20080130523 Fridman et al. Jun 2008 A1
20080151844 Tiwari Jun 2008 A1
20080159319 Gast et al. Jul 2008 A1
20080162921 Chesnutt et al. Jul 2008 A1
20080220772 Islam et al. Sep 2008 A1
20080226075 Gast Sep 2008 A1
20080228942 Lor et al. Sep 2008 A1
20080250496 Namihira Oct 2008 A1
20080261615 Kalhan Oct 2008 A1
20080276303 Gast Nov 2008 A1
20090031044 Barrack et al. Jan 2009 A1
20090046688 Volpi et al. Feb 2009 A1
20090059930 Ryan et al. Mar 2009 A1
20090067436 Gast Mar 2009 A1
20090073905 Gast Mar 2009 A1
20090131082 Gast May 2009 A1
20090198999 Harkins Aug 2009 A1
20090247103 Aragon Oct 2009 A1
20090257437 Tiwari Oct 2009 A1
20090260083 Szeto et al. Oct 2009 A1
20090274060 Taylor Nov 2009 A1
20090287816 Matta et al. Nov 2009 A1
20090293106 Peden, II et al. Nov 2009 A1
20100002610 Bowser et al. Jan 2010 A1
20100024007 Gast Jan 2010 A1
20100067379 Zhao et al. Mar 2010 A1
20100142478 Forssell et al. Jun 2010 A1
20100172276 Aragon Jul 2010 A1
20100180016 Bugwadia et al. Jul 2010 A1
20100195549 Aragon et al. Aug 2010 A1
20100261475 Kim et al. Oct 2010 A1
20100329177 Murphy et al. Dec 2010 A1
20110128858 Matta et al. Jun 2011 A1
20110158122 Murphy et al. Jun 2011 A1
20130036453 Lyndersay et al. Feb 2013 A1
Foreign Referenced Citations (18)
Number Date Country
0 992 921 Apr 2000 EP
1 542 409 Jun 2005 EP
2 329 801 Mar 1999 GB
2429080 Feb 2007 GB
2000-215169 Aug 2000 JP
2003-234751 Aug 2003 JP
2003274454 Sep 2003 JP
2004-032525 Jan 2004 JP
WO 9403986 Feb 1994 WO
WO 9911003 Mar 1999 WO
WO 0006271 Feb 2000 WO
WO 0018148 Mar 2000 WO
WO 02089442 Nov 2002 WO
WO 03085544 Oct 2003 WO
WO 2004013986 Feb 2004 WO
WO 2004095192 Nov 2004 WO
WO 2004095800 Nov 2004 WO
WO 2006014512 Feb 2006 WO
Non-Patent Literature Citations (182)
Entry
Acampora and Winters, “A Wireless Network for Wide-Band Indoor Communications,” IEEE Journal on selected Areas in Communications, vol. SAC-5, No. 5, Jun. 1987, pp. 796-804.
Acampora and Winters, “System Applications for Wireless Indoor Communications” IEEE Communications Magazine, vol. 25, No. 8, Aug. 1987, pp. 11-20.
Bing and Subramanian, “A New Multiaccess Technique for Multimedia Wireless LANs” IEEE Global Telecommunications Conference, Nov. 3-8, 1997, pp. 1318-1322.
Durgin, et al., “Measurements and Models for Radio Path Loss and Penetration Loss in and Around Homes and Trees at 5.85 GHz”, IEEE Transactions on Communications, vol. 46, No. 11, Nov. 1988, pp. 1484-1496.
Freret et al., Applications of Spread-Spectrum Radio to Wireless Terminal Communications, Conf. Record, Nat'l Telecom. Conf., Nov. 30-Dec. 4, IEEE, 1980, pp. 69.7.1-69.7.4.
Fortune et al., “Wise Design of Indoor Wireless Systems: Practical Computation and Optimization”, IEEE Computational Science and Engineering, p. 58-68 (1995).
Geier, Jim. Wireless Lans Implementing Interoperable Networks, Chapter 3 (pp. 89-125) Chapter 4 (pp. 129-157) Chapter 5 (pp. 159-189) and Chapter 6 (pp. 193-234), 1999, United States.
Ho et al., “Antenna Effects on Indoor Obstructed Wireless Channels and a Deterministic Image-Based Wide-Based Propagation Model for In-Building Personal Communications Systems”, International Journal of Wireless Information Networks, vol. 1, No. 1, 1994.
Kim et al., “Radio Propagation Measurements and Prediction Using Three-Dimensional Ray Tracing in Urban Environments at 908 MHz and 1.9 GHz”, IEEE Transactions on Vehicular Technology, vol. 48, No. 3, May 1999.
Kleinrock and Scholl, “Packet Switching in Radio Channels: New Conflict-Free Multiple Access Schemes for a Small Number of Data Users”, Conference record 1977 ICC vol. 2 of 3, Jun. 12-15 Chicago Illinois (1977).
LAN/MAN Standards Committee of the IEEE Computer Society, Part 11:Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications:Higher Speed Physical Layer Extension in the 2.4 GHz Band, IEEE Std. 802.11b (1999).
Okamoto and Xu, IEEE, “Multimedia Communications over Wireless LANs via the SWL Protocol” Proceedings of the 13th Annual Hawaii International Conference on System Sciences, pp. 54-63 (1997).
Panjwani et al., “Interactive Computation of Coverage Regions for Wireless Communication in Multifloored Indoor Environments”, IEEE Journal on Selected Areas in Communications, vol. 14, No. 3, Apr. 1996.
Perram and Martinez, “Technology Developments for Low-Cost Residential Alarm Systems”, Proceedings 1977 Carnahan Conference on Crime Countermeasures, Apr. 6-8, pp. 45-50 (1977).
Piazzi et al., “Achievable Accuracy of Site-Specific Path-Loss Predictions in Residential Environments”, IEEE Transactions on Vehicular Technology, vol. 48, No. 3, May 1999.
Seidel et al., “Site-Specific Propagation Prediction for Wireless In-Building Personal Communications System Design”, IEEE Transactions on Vehicular Technology, vol. 43, No. 4, Nov. 1994.
Skidmore et al., “Interactive Coverage Region and System Design Simulation for Wireless Communication Systems in Multi-floored Indoor Environments, SMT Plus” IEEE ICUPC '96 Proceedings (1996).
Ullmo et al., “Wireless Propagation in Buildings: A Statistic Scattering Approach”, IEEE Transactions on Vehicular Technology, vol. 48, No. 3, May 1999.
Puttini, R., Percher, J., Me, L., and de Sousa, R. 2004. A fully distributed IDS for MANET. In Proceedings of the Ninth international Symposium on Computers and Communications 2004 vol. 2 (ISCC″04)—vol. 02 (Jun. 28-Jul. 1, 2004). ISCC. IEEE Computer Society, Washington, DC, 331-338.
P. Martinez, M. Brunner, J. Quittek, F. Straus, J. Schonwlder, S. Mertens, T. Klie “Using the Script MIB for Policy-based Configuration Management”, Technical University Braunschweig, Braunschweig, Germany, 2002.
Law, A., “New Service Discovery Protocol,” Internet Citation [Online] XP002292473 Retrieved from the Internet: <URL: http://sern.uccalgary.ca˜lawa/SENG60921/arch/SDP.htm> [retrieved Aug. 12, 2004] (15 pages).
P. Bahl et al., Radar: An In-Building RF-based User Location and Tracking System, Microsoft Research, Mar. 2000, 10 pages.
Latvala J. et al., Evaluation of RSSI-Based Human Tracking, Proceedings for the 2000 European Signal Processing Conference, Sep. 2000, 9 pages.
Bahl P. et al. “User Location and Tracking in an In-Building Radio Network,” Microsoft Research, Feb. 1999, 13 pages.
P. Bahl et al., A Software System for Locating Mobile Users: Design, Evaluation, and Lessons, Microsoft Research, Feb. 1999, 13 pages.
Chen, Yen-Chen et al., “Enabling Location-Based Services on Wireless LANs”, Networks, 2003. ICON2003. The 11th IEEE International Conference, Sep. 28-Oct. 1, 2003, pp. 567-572.
Erten, Y. Murat, “A Layered Security Architecture for Corporate 802.11 Wireless Networks”, Wireless Telecommunications Symposium, May 14-15, 2004, pp. 123-128.
Kleine-Ostmann, T., et al., “A Data Fusion Architecture for Enhanced Position Estimation in Wireless Networks,” IEEE Communications Letters , vol. 5(8), Aug. 2001, p. 343-345.
Pulson, Time Domain Corporation, Ultra wideband (UWB) Radios for Precision Location, Third IEEE Workshop on Wireless Local Area Networks, Sep. 27-28, 2001, 8 pages.
Barber, S., Monitoring 802.1 Networks, IEEE 802.11, Sydney, NSW, May 13-17, 2002.
Latvala, J. et al. “Patient Tracking in a Hospital Environment Using Extended Kalman-filtering,” Proceedings of the 1999 Middle East Conference on Networking, Nov. 1999, 5 pages.
Myllymaki, P. et al., “A Probabilistic Approach to WLAN User Location Estimation,” Third IEEE Workshop on Wireless Local Area Networks, Sep. 27-28, 2001, 12 pages.
Potter, B., and Fleck, B., 802.11 Security, O'Reilly Media Inc., Dec. 2002, 14 pages.
McCann, S., et al., “Emergency Services for 802,” IEEE 802.11-07/0505rl, Mar. 2007, 27 pages.
Di Sorte, D., et al., “On the Performance of Service Publishing in IEEE 802.11 Multi-Access Environment,” IEEE Communications Letters, vol. 11, No. 4, Apr. 2007, 3 pages.
Microsoft Computer Dictionary, Fifth Edition, Microsoft Corporation, 2002, 2 pages.
Thomson, Allan, Cisco Systems, AP Power Down Notification, Power Point slide show; IEEE standards committee meeting Jul. 15, 2008; doc.: IEEE 802.11-08/0759r0, 14 pages.
3COM, Wireless LAN Mobility System: Wireless Lan Switch and Controller Configuration Guide, 3COM, Revision A, Oct. 2004, 476 pages.
3COM, Wireless LAN Switch Manager (3WXM), 3COM, Revision C, Oct. 2004, 8 pages.
3COM, Wireless LAN Switch and Controller; Quick Start Guide, 3COM, Revision B, Nov. 2004, 10 pages.
3COM, Wireless LAN Mobility System, Wireless LAN Switch and Controller Installation and Basic Configuration Guide, Revision B, Apr. 2005, 496 pages.
Johnson, David B, et al., “DSR the Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks,” Computer Science Department, Carnegie Mellon University, Nov. 3, 2005 (http://monarch.cs.rice.edu/monarch-papers/dsr-chapter00.pdf).
Information Sciences Institute, RFC-791—Internet Protocol, DARPA, Sep. 1981.
U.S. Appl. No. 12/603,391, filed Oct. 21, 2009.
U.S. Appl. No. 12/763,057, filed Apr. 19, 2010.
U.S. Appl. No. 13/006,950, filed Jan. 14, 2011.
U.S. Appl. No. 09/866,474, filed May 29, 2001.
U.S. Appl. No. 13/017,801, filed Jan. 31, 2011.
Office Action for U.S. Appl. No. 11/784,307, mailed Sep. 22, 2009.
Final Office Action for U.S. Appl. No. 11/784,307, mailed Jun. 14, 2010.
Non-Final Office Action for U.S. Appl. No. 11/377,859, mailed Jan. 8, 2008.
Final Office Action for U.S. Appl. No. 11/377,859, mailed Aug. 27, 2008.
Office Action for U.S. Appl. No. 12/401,073, mailed Aug. 23, 2010.
Final Office Action for U.S. Appl. No. 12/401,073, mailed Apr. 1, 2011.
Office Action for U.S. Appl. No. 11/326,966, mailed Nov. 14, 2008.
Office Action for U.S. Appl. No. 12/500,392, mailed Jun. 20, 2011.
Office Action for U.S. Appl. No. 11/400,165, mailed Aug. 19, 2008.
Office Action for U.S. Appl. No. 12/489,295, mailed Apr. 27, 2011.
Office Action for U.S. Appl. No. 11/330,877, mailed Sep. 11, 2008.
Final Office Action for U.S. Appl. No. 11/330,877, mailed Mar. 13, 2009.
Office Action for U.S. Appl. No. 11/330,877, mailed Aug. 6, 2009.
Final Office Action for U.S. Appl. No. 11/330,877, mailed Apr. 22, 2010.
Office Action for U.S. Appl. No. 11/330,877, mailed Jan. 13, 2011.
Final Office Action for U.S. Appl. No. 11/330,877, mailed May 27, 2011.
Office Action for U.S. Appl. No. 11/351,104, mailed Oct. 28, 2008.
Office Action for U.S. Appl. No. 11/351,104, mailed Dec. 2, 2009.
Final Office Action for U.S. Appl. No. 11/351,104, mailed Jun. 10, 2009.
Office Action for U.S. Appl. No. 11/351,104, mailed May 26, 2010.
Office Action for U.S. Appl. No. 11/351,104, mailed Nov. 29, 2010.
Office Action for U.S. Appl. No. 11/351,104, mailed Jul. 26, 2011.
Office Action for U.S. Appl. No. 11/437,537, mailed Dec. 23, 2008.
Final Office Action for U.S. Appl. No. 11/437,537, mailed Jul. 16, 2009.
Office Action for U.S. Appl. No. 11/331,789, mailed Jun. 13, 2008.
Final Office Action for U.S. Appl. No. 11/331,789, mailed Oct. 23, 2008.
Office Action for U.S. Appl. No. 11/331,789, mailed Aug. 5, 2009.
Office Action for U.S. Appl. No. 12/785,362, mailed Apr. 22, 2011.
Office Action for U.S. Appl. No. 11/417,830, mailed Nov. 14, 2008.
Final Office Action for U.S. Appl. No. 11/417,830, mailed May 28, 2009.
Office Action for U.S. Appl. No. 11/592,891, mailed Jan. 15, 2009.
Final Office Action for U.S. Appl. No. 11/592,891, mailed Jul. 20, 2009.
Office Action for U.S. Appl. No. 11/595,119, mailed Jul. 21, 2009.
Final Office Action for U.S. Appl. No. 11/595,119, mailed Jan. 5, 2010.
Office Action for U.S. Appl. No. 11/595,119, mailed Aug. 19, 2010.
Final Office Action for U.S. Appl. No. 11/595,119, mailed Aug. 2, 2011.
Office Action for U.S. Appl. No. 11/604,075, mailed May 3, 2010.
Office Action for U.S. Appl. No. 11/845,029, mailed Jul. 9, 2009.
Final Office Action for U.S. Appl. No. 11/845,029, mailed Jan. 25, 2010.
Office Action for U.S. Appl. No. 11/845,029, mailed May 14, 2010.
Final Office Action for U.S. Appl. No. 11/845,029, mailed Dec. 9, 2010.
Office Action for U.S. Appl. No. 11/437,538, mailed Dec. 22, 2008.
Final Office Action for U.S. Appl. No. 11/437,538, mailed Jun. 10, 2009.
Office Action for U.S. Appl. No. 11/437,387, mailed Dec. 23, 2008.
Final Office Action for U.S. Appl. No. 11/437,387, mailed Jul. 15, 2009.
Office Action for U.S. Appl. No. 11/437,582, mailed Jan. 8, 2009.
Final Office Action for U.S. Appl. No. 11/437,582, mailed Jul. 22, 2009.
Office Action for U.S. Appl. No. 11/801,964, mailed Sep. 17, 2010.
Final Office Action for U.S. Appl. No. 11/801,964, mailed May 11, 2011.
Office Action for U.S. Appl. No. 12/304,100, mailed Jun. 17, 2011.
Office Action for U.S Appl. No. 11/487,722, mailed Aug. 7, 2009.
Office Action for U.S. Appl. No. 11/643,329, mailed Jul. 9, 2010.
Office Action for U.S. Appl. No. 11/648,359, mailed Nov. 19, 2009.
Office Action for U.S. Appl. No. 11/944,346, mailed Nov. 23, 2010.
Office Action for U.S. Appl. No. 12/077,051, mailed Dec. 28, 2010.
Office Action for U.S. Appl. No. 12/113,535, mailed Apr. 21, 2011.
Office Action for U.S. Appl. No. 11/852,234, mailed Jun. 29, 2009.
Office Action for U.S. Appl. No. 11/852,234, mailed Jan. 21, 2010.
Office Action for U.S. Appl. No. 11/852,234, mailed Aug. 9, 2010.
Office Action for U.S. Appl. No. 11/852,234, mailed Apr. 27, 2011.
Office Action for U.S. Appl. No. 11/970,484, mailed Nov. 24, 2010.
Final Office Action for U.S. Appl. No. 11/970,484, mailed Jul. 22, 2011.
Office Action for U.S. Appl. No. 12/172,195, mailed Jun. 1, 2010.
Office Action for U.S. Appl. No. 12/172,195, mailed Nov. 12, 2010.
Office Action for U.S. Appl. No. 12/336,492, mailed Sep. 15, 2011.
Office Action for U.S. Appl. No. 12/210,917, mailed Nov. 15, 2010.
Final Office Action for U.S. Appl. No. 12/210,917, mailed May 13, 2011.
Office Action for U.S. Appl. No. 12/350,927, mailed Aug. 17, 2011.
Office Action for U.S. Appl. No. 12/365,891, mailed Aug. 29, 2011.
Office Action for U.S. Appl. No. 10/235,338, mailed Jan. 8, 2003.
Office Action for U.S. Appl. No. 11/094,987, mailed Dec. 27, 2007.
Final Office Action for U.S. Appl. No. 11/094,987, mailed May 23, 2008.
Office Action for U.S. Appl. No. 11/094,987, mailed Oct. 21, 2008.
Office Action for U.S. Appl. No. 12/474,020, mailed Jun. 3, 2010.
Final Office Action for U.S. Appl. No. 12/474,020, mailed Oct. 4, 2010.
Office Action for U.S. Appl. No. 09/866,474, mailed Nov. 30, 2004.
Final Office Action for U.S. Appl. No. 09/866,474, mailed Jun. 10, 2005.
Office Action for U.S. Appl. No. 10/667,027, mailed Jul. 29, 2005.
Final Office Action for U.S. Appl. No. 10/667,027, mailed Mar. 10, 2006.
Office Action for U.S. Appl. No. 10/667,027, mailed May 5, 2006.
Final Office Action for U.S. Appl. No. 10/667,027, mailed Feb. 26, 2007.
Office Action for U.S. Appl. No. 10/666,848, mailed Mar. 22, 2007.
Office Action for U.S. Appl. No. 10/667,136, mailed Jan. 25, 2006.
Office Action for U.S. Appl. No. 10/667,136, mailed Aug. 28, 2006.
Final Office Action for U.S. Appl. No. 10/667,136, mailed Mar. 9, 2007.
International Search Report and Written Opinion for PCT/US05/004702, mailed Aug. 10, 2006.
International Search Report and Written Opinion for PCT/US2006/009525, mailed Sep. 13, 2007.
International Search Report and Written Opinion for PCT/US06/40500, mailed Aug. 17, 2007.
International Search Report and Written Opinion for PCT/US06/40498, mailed Dec. 28, 2007.
International Search Report and Written Opinion for PCT/US2007/012194 dated Feb. 4, 2008.
International Search Report and Written Opinion for PCT/US06/40499, mailed Dec. 13, 2007.
International Search Report and Written Opinion for PCT/US2007/19696, mailed Feb. 29, 2008.
International Search Report and Written Opinion for PCT/US2007/12016, mailed Jan. 4, 2008.
International Search Report and Written Opinion for PCT/US2007/012195, mailed Mar. 19, 2008.
International Search Report and Written Opinion for PCT/US07/013758 mailed Apr. 3, 2008.
First Office Action for Chinese Application No. 2007800229623.X , mailed Dec. 31, 2010.
International Search Report and Written Opinion for PCT/US07/013757, mailed Jan. 22, 2008.
International Search Report and Written Opinion for PCT/US07/14847, mailed Apr. 1, 2008.
International Search Report and Written Opinion for PCT/US07/089134, mailed Apr. 10, 2008.
International Search Report and Written Opinion for PCT/US2008/010708, mailed May 18, 2009.
Supplementary Partial European Search Report for European Application No. 02770460, mailed Aug. 20, 2004.
Supplementary Partial European Search Report for European Application No. 02770460, mailed Dec. 15, 2004.
Examination Report for European Application No. 02770460, Mar. 18, 2005.
Summons for Oral Hearing Proceedings for European Application No. 02770460, Jan. 31, 2006.
International Search Report for PCT/US02/28090, mailed Aug. 13, 2003.
International Preliminary Examination Report for PCT/US02/28090, mailed Oct. 29, 2003.
Examination Report for European Application No. 06006504, mailed Oct. 10, 2006.
English Translation of Office Action for Japanese Application No. 2006-088348, mailed Jan. 4, 2011.
International Search Report and Written Opinion for PCT/US04/30769, mailed Oct. 4, 2005.
International Search Report and Written Opinion for PCT/US04/30683, mailed Feb. 10, 2006.
International Search Report and Written Opinion for PCT/US04/30684, mailed Feb. 10, 2006.
Aerohive Blog, posted by Devin Akin, Cooperative Control: Part 3, [Online] Retrieved from the Internet: <URL: http://blog.aerohive.com/blog/?p=71> Mar. 1, 2010 (3 pages).
Wikipedia, Wireless LAN, 2 definitions for wireless LAN roaming, [Online] [retrieved Oct. 4, 2010] Retrieved from the Internet: <URL: http://en.wikipedia.org/wiki/Wireless—LAN> (1 page).
U.S. Appl. No. 12/957,997, filed Dec. 1, 2010.
U.S. Appl. No. 13/447,656, filed Apr. 16, 2012.
U.S. Appl. No. 13/396,124, filed Feb. 14, 2012.
U.S. Appl. No. 13/437,669, filed Apr. 2, 2012.
U.S. Appl. No. 13/437,673, filed Apr. 2, 2012.
Office Action for U.S. Appl. No. 12/401,073, mailed Sep. 20, 2011.
Final Office Action for U.S. Appl. No. 12/489,295, mailed Jan. 18, 2012.
Office Action for U.S. Appl. No. 11/351,104, mailed Feb. 15, 2012.
Office Action for U.S. Appl. No. 11/417,993, mailed Oct. 29, 2008.
Office Action for U.S. Appl. No. 11/845,029, mailed Sep. 27, 2011.
Office Action for U.S. Appl. No. 12/683,281, mailed Jan. 20, 2012.
Final Office Action for U.S. Appl. No. 12/304,100, mailed Feb. 2, 2012.
Final Office Action for U.S. Appl. No. 12/077,051, mailed Oct. 25, 2011.
Final Office Action for U.S. Appl. No. 12/113,535, mailed Jan. 3, 2012.
Office Action for U.S. Appl. No. 12/113,535, mailed Apr. 20, 2012.
Final Office Action for U.S. Appl. No. 11/852,234, mailed Jan. 20, 2012.
Office Action for U.S. Appl. No. 12/210,917, mailed Dec. 5, 2011.
Final Office Action for U.S. Appl. No. 12/350,927, mailed Jan. 18, 2012.
Second Office Action for Chinese Application No. 2007800229623.X , mailed Mar. 7, 2012—translation Yes.
Extended Supplementary European Search Report for Application No. 07796005.2, mailed Feb. 14, 2012.
Office Action for Canadian Application No. 2,638,754, mailed Oct. 3, 2011.
Related Publications (1)
Number Date Country
20100040059 A1 Feb 2010 US
Continuations (1)
Number Date Country
Parent 11417993 May 2006 US
Child 12370562 US