Identity-based networking

Information

  • Patent Grant
  • 7551619
  • Patent Number
    7,551,619
  • Date Filed
    Wednesday, April 5, 2006
    19 years ago
  • Date Issued
    Tuesday, June 23, 2009
    16 years ago
  • CPC
  • US Classifications
    Field of Search
    • US
    • 370 235000
    • 370 338000
    • 370 328000
    • 370 395000
    • 370 392000
    • 370 463000
    • 370 331000
    • 370 409000
    • 370 229000
    • 370 230000
    • 370 389000
    • 370 401000
    • 370 393000
    • 370 358000
    • 709 249000
    • 709 218-223
    • 709 245000
    • 709 246000
    • 709 226000
    • 709 232000
    • 709 230000
    • 709 228000
    • 455 446000
    • 455 422000
    • 713 150000
    • 713 182000
    • 726 011000
    • 398 079000
  • International Classifications
    • H04L12/28
    • H04L12/56
    • Term Extension
      378
Abstract
A technique for identity based networking is disclosed. A system according to the technique can include a WAN, a first VLAN, a second VLAN, and a network database. The first VLAN and second VLAN can be coupled to the WAN. The network database can include VLAN information. In operation, a client that is authorized on the second VLAN can attempt to connect to the first VLAN. A switch in the WAN can perform a lookup in the network database and determine that the client is authorized on the second VLAN. Based on this information, the client can be connected to the second VLAN using VLAN tunneling.
Description
BACKGROUND

A wide area network (WAN) is a computer network covering a large geographical area. Typically, a WAN is used to connect local area networks (LANs) together. A WAN can involve a vast array of network devices, network resources, and the like. The most well-known WAN is the Internet.


Organizations often have a separate LAN for every regional office. Each LAN is connected to each other thereby forming the organization's WAN. When a user travels from one office to another, the user can access his/her network resources over the WAN, such as email, calendar and task list. However, the user will not have the same IP address, access to local network resources, firewall settings, etc., because the user is accessing the LAN remotely.


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.


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 identity based networking involves virtual LAN (VLAN) tunneling between mobility domains. An example of a system according to the technique includes a WAN, a first VLAN, a second VLAN, and a network database. The first VLAN, the second VLAN and the network database are coupled to the WAN. The network database includes VLAN information. In operation, a client that is authorized on the second VLAN attempts to connect to the first VLAN. A switch in the WAN performs a lookup in the network database and determines that the client is authorized on the second VLAN. Based on this information, the client is connected to the second VLAN using VLAN tunneling.


In alternate embodiments, the switch can be a network domain member and the system can further include a network domain seed. The network domain seed can be coupled to the network domain member and the network database can be stored on the network domain seed. In order to perform a lookup in the network database, the network domain member can query the network domain seed for information.


In another embodiment, the system can further include a second network domain seed and a second network domain member. The second network domain seed can be coupled to the first network domain seed and the second network domain member. The first network domain member can tunnel to the second network domain seed to connect the client to the second VLAN. In another example, the network database can be stored on the second network domain seed and can include IP addresses for switches on the WAN, VLAN names, and VLAN tunnel affinities.


In another embodiment, the system can further include a third network domain member that supports the second VLAN. The second network domain member can have a first tunnel affinity and the third network domain member can have a second tunnel affinity. The client can tunnel to the network domain member with the highest tunnel affinity. In other embodiments, the network domain seeds and the network domain members can be in geographically distinct locations.


In another embodiment, the system can further include a first access point, a second access point, and a third access point. Each of the access points can be coupled to the switch. The access points can be used to triangulate the position of the client in order to pinpoint the client's exact location.


An example of a method according to the technique involves receiving a log-in request from a client. The log-in request is received on a first VLAN. VLAN information associated with the client configuration on a second VLAN is provided. Using the VLAN information, the client is determined to be configured on the second VLAN. The client is then connected to the second VLAN using VLAN tunneling.


In additional embodiments, the method can involve a first network domain member and a second network domain member. The log-in request can be received by the first network domain member. The first network domain member can tunnel to the second network domain member in order to connect the client to the second VLAN. The method can also involve a network domain seed and a network database. The network domain seed can be queried for the VLAN information and a lookup can be performed in the network database.


In another embodiment, information can be retrieved from a plurality of network domain seeds that are coupled to the WAN. The VLAN information can include tunnel affinity information of two network domain members. The tunnel affinities can be compared and the client connected to the network domain member with the highest tunnel affinity.


Advantageously, the technique can be used to connect a remote client to an appropriate VLAN over WAN links. This technique allows a remote user to have the same experience as if connected locally. For example, the client can have the same IP address, network permissions and access to network resources while being in a geographically distinct location. These and other advantages of the present invention will become apparent to those skilled in the art upon a reading of the following descriptions and a study of the several figures of the drawings.





BRIEF DESCRIPTION OF THE DRAWINGS

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



FIG. 1 depicts an example of a system for identity based networking.



FIG. 2 depicts an alternative example of a system for identity based networking.



FIG. 3 depicts an alternative example of a system for identity based networking.



FIG. 4 depicts an alternative example of a system for identity based networking.



FIG. 5 depicts an example of a location system.



FIG. 6 depicts a flow chart of an example of a method for identity based networking.



FIG. 7 depicts a flow chart of an alternative example of a method for identity based networking.



FIG. 8 depicts a flow chart of an alternative example of a method for identity based networking.



FIG. 9 depicts a flow chart of an alternative example of a method for identify based networking.



FIG. 10 depicts a flow chart of an example of a method for client location.





DETAILED DESCRIPTION

In the following description, several specific details are presented to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention can be practiced without one or more of the specific details, or in combination with other components, etc. In other instances, well-known implementations or operations are not shown or described in detail to avoid obscuring aspects of various embodiments, of the invention.



FIG. 1 depicts an example of a system 100 for identity based networking. In the example of FIG. 1, the system 100 includes a WAN 102, a first VLAN 104, a second VLAN 106, and a network database 108. In the example of FIG. 1, the WAN 102 is coupled to the first VLAN 104 and the second VLAN 106. The network database 108 is also coupled to the WAN 102.


In an embodiment, the network database 108 can contain a variety of information, including, but not limited to, VLAN information, tunnel affinity information, an IP address for switches and/or clients on the WAN and/or VLAN, a mac address for switches and/or clients on the WAN and/or VLAN, log-in information, network permissions, etc. In another embodiment, the network database can be a forwarding database, such as is described in co-pending U.S. patent application Ser. No. 11/351,104 by Manish Tiwari entitled “System and Method for Network Integrity,” filed Feb. 8, 2006, which is incorporated herein by reference. The network database 108 can be populated by relaying network information from switches over the WAN 102 and storing the network information in the network database 108. In another embodiment, the network database 108 can be duplicatively stored on any number of switches in the network. Additionally, the network database 108 can be distributed and shared among the switches in the network rather than stored in a central location.


In the example of FIG. 1, in operation, a client 110 attempts to connect to the first VLAN 104. The attempt can be facilitated in any convenient and/or know manner, manual or automatic, including, but not limited to, logging into the network, connecting to the network via a wired or wireless connection, being detected by network components, attempting to use network resources, etc. A switch (not shown) on the network performs a lookup in the network database 108. The network database 108 contains information that the client is authorized on the second VLAN 106. Based on this information, the client 110 is connected to the second VLAN 106 via VLAN tunneling 112.


VLAN tunneling 112 can be accomplished using any convenient and/or known technique. By way of example but not limitation, tunneling can be executed on the application layer, transport layer, network layer and/or data link layer in a data network system. Tunneling can be achieved using a variety of protocols (depending on the network layer utilized), such as, by way of example and not limitation, the DNS, TLS/SSL, TFTP, FTP, HTTP, IMAP, IRC, NNTP, POP3, SIP, SMTP, SNMP, SSH, TELNET, BitTorrent, RTP, rlogin, ENRP, TCP, UDP, DCCP, SCTP, IL, RUDP, IPv4, IPv6, ICMP, IGMP, ARP, RARP, Wi-Fi, Token ring, PPP, SLIP, FDDI, ATM, Frame Relay, and/or SMDS protocol. In other embodiments, additional layers and protocols can be used that facilitate VLAN tunneling.



FIG. 2 depicts an alternative example of a system 200 for identity based networking. In the example of FIG. 2, the system 200 includes a WAN 202, a VLAN 204 and a VLAN 206. In the example of FIG. 2, the WAN 202 includes a network domain seed 208. The VLAN 204 includes a network domain member 210 and the VLAN 206 includes a network domain 212.


In the example of FIG. 2, the WAN 202 is connected to the VLAN 204 and the VLAN 206. The connection is facilitated by the network domain seed 208 which is coupled to the network domain member 210 and the network domain member 212. A network database 214 is located on the network domain seed 208. In alternate embodiments, the network database 214 can be located in any convenient and/or known location, including, but not limited to, the network domain member 210 and/or the network domain member 212.


In the example of FIG. 2, in operation, a client 216 attempts to connect to the VLAN 204. The client 216 attempts this connection by logging on to the network through the network domain member 210. In an embodiment, the client 216 can be a wired or wireless client and the network domain member 210 can be a switch that provides wired or wireless access. In another embodiment, the network domain member 210 can be a switch as described in co-pending U.S. patent application Ser. No. 11/351,104 by Manish Tiwari entitled “System and Method for Network Integrity,” filed Feb. 8, 2006.


In the example of FIG. 2, in operation, after the client 216 attempts to log-on to the network, the network domain member 210 queries the network domain seed 208 for VLAN information. The network domain seed 208 performs a lookup in the network database 214. The network database 214 provides that the client 216 is authorized on the VLAN 206. The network domain seed 208 relays the information to the network domain member 210. Based on the information, the network domain member 210 creates a tunnel 218 to the network domain member 212 facilitating the connection of the client 216 to the VLAN 206.



FIG. 3 depicts an alternative example of a system 300 for identity based networking. In the example of FIG. 3, the system 300 includes a network domain seed 302, a network domain seed 304, a network domain member 306, a network domain member 308, a network database 310, and a network database 312. The network domain seed 302 is coupled to the network domain seed 304 and the network domain member 306. The network domain seed 304 is additionally coupled to the network domain member 308. In the example of FIG.3, the network database 310 is stored on the network domain seed 302 and the network database 304 is stored on the network domain seed 312. In an embodiment, the network database 310 and the network database 312 store the same information. In other embodiments, the information stored in the network databases 310, 312 can be different.


In the example of FIG. 3, in operation, a client 314, who may be authorized on a second VLAN, attempts to connect to the network domain member 306 which supports a first VLAN. The network domain member 306 queries the network domain seed 302 for VLAN information. The network domain seed 310 performs a lookup in the network database 310. The network database 310 is populated with information received from the network domain seed 312. In another embodiment, the network database 310 could be populated with information received from theoretically any number of network domain seeds. In an embodiment, the information can be used to identify the VLAN(s) each network domain member supports. In an alternative embodiment, one or both of the network databases can be removed and the network domain seed 302 can query the network domain seed 304 to determine which VLAN the network domain member 308 supports.


In the example of FIG. 3, in operation, after performing a lookup in the network database 310, the network domain seed 302 relays VLAN information to the network domain member 306. The VLAN information provides, for example, that the client 314 is authorized on the second VLAN. The VLAN information may also provide that the second VLAN is supported by the network domain member 308. Based on the VLAN information, the network domain member 306 tunnels to the network domain member 308. Advantageously, the client 314 is connected to the second VLAN via a VLAN tunnel 316.



FIG. 4 depicts an alternative example of a system 400 for identity based networks. In the example of FIG. 4, the system 400 includes a network domain seed 402, a network domain seed 404, a network domain member 406, a network domain member 408, a network domain member 410, and a network database 412. As shown, the network domain seed 402 is coupled to the network domain seed 404. The network domain member 406 is coupled to the network domain seed 402. The network domain member 408 and the network domain member 410 are coupled to the network domain seed 404. The network database 412 is coupled to and accessible by the network domain seed 402 and the network domain seed 404. In the example of FIG. 4, the network domain member 406 supports a first VLAN while the network domain member 408 and the network domain member 410 support a second VLAN.


In the example of FIG. 4, in operation, a client 414 attempts to connect to the network domain member 406. The network domain member 406 queries the network domain seed 402 for VLAN information. The network domain seed 402 retrieves VLAN information from the network database 412. The VLAN information provides, for example, that the client 414 is authorized on the second VLAN. The VLAN information may also provide that the network domain member 408 and/or the network domain member 410 support the second VLAN. In addition, the VLAN information may provide that the tunnel affinity for the network domain member 408 is higher than the tunnel affinity for the network domain member 410. Based on this information, the network domain member 406 creates a VLAN tunnel 416 to the network domain member 408 and the client 414 is connected to the second VLAN.



FIG. 5 depicts a location system 500. In the example of FIG. 5, the system 500 includes a switch 502, an access point 504, an access point 506, and an access point 508. The access point 504, the access point 506 and the access point 508 are coupled to the switch 502. The switch 502 can be network domain member and/or a network domain seed. The access points can provide wired and/or wireless access to a network. Further, the switch and access points can be as describe in co-pending U.S. patent application Ser. No. 11/351,104 by Manish Tiwari entitled “System and Method for Network Integrity,” filed Feb. 8, 2006.


In the example of FIG. 5, in operation, a client 510 is detected by the system 500. Specifically, in the example of FIG. 5, the access point 504, the access point 506 and the access point 508 detect the client 510. The client 510 can detected by any known and/or convenient technique, including, by way of example but not limitation, sniffing for transmitted packets, monitoring access of network resources, providing network connectivity, etc. Once the client 510 is detected by the access points 504, 506, 508, the precise location of the client 510 can be calculated using any convenient and/or known technique, including, by way of example but not limitation, triangulation techniques in one or more dimensions. In other embodiments, additional access points can be coupled to the switch 502 or access points can be taken away. If additional access points are coupled to the switch 502, the location of the client may become more precise while if access points are taken away, the location of the client may become less defined.



FIG. 6 depicts a flowchart 600 of an example of a method for identity based networking. FIG. 6 is intended to illustrate connecting a client to an appropriate VLAN using VLAN tunneling. In the example of FIG. 6, the flowchart 600 starts at module 602 where a log-in request is received. The log-in request can be received by any convenient and/or known device on a network, including, by way of example and not limitation, a switch, access point, router, computer, server, etc. In addition, the log-in request can be made by a client and/or any other convenient and/or known device that can log-in to a network.


In the example of FIG. 6, the flowchart 600 continues at module 604 where VLAN information is retrieved. The VLAN information can be retrieved by any convenient and/or known device using any convenient and/or known technique. By way of example but not limitation, a first switch can query a second switch for VLAN information. The second switch can relay the information to the first switch in response to the query. In another example, a switch can perform a look-up in a network database to retrieve VLAN information. The network database can be located on the switch itself or accessible over the network. In yet another example, a first switch can query a second switch and the second switch can perform a lookup in a network database. The network database can be located on the second switch or accessible by the second switch over a network.


In the example of FIG. 6, the flowchart 600 continues at module 606 where an appropriate VLAN is determined. The appropriate VLAN can be determined by the VLAN information retrieved. In addition, the appropriate VLAN can be determined by a combination of the VLAN information retrieved and the characteristics of the log-in request.


In the example of FIG. 6, the flowchart 600 continues at module 608 where a connection to the appropriate VLAN is established. The connection can be established using any convenient and/or known technique. For example, and not limitation, a VLAN tunnel can be created for a client that is authorized on a VLAN supported by a remote switch.



FIG. 7 depicts a flowchart 700 of an alternative example of a method for identity based networking. FIG. 7 is intended to illustrate retrieving VLAN information. In the example of FIG. 7, the flowchart 700 starts at module 702 where VLAN information is queried. The query can be facilitated using any known and/or convenient technique capable of retrieving information from a database. For example, and not limitation, a first switch can query a second switch and/or a network database for VLAN information.


In the example of FIG. 7, the flowchart 700 continues at module 704 where a lookup is performed in a network database. The lookup can be performed by any device coupled to the database and/or any device that the database is stored. For example, and not limitation, the second switch can perform a lookup in a network database located locally and relay the retrieved information to the first switch. In another example, the first switch can perform a lookup in a network database that is coupled to the network.



FIG. 8 depicts a flowchart 800 of an alternative example of a method for identify based networking. FIG. 8 is intended to illustrate another method of retrieving VLAN information. In the example of 8, the flowchart 800 starts at module 802 where VLAN information is queried. The query can be facilitated using any known and/or convenient technique capable of retrieving information from a database. For example, and not limitation, a network domain member can query a network domain seed for VLAN information.


In the example of FIG. 8, the flowchart 800 continues at module 804 where information is retrieved from a plurality of network domain seeds. The information can be stored on the plurality of network domain seeds and/or can be accessed by the network domain seeds over the network. For example, and not limitation, after receiving a query, a network domain seed can query all other network domain seeds for VLAN information and relay the retrieved information to the network domain member.



FIG. 9 depicts a flowchart 900 of an alternative example of a method for identify based networking. FIG. 9 is intended to illustrate a method of connecting to a switch having the highest tunnel affinity. In the example of FIG. 9, the flowchart 900 starts with module 902 where tunnel affinity information is compared. The tunnel affinity information can be compared for two switches that support the same VLAN. For example, and not limitation, a client that is authorized on a VLAN can connect to any member that supports the VLAN. If two or more members support the VLAN, then the tunnel affinity for each member is compared and a connection is made to the member with the highest tunneling affinity.


In the example of FIG. 9, the flowchart 900 continues with module 904 where a connection is made to the member with the highest tunnel affinity. The connection can be made using any known and/or convenient technique capable of connecting one network member to another. For example, and not limitation, a first network member can create a VLAN tunnel to a second network member in order to connect a client to an authorized VLAN.



FIG. 10 depicts a flowchart 1000 of an example of a method for client location. FIG. 10 is intended to illustrate a method of locating a client that is accessing a network. In the example of FIG. 10, the flowchart 1000 starts with module 1002 where a client's location is queried. The query for a client's location can be made by any convenient and/or known device coupled to the network. For example, and not limitation, the query can be made by via a command line interface, network management software, computer, switch, router and/or any other convenient and/or known device capable of sending commands on a network.


In the example of FIG. 10, the flowchart 1000 continues at module 1004 where the location of the initial log-in request in returned. In one example, the location of the client can be sent from a switch that received the client's initial log-in request. In another example, the location of the client can be sent from a network domain seed that provided VLAN information to a switch that queried for the information. In yet another example, the switches on the ends of a VLAN tunnel can return the location of the initial log-in request.


Using the systems and/or methods depicted in the above examples, the client has the same experience from a remote location as the client would have from being local. For example, a client cam have the same IP address, same network permissions, and same access to network resources even though the client logs-on in a geographically distinct area. These characteristics are extremely beneficial in lower costs and increasing efficiency.


As used herein, the term “embodiment” means an embodiment that serves to illustrate by way of example but not limitation.


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 system comprising: a WAN;a first VLAN coupled to the WAN;a second VLAN coupled to the WAN;a network database coupled to the WAN, the network database including VLAN information;wherein, in operation, a client that is authorized on the second VLAN attempts to connect to the first VLAN, a switch on the WAN performs a lookup in the network database and determines that the client is authorized on the second VLAN, and, based on the determination, the client is connected to the second VLAN via VLAN tunneling;wherein the switch is a network domain member, the system further comprising: a network domain seed coupled to the network domain member;wherein the network database is stored on the network domain seed and the network domain member queries the network domain seed to perform the lookup in the network database.
  • 2. A system as recited in claim 1, wherein the switch is a first network domain member, the system further comprising: a first network domain seed coupled to the first network domain member;a second network domain seed coupled to the first network domain seed; anda second network domain member coupled to the second network domain seed, the second network domain member supporting the second VLAN;wherein the first network domain member tunnels to the second network domain member to connect the client to the second VLAN.
  • 3. A system as recited in claim 1, wherein the switch is a network domain member, the system further comprising: a first network domain seed coupled to the network domain member; anda second network domain seed coupled to the first network domain seed; wherein the network database is stored on the second network domain seed.
  • 4. A system as recited in claim 1, wherein the switch is a first network domain member, the system further comprising: a second network domain member supporting the second VLAN, the second network domain member having a first tunnel affinity; anda third network domain member supporting the second VLAN, the third network domain member having a second tunnel affinity;wherein the first network domain member tunnels to the second network domain member instead of the third network domain member based, at least in part, on the first tunnel affinity.
  • 5. A system as recited in claim 1, wherein the switch is a first network domain member, the system further comprising: a first network domain seed coupled to the first network domain member;a second network domain seed coupled to the first network domain seed; anda second network domain member coupled to the second network domain seed, the second network domain member supporting the second VLAN;wherein the first network domain seed, the second network domain seed, the first network domain member, and the second network domain member are in geographically distinct locations.
  • 6. A system as recited in claim 1, wherein the network database includes IP addresses for switches on the WAN, VLAN names, and VLAN tunnel affinities.
  • 7. A system as recited in claim 1, further comprising: a first access point coupled to the switch;a second access point coupled to the switch; anda third access point coupled to the switch;wherein a precise location of the client is determinable by triangulation using data detected by the first access point, the second access point and the third access point.
  • 8. A method comprising: receiving a log-in request from a client on a first VLAN;providing VLAN information associated with the client configuration on a second VLAN;determining, using the VLAN information, that the client is configured on a second VLAN;connecting the client to the second VLAN via VLAN tunneling;querying a network domain seed for the VLAN information;performing a lookup in a network database.
  • 9. A method as recited in claim 8, wherein the log-in request is received by a first network domain member and the first network domain member tunnels to a second network domain member to connect the client to the second VLAN.
  • 10. A method as recited in claim 8, further comprising: querying a network domain seed for the VLAN information; and retrieving information from a plurality of network domain seeds coupled to the WAN.
  • 11. A method as recited in claim 8, wherein the VLAN information includes tunnel affinity information of at least two network domain members, further comprising: comparing tunnel affinity information, from the VLAN information, of at least two network domain members that support the second VLAN; andconnecting the client to the network domain member with the highest tunnel affinity.
  • 12. A method as recited in claim 8, further comprising: querying for the client's location; andreturning a location of a switch that received the client's initial log-in request.
  • 13. A system comprising: means for receiving a log-in request from a client on a first VLAN;means for determining the client is configured on a second VLAN using information retrieved over a WAN;means for connecting the client to the second VLAN via VLAN tunneling;wherein said means for determining includes: means for querying a network domain seed for VLAN information:means for performing a lookup in a network database:means for returning VLAN information.
  • 14. A method as recited in claim 13, wherein the means for querying includes: means for retrieving information from a plurality of network domain seeds coupled to the WAN.
  • 15. A system as recited in claim 13 wherein said information includes tunnel affinity information, the system further comprising: means for comparing the tunnel affinity information of two network domain members that support the second VLAN; andmeans for connecting the client to the network domain member with a highest tunnel affinity.
  • 16. A system as recited in claim 13, further comprising: means for querying for a location associated with the client; andmeans for returning a location of a switch that received the log-in request from the client.
  • 17. A system as recited in claim 16, further comprising: means for determining a precise location of the client using triangulation.
CROSS-REFERENCE TO RELATED APPLICATIONS

This Application claims the benefit of U.S. Provisional Application No. 60/727,025 filed on Oct. 13, 2005, and U.S. Provisional Application No. 60/728,096 filed on Oct. 18, 2005 which are incorporated by reference.

US Referenced Citations (170)
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 Lockhart 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
4995053 Simpson et al. Feb 1991 A
5008899 Yamamoto Apr 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
5142550 Tymes Aug 1992 A
5151919 Dent Sep 1992 A
5157687 Tymes Oct 1992 A
5187675 Dent et al. Feb 1993 A
5231633 Hluchyj et al. Jul 1993 A
5280498 Tymes et al. Jan 1994 A
5285494 Sprecher et al. Feb 1994 A
5329531 Diepstraten et al. Jul 1994 A
5418812 Reyes et al. May 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
5491644 Pickering et al. Feb 1996 A
5517495 Lund May 1996 A
5519762 Bartlett May 1996 A
5528621 Heiman et al. Jun 1996 A
5561841 Markus Oct 1996 A
5568513 Croft 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
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
5828960 Tang et al. Oct 1998 A
5838907 Hansen Nov 1998 A
5844900 Hong et al. Dec 1998 A
5872968 Knox et al. Feb 1999 A
5875179 Tikalsky Feb 1999 A
5896561 Schrader et al. Apr 1999 A
5915214 Reece et al. Jun 1999 A
5920821 Seazholtz et al. Jul 1999 A
5933607 Tate 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
5982779 Krishnakumar et al. Nov 1999 A
5987062 Engwer et al. Nov 1999 A
5987328 Ephremides et al. Nov 1999 A
6005853 Wang et al. Dec 1999 A
6011784 Brown Jan 2000 A
6078568 Wright Jun 2000 A
6088591 Trompower Jul 2000 A
6119009 Baranger et al. Sep 2000 A
6160804 Ahmed et al. Dec 2000 A
6188694 Fine et al. Feb 2001 B1
6199032 Anderson Mar 2001 B1
6208629 Jaszewski et al. Mar 2001 B1
6208841 Wallace et al. Mar 2001 B1
6218930 Katzenberg et al. Apr 2001 B1
6240078 Kuhnel et al. May 2001 B1
6240083 Wright May 2001 B1
6256300 Ahmed et al. Jul 2001 B1
6256334 Adachi Jul 2001 B1
6285662 Watannabe Sep 2001 B1
6317599 Rappaport et al. Nov 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 Ulfongene May 2002 B1
6404772 Beach et al. Jun 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
6580700 Pinard et al. Jun 2003 B1
6587680 Ata-Laurila et al. Jul 2003 B1
6614787 Jain et al. Sep 2003 B1
6625454 Rappaport et al. Sep 2003 B1
6631267 Clarkson et al. Oct 2003 B1
6659947 Carter et al. Dec 2003 B1
6687498 McKenna et al. Feb 2004 B2
6725260 Philyaw Apr 2004 B1
6747961 Ahmed et al. Jun 2004 B1
6839338 Amara et al. Jan 2005 B1
6879812 Agrawal et al. Apr 2005 B2
6973622 Rappaport et al. Dec 2005 B1
6978301 Tindal Dec 2005 B2
7020773 Otway et al. Mar 2006 B1
7110756 Diener Sep 2006 B2
7376080 Riddle et al. May 2008 B1
20020052205 Belostofsky et al. May 2002 A1
20020080752 Forslow Jun 2002 A1
20020095486 Bahl Jul 2002 A1
20020101868 Clear et al. Aug 2002 A1
20020191572 Weinstein et al. Dec 2002 A1
20030014646 Buddhikot et al. Jan 2003 A1
20030018889 Burnett et al. Jan 2003 A1
20030107590 Levillain et al. Jun 2003 A1
20030174706 Shankar et al. Sep 2003 A1
20040025044 Day Feb 2004 A1
20040047320 Eglin Mar 2004 A1
20040062267 Minami et al. Apr 2004 A1
20040064560 Zhang et al. Apr 2004 A1
20040095914 Katsube et al. May 2004 A1
20040095932 Astarabadi et al. May 2004 A1
20040143428 Rappaport et al. Jul 2004 A1
20040208570 Reader Oct 2004 A1
20040230370 Tzamaloukas Nov 2004 A1
20040259555 Rappaport et al. Dec 2004 A1
20050030929 Swier et al. Feb 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
20050128989 Bhagwat et al. Jun 2005 A1
20050157730 Grant et al. Jul 2005 A1
20050180358 Kolar et al. Aug 2005 A1
20050181805 Gallagher Aug 2005 A1
20050193103 Drabik Sep 2005 A1
20050223111 Bhandaru et al. Oct 2005 A1
20050239461 Verma et al. Oct 2005 A1
20050240665 Gu et al. Oct 2005 A1
20050259597 Benedetto et al. Nov 2005 A1
20050273442 Bennett Dec 2005 A1
20050276218 Ooghe et al. Dec 2005 A1
20060045050 Floros et al. Mar 2006 A1
20060174336 Chen Aug 2006 A1
20060200862 Olson et al. Sep 2006 A1
20060245393 Bajic Nov 2006 A1
20060276192 Dutta et al. Dec 2006 A1
Foreign Referenced Citations (5)
Number Date Country
WO9403986 Feb 1994 WO
WO9911003 Mar 1999 WO
WO 03085544 Oct 2003 WO
WO 2004095192 Nov 2004 WO
WO 2004095800 Nov 2004 WO
Related Publications (1)
Number Date Country
20070086398 A1 Apr 2007 US
Provisional Applications (2)
Number Date Country
60728096 Oct 2005 US
60727025 Oct 2005 US