HK1158874A - Local ip access scheme - Google Patents
Local ip access scheme Download PDFInfo
- Publication number
- HK1158874A HK1158874A HK11113200.6A HK11113200A HK1158874A HK 1158874 A HK1158874 A HK 1158874A HK 11113200 A HK11113200 A HK 11113200A HK 1158874 A HK1158874 A HK 1158874A
- Authority
- HK
- Hong Kong
- Prior art keywords
- packet
- network
- local
- internet protocol
- access point
- Prior art date
Links
Description
Priority requirement
This application claims priority from commonly owned U.S. provisional application No.61/047,700, filed 24/4/2008 and assigned attorney docket No.081435P1, the contents of which are incorporated herein by reference.
Technical Field
The present invention relates generally to wireless communications, and more particularly, but not exclusively, to implementation of local access.
Background
Wireless communication systems are widely deployed to provide various types of communication (e.g., voice, data, multimedia services, etc.) to multiple users. With the rapid growth in high-rate and multimedia data service demands, the implementation of efficient and robust communication systems with enhanced performance poses challenges.
To supplement conventional mobile phone network base stations, small coverage base stations are deployed (e.g., installed in a user's home) to provide more robust indoor wireless coverage for mobile units. These small-coverage base stations are commonly referred to as access point base stations, home node bs, femto access points, or femto cells. Typically, such small coverage base stations are connected to the internet and the mobile operator's network through DSL routers or cable modems.
In some cases, one or more local services are deployed at the same location as a small-coverage base station. For example, a user has a home network that supports local computers, local printers, servers, and other components. In such cases, it is desirable to provide access to these local services through small coverage base stations. For example, when a user is at home, he/she may wish to use his/her mobile phone to access a local printer. Accordingly, there is a need for a method for efficiently and effectively accessing local services.
Disclosure of Invention
The following is a brief description of some example aspects of the invention. It should be understood that any reference to technical aspects herein refers to one or more aspects of the present invention.
Some aspects are described in relation to facilitating access to local services and carrier network services. For example, local IP access (also referred to as local breakout) is used to enable an access terminal to access one or more local services when the access terminal is served by a given access point. In addition, access terminals at this access point are provided access to the operator network.
Some aspects of the present invention relate to using different internet protocol ("IP") interfaces for different services. For example, an access terminal may use one IP interface to access local services and another IP interface to access operator network services.
Some aspects of the present invention relate to providing a list that maps packet destinations to IP interfaces. The access terminal uses the list to determine which IP interface to use to send a given packet. In some aspects, such a list is provided by a serving access point of the access terminal.
Some aspects of the present invention relate to an access point acting as a proxy for an access terminal. For example, an access point intercepts packets destined to a local IP address assigned to an access terminal. In some cases, the access point routes the intercepted packets to the access terminal. In some cases, the access point performs proxy address resolution protocol ("ARP") functions on behalf of the access terminal. For example, the access point can intercept messages directed to the local network IP address assigned to the access terminal and respond to the messages using the access point's MAC address.
Some aspects of the present invention relate to providing a proxy function to obtain a local IP address and assign the local IP address to an access point for an access terminal. For example, the access point obtains a local network IP address of the access terminal to enable the access terminal to access local services. In some embodiments, such proxy functionality includes dynamic host control protocol ("DHCP") functionality.
Some aspects of the present invention relate to performing network address translation ("NAT") at an access point. For example, the access point translates an operator network (e.g., public) source IP address of packets sent by the access terminal to a local (e.g., private) source IP address to enable the access terminal to access local services.
Some aspects of the invention relate to an access point that determines whether to transmit a packet from an access terminal via a protocol tunnel based on a destination of the packet. For example, an access point sends packets via a protocol tunnel destined for a node accessible via an operator network and sends other packets to a local node (e.g., via a local network). For packets sent to the local node, in some embodiments, the access point will provide a proxy server function by which the access point replaces the packet source address with the local IP address obtained on behalf of the access terminal. In some embodiments, the access point may provide a reverse NAT function by which the access point replaces the packet source address with its local IP address and assigned port number.
Drawings
These and other exemplary aspects of the present invention will be described in the following detailed description and appended claims, as well as in the accompanying drawings, in which:
FIG. 1 is a simplified block diagram of some exemplary aspects of a communication system for supporting local IP access;
FIG. 2 is a simplified block diagram of some exemplary aspects of a communication system supporting local IP access using multiple IP interfaces;
FIG. 3 is a flow diagram of some exemplary aspects of operations performed to establish local IP access when multiple IP interfaces are used;
fig. 4A and 4B are flow diagrams of some exemplary aspects of operations performed in connection with an access terminal transmitting packets when multiple IP interfaces are used;
fig. 5 is a flow diagram of some exemplary aspects of operations performed in conjunction with a proxy server function for processing packets sent by a local node to an access terminal;
fig. 6 is a simplified block diagram of some exemplary aspects of a communication system using NAT functionality in an access point to support local IP access;
fig. 7 is a flow diagram of some exemplary aspects of operations performed to establish local IP access when NAT functionality is provided in an access point;
fig. 8A and 8B are flow diagrams of some exemplary aspects of operations performed in connection with an access terminal transmitting packets when NAT functionality is provided in an access point;
fig. 9 is a flow diagram of some exemplary aspects of operations performed in conjunction with a proxy server function for handling packets sent by a local node to an access terminal;
fig. 10 is a simplified block diagram of some exemplary aspects of components of a wireless node used in conjunction with providing local IP access;
fig. 11 is a simplified diagram illustrating a wireless communication coverage area;
FIG. 12 is a simplified diagram of a wireless communication system;
fig. 13 is a simplified diagram of a wireless communication system including multiple femto nodes;
FIG. 14 is a simplified block diagram of some exemplary aspects of a communications component;
fig. 15-18 are simplified block diagrams of some exemplary aspects of apparatus for providing local IP access in accordance with the teachings of the present invention.
In accordance with common practice, the various features shown in the drawings are not drawn to scale. Accordingly, the dimensions of the various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not depict all of the components of a given apparatus (e.g., device) or method. Finally, like reference numerals are used to denote like features throughout the specification and drawings.
Detailed Description
Various aspects of the present application are described below. It should be understood that the disclosure herein may be embodied in many different forms and that any specific structure, function, or both being disclosed herein is merely illustrative. In light of the disclosure herein, one of ordinary skill in the art will appreciate that aspects disclosed herein may be implemented independently of any other aspects and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. Such an apparatus may be implemented or such a method may be practiced using other structure, functionality, or structure and functionality in addition to or other than one or more of the aspects set forth herein. Furthermore, an aspect includes at least one element of a claim.
Fig. 1 illustrates some nodes in an exemplary communication system 100 (e.g., a portion of a communication network). For purposes of illustration, various aspects of the invention are described in terms of one or more access terminals, access points, routers, and network nodes in communication with each other. However, it is to be understood that the disclosure herein may be applicable to other types of devices described using other terms or other similar devices. For example, in some embodiments, an access point may be referred to or implemented as a base station, an access terminal may be referred to or implemented as a user device, and so on.
System 100 includes an access point that provides one or more services (e.g., network connectivity) for one or more access terminals within or through the coverage area of the access point. To reduce the complexity of fig. 1, only a single access point 102 and a single access terminal 104 are shown. Each access point in system 100 may communicate with one or more core network nodes (e.g., shown as operator network 106) to facilitate wide area network connectivity. The network nodes may be in various forms, such as one or more wireless and/or core network entities (e.g., mobility management entities, session reference network controllers, gateways, routers, or some other suitable network entity or entities).
The nodes in system 100 may communicate with each other using various means. In the example of fig. 1, access point 102 is coupled to router 114, represented by communication link 118, router 114 is coupled to internet 116, represented by communication link 120, and carrier network 106 is coupled to internet 116, represented by communication link 122. Further, access terminal 104 communicates with access point 102 over an air interface, as indicated by RF symbol 124.
Using these communication links, the access terminal 104 may communicate with multiple communication nodes (e.g., nodes 108, 110, and 112) in the system 100. In some aspects, the different communication nodes correspond to different levels of service.
For example, a first level of service relates to services accessed through an operator network. That is, the first level of service enables the access terminal to access services similar to when the access terminal is connected to a macro network (e.g., connected to a macro base station in a wireless operator network).
Furthermore, the second level of service involves local services that do not need to be accessed via the operator network. For example, the second tier of services enables the access terminal to access a particular service when it is located in a home network or some other local area network (local area network). By bypassing the operator network, latency can be effectively improved and resources of the operator network can be conserved (e.g., by offloading traffic from the operator's backhaul).
The local service may take various forms. In some implementations, the local service may relate to a service provided by an entity on a local area. For example, correspondent node 110 represents a local server (e.g., a local area network served by router 114) that is located on the same IP subnet as access point 102. In this case, accessing the local network service includes accessing a local printer, a local server, a local computer, another access terminal, or some other entity on the IP subnet. In fig. 1, the flow of traffic (e.g., packets) between the access terminal 104 and the correspondent node 110 is represented by a dashed line 126. Dashed line 126 illustrates that access terminal 104 may access this local service through access point 102 and router 114 (i.e., via links 124 and 118) without going through carrier network 106.
In some implementations, the local service involves a node connected to some other network (e.g., a communication node 112 connected to the internet 116). For example, router 114 provides an internet connection to an internet service provider ("ISP"), and access terminal 104 uses this internet connection to access services provided by node 112 (e.g., a web server). Thus, by using local IP access, different access terminals in the network may be provided with Internet access at a particular location in the network (e.g., the user's home, employer's facilities, Internet hotspots, etc.). Traffic flow between the access terminal 104 and the correspondent node 112 (e.g., via links 124, 118, and 120) is represented by dashed line 128 in fig. 1.
In the example of fig. 1, access to the correspondent node 108 (e.g., another access terminal) is defined as a non-local service because access to the node is via the operator network 106. Traffic flow between the access terminal 104 and the correspondent node 108 (e.g., via links 124, 118, 120, and 122) is represented by dotted line 130. Typically, this traffic is routed between access point 102 and operator network 106 (e.g., an IP gateway for access terminal 102 in operator network 106) via a protocol tunnel (e.g., an IPsec tunnel), as shown by double row line 132.
In various embodiments, nodes in the system 100 facilitate local IP access using multiple IP interfaces by providing a proxy function (e.g., a proxy ARP function) for the local network, and by providing a NAT function for the local network. For example, in some embodiments, access terminal 104 and access point 102 may each include multiple IP interface processing functions 134 and 136 that enable access terminal 104 to access different services (e.g., different levels of service) using different IP interfaces. Here, the access terminal 104 accesses operator network services using a first IP interface and local services using a second IP interface. In some aspects, the use of these different IP interfaces enables access point 102 to efficiently route packets to the appropriate destination. For example, access point 102 may be used to automatically route any packets sent via the first interface to the carrier network via a protocol tunnel. Conversely, access point 102 may be configured to automatically route any packets sent via the second interface to a local destination.
In some embodiments, the access point 102 includes a proxy processing function 138 that performs proxy operations (e.g., proxy ARP operations) on behalf of the access terminal 104. For example, the access point 102 obtains the local network IP address of the access terminal 104 and intercepts packets destined for the access terminal (e.g., packets having the local network IP address of the access terminal as the destination address). In some cases, the access point forwards these intercepted packets to the access terminal. In the case where the intercepted packets include an ARP message addressed to the local IP address, access point 102 responds to the ARP message with the MAC address of access point 102. In this manner, another node on the local network initiates access to the access terminal 104 (i.e., without necessarily requiring the access terminal to first contact the other node).
In some embodiments, the access point 102 includes a NAT processing function 140 that selectively performs NAT operations on packets from the access terminal 104. For example, the access point 102 is configured to replace an operator-assigned IP source address with a local network IP source address when the access terminal sends packets associated with accessing local services.
These and other aspects of the local IP access related functionality provided in accordance with the present disclosure will be described in greater detail below with reference to fig. 2-10. Fig. 2-5 relate to embodiments using multiple IP interfaces. Fig. 6-9 relate to embodiments in which the local access point includes NAT functionality. Fig. 10 depicts some components that may be employed in nodes such as access point 1002 (e.g., corresponding to access points 102, 202, and 602 described in this disclosure) and access terminal 1004 (e.g., corresponding to access terminals 104, 204, and 604 described in this disclosure) to provide the local IP access-related functionality shown in this disclosure.
In fig. 10, access point 1002 and access terminal 1004 each include a transceiver 1006 and 1008, respectively, for communicating with each other and with other nodes. The transceiver 1006 includes a transmitter 1010 for transmitting signals (e.g., messages and packets) and a receiver 1012 for receiving signals. Likewise, the transceiver 1008 includes a transmitter 1014 for transmitting signals and a receiver 1016 for receiving signals.
For convenience, fig. 10 illustrates various components that can be incorporated into an access point 1002 and an access terminal 1004 to facilitate local IP access in various embodiments. In practice, however, a given embodiment may be combined with only some of the illustrated components. Further, a given node includes one or more of the described components. For example, a node includes multiple transceiver components that enable the node to operate on multiple frequencies and/or communicate via different technologies. Also, it can be seen that the described components can be incorporated into other nodes in a communication system. For example, other nodes in the system include similar components to those used for access point 1002 and access terminal 1004 in order to provide similar functionality. The components of fig. 10 will be described in more detail below.
Referring now to fig. 2, this example illustrates a system 200 in which an access terminal 204 uses different IP interfaces (e.g., associated with different flows) to access operator network services and local services. It should be understood that in different embodiments, different numbers of IP interfaces (and flows) may be used and different types of services may be accessed through these IP interfaces.
As shown by the double row line 218, the access terminal 204 uses the first IP interface to send packets to the carrier network 206 and to receive packets from the carrier network 206. In some aspects, the first IP interface is associated with an air interface flow that terminates at an operator network (e.g., a packet data serving node of the access terminal 204 in the operator network 206). As shown in fig. 1, the traffic flow between the access terminal 204 and the correspondent node 208 is represented by a dotted line 230. In addition, this traffic is sent via a protocol tunnel 232 between access point 202 and operator network 206. Here, the access terminal 204 uses an operator-assigned IP address when communicating with nodes in the operator network 206.
As shown by the double row line 220, the access terminal 204 uses the second IP interface to send and receive packets associated with the local service. In some aspects, the second IP interface is associated with an air interface flow that terminates at an access point 202 (e.g., an access node of an access terminal 204). The example of fig. 2 shows a second IP interface for different traffic flows associated with different local services. For example, traffic between the access terminal 204 and the correspondent node 212 (represented by dashed line 228), and traffic between the access terminal 204 and the correspondent node 210 (represented by dashed line 226) are sent over the second IP interface. Here, when the access terminal 204 communicates with other nodes to access local services, the access terminal 204 uses the local IP address assigned by the local router 214.
To support local IP access over the second IP interface, the access point 202 establishes a packet filter for a local IP domain (e.g., a local network) for the access terminal 204. In addition, access point 202 provides proxy server functions, such as proxy server ARP functions, and proxy functions, such as dynamic host protocol configuration ("DHCP") relay functions. These aspects of the system 200 are described in more detail with reference to the flow diagrams of fig. 3-5.
For convenience, the operations in fig. 3-5 (or any other operations discussed or disclosed herein) may be described as being performed by specific components (e.g., components of system 100 and/or system 1000 described in fig. 10). However, it should be understood that these operations may be performed by other types of components and may be performed using a different number of components. It should also be understood that one or more of the operations described herein may not be used in a given implementation.
Fig. 3 depicts a number of operations that may be invoked to enable an access terminal to access different services using multiple IP interfaces. In more detail, these operations relate to establishing an IP interface and providing a list for packet filtering operations.
At some point, access terminal 204 connects with access point 202, as shown in block 302. For example, access point 202 may include a home femto node for access terminal 204. In this way, access terminal 204 can connect with access point 202 as long as it is at home.
In connection with establishing a connection, access point 202 and access terminal 104 negotiate to determine whether each node supports the use of multiple IP interfaces and whether multiple IP interfaces are used for the connection. For example, an access point in system 200 may be configured to provide local IP access only to a particular access terminal (e.g., a home access terminal). Thus, access point 202 prior to providing access to local services, prior to verifying that access terminal 204 has been authorized to access these services. Similarly, before the access terminal 204 attempts to establish multiple IP interfaces, the access terminal 204 may first determine whether the access point 204 provides local IP access. In the discussion that follows, it is assumed that access point 202 and access terminal 104 support multiple IP interfaces.
The operator network 206 assigns an IP address to the access terminal 204, as shown in block 304. The IP address is used when the access terminal 204 accesses the operator network services through the first IP interface.
As shown at block 306, access point 202 provides a proxy function (e.g., a DHCP relay function) to obtain a local network IP address for access terminal 204 (e.g., through operation of IP address proxy 1018 as shown in fig. 10). For example, access point 202 sends a message to local router 214 requesting an IP address for use in a local area network served by router 214. The access point 202 then maintains a record of the IP address and sends the IP address to the access terminal 204.
The access point 202 (e.g., list provider 1022) also establishes packet filters that the access terminal 204 uses to select the IP interface that should be used to send a given packet. For example, as shown in block 308, access point 202 provides a list that maps different packet destinations to different IP interfaces. In some aspects, the list is based on operator policy, destination address, destination subnet, packet protocol type, TCP port, UDP port, or some combination of these items. The access point 204 (e.g., transmitter 1010) transmits the list to the access terminal 204, as shown at block 310.
Such a list of packet filters may take a variety of forms. Furthermore, the packet destination and IP interface may be represented in the list in a variety of ways. In some embodiments, the packet destination is indicated in the list by information indicating the destination (e.g., full destination address, subnet address, port, protocol type) and the IP interface is indicated by an IP address (e.g., IP address of access terminal 204). For example, a subnet address corresponding to the operator network 206 maps to a first IP interface, a subnet address corresponding to a local area network served by the router 214 maps to a second IP interface, a subnet address corresponding to the correspondent node 212 maps to a second IP interface, and so on.
Referring now to fig. 4A and 4B, some of the operations performed in connection with the access terminal 204 sending packets to the network and local destination over the first and second IP interfaces, respectively, will be described.
Block 402 and 406 of fig. 4A describe operations performed by access terminal 204 to transmit packets to access point 202 over the air via an over-the-air technique. At some point, the access terminal 204 provides (e.g., generates) data to be sent to a particular destination, as shown in block 402. In addition, access terminal 204 (e.g., packet processor 1024 in fig. 10) generates packets for transmitting data. Here, the source address of the packet is a local IP address that the access terminal 204 (e.g., packet processor 1024) receives from the access point 202.
The access terminal 204 (e.g., IP interface selector 1026) uses the packet filter list received from the access point 202 to select an IP interface that should be used to transmit packets, as shown at block 404. For example, the access terminal 204 compares the destination of the packet (e.g., the packet's destination address) to the packet destination information in the list (e.g., the subnet address) to identify the IP interface for the packet. Here, a default IP interface may be defined (e.g., according to operator policy) for use if a particular destination is not found in the list.
The access terminal 204 (e.g., packet processor 1024) then transmits the packet over the identified IP interface, as shown at block 406. For example, if the packet is sent over a first IP interface, the access terminal 204 will send the packet over an air interface flow that terminates at the operator network 206. Conversely, if the packet is sent over the second IP interface, the access terminal 204 will send the packet over the air interface flow that terminates at the access point 202. Here, it should be appreciated that access terminal 204 can transmit different types of streams (e.g., at the same time or different times) over a common air interface established between access point 202 and access terminal 204.
Blocks 408 and 426 in fig. 4A and 4B describe operations performed to transmit the packet to the appropriate destination. The operations begin at block 408 where access point 202 (e.g., packet processor 1028 in fig. 10) access terminal 204 receives a packet.
Access point 202 (e.g., packet processor 1028) determines an appropriate path for sending the received packet to its destination, as shown in block 410. Here, access point 202 identifies a path based on the IP interface associated with the received packet. For example, at block 412, access point 202 determines whether the packet should be sent via a path to the operator network (e.g., the packet is sent via a first IP interface) or via a local path (e.g., the packet is sent via a second IP interface).
As shown at block 414, if an operator network path is identified at blocks 410 and 412, access point 202 (e.g., packet processor 1028) encapsulates the packet in protocol tunnel 232 for transmission to operator network 206. Operator network 206 provides a termination point for this flow and forwards the packet through the network to a designated destination (e.g., node 208). In this case, the source and destination addresses of the packet (e.g., the IP address of node 208) do not change as the packet traverses system 200.
As shown at block 416 in fig. 4B, if a local path is identified at blocks 410 and 412, access point 202 (e.g., packet processor 1028) provides a termination point for the flow. Here, access point 202 determines where the packet should be sent based on the destination of the packet (blocks 418 and 420). For example, access point 202 determines that the destination of the packet is within the local network.
If so, access point 202 (e.g., packet processor 1028) sends the packet to the appropriate node (e.g., correspondent node 210) within the local network, as shown in block 422. In this case, neither access point 202 nor router 214 changes the source address (home address) or destination address (home address) of the packet.
If the packet is not destined for a local network (e.g., destined for a communication node 212 having a public network address), operational flow proceeds from block 420 to block 424. Here, access point 202 sends the packet to router 214 for forwarding to the specified destination (e.g., via internet 216). In this case, router 214 performs a NAT operation to change the source address of the packet from the home address of access terminal 204 to the public network address and assigned port number (e.g., 60.d.e.f, port g) of router 214 at block 426. Similarly, when a packet is sent from the correspondent node 212 to the access terminal 204, the router 214 will perform a NAT operation to change the destination address of the packet from the router's 214 public network address and assigned port number (e.g., 60.d.e.f, port g) to the access terminal's 204 local address.
Fig. 5 depicts several proxy operations performed by the access point 202 on behalf of the access terminal 204 on local packets sent to the access terminal 204 (e.g., by operation of the local packet proxy 1020 shown in fig. 10). As shown at block 502, the access point 202 maintains a record of the local IP address assigned to the access terminal 204 (e.g., as described above). As shown in block 504, in conjunction with the proxy server function, the access point 202 intercepts any packets destined for the access terminal 204 via the local network (e.g., packets destined for the second IP interface). The access point 202 processes the intercepted packets on behalf of the access terminal 204, as shown in block 506. The operations performed at block 506 depend on the type of packet that has been intercepted. In some cases, access point 202 simply routes the intercepted packets to access terminal 204. In some cases, access point 202 responds to intercepted packets on behalf of access terminal 204. For example, access point 202 provides a proxy ARP function whereby access point 202 processes ARP messages directed to access terminal 204. Here, other nodes within the local network may know the IP address assigned to the access terminal 204, but may not know the MAC address used to send messages to the access terminal 204. Thus, at some point, access point 202 receives an ARP message directed to the local IP address of access terminal 204. In this case, access point 202 responds to the ARP message with a message indicating that the MAC address of access point 202 is used to access terminal 204. Using this proxy ARP function, another node (e.g., a server) in the local network can conveniently initiate access to the access terminal 204. Thus, the embodiment as shown in fig. 2 may support access terminal initiated communications and server initiated communications in a local network.
As previously described, the use of multiple IP interfaces may be more advantageous to facilitate local IP access. In the foregoing example, access terminal-initiated local access and server-initiated local access are supported. In addition, the access point does not have to provide packet data serving node ("PDSN") functionality for local IP access. For example, the serving access point does not need an operator network IP address (e.g., macro address) of the access terminal for local IP access operations. Furthermore, the access point does not need to change any address on the address path. Also, the present solution is not limited to use with a particular upper layer (e.g., not limited to use with UDP or TCP ports).
Referring now to fig. 6, an access point 602 in a system 600 provides NAT functionality to facilitate local IP access. In this case, only one IP interface and one public IP address are assigned to the access terminal 604. Thus, as shown by the double row line 620, the access terminal 604 uses a single IP interface to send and receive packets to and from the access point 602 for both the carrier network and local traffic. Thus, traffic between access terminal 604 and corresponding node 612 (as indicated by dashed line 628), traffic between access terminal 604 and corresponding node 610 (as indicated by dashed line 626), and traffic between access terminal 604 and corresponding node 608 (as indicated by dotted line 630) are all sent over a single IP interface. As previously described, carrier network traffic is sent through the protocol tunnel 632 between the access point 602 and the carrier network 606.
To route packets received from the access terminal 604, the NAT function of the access point 602 (e.g., provided by the NAT controller 1030 as shown in fig. 10) translates the operator network IP address assigned to the access terminal 604 into a local IP address assigned to the access terminal 604 by the local router 614. Thus, in this case, the access point 602 maintains a record of the IP address assigned to the access terminal 604 for use in NAT operations. In addition, the access point 602 intercepts and inspects packets received from the access terminal 604. The access point 602 then sends any packets destined for the carrier network through the protocol tunnel. Alternatively, the access point 602 terminates any packets associated with the local service and sends the packets to the appropriate destination.
Additional aspects of the system 600 will be described in more detail with reference to the flow diagrams in fig. 7-9. FIG. 7 depicts an exemplary set-up operation. Fig. 8A and 8B depict exemplary operations performed when an access terminal 604 transmits a packet. Fig. 9 depicts exemplary proxy server operations performed by the access point 602 when sending local packets to the access terminal 604.
At some point, the access terminal 604 connects with the access point 602, as shown in block 702 of fig. 7. In this case, the access terminal 604 uses a single IP interface for all traffic. Further, the operator network 606 assigns an IP address to the access terminal 604, as shown in block 704. These operations are similar to the corresponding operations described previously at blocks 302 and 304.
The access point 602 (e.g., IP address proxy 1018) may obtain a local network IP address for the access terminal 604, as shown at block 706. As previously described, access point 602 sends a message to local router 614 requesting an IP address for use in a local area network served by router 614. The access point 602 then maintains a record of the IP address for NAT operations.
At some point, the access point 602 receives a packet from the access terminal 604, as shown in block 802 of fig. 8A. Here, the source address of the packet corresponds to the operator network IP address assigned to the access terminal 604.
As shown in block 804, the access point 602 (e.g., NAT controller 1030) determines whether NAT operations need to be performed on the received packet. In some embodiments, this decision is based on the destination of the packet and optionally operator network policy. For example, at block 806, the access point 602 determines from the destination address (e.g., from the subnet of the destination IP address) whether the packet should be sent via a path to the operator network 606 or a local path.
As shown at block 808, if it is determined at blocks 804 and 806 to use the carrier network path, the access point 602 encapsulates the packet in the protocol tunnel 632 for transmission to the carrier network 606. The carrier network 606 then forwards the packet through the network to the specified destination (e.g., node 608). In this case, the source and destination addresses of the packet (e.g., the IP address of node 608) will not change as the packet traverses system 600.
As shown at block 810 in fig. 8B, if it is determined at blocks 804 and 806 that the local path is used, the access point 602 (e.g., packet processor 1028) intercepts the packet (e.g., provides a termination point for the packet flow). In this case, the access point 602 performs a NAT operation to change the source address of the packet, block 812. The NAT operation may be performed in different ways in different embodiments.
In some embodiments, the access point 602 provides a proxy function (e.g., a proxy ARP function) and obtains the local IP address of the access terminal 604 as previously described. In this case, the access point 602 (e.g., NAT controller 1030) replaces the operator network IP address originally designated by the access terminal 604 as the source address for the packet with the obtained IP address.
In some embodiments, the access point 602 provides a "reverse NAT" function. In this case, the access point 602 (e.g., NAT controller 1030) replaces the original source IP address in the packet with its own IP address and assigned port number.
Access point 602 then determines where to send the packet based on its destination (blocks 814 and 816). For example, the access point 602 determines whether the destination of the packet is within the local network.
If the destination is within the local network, access point 602 sends the packet to the appropriate node (e.g., correspondent node 610) within the local network, as shown in block 818. In this case, the access point 602 will perform a NAT operation to change the source address (public network address) of the packet as described previously.
If the packet is not destined for a local network (e.g., destined for a communication node 612 having a public network address), operational flow proceeds from block 816 to block 820. Here, access point 602 sends the packet to router 614 for forwarding to the specified destination (e.g., via internet 616). In this case, access point 202 performs a NAT operation to change the source address (public network address) of the packet to the private address and assigned port number of router 614. Router 614 then performs a NAT operation to change the packet source address to the public network address and assigned port number of router 614 (block 822). The complementary operations may be performed in a similar manner when a packet is transmitted from the communication node 612 to the access terminal 604.
Referring now to the proxy operation of fig. 9, the access point 602 maintains a record of the local IP address associated with the access terminal 604 for local traffic, as shown at block 902. As described above at block 812, in some cases the access point 602 obtains the local IP address of the access terminal 604, while in other cases the access terminal 604 is assigned the IP address and port number of the access point 602.
As shown in block 904, in conjunction with the proxy server function, the access point 602 intercepts any packets sent to the access terminal 604 via the local network. Thus, according to an embodiment, the access point 602 intercepts packets having a destination address equal to the local IP address obtained for the access terminal 604, or the access point 602 intercepts packets having a destination address equal to the local IP address of the access point 602 and the port number assigned to the access terminal 604.
The access point 602 processes the intercepted packets on behalf of the access terminal 604, as shown in block 906. The operations performed at block 906 depend on the type of packet that has been intercepted. In some cases, the access point 602 simply routes the intercepted packets to the access terminal 604. In some cases, the access point 602 responds to the intercepted packets on behalf of the access terminal 604. For example, the access point 602 provides a proxy ARP function by which the access point 602 processes ARP messages directed to the access terminal 604 in a manner similar to that described above.
In accordance with the above description, NAT functionality can be advantageously applied in the access point to facilitate local IP access. In particular, legacy access terminals (e.g., access terminals that do not implement multiple IP interfaces) can be supported in this case.
In some aspects, the scheme of fig. 6 may support broadcast packets. For example, an access terminal is designated to not send any other broadcast packets other than well-known messages (e.g., DHCP messages). In this case, the PDSN function in the access point may process any DHCP messages in the IP broadcast packet. Any other broadcast packets are then sent to the local subnet. Broadcast packets transmitted by other communication nodes are transmitted to access terminals connected to the access point.
In the example illustrated in fig. 7-9, the NAT operation is performed twice for packets destined for the correspondent node 612. If it is desired to remove one of these NAT operations, a routing function is used in access point 604 (e.g., as indicated by router 1032 in FIG. 10). In this case, all local nodes are connected to the access point. Subsequently, the NAT function in the access point assigns a local IP address to all communication nodes in the local network. Thus, the local router may be eliminated or configured to not provide NAT functionality.
In the latter case, no correspondent node is connected to the local router. The local router provides only one local IP address for the access point. This will prevent the local router from assigning addresses that overlap with the access point.
In the event that the access point receives a packet with a destination address in the local subnet, the access point translates the original packet source address (e.g., the operator network IP address assigned to the access point) to the local network IP address assigned to the access terminal by the access point. Here, the access point performs a proxy function (e.g., a proxy ARP function) on this local network IP address.
In the event that the access point receives a packet whose destination address is neither in the operator subnet nor in the local subnet (e.g., according to policy), the access point simply forwards the packet to the local router (i.e., does not perform a NAT operation). The local router then simply forwards the packet through the ISP to the correspondent node (e.g., without performing a NAT operation). In this case, for an access terminal receiving a response, the access terminal uses a public network routable address.
In some embodiments, local IP access is accomplished by using IP port forwarding. Here, an access terminal communicates with nodes in a local area using a port forwarding mechanism (e.g., providing NAT functionality) that may be implemented in a local router. In this case, the traffic traverses the operator network. For example, an access terminal transmits a packet whose source address is the local IP address of the access terminal and whose destination address (of a communication node connected to the router) is the public network address of the router and an assigned port number. This packet is forwarded from the access point to the operator network via the protocol tunnel. The carrier network sends the packet back to the router, which in turn sends the packet to the appropriate correspondent node. For the backhauled packet, the source address is the local IP address of the communication node and the destination address is the local address of the access terminal. The NAT function of the router changes the source address to the router's public network address and assigned port number. The router sends the packet to the carrier network, which then tunnels the packet to the access terminal through the protocol.
As mentioned above, the local IP access scheme proposed by the present invention can be used in a hybrid deployment that includes macro coverage (e.g., a large-scale cellular network such as a 3G network, commonly referred to as a macro-cell network or wide area network-WAN) and smaller coverage (e.g., a residence-based or building-based network environment, commonly referred to as a local area network-LAN). Here, as an access terminal ("AT") moves through such a network, the access terminal is served AT a particular location by an access point that provides macro coverage, while the access terminal is served AT other locations by access points that provide smaller area coverage. In some aspects, smaller area coverage nodes may be used to provide incremental capacity growth and different services in building interior coverage, all of which make the user experience more robust.
Nodes with a relatively large coverage area are referred to as macro nodes, while nodes with a relatively small coverage area (e.g., one residence) are referred to as femto nodes. It is to be understood that the present disclosure is applicable to nodes associated with other types of coverage areas. For example, a pico node provides a coverage area (e.g., coverage in a commercial building) that is smaller than a macro area but larger than a femto area. In various applications, other terminology may be used to refer to macro nodes, femto nodes, or other access point type nodes. For example, a macro node is configured or referred to as an access node, base station, access point, eNode B, macro cell, and the like. Likewise, femto nodes may be configured or referred to as home node bs, home eNode bs, access point base stations, femto cells, and so forth. In some embodiments, a node is associated with (e.g., divided into) one or more cells or sectors. A cell or sector associated with a macro, femto or pico node is referred to as a macro, femto or pico cell, respectively. A simple example of how a femto node may be deployed in a network is provided in fig. 11.
Fig. 11 shows an example of a coverage map 1100 in which a number of tracking areas 1102 (or routing areas or location areas) are defined, each tracking area comprising several macro coverage areas 1104. Here, the coverage areas associated with tracking areas 1102A, 1102B, and 1102C are depicted by wide lines and macro coverage areas 1104 are represented by hexagons. The tracking area 1102 also includes a femto coverage area 1106. In this example, various femto coverage areas 1106 (e.g., femto coverage area 1106C) are depicted in macro coverage area 1104 (e.g., macro coverage area 1104B). However, it is understood that one femto coverage area 1106 may be partially within or outside of the macro coverage area 1104. Likewise, one or more pico coverage areas (not shown) may be defined in one or more tracking areas 1102 or macro coverage areas 1104. It will be appreciated that there may be multiple femto coverage areas within a macro coverage area, either within a macro coverage area or across the boundaries of the macro coverage area and neighboring macro cells.
Fig. 12 illustrates some aspects of a wireless communication system 1200, the wireless communication system 1200 including a plurality of cells 1202, e.g., macrocells 1202A-1202G, wherein each cell is served by a corresponding access point 1204 (e.g., access points 1204A-1204G). Thus, the macro cell 1202 corresponds to the macro coverage area 1104 of fig. 11. As shown in fig. 12, access terminals 1206 (e.g., access terminals 1206A-1206L) can be dispersed throughout a system at various locations over time. Each access terminal 1206 may communicate with one or more access points 1204 on a forward link ("FL") and/or a reverse link ("RL") at a given moment, e.g., depending on whether the access terminal 1206 is active or in soft handoff. The wireless communication system 1200 provides service over a large geographic area of coverage. For example, the macro cells 1202A-1202G cover several neighborhoods, or several squares in a rural environment.
Fig. 13 is an example of a system 1300 that illustrates how one or more femto nodes can be deployed in a network environment (e.g., system 1200). System 1300 includes a plurality of femto nodes 1310 (e.g., femto nodes 1310A and 1310B) installed in a relatively small coverage area network environment (e.g., in one or more user residences 1330). Each femto node 1310 is coupled to a wide area network 1340 (e.g., the internet) and a mobile operator core network 1350 via a DSL router, a cable modem, a wireless link, or other connectivity means (not shown).
The owner of the femto node 1310 customizes mobile services, e.g., 3G mobile services, provided through the mobile operator core network 1350. Further, access terminal 1320 can operate in macro environments and in smaller area coverage (e.g., residential) network environments. That is, depending on the current location of the access terminal 1320, the access terminal 1320 may be served by a macro cell access point 1360 associated with a mobile operator core network 1350, or by any one of a set of femto nodes 1310 (e.g., femto nodes 1310A and 1310B located in a corresponding user residence 1330). For example, when a user is outside his home, he is served by a standard macro access point (e.g., access point 1360), while when the user is near or inside his home, he is served by a femto node (e.g., node 1310A). Here, femto node 1310 may be backward compatible with previous access terminal 1320.
In some aspects, a node (e.g., a femto node) is restricted. For example, a given femto node provides a particular service for a particular access terminal. In a deployment referred to as restricted (or closed) association, a given access terminal is served only by a macro cell mobile network and a defined set of femto nodes (e.g., femto node 1310 located in corresponding user residence 1330). In some embodiments, the node is restricted to not provide at least one of the following to at least one node: signaling, data access, registration, paging, or service.
In some aspects, a restricted femto node (also referred to as a closed subscriber group home node B) is a node that provides service to a restricted offered set of access terminals. This arrangement may be temporarily or permanently extended as desired. In some aspects, a closed subscriber group ("CSG") may be defined as a set of access points (e.g., femto nodes) that share a common access control list for access terminals. The channel on which all femto nodes (or all restricted femto nodes) in an area operate is called a femto channel.
Various relationships may exist between a given femto node and a given access terminal. For example, from the perspective of an access terminal, an open femto node refers to a femto node with unrestricted association (e.g., a femto node that allows access to any access terminal). A restricted femto node refers to a femto node that is restricted in some manner (e.g., restricted to association and/or registration). A home femto node refers to a femto node that an access terminal is authorized to access and operate (e.g., to provide permanent access for a defined set of one or more access terminals). A guest femto node refers to a femto node to which an access terminal is temporarily authorized to access or operate. An alien femto node refers to a femto node that does not authorize access terminals to access or operate except for possible emergency situations (e.g., 911 calls).
From the perspective of the restricted femto node, a home access terminal refers to an access terminal that is authorized to access the restricted femto node (e.g., an access terminal that permanently accesses the femto node). A guest access terminal refers to an access terminal that temporarily accesses a restricted femto node (e.g., restricted based on deadline, time of use, bytes, number of connections, or some other criterion or criteria). An alien access terminal refers to an access terminal that is not allowed to access a restricted femto node except for possible emergency situations (e.g., 911 calls) (e.g., an access terminal that does not have credentials or permissions to register with the restricted femto node).
For convenience, various functions are described herein with respect to a femto node. However, it is understood that a pico node may provide the same or similar functionality for a larger coverage area. For example, a pico node is restricted, a home pico node is defined for a given access terminal, and so on.
A wireless multiple-access communication system may simultaneously support communication for multiple wireless access terminals. Each terminal communicates with one or more access points via transmissions on the forward and reverse links. The forward link (or downlink) refers to the communication link from the access points to the terminals, and the reverse link (or uplink) refers to the communication link from the terminals to the access points. Such a communication link may be established via a single-input single-output system, a multiple-input multiple-output ("MIMO") system, or some other type of system.
MIMO systems using multiple (N)TMultiple) transmitting antenna and multiple (N)RA) receiving antenna toAnd (5) data transmission. Can be composed of NTA transmitting antenna and NRDecomposition of MIMO channel formed by multiple receiving antennas into NSIndependent channels, also called spatial channels, in which NS≤min{NT,NR}。NSEach of the plurality of independent channels corresponds to a dimension. MIMO systems can provide improved performance (e.g., higher throughput and/or better reliability) if the additional dimensionalities created by the multiple transmit and receive antennas are utilized.
MIMO systems may support time division duplexing ("TDD") and frequency division duplexing ("FDD"). In a TDD system, the forward link transmission and the reverse link transmission are in the same frequency range, so the reciprocity principle allows the estimation of the forward link channel from the reverse link channel. This enables the access point to extract transmit waveform shaping gain on the forward link when multiple antennas are available at the access point.
The disclosure herein may be incorporated in a node (e.g., a device) using various means for communicating with at least one other node. Fig. 14 depicts several exemplary components that may be used to facilitate communication between nodes. In particular, fig. 14 illustrates a wireless device 1410 (e.g., an access point) and a wireless device 1450 (e.g., an access terminal) of a MIMO system 1400. At the device 1410, traffic data for a number of data streams is provided from a data source 1412 to a transmit ("TX") data processor 1414.
In some aspects, each data stream is transmitted from a respective transmit antenna. TX data processor 1414 formats, codes, and interleaves the traffic data for each data stream based on a particular coding scheme selected for that data stream to provide coded data.
The coded data for each data stream is multiplexed with pilot data using OFDM techniques. The pilot data is typically a known data pattern that is processed in a known manner and may be used at the receiver system to estimate the channel response. The multiplexed pilot and coded data for each data stream is then modulated (e.g., symbol mapped) based on a particular modulation scheme (e.g., BPSK, QSPK, M-PSK, or M-QAM) selected for that data stream to provide modulation symbols. The data rate, coding, and modulation for each data stream can be determined by instructions performed by processor 1430. A data memory 1432 stores program code, data, and other information used by processor 1430 or other components of device 1410.
The modulation symbols for all data streams are then provided to a TX MIMO processor 1420, which TX MIMO processor 1420 further processes the modulation symbols (e.g., for OFDM). Then, the TX MIMO processor 1420 will NTOne modulation symbol stream is provided to NTA transceiver ("XCVR") 1422A-1422T. In some aspects, TX MIMO processor 1420 applies beamforming weights to the symbols of the data streams and to the antenna from which the symbol is being transmitted.
Each transceiver 1422 receives and processes a respective symbol stream to provide one or more analog signals, and further conditions (e.g., amplifies, filters, and upconverts) the analog signals to provide a modulated signal suitable for transmission over the MIMO channel. Subsequently, N from transceivers 1422A-1422TTThe modulated signals being respectively from NTThe antennas 1424A-1424T transmit.
At device 1450, the transmitted modulated signal consists of NREach antenna 1452A-1452R receives a received signal from each antenna 1452 and provides a received signal to a respective transceiver ("XCVR") 1454A-1454R. Each transceiver 1454 conditions (e.g., filters, amplifies, and downconverts) a respective received signal, digitizes the conditioned signal to provide samples, and further processes the samples to provide a corresponding "received" symbol stream.
Subsequently, a receive ("RX") data processor 1460 receives data from NRN of a transceiver 1454RA stream of received symbols is processed in accordance with a particular receiver processing technique to provide NTA stream of "detected" symbols. RX data processor 1460 then demodulates, deinterleaves, and decodes each detected symbol stream to recover the traffic data for the data stream. ByThe processing by RX data processor 1460 is complementary to that performed by TX MIMO processor 1420 and TX data processor 1414 at device 1410.
A processor 1470 periodically determines which pre-coding matrix to use (described below). The reverse link message formulated by processor 1470 includes a matrix index portion and a rank value portion. A data memory 1472 stores program code, data, and other information used by the processor 1470 or other components of the device 1450.
The reverse link message may comprise various types of information regarding the communication link and/or the received data stream. The reverse link message is then processed by a TX data processor 1438, modulated by a modulator 1480, conditioned by transceivers 1454A-1454R, and transmitted back to device 1410, where TX data processor 1438 also receives traffic data for a number of data streams from a data source 1436.
At the device 1410, the modulated signals from the device 1450 are received by the antennas 1424, conditioned by the transceivers 1422, demodulated by a demodulator ("DEMOD") 1440, and processed by a RX data processor 1442 to extract the reverse link message transmitted by the device 1450. Processor 1430 then determines which pre-coding matrix to use for determining the beamforming weights then processes the extracted message.
Fig. 14 also illustrates that these communication components may include one or more components that perform local IP access-related operations in accordance with the present disclosure. For example, as disclosed herein, access control component 1490 cooperates with processor 1430 and/or other components of device 1410 to send/receive signals to/from another device (e.g., device 1450). Likewise, an access control component 1492 cooperates with the processor 1470 and/or other components of the device 1450 to send/receive signals to/from another device (e.g., device 1410). It is to be appreciated that for each device 1410 and 1450, the functionality of two or more of the described components may be provided by a single component. For example, a single processing element may provide the functionality of access control element 1490 and processor 1430, and a single processing element may provide the functionality of access control element 1492 and processor 1470.
The present disclosure may be combined in various communication systems and/or system components. In some aspects, the present disclosure may be used in multiple-access systems capable of communicating with multiple users by sharing available system resources (e.g., by specifying one or more bandwidths, transmit powers, encodings, interlaces, etc.). For example, the present disclosure may be used in any one or any combination of the following technologies: code division multiple access ("CDMA") systems, multi-carrier CDMA ("MCCDMA"), wideband CDMA ("W-CDMA"), high speed packet access ("HSPA", "HSPA +") systems, time division multiple access ("TDMA") systems, frequency division multiple access ("FDMA") systems, single carrier FDMA ("SC-FDMA") systems, orthogonal frequency division multiple access ("OFDMA") systems, or other multiple access techniques. A wireless communication system using the present disclosure may be designed to implement one or more standards such as IS-95, CDMA2000, IS-856, W-CDMA, TDSCDMA, and others. The CDMA network may implement techniques such as universal terrestrial radio access ("UTRA"), CDMA2000, or other techniques. UTRA includes wireless technologies such as W-CDMA and low chip rate ("LCR"). cdma2000 technology covers IS-2000, IS-95, and IS-856 standards. TDMA networks implement wireless technologies such as global system for mobile communications ("GSM"). OFDMA networks may implement services such as evolved UTRA ("E-UTRA"), IEEE 802.11, IEEE 802.16, IEEE 802.20, Flash-And the like. UTRA, E-UTRA and GSM are part of the Universal Mobile Telecommunications System ("UMTS"). The present disclosure may be implemented in 3GPP long term evolution ("LTE") systems, ultra mobile broadband ("UMB") systems, and other types of systems. LTE is a release of UMTS that employs E-UTRA. Although certain aspects of the present invention are described using 3GPP terminology, it should be understood that the present disclosure may be used with 3GPP (Re199, Re15, Re16, Re17) technology as well as 3GPP2(IxRTT, 1xEV-DO RelO, RevA, RevB) technology andother techniques.
The present disclosure may be incorporated into (e.g., implemented in or performed by) a variety of devices (e.g., nodes). In some aspects, a node (e.g., a wireless node) implemented in accordance with the present disclosure includes an access point or an access terminal.
For example, an access terminal includes, is implemented as, or referred to as, user equipment, a subscriber station, a subscriber unit, a mobile station, a mobile node, a remote station, a remote terminal, a user agent, user equipment, or some other terminology. In some implementations, an access terminal includes a cellular telephone, a cordless telephone, a session initiation protocol ("SIP") phone, a wireless local loop ("WLL") station, a personal digital assistant ("PDA"), a handheld device having wireless connection capability, or some other suitable processing device connected to a wireless modem. Accordingly, one or more aspects of the present disclosure may be incorporated in a phone (e.g., a cellular phone or smart phone), a computer (e.g., a laptop), a portable communication device, a portable computing device (e.g., a personal digital assistant), an entertainment device (e.g., a music device, a video device, or a satellite radio), a global positioning system device, or any other suitable device for communicating via a wireless medium.
An access point includes, is implemented as, or is referred to as a node B, eNode B, radio network controller ("RNC"), base station ("BS"), eBS, radio base station ("RBS"), base station controller ("BSC"), base transceiver station ("BTS"), transceiver function ("TF"), radio transceiver, radio router, basic service set ("BSs"), extended service set ("ESS"), or some other similar terminology.
In some aspects, a node (e.g., an access point) comprises an access node of a communication system. Such an access node may provide connectivity to or to a network, for example, via a wired or wireless communication link to the network (e.g., a wide area network such as the internet or a cellular network). Thus, an access node enables other nodes (e.g., access terminals) to access a network or perform some other function. Further, it will be appreciated that one or both nodes may be portable or, in some cases, relatively non-portable.
Also, it can be seen that wireless nodes are capable of sending and/or receiving information in a non-wireless manner (e.g., via a wired connection). Thus, the receivers and transmitters described herein include appropriate communication interface components (e.g., electrical interface components or optical interface components) to communicate via a non-wireless medium.
The wireless nodes may communicate via one or more wireless communication links based on or supporting any suitable wireless communication technology. For example, in some aspects a wireless node may be associated with a network. In some aspects, the network may comprise a local area network or a wide area network. The wireless device may support or use one or more of a variety of wireless communication technologies, protocols, or standards, such as those discussed herein (e.g., CDMA, TDMA, OFDM, OFDMA, WiMAX, Wi-Fi, etc.). Likewise, the wireless node may support or use one or more of a variety of corresponding modulation or multiplexing schemes. The wireless node thus includes appropriate components (e.g., air interfaces) to establish and communicate over one or more wireless communication links using the above-described or other wireless communication techniques. For example, a wireless node includes a wireless transceiver with associated transmitter and receiver components including various components (e.g., signal generators and signal processors) that facilitate communication over a wireless medium.
The functionality described herein (e.g., with respect to one or more of the figures) corresponds in some respects to the functionality of the "module for. Referring to fig. 15-18, apparatuses 1500, 1600, 1700, and 1800 represent a series of interrelated functional modules. Here, IP interface selection module 1502 corresponds at least in some aspects to, for example, an IP interface identifier described herein. A packet sending module 1504 corresponds at least in some aspects to, for example, a packet processor as described herein. List providing module 1602 corresponds at least in some aspects to, for example, a list provider described herein. A list sending module 1604 corresponds at least in some aspects to, for example, a transmitter as described herein. A packet processing module 1606 corresponds at least in some aspects to, for example, a packet processor as described herein. The IP address control module 1608 corresponds at least in some aspects to, for example, an IP address proxy as described herein. A packet receiving module 1702 corresponds at least in some aspects to, for example, a packet processor as described herein. The local packet proxy module 1704 corresponds at least in some aspects to, for example, a local packet proxy as described herein. The IP address proxy module 1706 corresponds at least in some aspects to, for example, an IP address proxy as described herein. A packet receiving module 1802 corresponds at least in some aspects to, for example, a packet processor as described herein. The NAT determination module 1804 corresponds at least in some aspects to, for example, a NAT controller described herein.
The functionality of the modules of fig. 15-18 may be implemented in a variety of ways consistent with the present disclosure. In some aspects, the functionality of these modules may be implemented as one or more electrical components. In some aspects, the functionality of these blocks may be implemented as a processing system including one or more processor components. In some aspects, the functionality of these modules may be implemented using, for example, at least a portion of one or more integrated circuits (e.g., an ASIC). As described herein, an integrated circuit may include a processor, software, other related components, or a combination thereof. The functionality of these modules may also be implemented in other ways as disclosed herein. In some aspects, one or more of any dashed boxes in fig. 15-18 are optional.
It should be understood that the use of terms such as "first," "second," etc., herein to indicate that any elements referred to are generally not limited to the number or order of such elements. Further, these indications may be provided herein as a convenient way to distinguish between two or more elements or instances of an element. Thus, reference to first and second elements does not mean that only two elements are used, or that the first element necessarily precedes the second element in some way. Also, unless specified otherwise, a set of elements may include one or more elements. Furthermore, the term form "A, B or at least one of C" as used in the specification or claims means "A or B or C, or any combination of these elements".
Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Those of skill would further appreciate that the various illustrative logical blocks, modules, processors, components, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware (e.g., a digital implementation, an analog implementation, or a combination of the two, which may be designed using source coding or other techniques), various forms of program or design code (referred to herein, for convenience, as "software" or a "software module"), or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The various illustrative logical blocks, modules, and circuits described in connection with the aspects described herein may be implemented in or performed by an integrated circuit ("IC"), an access terminal, or an access point. The IC may include a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, electrical components, optical components, mechanical components, or any combination thereof designed to perform the functions described herein, and may execute code or instructions that are internal to the IC, external to the IC, or both. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
It should be understood that any particular order or sequence of steps in any described process is one example of an exemplary method. It is to be understood that depending upon design preferences, the specific order or sequence of steps in the processes may be rearranged while remaining within the scope of the present invention. The accompanying method claims present elements of the various steps in a sample order, and are not intended to be limited to the specific order or sequence presented.
In one or more exemplary embodiments, the functions described may be implemented as hardware, software, firmware, or any combination thereof. When implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes Compact Disc (CD), laser disc, optical disc, Digital Versatile Disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media. It should be appreciated that the computer-readable medium may be implemented in any suitable computer program product.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (98)
1. A method of communication, comprising:
selecting, at an access terminal, an internet protocol interface for transmitting a packet based on a destination of the packet and a list mapping packet destinations to internet protocol interfaces, wherein a first internet protocol interface in the list is associated with a first flow terminating at an operator network and a second internet protocol interface in the list is associated with a second flow terminating at a serving access point of the access terminal; and
transmitting the packet from the access terminal to the destination via the selected internet protocol interface.
2. The method of claim 1, wherein:
a first packet destination in the list identifying a network node accessible via a first path through the operator network;
the list maps addresses associated with the network nodes to the first internet protocol interface;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps addresses associated with the local node to the second internet protocol interface.
3. The method of claim 2, wherein:
the serving access point is within a local network associated with a local router; and
the local node is within the local network.
4. The method of claim 2, wherein:
the serving access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
5. The method of claim 2, further comprising:
receiving the list and an address of the access terminal in a local network from the serving access point.
6. The method of claim 1, wherein, in the list:
the packet destination is indicated by a subnet address; and
the internet protocol interface is indicated by an internet protocol address.
7. An apparatus for communication, comprising:
an internet protocol interface selector for selecting, at an access terminal, an internet protocol interface for transmitting a packet based on a destination of the packet and a list mapping packet destinations to internet protocol interfaces, wherein a first internet protocol interface in the list is associated with a first flow terminating at an operator network and a second internet protocol interface in the list is associated with a second flow terminating at a serving access point of the access terminal; and
a packet processor to transmit the packet from the access terminal to the destination via the selected Internet protocol interface.
8. The apparatus of claim 7, wherein:
a first packet destination in the list identifying a network node accessible via a first path through the operator network;
the list maps addresses associated with the network nodes to the first internet protocol interface;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps addresses associated with the local node to the second internet protocol interface.
9. The apparatus of claim 8, wherein:
the serving access point is within a local network associated with a local router; and
the local node is within the local network.
10. The apparatus of claim 8, wherein:
the serving access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
11. The apparatus of claim 7, wherein, in the list:
the packet destination is indicated by a subnet address; and
the internet protocol interface is indicated by an internet protocol address.
12. An apparatus for communication, comprising:
a selection module for selecting, at an access terminal, an internet protocol interface for transmitting a packet based on a destination of the packet and a list mapping packet destinations to internet protocol interfaces, wherein a first internet protocol interface in the list is associated with a first flow terminating at an operator network and a second internet protocol interface in the list is associated with a second flow terminating at a serving access point of the access terminal; and
a sending module to send the packet from the access terminal to the destination via the selected internet protocol interface.
13. The apparatus of claim 12, wherein:
a first packet destination in the list identifying a network node accessible via a first path through the operator network;
the list maps addresses associated with the network nodes to the first internet protocol interface;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps addresses associated with the local node to the second internet protocol interface.
14. The apparatus of claim 13, wherein:
the serving access point is within a local network associated with a local router; and
the local node is within the local network.
15. The apparatus of claim 13, wherein:
the serving access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
16. The apparatus of claim 12, wherein, in the list:
the packet destination is indicated by a subnet address; and
the internet protocol interface is indicated by an internet protocol address.
17. A computer program product, comprising:
a computer-readable medium comprising code for causing a computer to:
selecting, at an access terminal, an internet protocol interface for transmitting a packet based on a destination of the packet and a list mapping packet destinations to internet protocol interfaces, wherein a first internet protocol interface in the list is associated with a first flow terminating at an operator network and a second internet protocol interface in the list is associated with a second flow terminating at a serving access point of the access terminal; and
transmitting the packet from the access terminal to the destination via the selected internet protocol interface.
18. The computer program product of claim 17, wherein:
a first packet destination in the list identifying a network node accessible via a first path through the operator network;
the list maps addresses associated with the network nodes to the first internet protocol interface;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps addresses associated with the local node to the second internet protocol interface.
19. A method of communication, comprising:
providing, at an access point, a list mapping packet destinations to internet protocol interfaces; and
transmitting the list from the access point to an access terminal.
20. The method of claim 19, wherein:
a first packet destination in the list identifying a network node accessible via a first path through an operator network;
the list maps an address associated with the network node to a first internet protocol interface in the list;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps an address associated with the local node to a second internet protocol interface in the list.
21. The method of claim 20, further comprising:
receiving a packet from the access terminal; and
determining whether to send the packet via the first path or the second path based on whether the received packet is associated with the first internet protocol interface or the second internet protocol interface.
22. The method of claim 20, further comprising:
receiving, from the access point, a first packet associated with the first internet protocol interface;
sending the first packet to the network node via the operator network;
receiving, from the access point, a second packet associated with the second internet protocol interface; and
the second packet is sent to the local node without sending the packet through the carrier network.
23. The method of claim 22, wherein:
receiving the first packet over a first flow terminating at the carrier network; and
the second packet is received over a second stream that terminates at the access point.
24. The method of claim 20, wherein:
the access point is within a local network associated with a local router; and
the local node is within the local network.
25. The method of claim 24, further comprising:
receiving, from the access point, a packet associated with the second internet protocol interface; and
determining whether to transmit the received packet to the local node according to a destination address of the received packet.
26. The method of claim 20, wherein:
the access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
27. The method of claim 26, further comprising:
receiving, from the access point, a packet associated with the second internet protocol interface; and
determining whether to transmit the received packet to the local node according to a destination address of the received packet.
28. The method of claim 19, wherein, in the list:
the packet destination is indicated by a subnet address; and
the internet protocol interface is indicated by an internet protocol address.
29. The method of claim 19, wherein the access point is in a local network associated with a local router, the method further comprising:
obtaining an address of the access terminal in the local network from the local router; and
transmitting the address to the access terminal.
30. The method of claim 19, wherein the access point is a femto node.
31. An apparatus for communication, comprising:
a list provider for providing a list mapping packet destinations to internet protocol interfaces at an access point; and
a transmitter for transmitting the list from the access point to an access terminal.
32. The apparatus of claim 31, wherein:
a first packet destination in the list identifying a network node accessible via a first path through an operator network;
the list maps an address associated with the network node to a first internet protocol interface in the list;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps an address associated with the local node to a second internet protocol interface in the list.
33. The apparatus of claim 32, further comprising a packet processor to:
receiving a packet from the access terminal; and
determining whether to send the packet via the first path or the second path based on whether the received packet is associated with the first internet protocol interface or the second internet protocol interface.
34. The apparatus of claim 32, further comprising a packet processor to:
receiving, from the access point, a first packet associated with the first internet protocol interface;
sending the first packet to the network node via the operator network;
receiving, from the access point, a second packet associated with the second internet protocol interface; and
the second packet is sent to the local node without sending the packet through the carrier network.
35. The apparatus of claim 34, wherein:
receiving the first packet over a first flow terminating at the carrier network; and
the second packet is received over a second stream that terminates at the access point.
36. The apparatus of claim 32, wherein:
the access point is within a local network associated with a local router; and
the local node is within the local network.
37. The apparatus of claim 32, wherein:
the access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
38. An apparatus for communication, comprising:
a providing module for providing, at an access point, a list mapping packet destinations to internet protocol interfaces; and
a transmitting module to transmit the list from the access point to an access terminal.
39. The apparatus of claim 38, wherein:
a first packet destination in the list identifying a network node accessible via a first path through an operator network;
the list maps an address associated with the network node to a first internet protocol interface in the list;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps an address associated with the local node to a second internet protocol interface in the list.
40. The apparatus of claim 39, further comprising a packet processing module to:
receiving a packet from the access terminal; and
determining whether to send the packet via the first path or the second path based on whether the received packet is associated with the first internet protocol interface or the second internet protocol interface.
41. The apparatus of claim 39, further comprising a packet processing module to:
receiving, from the access point, a first packet associated with the first internet protocol interface;
sending the first packet to the network node via the operator network;
receiving, from the access point, a second packet associated with the second internet protocol interface; and
the second packet is sent to the local node without sending the packet through the carrier network.
42. The apparatus of claim 41, wherein:
receiving the first packet over a first flow terminating at the carrier network; and
the second packet is received over a second stream that terminates at the access point.
43. The apparatus of claim 39, wherein:
the access point is within a local network associated with a local router; and
the local node is within the local network.
44. The apparatus of claim 39, wherein:
the access point is within a local network associated with a local router; and
the local node is accessible via an internet connection of the local router.
45. A computer program product, comprising:
a computer-readable medium comprising code for causing a computer to:
providing, at an access point, a list mapping packet destinations to internet protocol interfaces; and
transmitting the list from the access point to an access terminal.
46. The computer program product of claim 45, wherein:
a first packet destination in the list identifying a network node accessible via a first path through an operator network;
the list maps an address associated with the network node to a first internet protocol interface in the list;
a second packet destination in the list identifying a local node accessible via a second path that does not traverse the operator network; and
the list also maps an address associated with the local node to a second internet protocol interface in the list.
47. A method of communication, comprising:
receiving, at an access point, a first packet and a second packet from an access terminal, wherein the first packet is associated with a first internet protocol interface, the second packet is associated with a second internet protocol interface, and the second internet protocol interface is associated with a local network internet protocol address assigned to the access terminal;
intercepting packets addressed to the local network internet protocol address; and
the intercepted packets are processed on behalf of the access terminal.
48. The method of claim 47, wherein the processing comprises:
routing the intercepted packets to the access terminal.
49. The method of claim 47, wherein:
the intercepted packets include an address resolution protocol message directed to the local network internet protocol address; and
the processing comprises the following steps: sending a message including a media access control address of the access point in response to the address resolution protocol message.
50. The method of claim 47, wherein:
the first internet protocol interface is associated with a first packet path through a carrier network; and
the second internet protocol interface is associated with a second packet route that does not traverse the carrier network.
51. The method of claim 50, wherein the second packet is destined for a node within the local network.
52. The method of claim 50, wherein the second packet is destined for a node accessible via an Internet connection of a local router of the local network.
53. The method of claim 47, wherein:
sending the first packet over a first flow terminating at the carrier network; and
the second packet is sent over a second stream that terminates at the access point.
54. The method of claim 47, further comprising:
sending a request to a local router to obtain the local network internet protocol address of the access terminal; and
sending the local network internet protocol address to the access terminal.
55. The method of claim 47, wherein the access point is a femto node.
56. An apparatus for communication, comprising:
a packet processor to receive, at an access point, a first packet and a second packet from an access terminal, wherein the first packet is associated with a first internet protocol interface, the second packet is associated with a second internet protocol interface, and the second internet protocol interface is associated with a local network internet protocol address assigned to the access terminal; and
a local packet proxy server for intercepting packets destined to the local network internet protocol address and for processing the intercepted packets on behalf of the access terminal.
57. The apparatus of claim 56, wherein the processing comprises:
routing the intercepted packets to the access terminal.
58. The apparatus of claim 56, wherein:
the intercepted packets include an address resolution protocol message directed to the local network internet protocol address; and
the processing comprises the following steps: sending a message including a media access control address of the access point in response to the address resolution protocol message.
59. The apparatus of claim 56, wherein:
the first internet protocol interface is associated with a first packet path through a carrier network; and
the second internet protocol interface is associated with a second packet route that does not traverse the carrier network.
60. The apparatus of claim 59, wherein the second packet is destined for a node within the local network.
61. The apparatus of claim 59, wherein the second packet is destined for a node accessible via an Internet connection of a local router of the local network.
62. The apparatus of claim 56, wherein:
sending the first packet over a first flow terminating at the carrier network; and
the second packet is sent over a second stream that terminates at the access point.
63. An apparatus for communication, comprising:
a receiving module to receive, at an access point, a first packet and a second packet from an access terminal, wherein the first packet is associated with a first internet protocol interface, the second packet is associated with a second internet protocol interface, and the second internet protocol interface is associated with a local network internet protocol address assigned to the access terminal; and
a local packet proxy module to intercept packets destined for the local network internet protocol address and to process the intercepted packets on behalf of the access terminal.
64. The apparatus of claim 63, wherein the processing comprises:
routing the intercepted packets to the access terminal.
65. The apparatus of claim 63, wherein:
the intercepted packets include an address resolution protocol message directed to the local network internet protocol address; and
the processing comprises the following steps: sending a message including a media access control address of the access point in response to the address resolution protocol message.
66. The apparatus of claim 63, wherein:
the first internet protocol interface is associated with a first packet path through a carrier network; and
the second internet protocol interface is associated with a second packet route that does not traverse the carrier network.
67. The apparatus of claim 66, wherein the second packet is destined for a node within the local network.
68. The apparatus of claim 66, wherein the second packet is destined for a node accessible via an Internet connection of a local router of the local network.
69. The apparatus of claim 63, wherein:
sending the first packet over a first flow terminating at the carrier network; and
the second packet is sent over a second stream that terminates at the access point.
70. A computer program product, comprising:
a computer-readable medium comprising code for causing a computer to:
receiving, at an access point, a first packet and a second packet from an access terminal, wherein the first packet is associated with a first internet protocol interface, the second packet is associated with a second internet protocol interface, and the second internet protocol interface is associated with a local network internet protocol address assigned to the access terminal;
intercepting packets addressed to the local network internet protocol address; and
the intercepted packets are processed on behalf of the access terminal.
71. The computer program product of claim 70, wherein the processing comprises:
routing the intercepted packets to the access terminal.
72. The computer program product of claim 70, wherein:
the intercepted packets include an address resolution protocol message directed to the local network internet protocol address; and
the processing comprises the following steps: sending a message including a media access control address of the access point in response to the address resolution protocol message.
73. The computer program product of claim 70, wherein:
the first internet protocol interface is associated with a first packet path through a carrier network; and
the second internet protocol interface is associated with a second packet route that does not pass through the carrier network.
74. A method of communication, comprising:
receiving a packet at an access point from an access terminal; and
determining whether to perform network address translation on the packet at the access point based on a destination of the packet.
75. The method of claim 74, wherein the determining comprises:
a destination address of the packet and a policy associated with an operator network are determined.
76. The method of claim 74, wherein the determining comprises:
determining whether the destination is accessed via a first path through an operator network or a second path through a local network without passing through the operator network.
77. The method of claim 76, wherein the network address translation comprises:
replacing a network internet protocol source address assigned to the access terminal for an operator network with a local internet protocol source address assigned to the access terminal for the local network.
78. The method of claim 77, wherein the access point:
requesting the local internet protocol source address from a local router associated with the local network; and
responding to an address resolution protocol message to the local internet protocol source address with a message including a media access control address of the access point.
79. The method of claim 77, wherein the local Internet protocol source address comprises:
an internet protocol address of the access point and a port assigned to the access terminal by the access point.
80. The method of claim 74, wherein the access point performs the network address translation if the access point determines that the packet is not destined for a carrier network via a protocol tunnel.
81. The method of claim 74, wherein:
the access point is within a local network; and
the access point performs the network address translation if the destination is within the local network.
82. The method of claim 74, wherein:
the access point is within a local network associated with a local router; and
the access point performs the network address translation if the destination is accessible via an internet connection of the local router.
83. The method of claim 74, wherein the access point is a femto node.
84. An apparatus for communication, comprising:
a packet processor for receiving a packet from an access terminal at an access point; and
a network address translation controller to determine whether to perform network address translation on the packet at the access point based on a destination of the packet.
85. The apparatus of claim 84, wherein the determining comprises:
determining whether the destination is accessed via a first path through an operator network or a second path through a local network without passing through the operator network.
86. The apparatus of claim 85, wherein the network address translation comprises:
replacing a network internet protocol source address assigned to the access terminal for an operator network with a local internet protocol source address assigned to the access terminal for the local network.
87. The apparatus of claim 84, wherein the access point performs the network address translation if the access point determines that the packet is not destined for a carrier network via a protocol tunnel.
88. The device of claim 84, wherein:
the access point is within a local network; and
the access point performs the network address translation if the destination is within the local network.
89. The device of claim 84, wherein:
the access point is within a local network associated with a local router; and
the access point performs the network address translation if the destination is accessible via an internet connection of the local router.
90. An apparatus for communication, comprising:
a receiving module for receiving a packet from an access terminal at an access point; and
a determination module to determine whether to perform network address translation on the packet at the access point based on a destination of the packet.
91. The apparatus of claim 90, wherein the determining comprises:
determining whether the destination is accessed via a first path through an operator network or a second path through a local network without passing through the operator network.
92. The apparatus of claim 91, wherein the network address translation comprises:
replacing a network internet protocol source address assigned to the access terminal for an operator network with a local internet protocol source address assigned to the access terminal for the local network.
93. The apparatus of claim 90, wherein the access point performs the network address translation if the access point determines that the packet is not destined for a carrier network via a protocol tunnel.
94. The apparatus of claim 90, wherein:
the access point is within a local network; and
the access point performs the network address translation if the destination is within the local network.
95. The method of claim 90, wherein:
the access point is within a local network associated with a local router; and
the access point performs the network address translation if the destination is accessible via an internet connection of the local router.
96. A computer program product, comprising:
a computer-readable medium comprising code for causing a computer to:
receiving a packet at an access point from an access terminal; and
determining whether to perform network address translation on the packet at the access point based on a destination of the packet.
97. The computer program product of claim 96, wherein the determining comprises:
determining whether the destination is accessed via a first path through an operator network or a second path through a local network without passing through the operator network.
98. The computer program product of claim 96, wherein the network address translation comprises:
replacing a network internet protocol source address assigned to the access terminal for an operator network with a local internet protocol source address assigned to the access terminal for the local network.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US61/047,700 | 2008-04-24 | ||
| US12/427,178 | 2009-04-21 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| HK1158874A true HK1158874A (en) | 2012-07-20 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102090111B (en) | Local IP access scheme | |
| US10142294B2 (en) | Remote access to local network | |
| EP2451124B1 (en) | Remote access to local network via security gateway | |
| HK1211153B (en) | Method and apparatus for local ip access | |
| HK1158874A (en) | Local ip access scheme |