MULTI-STREAM WIRELESS ROUTER, GATEWAY, COMMUNICATION SYSTEM, AND METHOD THEREFOR
BACKGROUND
One form of access to a wide area network (WAN) for communicating with a remote server employs a wireless network as one link between an end user device and the WAN. The WAN may be the Internet or any other packet data network, and the end user device may be a personal
computer, a portable computer, a cell phone, a personal digital assistant (PDA), or any device that
can send packet data to a network and/or receive packet data from a network. The remote server may
be any system capable of sending and receiving packet data via the WAN, such as a web server, a
gateway to a subnetwork or another end user device.
As illustrated for example in Fig. 1 , a user 26 may desire to communicate with a remote
server 30 accessible through a WAN 34. One method for establishing such communication uses a
wireless network 46, which interfaces with the WAN 34. User 26, utilizing an end user device 42, establishes a wireless communication channel 48 as an interface to the wireless network 46, thereby
forming a communication system with a completed path between the user 26 and the remote server
30 through the wireless network 46 and the WAN 34.
The data transmission rate in the communication system of Fig. 1 is limited in part by the capacity of the wireless channel 48. Often, conventional wireless networks are designed so that the throughputs of wireless channels to end user devices are adequate for voice communication. Recently, wireless networks have been designed to provide higher throughput for data but the
performance of the wireless channel is highly variable due to the nature of RF communications.
Performance is further limited by the fact that these networks were designed to work with small,
battery-powered handheld end-user devices using a single transceiver. As a result, this new
generation of wireless networks will be unable to deliver throughput approaching the theoretical
maximum in most situations. Users often desire not only greater throughput for data transfer, but also
a consistent and reliable quality of service. Therefore, users would benefit from apparatuses and
methods that offer greater throughput as well as more consistent and reliable quality of service in communication systems employing a wireless network as a link between an end user device and a
WAN. The present invention enables end users to experience consistent and reliable high-speed
connectivity over wireless networks as well as wired networks.
Tunneling is a technology allowing a first network to transport its data via a second network
without requiring the second network to interpret the first network's protocol headers to route the
data. Tunneling is sometimes referred to as encapsulation since the- technique encapsulates the first networkDs protocol data units (PDUs) within PDUs defined to be earned by the second network. For
instance, Point-to-Point Tunneling Protocol (PPTP), a conventional tunneling technology, enables organizations to use the Internet to transmit data across virtual private networks (VPNs) by
embedding their own network protocol within the Transmission Control Protocol/Internet
Protocol(TCP/IP) packets carried by the Internet. Other known tunneling techniques include Layer
Two Forwarding (L2F) and Layer Two Tunneling Protocol (L2TP). Such tunneling technologies employ only a single tunnel between a given data packet source/destination pair. Therefore, as with the other conventional communication systems described above, throughput is limited in part by the
capacity of a single channel, even with the use of conventional tunneling techniques. This is because
many networks, in particular wireless networks, are designed such that packets destined for a given
network address (e.g. IP address) may reach that destination via one and only one physical channel.
In the case of wireless networks, this limitation exists primarily because it is assumed that users will
be accessing the network with devices that possess only a single transceiver.
SUMMARY
The present invention achieves greater throughput in communication systems employing an
intermediate network as a link between an end user device and a WAN. In the case where the
intermediate network is a wireless network employing Wideband Code Division Multiple Access
(WCDMA) technology, distributing data transmissions to or from a single end-user over multiple
channels yields additional benefits with regard to uplink range and downlink range.
The present invention also allows data transmissions to and from multiple end-users to be
concentrated over a single channel of the intermediate network. In the case where the intermediate
network is a WCDMA wireless network, this feature achieves reduced transmission power, lower
interference, and increased overall capacity.
The present invention also provides portability across different wireless and wired network technologies by using tunneling at the network layer. These and other objects of the invention will be readily apparent to those skilled in the art in view of the detailed description of the preferred embodiments of the present invention.
Objects of the invention are achieved by providing a gateway and a router using tunneling to facilitate data transfer across multiple channels of an intermediate communications network for data
packets sent and received between a single user and a remote server. Although the intermediate
network is preferably a wireless network, the intermediate network may also be a wired network. When the intermediate network is a wireless network, the router may be mobile. While the gateway
is preferably external to the wireless network, the gateway may also be configured as part of the wireless network's interface to a packet switched network. Also, the tunneling may extend instead
through a wireless network and a WAN between the router and the gateway. The router and/or the gateway may facilitate channel resource allocation, as well as throughput and transmission delay monitoring to achieve a desired quality of service. While multiple channels are preferred, the use of varying numbers of channels or even a single channel is possible, such as for concentrating transmission of data packets to/from multiple devices across a shared pool of channels, or for changing from multiple channels to a different number of channels or to even just one channel to adjust for varying throughput requirements. A wired or wireless LAN may be used to connect one or more end user devices to the router.
These and other features are discussed in the following detailed description of the preferred embodiments of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will now be described by way of example with reference to the accompanying drawings, in which:
Fig. 1 depicts a conventional communication system employing an intermediate network (e.g. a wireless network) as a link between an end user device and a remote server accessible through a WAN;
Fig. 2 depicts a preferred embodiment of the present invention;
Fig. 3 depicts a single multi-stream gateway interacting with multiple multi-stream routers;
Fig. 4 depicts another embodiment of the .present invention in which the multi-stream gateway communicates with the intermediate network through the WAN;
Fig. 5 depicts another embodiment of the present invention in which the multi-stream gateway is located within the intermediate network;
Fig. 6 depicts internal layers of the multi-stream router and the multi-stream gateway and the use of IP-in-IP tunneling;
Fig. 7 depicts a feedback loop between the multi-stream router and the multi-stream gateway;
Fig. 8 illustrates flow of data within the multi-stream router;
Fig. 9 illustrates flow of data within the multi-stream gateway;
Fig. 10 depicts internal layers of the multi-stream router and the multi-stream gateway and the use of a single wireless channel for consolidation of data packets;
Fig. 11 depicts internal protocol layers of the multi-stream router and the multi-stream gateway and the use of IP-in-IP tunneling with asymmetric wireless channels;
Fig. 12 illustrates the conventional UMTS.protocol stack for packet switched data;
Fig. 13 depicts a UMTS protocol architecture modified for the present invention;
Fig. 14 illustrates the conventional CDMA-2000 protocol stack for packet switched data;
Fig. 15 depicts a CDMA-2000 packet data protocol architecture modified for the present invention.
Fig. 16 depicts another embodiment of the present invention in which the multi-stream router and multi-stream gateway communicate via multiple intermediate networks
Fig. 17 illustrates an example packet format for tunneling downlink data and
Fig. 18 illustrates an example packet format for tunneling uplink data
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The present invention is directed to communication systems employing an intermediate
network as a link between an end user device and a WAN. The intermediate network may be a wireless network or a wired network. Increased throughput is obtained from multiple channel
communication through the intermediate network to send and receive data packets for a single end
user. Because each individual communication channel need accommodate only a fraction of the total data flow, the total throughput is not limited to the capacity of an individual channel.
In the case where the intermediate network is a wireless network employing Wideband Code
Division Multiple Access (WCDMA) technology, distributing data transmissions to or from a single
end-user over multiple channels yields additional benefits with regard to uplink range and downlink
range. In a WCDMA wireless network, higher speed channels typically have a shorter range than lower speed channels. The term "range" refers to the distance the end-user device can be from the
base station antenna and still obtain a given level of throughput. By distributing a user's data over
multiple lower speed channels, as opposed to a single higher speed channel, the range for high-speed connectivity is effectively increased. In a WCDMA network this may involve spreading a single
user's data over multiple code channels and multiple 5MHz carriers. These same benefits are achieved for narrow-band CDMA wireless networks, as well.
The present invention also allows data transmissions to and from multiple end-users to be concentrated over a single channel of the intermediate network. In the case where the intermediate
network is a WCDMA wireless network, concentrating data transmissions to or from multiple users
over a single higher speed channel, as opposed to employing a distinct lower speed channel for each
user, reduces the overall required transmission power. A reduction in required transmission power
results in lower interference to other users accessing the wireless network thereby increasing the
overall capacity of the WCDMA wireless network. These same benefits are achieved for narrow¬
band CDMA wireless networks, as well.
The present invention also provides portability across different wireless and wired network
technologies by using tunneling at the network layer. For example, many networks employing a
variety of physical layer and datalink layer technologies use the Internet Protocol (IP) as the network
layer protocol for routing data. By using the network layer protocol as a tunneling mechanism, the present invention may be ported to virtually any network regardless of the physical layer or datalink layer technology being employed. The term "IP" is used herein to refer to both IP version 4 (IPv4),
and IP version 6 (IPv6). The present invention is compatible with both versions of the Internet
Protocol, and is contemplated to be compatible with any future version of the Internet Protocol as
well.
The present invention may employ any connectionless or connection-oriented network layer protocol provided that protocol provides a means for point-to-point communication between two
distinct network layer addresses. This point-to-point communication may be facilitated by the
specification of a source and destination address in the header of each network PDU or by the
establishment of a virtual-circuit between two network addresses, hi the case where a connectionless network layer protocol is employed, tunneling is achieved by encapsulating data packets within a network PDU with header information that specifies a source and a destination network address
which can be thought of as endpoints of the tunnel. In the case where a connection-oriented network
protocol is employed, a virtual circuit is established between the network addresses serving as the
endpoints of the tunnel.
An end user device and the remote system with which it is communicating (herein referred to
as a remote server), via the present.invention may obtain the network address for one another using
any number of methods. These methods may include, for example, Domain Name System or static IP address assignments. The gateway may also be integrated with other technologies to implement, for
example, a mobile IP foreign agent or virtual private network gateway.
With regard to the term "channel," it is used to describe the communication data link between
a device (e.g. a multi-stream router) and the intermediate network. Therefore, the specific
embodiment of a channel in the present invention will depend upon the type of intermediate network
employed. For example, if the intermediate network is a Public Switched Telephone Network
(PSTN) the term "channel" may refer to a full duplex, dedicated connection using copper telephone wires between a dialup modem within the multi-stream router and an Internet Service Provider's modem bank. If the intermediate network is an WCDMA wireless network, the term "channel"
would refer to a dedicated traffic channel established between the multi-stream router and the WCDMA network. A WCDMA dedicated traffic channel is a "logical" channel and may itself be an aggregation of physical resources, but it is regarded as a single channel within the context of the
present invention. Some wireless networks employ a technique known as "frequency hopping" where a communication channel changes frequencies a't specific time intervals; such a channel is also
employed as a single channel by the present invention. New techniques (e.g. CDMA High Data Rate) are being developed that may aggregate resources at the physical layer to provide increased spectral
efficiency and greater throughput on a single channel. The present invention is compatible with such
techniques, as well as other present or future communication data link techniques, an m y be se in concert with these techniques to provide even greater throughput to end-user devices and further
improve efficiency of resource utilization within the intermediate network.
In order to facilitate operation over multiple channels of an intermediate network, the hardware platform used to implement the multi-stream router must provide sufficient resources (e.g. modems, transmitters, receivers, etc.) to support simultaneous operation of the desired number of
channels. The intermediate network(s) being employed must also provide sufficient resources to
support simultaneous operation of the desired number of channels. Of course, the multi-stream router
must implement a network interface (e.g. physical layer standards and network protocol) that is
compatible with each intermediate network being accessed by the multi-stream router. The present
invention will also function using only a single channel. These indications should be readily apparent to those skilled in the art but are provided here for clarity.
One preferred embodiment of the present invention utilizes multiple wireless channels as the
interface between the end user device and the wireless network in a communication system between the end user device and a remote server through a wide area network (WAN). The communication system utilizes a multi-stream router and a corresponding multi-stream gateway tunneling packets across multiple channels therebetween.
Such a system provides greater throughput to a wireless device versus the device accessing the wireless network directly, due to the ability to send and receive data packets over multiple communication channels in place of a single channel. Also, the present invention is portable over
different wireless networks of differing standards, because the tunneling is performed at the network layer, in this case, at the Internet Protocol (IP) layer.
hi a preferred embodiment of the invention depicted in Fig.2, data packets originating from
the remote server 30 and destined for the end user device 42 (or multiple end user devices 42a, as
depicted) flow through the WAN 34 to a multi-stream gateway 50. Multi-stream gateway 50
encapsulates the packets from the WAN 34 with an additional IP header (referred to herein as a
tunnel header) and addresses the tunneled data packets 52a to a plurality of IP addresses associated with the multi-stream router 54. This method effectively enables the multi-stream gateway 50 to
distribute the tunneled packets 52a over multiple downlink channels 48a established between the
multi-stream router 54 and the wireless network 46.
In the system of Fig. 2, packets originating from remote server 30 are encapsulated by the
multi-stream gateway 50 to enable their distribution over multiple downlink channels 48a to the
multi-stream router 54. That is, the multi-stream gateway 50 appends an additional header to each
packet to direct it to a particular destination address associated with the multi-stream router 54. This
additional header includes a destination IP address, which is one of a plurality of IP addresses recognized by the wireless network and associated with the multi-stream router 54. The destination
IP address in the added header corresponds to a particular downlink wireless channel 48a. Thus, the
gateway may effectively distribute a stream of IP packets, all destined for the same end-user device, over a plurality of wireless channels by tunneling a subset of these packets to each IP address associated with the multi-stream router 54.
As illustrated in Fig. 2, the multi-stream router 54 interfaces with the wireless network 46 using multiple wireless communication channels 48 (48a and 48b). Each IP address of the multi- stream router 54 is accessed over a different wireless channel 48 (e.g., downlink wireless channels
48a). As indicated above, for data packets flowing in the direction from the multi-stream gateway 50
to the multi-stream router 54, referred to here as DdownlinkD data packets, the multi-stream gateway
50 specifies the IP address to which each individual packet will be tunneled. Such a determination
of the particular IP address will typically be made based on, for example, the current status and
channel conditions of the downlink wireless channel 48a currently associated with each IP address. The multi-stream gateway 50 obtains information on channel status and conditions by way of information (e.g. MUX Info messages 140 of Fig.7) sent periodically by the multi-stream router 54.
Upon receipt of downlink data packets, the multi-stream router 54 de-tunnels the packets by
removing the tunnel header added by the multi-stream gateway 50. The multi-stream router 54 then
forwards the data packets directly to the end user device 42 as per the destination address specified in
the original packet.
Alternatively, the communication system may be configured so that multi-stream router 54
routes the downlink data packets through a local area network (LAN) 58 to one or more end user
devices 42a connected thereto. Fig.2 illustrates both configurations. LAN 58 may be a wired LAN,
such as one using Ethernet standards, or it may be wireless, such as one using IEEE 802.11 or
Bluetooth standards. Of course, the router 54 may also interface with only one end user device
without a LAN.
Data flowing from the end user device 42, 42a to the remote server 30 are referred to as
"uplink" data or "reverse link" data. The multi-stream router 54 receives uplink data packets directly from the end user device 42 or indirectly from the end user devices 42a through the LAN 58. The
multi-stream router 54 then distributes the uplink data over the multiple uplink channels 48b to the multi-stream gateway 50, which forwards the data through the WAN 34 to the remote server 30.
In a manner analogous to the manner employed by the multi-stream gateway 50 to append a
header to downlink data packets, the multi-stream router 54 appends a header to uplink data packets.
The header includes as its destination address an IP address associated with the multi-stream
gateway 50. The multi-stream router also selects a wireless channel over which to transmit each
packet. Such selection of a particular channel will typically be made based on, for example, the current status and channel conditions of each wireless channel accessible by the router. Upon receipt
of uplink data packets, the multi-stream gateway 50 de-tunnels the packets by removing the additional header added by the multi-stream router 54 and forwards them to their destination as
specified by the destination address in the original packet header.
The term "distribute" is used herein to describe the process of routing data originating from or destined for a single network address over multiple links for at least part of the path to their
destination. It is noted, though, that the term "multiplex" is also understood to describe this process.
As shown in Fig.2, an end user subsystem 59 may include one end user device 42 connected
directly with the multi-stream router 54 and/or end user devices 42a connected to the multi-stream
router 54 through the LAN 58. The end user subsystem 59 may be mobile by virtue of the wireless interface with the multi-stream gateway 50. Therefore, the end user subsystem 59 can provide access
to the WAN 34 for users physically located in a moving automobile, train, bus, airplane, or other
vehicle.
Of course, the end user subsystem 59 need not be mobile, however, and still provide
improved WAN access to users. Even where ready access to ordinary land-based networks (e.g. telephone networks) is available to acquire WAN access, the communication system in Fig.2 maybe
implemented to obtain greater throughput to the WAN 34 by virtue of the use of the multiple wireless communication channels 48.
As already noted, in the above configuration, in which the data distribution occurs at the
network layer protocol, for example at the IP protocol layer, the communication system is portable across various wireless technologies. By distributing data at the IP layer, this system may use any
digital wireless technology, such as UMTS (WCDMA), CDMA2000, GPRS/EDGE, GSM/HSCSD,
TDMA, narrow band CDMA technologies, and other present or future wireless protocols. Because
the multi-stream gateway 50 may sit outside the wireless network infrastructure of the wireless
network 46, implementation of the multi-stream gateway 50 does not require modification of
conventional wireless network service provider equipment.
Furthermore, in the configurations wherein the gateway is positioned within the wireless
network infrastmcture or between the wireless network and the WAN, the wireless network and
WAN need not use the same network layer protocol.
Fig. 3 illustrates a second preferred embodiment of the invention. Here, one multi-stream
gateway 50 may serve a plurality of multi-stream routers 54a. Thus, a wireless service provider or an
independent Internet service provider equipped with a multi-stream gateway 50 may serve multiple
subscribers, such as common carriers or individual end users, each equipped with a multi-stream router 54a.
The multi-stream router 54 and the multi-stream gateway 50 may be modified as appropriate so that end user subsystem 59 obtains access to the WAN 34 using a wired land-based network (e.g.
a public telephone network) instead of the wireless network 46. The multi-stream gateway 50 and the end user subsystem 59 would then tunnel packets through the land-based public telephone
network. Such a configuration may be desirable when no high-throughput WAN access, such as
through a digital subscriber line (DSL) or a cable-based network, is available.
Fig. 4 illustrates a third preferred embodiment of the invention. Unlike the embodiments illustrated in Figs. 2 and 3, data packets flowing between the wireless network 46 and the WAN 34
do not pass intermediately tlirough the multi-stream gateway 50. Instead, the EP-in-IP tunneling extends through the WAN 34. As in the other embodiments, data packets flowing between the
multi-stream gateway 50 and the remote server 30 pass through the WAN 34. Reference numeral 60
denotes the communication link between the multi-stream gateway 50 and the WAN 34 for this
purpose. The communication link 60 is not limited to a single physical channel and may use any
hardware or software implementation capable of providing one or more communication channels between the multi-stream gateway 50 and the WAN 34.
Besides the locations of the multi-stream gateway 50 described by way of Figs. 2-4, the
multi-stream gateway 50 may also reside within the wireless network 46, as illustrated in Fig. 5. Typically, wireless networks have their own interfaces that connect directly to the WAN. For
example, a UMTS compliant network has a gateway GPRS support node (GGSN). A CDMA-2000
compliant network has a packet data services node (PDSN). In the embodiment shown in Fig. 5, the multi-stream gateway 50 functionality may be implemented on the same hardware platform as the GGSN or the PDSN.
The preferred embodiments described in Figs. 2 and 4 indicate the use of a single
intermediate network 46 to facilitate communication between the multi-stream router 54 and multi-
stream gateway 50. As illustrated in Fig. 16 the multi-stream router 54 and multi-stream gateway 50
may also tunnel packets across a plurality of intermediate networks 46a-46z. Due to the tunneling
method employed by the present invention, a single user's data may be distributed simultaneously
across multiple intermediate networks 46a-46z to mitigate the effects of congestion in a particular
intermediate network 46 and yield higher throughput than is possible using a single intermediate
network. The intermediate networks 46a-46z employed need not use the same physical layer
technology or network layer protocol.
Fig. 6 illustrates exemplary architecture for the multi-stream router 54 and the multi-stream
gateway 50 and how data flows therein. For simplicity, only two uplink and two downlink wireless
channels are shown in Fig. 6, but additional channels maybe used. As further illustrated, the multi-
stream router 54 includes an IP router 65, a MUX sublayer 66, and an IP protocol sublayer 67. The
multi-stream gateway 50 includes a gateway application 68 and an IP protocol layer 69. hi both the
multi-stream router 54 and the multi-stream gateway 50, the protocol layers below IP in the protocol stack (not shown) are specific to the underlying wireless network and WAN technologies being used.
The multi-stream router 54 and the multi-stream gateway 50 distribute tunneled data packets
52 over multiple wireless channels 48 in the communication system by use of IP-in-IP tunneling. Tunneled packets 52 are received by the IP-MUX sublayers 66, 67 in the multi-stream router 54 and at the gateway application 68 in the multi-stream gateway 50. The wireless network 46 administers
and recognizes the IP addresses that the multi-stream router 54 uses as source addresses in tunnel headers when tunneling uplink packets. The wireless network 46 administers and recognizes the IP
addresses that the multi-stream router 54 reports to the multi-stream gateway 50 to be used as
destination addresses in tunnel headers when tunneling downlink packets. The gateway application 68 uses an IP address known to the multi-stream router 54. The multi-stream router 54 may use a number of different methods for determining the IP address(es) of the multi-stream gateway 50. For
example, the IP address of the multi-stream gateway 50 may be statically configured in the multi-
stream router 54. The multi-stream router 54 may then indicate its own IP address(es) to the multi-
stream gateway 50 by sending a MUX Info message 140. More elaborate methods may also be used.
The present invention is not limited to any one specific method for determining the IP address(es) of
the multi-stream gateway 50.
Within the multi-stream router 54, an uplink packet received by the MUX sublayer 66 from
the IP router 65 is tunneled to the gateway application 68. In the downlink direction, IP packets 70
originating from a remote server and destined for an IP address of a mobile device or application
flow through a communication link 60 between the WAN 34 and the multi-stream gateway 50.
Within the multi-stream gateway 50, the gateway application 68 receives the downlink IP
packets and determines which multi-stream router 54 or 54a (see Fig. 3) through which the
destination IP address may be reached. The gateway application 68 then chooses an available IP
address of the corresponding multi-stream router 54 through which to send the packet. The original
downlink packet is then encapsulated by appending another IP header (tunnel header) which specifies the selected IP address as the destination address.
Wireless link conditions typically change during communication sessions. Such an effect is
expected when the end user subsystem 59 (Fig. 2) is moving. The multi-stream router 54 monitors
wireless link conditions and reports link status to the multi-stream gateway 50. This information is used by the gateway when selecting which multi-stream router IP address to use as the destination
address in the tunnel header for downlink packets.
From the perspective of the wireless network 46, the end user subsystem 59 appears similar
to a plurality of conventional mobile end user devices, for example, wireless modems, collectively
using multiple communication channels. As with conventional mobile end user devices, to set up
communication using wireless communication channels 48, the multi-stream router 54 must request
resources from the wireless network 46.
The multi-stream router 54 monitors the resource allocations to detect congestion on individual channels, cells, or sectors of the wireless network 46. The multi-stream router 54 also monitors other communication aspects such as channel error rates. Based on the channel status (e.g.
congestion level), the multi-stream router 54 determines the optimal distribution of uplink data
among channels.
In an embodiment in which the multi-stream gateway 50 is external to the wireless network
infrastructure, the multi-stream gateway 50 cannot monitor channel resource allocations in the same
fashion that the multi-stream router 54 monitors channel resource allocations. Therefore, the multi-
stream router 54 periodically sends to the multi-stream gateway 50 feedback information (i.e. MUX
Info messages 140) which includes currently allocated downlink or forward channel resources, error
rate measurements for each allocated downlink channel 48a, QoS characteristics of each allocated downlink channel 48a and an IP address associated with each allocated downlink channel 48a. Also
included is a list of available IP addresses within the multi-stream router 54 that are not currently
associated with an allocated downlink channel. The multi-stream gateway 50 uses this feedback information to optimize its data distribution when tunneling downlink packets to a plurality of IP addresses associated with a multi-stream router 54.
A preferred embodiment of such a feedback loop is illustrated in Fig. 7. In this scenario,
communication is already established, and the multi-stream gateway 50 is distributing data destined
for the multi-stream router 54 using IP-in-IP tunneling. The arrows representing wireless
communication channels 48a that carry tunneled downlink packets 52a indicate the direction of
downlink data flow. The multi-stream router 54 sends feedback information (i.e. MUX Info
messages 140) to the multi-stream gateway 50 over uplink channel 48b. The arrow representing
wireless communication channel 48b indicates the direction of uplink data flow. Based on feedback
information, the multi-stream gateway 50 optimizes its distribution of tunneled downlink packets 52a among the downlink channels 48a.
In the above embodiments, both the multi-stream gateway 50 and the multi-stream router 54
may distribute data over communication channels 48 based in part on communication aspects such as
congestion and error rates to ensure a desired quality of service (QoS) for each end-user or
application and to provide guaranteed levels of throughput and bounded maximum transit delay.
Also, the multi-stream gateway 50 and the multi-stream router 54 may distribute data to efficiently
utilize wireless bandwidth by minimizing the amount of signaling overhead and quickly releasing resources when they are no longer needed to provide the required QoS.
Data distribution over voice-data network channels is described next in terms of rate control,
scheduling, resource management, and dispatch functions. Fig. 8 shows the data distribution within the multi-stream router 54. Fig. 9 shows the data distribution within the multi-stream gateway 50. In
this embodiment, the various functions work together to provide desired QoS for all user traffic and to optimally utilize the wireless spectrum.
The multi-stream router 54 receives incoming data packets 74b from an end user device, possibly via a router 65. As illustrated in Fig. 8, the incoming data packets 74b are subjected to a rate control
function 80b, which throttles the data when the multi-stream router 54 becomes congested.
Congestion occurs when sufficient wireless resources cannot be allocated to service incoming traffic.
Rate control function 80b receives a notification 84b from a resource management function 88b
(discussed below) when packet queues exceed a specified threshold. Based on the notification 84b,
the rate control function 80b can appropriately throttle data flow to avoid excessive queuing of
packets within the multi-stream router 54. The throttled data packets are then processed as indicated
in Fig. 8 by arrow 92b to a scheduling function 96b. A scheduling function 96b determines how to distribute data packets optimally over uplink wireless channels 48b, based in part on a resource
profile 100b received from a resource management function 88b and on the quality of service (QoS)
requirements of the packets. An exemplary action of scheduling function 96b would be to reschedule packets queued for transmission over a channel experiencing an excessively high error
rate to another channel. Each data packet 104b is enqueued on a message queue 108b corresponding
to the uplink channel over which it is scheduled to be transmitted. The resource management
function 88b monitors packet levels in queues 108b based on queue information 112b therefrom.
The resource management function 88b uses queue information 112b to determine the amount and
type of wireless resources needed to provide the desired QoS. The resource management function
88b also considers the current error rate being experienced on the wireless links when allocating
resources. Based on this current error rate, the resource management function 88b requests the
wireless network to allocate enough resources to ensure successful transfer of all data pending
transmission to meet QoS requirements. The resource management function 88b utilizes the services
provided by Layer 2/MAC 128 to request and receive resource allocations from the wireless network.
The resource management function 88b sends a threshold notification 84b to the rate control function
80b when the message queues 108b exceed specified thresholds, thereby avoiding resource depletion
and maintaining QoS with respect to packets already in process. Packets 116b from the queues 108b
flow to a dispatch function 120b, which de-queues the queued packets 116b that are awaiting transmission. In the multi-stream router 54, as illustrated in Fig. 8, the dispatch function 120b
forwards the de-queued packets 124b to Layer 2/MAC 128 when ready for transmission. In this way,
data packets from one or more end-users are aggregated into streams based on QoS requirements of the packets and distributed over a pool of one or more channels based on the capacity and status of the channels and the QoS supported by the channels.
The multi-stream gateway 50 receives incoming data packets 70a from a remote server via a
WAN 34. As illustrated in Fig. 9, the incoming data packets 70a are subjected to a rate control
function 80a, which throttles the data when the multi-stream gateway 50 becomes congested.
Congestion occurs when the IP layer 130 cannot accept data packets for transmission at a high
enough rate to keep pace with the flow of incoming data packets 70a thus causing excessive queuing.
Rate control function 80a receives a notification 84a from a resource management function 88a
(discussed below) when packet queues exceed a specified threshold. Based on the notification 84a, the rate control function 80a can appropriately throttle data flow to avoid excessive queuing of packets within the multi-stream router 54 and multi-stream gateway 50. The throttled data packets are then processed as indicated in Fig. 9 by arrows 92a to a scheduling function 96a. A scheduling
function 96a determines how to distribute data packets optimally over downlink wireless channels 48a, based in part on a resource profile 100a received from a resource management function 88a and on the QoS requirements of the packets. An exemplary action of scheduling function 96a would be to reschedule packets queued for transmission over a channel experiencing an excessively high error rate to another channel. The resource profile 100a is derived from the MUX Info 140 sent by the
multi-stream router 54. The resource profile 88a contains information about each downlink channel
48a (e.g. such as maximum throughput and the most recently measured frame error rate). Associated
with each downlink channel 48a is one or more IP addresses that may be reached via that channel.
When the scheduling function 96a determines the downlink channel 48a over which a packet is to be
transmitted, a corresponding IP address associated with that channel is selected and used as the destination address in the tunnel header for the packet. This process has the effect of causing the wireless network 46 to route the tunneled packet over the desired downlink channel 48a to the multi-
stream router 54. Within the multi-stream gateway 50, each data packet 104a is enqueued on a
message queue 108a corresponding to the destination IP address to which it is to be tunneled. The
resource management function 88a monitors packet, levels in queues 108a based on queue
information 112a therefrom. The resource management function 88a uses queue information 112a to determine the amount and type of wireless resources needed to provide the desired QoS. The resource management function 88a also considers the current error rate being experienced on the
downlink wireless channels 48a when allocating resources. Based on current downlink channel conditions, downlink packet traffic volume, and QoS requirements the resource management function 88a determines what IP addresses to make available to the scheduling function 96a for
tunneling downlink packets. The resource management function 88a sends a threshold notification
84a to the rate control function 80a when the message queues 108a exceed specified thresholds,
thereby avoiding resource depletion and maintaining QoS with respect to packets already in process. Packets 116a from the queues 108a flow to a dispatch function 120a, which de-queues the queued packets 116a that are awaiting transmission. In the multi-stream gateway 50, as illustrated in Fig. 9,
the dispatch function 120a appends the appropriate tunnel headers and forwards the de-queued packets 124a to the IP Layer 69. In this way, data packets from one or more remote servers are
aggregated into streams based on QoS requirements of the packets and, by way of tunneling,
effectively distributed over a pool of one or more channels based on the capacity and status of the
channels and the QoS supported by the channels.
Though embodiments of the present invention discussed thus far employ -EP-in-IP tunneling over multiple channels, a single channel may also be employed. This is desirable, for example, for uses in which slower communication speeds are more readily tolerated and when data flow
requirements can be met by a single channel, such as for transmission and reception of short electronic mail messages. In the case where the intermediate network 46 is a WCDMA wireless
network, for example, concentrating multiple independent data streams over a single high-speed
wireless channel can yield greater overall system capacity since higher speed channels have a lower
Eb/No requirement than do lower-speed channels.
Fig. 10 illustrates a preferred embodiment in which a single channel meets data flow rate
requirements. Data packets from one or more end user devices are concentrated (multiplexed) onto a
single channel.
In the uplink direction, the multi-stream router 54 receives data packets from one or more
sources. Each uplink data packet has an IP header containing addresses corresponding to its
respective source and destination. The multi-stream router 54 encapsulates the data packets with an additional IP header (referred to herein as a tunnel header) containing a destination address for the multi-stream gateway 50 and then sends the data packets to the multi-stream gateway 50 over the
same wireless channel 48. Each tunnel header added by multi-stream router 54 has the same source IP address, the address corresponding to the wireless channel being used, because only one uplink
channel accommodates all the uplink data packets. The multi-stream gateway 50 receives the
tunneled uplink packets 52b, strips off the tunnel header that was appended by the multi-stream router 54 and then routes the packets via the. WAN according to the parameters in their original IP
header. By tunneling all uplink packets through the wireless network 46 in this manner, multiple independent streams of packets with various source and destination IP addresses may share the same
uplink wireless channel.
In the downlink direction, the multi-stream gateway 50 receives data packets from one or
more sources via a WAN 34. Each downlink data packet has an IP header containing addresses
corresponding to its respective source and destination. The multi-stream gateway 50 encapsulates
the data packets with an additional IP header (tunnel header) containing a destination address for the
multi-stream router 54 and then sends the data packets to the multi-stream router 54 via the WAN 34
and wireless network 46. Each tunnel header added by multi-stream gateway 50 contains the same
destination IP address, an address corresponding to the downlink wireless channel being used,
because only one downlink channel accommodates all the data packets. The MUX sublayer 66 inside the multi-stream router 54 receives the packets, strips off the tunnel header that was appended
by the multi-stream gateway 50 and then routes the packets to their destination according to the
parameters in their original IP header. By tunneling all downlink packets through the wireless network 46 in this manner, multiple independent streams of packets with various source and destination IP addresses may share the same downlink wireless channel.
Fig. 6 portrays an embodiment of the invention using multiple wireless channels, and Fig. 10
portrays an embodiment using a single wireless channel. It is to be understood, though, that the
invention is not limited to embodiments in which the number of channels in use remains static. The
multi-stream router and the multi-stream gateway may also include the capability to change the
number of channels to be used, either increasing or decreasing the number, according to packet traffic volume, QOS requirements and resource availability.
Most of the preferred embodiments of the invention described above portray the wireless
channels as symmetric (i.e. the same number of uplink and downlink wireless channels are in use). The usage of wireless channels may also be asymmetric, that is, the number of uplink channels 48b
and aggregate uplink throughput may be different than the number of downlink channels 48a and
aggregate downlink throughput (See, for example, Fig. 7.) This capability affords the flexibility to
allocate the appropriate amount of bandwidth individually in both the uplink and downlink
directions. Such functionality may be useful, for example, when it would be optimal to allocate a
single channel for uplink traffic while allocating multiple channels for downlink traffic. Fig. 11 illustrates an example of such an allocation! Here, tunneling is used with asymmetric channel
allocations.
Protocol issues will now be addressed. Different intermediate networks use different network
layer protocols to support packet data transfer. Described hereinafter are protocol issues specific to some of the wireless technologies suitable for implementing the invention.
Universal Mobile Telecommunications System (UMTS) was developed to support a number
of network layer protocols, but the protocol expected predominantly was the Internet Protocol (IP). Fig. 12 shows the standard UMTS user-plane protocol stack for packet switched data.
Fig. 13 illustrates how the UMTS protocol architecture may be adapted to support the
invention. A new layer, an IP/MUX layer 66, 67, is added to the UE protocol stack. This layer
provides the following functions:
• Compression of the IP header for uplink data
• Implementation of the multi-stream router distribution, concentration and
multiplexing processes
• Appending a compressed IP tunnel header to uplink data specifying the appropriate
source address for the selected wireless channel 48, destination address for the serving multi-stream gateway 50, and setting other header fields as required to ensure desired QoS for payload data
• Monitoring wireless resource allocation and performance
• Sending feedback (MUX Info 140) to the multi-stream gateway
• Receiving and de-tunneling downlink data packets sent by multi-stream gateway 50
• Decompression of IP header for downlink data packets
• Forwarding downlink data packets to their destination as specified by the destination
address in the original packet header.
In the multi-stream gateway 50, a gateway application layer 68 uses the services of a standard
IP layer. In these embodiments, the multi-stream gateway 50 is external to the wireless service
provider's network. The multi-stream gateway 50 is connected directly to the WAN (e.g. Internet)
34, and it implements a standard IP layer. Protocol layers below IP in the protocol stack are not shown. Gateway application layer 68 provides the following functions:
• Compression of the DP header for downlink data
• Implementation of the multi-stream gateway distribution, concentration and multiplexing processes
• Appending a compressed IP header to downlink data specifying the appropriate
destination IP address of the multi-stream router 54 corresponding to the targeted
wireless channel 48, source address for the multi-stream gateway 50 sending the
packet, and setting other header fields as required to ensure desired QoS for payload
data
• Recording feedback data (MUX Info 140) from the multi-stream router 54 for use by multi-stream gateway distribution, concentration and multiplexing processes
• Receiving and de-tunneling as appropriate the uplink data sent by the multi-stream
router 54
• Decompression of IP header of uplink data packets and subsequently forwarding
uplink packets to their destinations. as specified by the destination IP address in the
original packet header.
A significant difference between the IP/MUX layer 66, 67 in the multi-stream router and the gateway application layer 68 in the multi-stream gateway 50 is that the multi-stream router 54 can
measure wireless channel allocations and performance directly, whereas the multi-stream gateway 50 uses feedback (MUX Info 140) from the multi-stream router 54 for its distribution and multiplexing
determinations.
An additional IP header (tunnel header) must be appended to each packet (a technique known
as "tunneling") before it is transmitted across the wireless network. This is because an IP address can be associated with only one mobile terminal identifier in the UMTS network. Since UMTS mobile
terminals are designed to use a single transceiver this effectively means that an IP address can be associated with only one wireless channel at any given moment in time. This has the effect of indirectly binding an IP address in the mobile device to a single channel. When the multi-stream
router sends an uplink packet, it uses the IP source address corresponding to the radio link over
which the packet is sent. Similarly, downlink packets sent by the multi-stream gateway must contain the destination IP address corresponding to the radio link over which those packets are sent. The
additional IP header is compressed by the Packet Data Compression Protocol (PDCP) in the UMTS
RNC, so additional overhead is minimal.
A method to further reduce protocol overhead is to encapsulate multiple discrete IP packets
with a single tunnel header and tunnel them through the intermediate network (e.g. UMTS network)
46 as a single IP packet. This method is especially useful, for example, when there are a large
number of small packets to be transmitted across the intermediate network. This method maybe used
for both uplink and downlink packets. The only limitation of this method is that all packets
encapsulated with the shared tunnel header must be transmitted over the same wireless channel 48.
Figs. 17 and 18 illustrate example structures for tunneled downlink and uplink packets using IP-in-IP
encapsulation, respectively. One or more IP packets 261a-261n, 263a-263n with various source and destination IP addresses maybe encapsulated with a single tunnel header 260, 262 to create a single
tunnel packet 264, 265. A tunnel packet 264, 265 is routed through the intermediate network (and possibly the WAN) as single packet so it is subject to fragmentation if the total length of the tunnel packet 264, 265 exceeds the maximum transmit unit size of any network it traverses. When
encapsulating multiple packets 261a-261n, 263a-263n with a single tunnel header 260, 262, the
multi-stream gateway 50 and multi-stream router 54 consider the QoS parameters in each packet being encapsulated. Only packets sharing identical QoS parameters are encapsulated with a shared
tunnel header 260, 262. The QoS parameters in the tunnel header 260, 262 are set by the multi- stream gateway 50 and multi-stream router 54 to match the QoS parameters of the encapsulated
packets 261a-261n, 263a-263n . In this way, the QoS requirements for each encapsulated packet
261a-261n, 263a-263n are satisfied. This method may be used with any type of intermediate network 46 that supports QoS options in the packet header.
The packet data network architecture is very similar for UMTS, GPRS and EDGE based
networks. Therefore, this embodiment of the invention operates in the same manner for each of
these technologies.
Fig. 14 provides a basic overview of the standard CDMA-2000 packet data architecture. The
standard CDMA-2000 architecture may support Connectionless Network Layer Protocol (CLNP) in addition to Internet Protocol (IP). This embodiment of the present invention may operate with CLNP
as the network layer protocol in the same way (using CLNP encapsulation to tunnel packets through
the CDMA-2000 network) as the previous embodiment of the invention operates with IP (described
above).
Fig. 15 illustrates'how the CDMA-2000 protocol using IP as the network layer protocol may
be adapted to support this embodiment of the invention. A new layer, an IP/MUX layer 66, 67, is
added to the mobile terminal protocol stack. This layer provides the following functions:
• Implementation of the multi-stream router distribution, concentration and
multiplexing process
• Appending an IP header to reverse link data packets specifying the appropriate source
address for the selected wireless channel 48, destination address for the serving multi-stream gateway 50, and setting other header fields as required to ensure desired QoS for payload data
• Monitoring wireless resource allocation and performance
• Sending feedback (MUX Info 140) to the multi-stream gateway 50
• Receiving and de-tunneling forward link data packets sent by multi-stream gateway
50
• Forwarding forward link data packets to their destination as specified by the
destination address in the original packet header. '
A gateway application layer 68 is appended to the CDMA-2000 IP layer 69. Also in these
embodiments, the multi-stream gateway 50 is external to the wireless service providerOs network.
The multi-stream gateway 50 is connected directly to the Internet, and it implements a standard IP
stack. Gateway application layer 68 provides the following functions:
• Implementation of the multi-stream gateway distribution, concentration and
multiplexing process
• Appending an IP header to forward link data specifying the appropriate destination IP
address of the multi-stream router 54 corresponding to the targeted wireless channel 48, source IP address of the multi-stream gateway 50 sending the packet, and setting other header fields as required to ensure desired QoS for payload data
• Recording feedback data (MUX Info 140) from the multi-stream router 54 for use by the multi-stream gateway distribution, concentration and multiplexing process
• Receiving and de-tunneling reverse link data sent by the multi-stream router 54
• Forwarding reverse link packets to their destinations as specified by the destination IP address in the original packet header
A significant difference between the IP/Mux layer 66, 67 in the multi-stream router 54 and
the gateway application layer 68 in the multi-stream gateway 50 is that the multi-stream router 54
can measure wireless channel allocations and performance directly, whereas the multi-stream
gateway 50 uses feedback (MUX Info 140) from the multi-stream router for its distribution and
multiplexing determinations.
An additional IP header must be appended to each packet (a technique known as "tunneling")
before it is transmitted across the wireless network. This is because an IP address can be associated
with only one mobile terminal identifier in the CDMA-2000 network. Since CDMA-2000 mobile
terminals are designed to use a single transceiver this effectively means that an IP address can be associated with one and only one wireless channel at any given moment in time. This has the effect
of indirectly binding aii IP address in the mobile device to a single channel. When the multi-stream
router sends a reverse link packet, it uses the IP source address corresponding to the radio link over
which the packet is sent. Similarly, forward link packets sent by the multi-stream gateway must
contain the destination IP address corresponding to the radio link over which those packets are sent. When packets are encapsulated with a tunnel header they are routed through the CDMA-2000
network just as packets from a typical end-user device and, as such, standard compression and encryption may be applied to these packets as supported by the CDMA-2000 network being
employed.
Although the present invention has been described with respect to several preferred embodiments, many modifications and alterations can be made without departing from the spirit and scope of the invention. Accordingly, it is intended that all such modifications and alterations be
considered as within the spirit and scope of the invention as defined in the attached claims.