Next hop selection in a wireless protocol is made by selecting a least cost hop. Historically, cost has been determined by hop count, signal strength, error rate, utilization, and other factors. One technique for wireless routing selection involves defining cost based on expected transmission time (ETT) for some link (ETTI).
For example, link cost may be determined by measuring the transmission time to send a 1 Mbps stream of packets across the link and measuring its transmission time for some number of bytes. An algorithm may measure for each available bandwidth across the link, and the transmission time is defined as the time from when the packet is scheduled (specifically, sent to the radio) and the time that an acknowledgement is received.
The improvement of algorithms for next hop selection are the subject of research. Any improvements may have significant repercussions on the relevant technologies. Accordingly, any improvement in next hop selection would be advantageous.
These are but a subset of the problems and issues associated with wireless routing selection, and are intended to characterize weaknesses in the prior art by way of example. 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.
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 wireless network system is typically coupled to a wired network at some point. Such a point is sometimes referred to as an access point (AP). A plurality of untethered APs (UAPs) may be coupled to one another, and eventually to the AP, to allow a wireless network to grow to practically any size. However, as the network grows in size using UAPs, it becomes more difficult to figure out a best path from a mobile station, through the UAPs to the AP in an optimal fashion.
Advantageously, UAPs can broadcast estimated transmission time (ETT) that represents an estimated time it would take for a packet to be transmitted from the first UAP to the AP. Thus, a UAP that is right next to the AP should be able to give a low ETT to the AP. As the advertised ETTs percolate through the wireless network, UAPs can eventually settle on optimal paths to the AP. The better the estimate, the more likely the optimally chosen paths are actually optimal.
The proposed system can offer, among other advantages, accurate ETT values for use by UAPs of a wireless network. This and other advantages of the techniques described herein 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.
Embodiments of the invention are illustrated in the figures. However, the embodiments and figures are illustrative rather than limiting; they provide examples of the invention.
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.
In the example of
In some embodiments, the ETTp calculation is for the time a packet is sent from a radio until the time an acknowledgement is received. This, however, does not include time spent on a queue waiting for the radio to become available. Advantageously, by including the time spent on the queue, the ETTp calculation can take into consideration the real time it takes to transmit a packet based on load and utilization.
In the example of
The AP 304 has a comparable queue 316, which is coupled to an ETT engine 318. The wireless device 302 may or may not have an ETT engine to determine how long a packet is enqueued on the queue 312, but in the example of
Advantageously, ETT can be used by a next hop selector to decide upon an optimal next hop. In an embodiment, each AP includes a next hop selector.
From “A Radio Aware Routing Protocol for Wireless Mesh Networks” by Kulkarni et al. defines cost based on ETTl, and how ETTl can be aggregated to determine ETTp. However, the algorithm used by Kulkarni et al. can be improved in some specific cases. For example, the choice of 1 Mbps load rate for link cost calculation is arbitrary and may be significantly off. In an embodiment, expected load rate (ELR) is used instead. ELR is the load that a link would be subject to if it was selected as a next-hop.
Referring once again to the example of
In the example of
EDR is the rate determined by a rate selection algorithm. In general, the rate selection algorithm should meet the following goals: 1) To the extent possible, the selected rate should produce optimal throughput of packets transmitted to a client. This is not necessarily the same thing as minimizing retries. For instance, retransmitting one time a large packet at 54 Mbps may result in better throughput than transmitting the same large packet at a 1 Mbps with no retries. 2) To the extent possible, the algorithm should be computationally light. That is, it should not consume a lot of CPU time to determine a rate to use.
An example of a rate selection algorithm is as follows (though any applicable known or convenient rate selection algorithm could be used): The rate selection algorithm seeks to minimize retransmissions. For each client it maintains a ‘best rate’ value. The rate selection algorithm is a control system that lowers the best rate when the rate of retransmissions exceeds 50% and raises the best rate when the rate of retransmissions is less than 50%. For each transmitted packet, there are one of three possible outcomes. 1) The packet is successfully transmitted with no retransmissions, 2) the packet is successfully transmitted with one or more retransmissions, 3) the packet transmission is unsuccessful after all retransmission attempts.
For each client, a counter is maintained. When a packet is successfully transmitted with no retransmissions, this counter is incremented by 3. When a packet is successfully transmitted but with retransmissions, the counter is decremented by 6. When a packet is not successfully transmitted, the counter is not changed. When the counter reached a value of −50, then the next lower rate is made the best rate. When the counter reaches a value of 100, the next higher rate is used as the best rate; however, the best rate is not increased if it has been increased in the past 60 seconds. This prevents the best rate from increasing too fast.
For each packet, transmissions are attempted using up to four rates.
This rate fall back schedule has the following properties. 1) If the best rate is successful, then there are no retries and the client's counter is increased. 2) If the best rate fails, then the next lower rate is used multiple times. The range of the next best rate is better than the best rate, and so the next best rate has a higher probability of success. The client's counter will be decremented in this case to reflect that the best rate was unsuccessful. 3) The radio's lowest rate has the best range, and so if it fails, then the client is not reachable or the failure is due to factors not related to distance. In this case, the client's counter is unchanged because the failure is not related to rate.
If the EDR is actually determined ELR, the algorithm further reduces the bandwidth required to compute ETTl, since the EDR need not be calculated through synthesized load. Notably, as shown in
It should be noted that sensing all data rates is less efficient than using the techniques described herein. Advantageously, by using EDR, all possible rates need not be tested, making this technique more efficient. Moreover, selected rates may not be the rate actually selected by a radio transmission module. For example, if data rate selection does not yield an answer that matches an algorithm such as Kulkarni's, the actual ETTl will be different than the expected ETTl and the algorithm will make suboptimal decisions. So using EDR can lead to performance improvements as well.
In an embodiment, the ETTp calculation can be improved by considering the amount of time a packet spends being processed in intermediate nodes. This is the time it takes to receive a packet on some interface and queue it on its egress interface. This time is referred to as node transit time (NTT). Therefore, in a non-limiting embodiment, ETTp=ETTI+ETTp_nh +NTT, where ETTI is the link between a node and a next hop node, ETTp_nh is the ETTp advertised by the next hop node (e.g., the best advertised ETTp of potential next hop nodes), and NTT is the time a packet spends transiting a node. As was previously described, the ETT calculations include the time a packet spends in a queue waiting for a radio to become available. Conceptually, the NTT is the time a packet spends in a node waiting to be enqueued.
The techniques described herein work best when there are relatively few interesting destinations. Advantageously, this is exactly the case in most IP network environments. Most hosts are trying to communicate to their next hop IP router, which is typically eventually accessed over a wired network. Hence, the techniques described herein help answer the question “how do I get to the wired network?” Only a single destination need be evaluated and only a single value to ELR needs to be maintained.
In the example of
In the example of
At the UAP 502, the goal is to send traffic to the least expensive AP that is wired to a network. By least expensive, what is intended is that a weighted graph with edges that are ETT between nodes, would yield the smallest result possible (or practical). This AP may or may not be the AP closest to the UAP 502. The UAP 502, for illustrative purposes, is illustrated as a large circle with various components. However, the UAP 504, the UAPs 506, and/or the AP 508 may have similar components (not shown).
In the example of
Some time later (or concurrently) the station 510 sends packets to the UAP 502, which are received at the ingress interface 512. The NTT module 522 receives an indication, such as a first timestamp, that a first packet has been received. As much as is practical, it would probably be valuable to have the timestamp represent the exact time the first packet was received at the ingress queue 512, though an estimate may be used. At this point, the ETTp engine 514 knows only ETTp values for the UAP 504 and UAPs 506, but has no link information. It should be noted that in practice there will typically be link information as described later. Nevertheless, assuming for a moment that no link information is available, the ETTp engine 514 can provide the advertised ETTp values to the next hop selector 516, which picks an appropriate optimal path to the destination based on the advertised ETTp values. Specifically, the next hop selector 516 chooses the shortest (e.g., lowest weight) path to the destination.
The first packet is enqueued at the egress interface 518, as appropriate. It may be noted that the first packet may or may not need to be enqueued in a case where the relevant link is underutilized (or saturated but not congested). In any case, when the first packet is received at the egress interface 518, the NTT module 522 receives an indication, such as a second timestamp, that the first packet has been received at the egress interface 518. At this point, the NTT module 522, by comparing, for example, a first timestamp and a second timestamp, can calculate the amount of time that the first packet spent at the UAP 502. This information is useful for purposes that are described below.
The first packet is sent from the egress interface 518 to the UAP 504. For illustrative purposes, it is assumed that the UAP 504 is the next hop in an optimal path. In a non-limiting embodiment, the UAP 504 sends an acknowledgement, as soon as the first packet is received, that the first packet was received. The acknowledgement is received at an acknowledgement interface 526. It should be noted that the acknowledgement interface 526 may be part of a radio interface that includes the ingress interface 512 (or even the egress interface 518). In any case, the acknowledgement interface 526 provides the ETTl module 524 with an indication, such as a timestamp, that an acknowledgement was received from the next hop node. The ETTl module 524 uses the indication (e.g., second timestamp) that was generated when the first packet was enqueued on the egress interface 518 and the indication (e.g., third timestamp) that was generated upon receipt of the acknowledgement to provide an ETTl value.
At this point, the ETTp engine 514 has enough information to know ETTp from the UAP 502 to the destination. Specifically, ETTl+NTT+ETTp_nh=ETTp from the UAP 502 to the destination. This ETTp value can be provided to an ETTp broadcast engine 528. In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
In the example of
As used herein, access point (AP) refers to receiving points for any known or convenient wireless access technology. Specifically, the term AP is not intended to be limited to 802.11 APs.
Some portions of the detailed description are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of operations leading to a desired result. The operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
The algorithms and techniques described herein also relate to apparatus for performing the algorithms and techniques. This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
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.
This application claims priority to U.S. Provisional Patent Application No. 60/812,403, filed Jun. 9, 2006, and entitled WIRELESS NETWORK ARCHITECTURE, which application is hereby incorporated by reference.
| 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 et al. | 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 | Jul 1994 | A |
| 5339316 | Diepstraten | Aug 1994 | A |
| 5371783 | Rose et al. | Dec 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 |
| 5715304 | Nishida et al. | Feb 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 |
| 5828960 | Tang et al. | Oct 1998 | A |
| 5838907 | Hansen | Nov 1998 | A |
| 5844900 | Hong et al. | Dec 1998 | A |
| 5875179 | Tikalsky | Feb 1999 | A |
| 5887259 | Zicker et al. | Mar 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 |
| 5999813 | Lu et al. | Dec 1999 | A |
| 6005853 | Wang et al. | Dec 1999 | A |
| 6011784 | Brown | Jan 2000 | A |
| 6041240 | McCarthy et al. | Mar 2000 | A |
| 6078568 | Wright | Jun 2000 | A |
| 6088591 | Trompower | Jul 2000 | A |
| 6101539 | Kennelly et al. | Aug 2000 | A |
| 6118771 | Tajika et al. | Sep 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 | Jaszewki 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 |
| 6256300 | Ahmed et al. | Jul 2001 | B1 |
| 6256334 | Adachi | Jul 2001 | B1 |
| 6262988 | Vig | Jul 2001 | B1 |
| 6285662 | Watannabe | Sep 2001 | B1 |
| 6304596 | Yamano et al. | Oct 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 |
| 6535732 | McIntosh et al. | Mar 2003 | B1 |
| 6580700 | Pinard et al. | Jun 2003 | B1 |
| 6587680 | Ata-Laurila et al. | Jul 2003 | B1 |
| 6614787 | Jain et al. | Sep 2003 | B1 |
| 6624762 | End, III | Sep 2003 | B1 |
| 6625454 | Rappaport et al. | Sep 2003 | B1 |
| 6631267 | Clarkson | Oct 2003 | B1 |
| 6659947 | Carter | Dec 2003 | B1 |
| 6661787 | O'Connell | Dec 2003 | B1 |
| 6687498 | McKenna et al. | Feb 2004 | B2 |
| 6697415 | Mahany | Feb 2004 | B1 |
| 6725260 | Philyaw | Apr 2004 | B1 |
| 6747961 | Ahmed et al. | Jun 2004 | B1 |
| 6760324 | Scott et al. | Jul 2004 | B1 |
| 6785275 | Boivie et al. | Aug 2004 | B1 |
| 6839338 | Amara et al. | Jan 2005 | B1 |
| 6839348 | Tang et al. | Jan 2005 | B2 |
| 6879812 | Agrawal | Apr 2005 | B2 |
| 6957067 | Iyer et al. | Oct 2005 | B1 |
| 6973622 | Rappaport et al. | Dec 2005 | B1 |
| 6978301 | Tindal | Dec 2005 | B2 |
| 6996630 | Masaki et al. | Feb 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 |
| 7062566 | Amara et al. | Jun 2006 | B2 |
| 7068999 | Ballai | Jun 2006 | B2 |
| 7089322 | Stallmann | Aug 2006 | B1 |
| 7110756 | Diener | Sep 2006 | B2 |
| 7116979 | Backes et al. | Oct 2006 | B2 |
| 7146166 | Backes et al. | Dec 2006 | B2 |
| 7155518 | Forslow | Dec 2006 | B2 |
| 7221927 | Kolar et al. | May 2007 | B2 |
| 7224970 | Smith et al. | May 2007 | B2 |
| 7263366 | Miyashita | Aug 2007 | B2 |
| 7280495 | Zweig et al. | Oct 2007 | B1 |
| 7317914 | Adya et al. | Jan 2008 | B2 |
| 7324468 | Fischer | Jan 2008 | B2 |
| 7324487 | Saito | Jan 2008 | B2 |
| 7359676 | Hrastar | Apr 2008 | B2 |
| 7370362 | Olson et al. | May 2008 | B2 |
| 7376080 | Riddle et al. | May 2008 | B1 |
| 7421248 | Laux et al. | Sep 2008 | B1 |
| 7466678 | Cromer et al. | Dec 2008 | B2 |
| 7489648 | Griswold | Feb 2009 | B2 |
| 7509096 | Palm et al. | Mar 2009 | B2 |
| 7529925 | Harkins | May 2009 | B2 |
| 7551619 | Tiwari | Jun 2009 | B2 |
| 7570656 | Raphaeli et al. | Aug 2009 | B2 |
| 7573859 | Taylor | Aug 2009 | B2 |
| 7577453 | Matta | Aug 2009 | B2 |
| 7724704 | Simons et al. | May 2010 | B2 |
| 20010024953 | Balogh | Sep 2001 | A1 |
| 20020052205 | Belostofsky et al. | May 2002 | A1 |
| 20020060995 | Cervello et al. | May 2002 | A1 |
| 20020069278 | Forslow | Jun 2002 | A1 |
| 20020095486 | Bahl | Jul 2002 | A1 |
| 20020101868 | Clear et al. | Aug 2002 | A1 |
| 20020176437 | Busch et al. | Nov 2002 | A1 |
| 20020191572 | Weinstein et al. | Dec 2002 | A1 |
| 20030014646 | Buddhikot et al. | Jan 2003 | A1 |
| 20030018889 | Burnett et al. | Jan 2003 | A1 |
| 20030055959 | Sato | Mar 2003 | A1 |
| 20030107590 | Levillain et al. | Jun 2003 | A1 |
| 20030134642 | Kostic et al. | Jul 2003 | A1 |
| 20030135762 | Macaulay | Jul 2003 | A1 |
| 20030174706 | Shankar et al. | Sep 2003 | A1 |
| 20030227934 | White et al. | Dec 2003 | A1 |
| 20040003285 | Whelan et al. | Jan 2004 | A1 |
| 20040019857 | Teig et al. | Jan 2004 | A1 |
| 20040025044 | Day | Feb 2004 | A1 |
| 20040047320 | Eglin | Mar 2004 | A1 |
| 20040053632 | Nikkelen 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 |
| 20040095914 | Katsube et al. | May 2004 | A1 |
| 20040095932 | Astarabadi et al. | May 2004 | A1 |
| 20040120370 | Lupo | Jun 2004 | A1 |
| 20040143428 | Rappaport et al. | Jul 2004 | A1 |
| 20040165545 | Cook | Aug 2004 | A1 |
| 20040208570 | Reader | Oct 2004 | A1 |
| 20040221042 | Meier | Nov 2004 | A1 |
| 20040230370 | Tzamaloukas | Nov 2004 | A1 |
| 20040236702 | Fink et al. | Nov 2004 | A1 |
| 20040255167 | Knight | Dec 2004 | A1 |
| 20040259555 | Rappaport et al. | Dec 2004 | A1 |
| 20050030929 | Swier et al. | Feb 2005 | A1 |
| 20050037818 | Seshadri et al. | Feb 2005 | A1 |
| 20050054326 | Rogers | Mar 2005 | A1 |
| 20050058132 | Okano et al. | Mar 2005 | A1 |
| 20050059405 | Thomson | Mar 2005 | A1 |
| 20050059406 | Thomson et al. | Mar 2005 | A1 |
| 20050064873 | Karaoguz et al. | Mar 2005 | A1 |
| 20050068925 | Palm | Mar 2005 | A1 |
| 20050073980 | Thomson et al. | Apr 2005 | A1 |
| 20050097618 | Arling et al. | May 2005 | A1 |
| 20050122977 | Lieberman | Jun 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 |
| 20050245269 | Demirhan et al. | Nov 2005 | A1 |
| 20050259597 | Benedetotto et al. | Nov 2005 | A1 |
| 20050276218 | Ooghe et al. | Dec 2005 | A1 |
| 20060045050 | Floros et al. | Mar 2006 | A1 |
| 20060104224 | Singh et al. | May 2006 | A1 |
| 20060128415 | Horikoshi et al. | Jun 2006 | A1 |
| 20060161983 | Cothrell et al. | Jul 2006 | A1 |
| 20060174336 | Chen | Aug 2006 | A1 |
| 20060189311 | Cromer et al. | Aug 2006 | A1 |
| 20060200862 | Olson et al. | Sep 2006 | A1 |
| 20060245393 | Bajic | Nov 2006 | A1 |
| 20060248331 | Harkins | Nov 2006 | A1 |
| 20060276192 | Dutta et al. | Dec 2006 | A1 |
| 20070025265 | Porras et al. | Feb 2007 | A1 |
| 20070064718 | Ekl et al. | Mar 2007 | A1 |
| 20070070937 | Demirhan et al. | Mar 2007 | A1 |
| 20070083924 | Lu | Apr 2007 | A1 |
| 20070086378 | Matta et al. | Apr 2007 | A1 |
| 20070091889 | Xiao et al. | Apr 2007 | A1 |
| 20070189222 | Kolar et al. | Aug 2007 | A1 |
| 20070260720 | Morain | Nov 2007 | A1 |
| 20080002588 | McCaughan et al. | Jan 2008 | A1 |
| 20080008117 | Alizadeh-Shabdiz | Jan 2008 | A1 |
| 20080013481 | Simons et al. | Jan 2008 | A1 |
| 20080056200 | Johnson | Mar 2008 | A1 |
| 20080056211 | Kim et al. | Mar 2008 | A1 |
| 20080096575 | Aragon et al. | Apr 2008 | A1 |
| 20080107077 | Murphy | May 2008 | A1 |
| 20080114784 | Murphy | May 2008 | A1 |
| 20080117822 | Murphy et al. | May 2008 | A1 |
| 20080151844 | Tiwari | Jun 2008 | A1 |
| 20080162921 | Chesnutt et al. | Jul 2008 | A1 |
| 20090031044 | Barrack et al. | Jan 2009 | A1 |
| 20090198999 | Harkins | Aug 2009 | A1 |
| Number | Date | Country |
|---|---|---|
| WO 9403986 | Feb 1994 | WO |
| WO 9911003 | Mar 1999 | WO |
| WO 03085544 | Oct 2003 | WO |
| WO 2004095192 | Nov 2004 | WO |
| WO 2004095800 | Nov 2004 | WO |
| Number | Date | Country | |
|---|---|---|---|
| 20080117822 A1 | May 2008 | US |
| Number | Date | Country | |
|---|---|---|---|
| 60812403 | Jun 2006 | US |