U.S. patent application number 15/789166 was filed with the patent office on 2018-10-11 for acknowledging communication in a wireless network.
The applicant listed for this patent is Intellectual Ventures II LLC. Invention is credited to Timothy J. SPEIGHT.
Application Number | 20180295219 15/789166 |
Document ID | / |
Family ID | 37081047 |
Filed Date | 2018-10-11 |
United States Patent
Application |
20180295219 |
Kind Code |
A1 |
SPEIGHT; Timothy J. |
October 11, 2018 |
Acknowledging Communication in a Wireless Network
Abstract
Allocating uplink resources based on downlink traffic in a
wireless network is provided. The number of sent segments of
transport communication protocol (TCP) data may be counted. In
response to the count exceeding a value, a message is sent
allocating uplink resources to receive an uplink segment and a
message acknowledging sent segments of the TCP data.
Inventors: |
SPEIGHT; Timothy J.;
(Bristol, GB) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Intellectual Ventures II LLC |
Wilmington |
DE |
US |
|
|
Family ID: |
37081047 |
Appl. No.: |
15/789166 |
Filed: |
October 20, 2017 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13672079 |
Nov 8, 2012 |
|
|
|
15789166 |
|
|
|
|
13234904 |
Sep 16, 2011 |
8310993 |
|
|
13672079 |
|
|
|
|
11726397 |
Mar 20, 2007 |
8031654 |
|
|
13234904 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 69/163 20130101;
H04W 28/04 20130101; H04W 28/14 20130101; H04W 72/04 20130101; H04W
28/18 20130101; H04L 1/1848 20130101; H04L 69/16 20130101; H04L
47/14 20130101; H04L 47/19 20130101; H04W 28/12 20130101; H04W
80/06 20130101; H04W 72/042 20130101; H04W 72/1252 20130101; H04L
1/1854 20130101; H04W 72/1289 20130101 |
International
Class: |
H04L 29/06 20060101
H04L029/06; H04L 1/18 20060101 H04L001/18; H04L 12/801 20130101
H04L012/801; H04W 28/18 20090101 H04W028/18 |
Foreign Application Data
Date |
Code |
Application Number |
Aug 16, 2006 |
GB |
0616241.6 |
Claims
1. A wireless network comprising: circuitry configured to send
segments of transport communication protocol (TCP) data to a user
equipment (UE) and count a number of the sent segments of TCP data;
circuitry configured to schedule and send, in response to the count
exceeding a predetermined number, a message allocating uplink
resources substantially sufficient to receive another message
acknowledging a plurality of the sent segments of TCP data.
2. The wireless network of claim 1 wherein the allocation of uplink
resources are resources of a shared channel.
3. The wireless network of claim 1 further comprising: the wireless
network is configured to send an allocation of downlink resources
and an allocation of uplink resources at a substantially a same
time; and wherein the allocation of uplink resources is at a time
interval delayed with respect to the allocation of downlink
resources.
4. The wireless network of claim 1 wherein the another message
acknowledging the plurality of the sent segments of TCP data is a
stand-alone acknowledgement message.
5. The wireless network of claim 1 wherein other data is received
using the allocation of uplink resources.
6. The wireless network of claim 1 wherein the circuitry configured
to send or the circuitry configured to schedule and send is
included in at least one of a base station, Node-B, or radio
network controller (RNC).
7. A method performed by a wireless network, the method comprising:
sending, by the wireless network, segments of transport
communication protocol (TCP) data to a user equipment (UE);
counting, by the wireless network, a number of the sent segments of
TCP data; and sending, by the wireless network in response to the
count exceeding a predetermined number, a message allocating uplink
resources by a scheduler substantially sufficient to receive
another message acknowledging a plurality of the sent segments of
TCP data.
8. The method of claim 7 wherein the allocation of uplink resources
are resources of a shared channel.
9. The method of claim 7 further comprising: sending, by the
wireless network, an allocation of downlink resources and an
allocation of uplink resources at a substantially a same time; and
wherein the allocation of uplink resources is at a time interval
delayed with respect to the allocation of downlink resources.
10. The method of claim 7 wherein the another message acknowledging
the plurality of the sent segments of TCP data is a stand-alone
acknowledgement message.
11. The method of claim 7 wherein other data is received using the
allocation of uplink resources.
12. The method of claim 7 wherein the sending the segments of TCP
data, counting the number of the sent segments of TCP data, or
sending the message allocating uplink resources is performed by at
least one of a base station, Node-B, or radio network controller
(RNC).
13. A wireless network comprising: a core network comprising
circuitry configured to send transport communication protocol (TCP)
data to a wireless network device; and a wireless network device
comprising: circuitry configured to send segments of the TCP data
to a user equipment (UE) and count a number of the sent segments of
the TCP data; and circuitry configured to schedule and send, in
response to the count exceeding a predetermined number, a message
allocating uplink resources substantially sufficient to receive
another message acknowledging a plurality of the sent segments of
the TCP data.
14. The wireless network of claim 13 wherein the allocation of
uplink resources are resources of a shared channel.
15. The wireless network of claim 13 further comprising: the
wireless network device is configured to send an allocation of
downlink resources and an allocation of uplink resources at a
substantially a same time; and wherein the allocation of uplink
resources is at a time interval delayed with respect to the
allocation of downlink resources.
16. The wireless network of claim 13 wherein the another message
acknowledging the plurality of the sent segments of the TCP data is
a stand-alone acknowledgement message.
17. The wireless network of claim 13 wherein other data is received
using the allocation of uplink resources.
18. The wireless network of claim 13 wherein the wireless network
device is a base station, Node-B, or radio network controller
(RNC).
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent
application Ser. No. 13/672,079 filed Nov. 8, 2012, which is a
continuation of U.S. patent application Ser. No. 13/234,904 filed
Sep. 16, 2011, which issued as U.S. Pat. No. 8,310,993 on Nov. 13,
2012, which is a continuation of U.S. patent application Ser. No.
11/726,397 filed Mar. 20, 2007, which issued as U.S. Pat. No.
8,031,654 on Oct. 4, 2011, which claims the benefit of United
Kingdom Application No. 06162416 filed Aug. 16, 2006, the contents
of which are hereby incorporated by reference herein.
FIELD OF THE INVENTION
[0002] This invention relates to a mechanism to support Internet
Protocol data flows within a wireless communication system. The
invention is applicable to, but not limited to, packet data
transmissions, for example, for use in the universal mobile
telecommunication standard.
BACKGROUND OF THE INVENTION
[0003] In a cellular communication system, a geographical region is
divided into a number of cells, each of which is served by base
stations, sometimes referred to as Node-Bs. The base stations are
interconnected by a fixed network that is able to transfer data
between respective base stations. A mobile station, sometimes
referred to as user equipment (UE), is served via a radio
communication link from the base station of the cell within which
the mobile station is situated.
[0004] A typical cellular communication system extends coverage
over an entire country and comprises hundreds or even thousands of
cells supporting thousands or even millions of mobile stations.
Communication from a mobile station to a base station is known as
the uplink (UL), and communication from a base station to a mobile
station is known as the downlink (DL).
[0005] The fixed network interconnecting the base stations is
operable to route data between any two base stations, thereby
enabling a mobile station in a cell to communicate with a mobile
station in any other cell. In addition, the fixed network comprises
gateway functions for interconnecting to external networks such as
the Internet or the Public Switched Telephone Network (PSTN),
thereby allowing mobile stations to communicate with landline
telephones and other communication terminals connected by a
landline. Furthermore, the fixed network comprises much of the
functionality required for managing a conventional cellular
communication network including functionality for routing data,
admission control, resource allocation, subscriber billing, mobile
station authentication etc.
[0006] Currently, the most ubiquitous cellular communication system
is the 2nd generation communication system known as the Global
System for Mobile communication (GSM). GSM uses a technology known
as Time Division Multiple Access (TDMA) wherein user separation is
achieved by dividing frequency carriers into 8 discrete time slots,
which individually can be allocated to a user. Further description
of the GSM TDMA communication system can be found in "The GSM
System for Mobile Communications" by Michel Mouly and Marie
Bernadette Pautet, Bay Foreign Language Books, 1992, ISBN
2950719007.
[0007] Currently, 3rd generation systems are being rolled out to
further enhance the communication services provided to mobile
users. The most widely adopted 3rd generation communication systems
are based on Code Division Multiple Access (CDMA) technology. Both
Frequency Division Duplex (FDD) and Time Division Duplex (TDD)
techniques employ this CDMA technology. In CDMA systems, user
separation is obtained by allocating different spreading and
scrambling codes to different users on the same carrier frequency
and in the same time intervals. In TDD, additional user separation
is achieved by assigning different time slots to different users
similarly to TDMA. However, in contrast to TDMA, TDD provides for
the same carrier frequency to be used for both uplink and downlink
transmissions. An example of a communication system using this
principle is the Universal Mobile Telecommunication System (UMTS).
Further description of CDMA and specifically of the Wideband CDMA
(WCDMA) mode of UMTS can be found in "WCDMA for UMTS", Harri Holma
(editor), Antti Toskala (Editor), Wiley & Sons, 2001, ISBN
0471486876.
[0008] In a 3rd generation cellular communication system, the
communication network comprises a core network and a Radio Access
Network (RAN). The core network is operable to route data from one
part of the RAN to another, as well as interfacing with other
communication systems. In addition, it performs many of the
operation and management functions of a cellular communication
system, such as billing. The RAN is operable to support wireless
user equipment over a radio link of the air interface. The RAN
comprises the base stations, which in UMTS are known as Node Bs, as
well as Radio Network Controllers (RNCs) that control the base
stations and the communication over the air interface.
[0009] The RNC performs many of the control functions related to
the air interface including radio resource management and routing
of data to and from appropriate base stations. It further provides
the interface between the RAN and the core network. An RNC and
associated base stations are known as a Radio Network Subsystem
(RNS).
[0010] 3rd generation cellular communication systems have been
specified to provide a large number of different services including
efficient packet data services. For example, downlink packet data
services are supported within the 3GPP release 5 specifications in
the form of the High Speed Downlink Packet Access (HSDPA) service.
A High Speed Uplink Packet Access (HSUPA) feature is also in the
process of being standardised. This uplink packet access feature
will adopt many of the features of HSDPA.
[0011] In accordance with the 3GPP specifications, the HSDPA
service may be used in both Frequency Division Duplex (FDD) mode
and Time Division Duplex (TDD) mode.
[0012] In HSDPA, transmission code resources are shared amongst
users according to their traffic needs. The base station or
"Node-B" is responsible for allocating and distributing the
resources to the users, within a so-called scheduling task. Hence,
for HSDPA, some scheduling is performed by the RNC, whereas other
scheduling may be performed by the base station. Specifically, the
RNC allocates a set of resources to each base station, which the
base station can use exclusively for high-speed packet services.
The RNC furthermore controls the flow of data to and from the base
stations.
[0013] Therefore, most packet-based systems contain schedulers that
control when the individual data packets are transmitted, in order
to share the available resource, whether time-slots in a time
division multiple access (TDMA) communication system or power and
codes in a code division multiple access (CDMA) communication
system. An introduction to schedulers can be found in "Service
discipline for guaranteed performance service in packet-switching
networks", authored by Hui Zhang, and published in the Proceedings
of the IEEE, volume 83, no. 10, October 1995.
[0014] Referring now to FIG. 1, an example of UL data transfer, in
a "request and allocate" system, is illustrated. The data transfer
is performed between a UE 105 and a network 110. The key attribute
for schedulers operating in such systems is that the allocation of
the shared resources in the uplink is based on a "request and
allocate" principle. Specifically, when the UE 105 determines that
it has new data arriving in its buffers to be transmitted, in step
115, the UE 105 transmits a request message 120 for resources from
the network in a specific message. This specific message usually
contains an indication of the volume of data in the UE's buffers
that is to be transmitted. When the network receives this message
in step 125, the request is then passed to the scheduler and
subsequently uplink (UL) resources are allocated to the UE, in step
130. This allocation is signalled in a separate allocation message,
as shown in step 135. When the UE receives this message in step
140, the UE may send the UL data on the specified air interface
resource(s), and the consequent data transfer is shown in step
145.
[0015] A similar, though simpler, procedure occurs in the downlink
(DL) direction. Of course no message needs to be sent over the air
interface to tell the scheduler the state of the DL buffers at the
network end of the system. This means that allocation in the DL is
subject to much lower latency than in the UL.
[0016] Transport communication protocol (TCP) is a protocol in the
well-known TCP/IP (Internet Protocol) suite of communication
protocols (see [RFC 793] for a full description of the TCP
protocol). TCP provides a connection-orientated, reliable, byte
stream service. The reliability is maintained by the use of
acknowledgement messages (ACKs) that are sent by the receiver back
to the transmitter, in response to a received segment. In this
manner, lost or corrupted data segments may be indicated to the
transmitter, and these lost or corrupted data segments may be
re-sent.
[0017] However, in TCP the receiver does not immediately send an
acknowledgment for every received segment. A functionality termed
"delayed ACK" is employed (see [RFC 813]). When a data segment is
received, a delay timer is started and an ACK data segment is sent
in response to one of the following conditions:
[0018] a) The delay timer expires.
[0019] b) New Data is returned to the original transmitter of the
segment (i.e. in interactive style applications, such as "rlogin")
and this new data can be "piggybacked" with an ACK message.
[0020] c) More segments are received from the transmitter.
[0021] In the case of bulk data transfer it is condition-(c) that
is the most likely, as the transmitter is, ideally, continuously
sending new segments.
[0022] Typically only one more segment is required for an ACK to be
sent. The following quote is from [RFC 1122]: [0023] "When used, a
TCP receiver MUST NOT excessively delay acknowledgments.
Specifically, an ACK SHOULD be generated for at least every second
full-sized segment, and MUST be generated within 500 msec. of the
arrival of the first unacknowledged packet."
[0024] Most current TCP stacks implement the delayed ACK
functionality so that an ACK is generated when a single TCP segment
is received, whilst the delay timer is running (i.e. an "ACK" is
transmitted for "every second full-sized data segment" received,
since the reception of a single TCP segment is enough to start the
timer in the first place). Also the delay timer is typically set to
200 msec.
[0025] The delayed ACK feature is shown diagrammatically in FIG. 2
and explained in 220, with a TCP segment 215 transmitted between a
transmitter 205 and a receiver 210 (note that the typical
configuration in wireless systems will be that the network is the
transmitter and the UE is the receiver). Here, the TCP segment 215
is received at the receiver 210. However, the receiver 210 does not
transmit an ACK message immediately, and waits until the delay
timer has expired, as no data arrives that can be piggy-backed onto
the data that is to be sent to the transmitter 205 in addition to
no other subsequent TCP segments are received from the transmitter
205. After the delay timer expires, after a period 225, the
receiver 210 transmits a stand-alone ACK segment 230.
[0026] Thereafter, in the second case, two full-sized TCP segments
235 are transmit by the transmitter 205. The two full-sized TCP
segments 235 are received at the receiver 210. The receiver 210
does not immediately transmit an ACK to the transmitter 205, after
receipt of the first of the two full-sized TCP segments 235.
However, after receipt of the second of the two full-sized TCP
segments 235, the receiver 210 immediately transmits an ACK in step
240. For completeness, it is noteworthy that FIG. 2 shows a typical
case of "slow start" in TCP.
[0027] In the case of bulk TCP data transfer the delayed ACK
feature leads to an ACK being transmitted every other segment.
[0028] When TCP is used (for bulk data transfer) in "request and
allocate" wireless communication systems (i.e. one using the shared
channel concept), a message flow between a UE 305 and the network
310 occurs, similar to the data flow illustrated in FIG. 3. Here,
at least one full-sized TCP segment arrives at a network's DL
buffer, in step 315. The network 310 transmits a message to the UE
305 to allocate DL resources, as shown in step 320. This message is
followed by the TCP data transfer, as shown in step 325. The at
least one full-sized TCP segment is received by the UE 305, in step
330, which passes the at least one full-sized TCP segment to its
TCP memory stack.
[0029] The UE 305 then transmits 335 a message to the network 310,
requesting UL resources to transmit an ACK message, as shown in
step 340. In response thereto, the network 310 transmits a message
to the UE 305 allocating UL resources, as shown in step 345.
Thereafter, the UE 305 is able to implement the data transfer in
step 355, which includes an "ACK" message. Notably, a significant
latency 350 exists with this request for an allocated resource.
[0030] Thus, there exists a need to provide an improved mechanism
to provide bulk IP data transfer flow.
SUMMARY
[0031] In accordance with aspects of the present invention, there
is provided apparatus, a wireless communication system, a method
for acknowledging an allocation of resource and a method for
allocating resource and computer program product, as defined in the
appended claims.
[0032] Accordingly, in one embodiment of the present invention
there is provided an apparatus for use in allocating resource in a
wireless communication system employing transfer communication
protocol (TCP) based data transfer between a network and a wireless
subscriber communication unit. The apparatus comprises a scheduler
located in the network, wherein the scheduler buffers a TCP data
segment for downlink (DL) transmission. A transmitter arranged to
transmit the buffered TCP data segment to the UE; wherein the
message indicates an allocation of DL resources plus sufficient
uplink resources to transfer a stand-alone ACK data segment.
[0033] The provision of a message that indicates an allocation of
DL resources plus sufficient uplink resources to transfer a
stand-alone ACK data segment enables a wireless subscriber
communication unit to process the downlink message to identify an
allocation of DL resources plus sufficient uplink resources and
transmit a stand-alone ACK data segment in response to the downlink
message.
[0034] In one embodiment of the present invention, the apparatus
comprises counting logic operably coupled to scheduler and arranged
to count a number of transmitted segments, as they are transferred
to the UE.
[0035] The provision of counting logic provides a mechanism to
count every DL full sized segment separately in each TCP flow (if
there are multiple) and use the counting logic to ensure that when
the second segment is sent UL resources are allocated. The counter
is then reset.
[0036] In one embodiment of the present invention, the apparatus is
located in a radio access network that comprises the scheduler
arranged to allocate resources to a plurality of user
equipment.
[0037] In one embodiment of the present invention, the apparatus is
arranged to operate in a 3rd Generation Partnership Project (3GPP)
cellular communication system.
[0038] In one embodiment of the present invention, the apparatus is
arranged to operate in a time division duplex code division
multiple access cellular communication system.
[0039] In one embodiment of the present invention, a wireless
subscriber communication unit for use in acknowledging an
allocation of resource in a wireless communication system employing
transfer communication protocol (TCP) based data transfer between a
network and the wireless subscriber communication unit comprises a
receiver arranged to receive a downlink message comprising a TCP
data segment. Processing logic, operably coupled to the receiver,
is arranged to process the downlink message to identify an
allocation of DL resources plus sufficient uplink resources to
transfer a stand-alone ACK data segment. A transmitter is arranged
to transmit a stand-alone ACK data segment in response to the
downlink message.
[0040] In one embodiment of the present invention, the wireless
subscriber communication unit immediately transmits the stand-alone
ACK data segment in the allocated UL resources following processing
the downlink message.
[0041] In one embodiment of the present invention, a method for
allocating resource in a wireless communication system employing
transfer communication protocol (TCP) based data transfer between a
network and a wireless subscriber communication unit comprises
buffering a TCP data segment for downlink (DL) transmission;
transmitting the buffered TCP data segment to the wireless
subscriber communication unit within a message. The message
indicates an allocation of DL resources plus sufficient uplink
resources to transfer a stand-alone ACK data segment from the
wireless subscriber communication unit.
[0042] In one embodiment of the present invention, a method for
acknowledging an allocation of resource in a wireless communication
system employing transfer communication protocol (TCP) based data
transfer between a network and a wireless subscriber communication
unit comprises receiving a downlink message comprising a TCP data
segment. The method further comprises processing the downlink
message; identifying an allocation of downlink resources plus
sufficient uplink resources to transfer a stand-alone
acknowledgement (ACK) data segment; and transmitting the
stand-alone ACK data segment in response to the downlink
message.
[0043] In one embodiment of the present invention, a computer
program product comprises executable program code for allocating
resource in a wireless communication system. The computer program
product comprises program code for buffering a TCP data segment for
downlink (DL) transmission; transmitting the buffered TCP data
segment to the wireless subscriber communication unit within a
message. The message indicates an allocation of DL resources plus
sufficient uplink resources to transfer a stand-alone ACK data
segment from the wireless subscriber communication unit.
[0044] In one embodiment of the present invention, there is
provided wireless communication system comprising a radio access
network facilitating communication to a plurality of wireless
communication units. The wireless communication system comprises a
scheduler located in the network, wherein the scheduler buffers a
TCP data segment for downlink (DL) transmission; a transmitter
arranged to transmit the buffered TCP data segment to the UE. The
message indicates an allocation of DL resources plus sufficient
uplink resources to transfer a stand-alone ACK data segment.
[0045] In one embodiment of the present invention, the wireless
communication system further comprises a wireless subscriber
communication unit comprising a receiver arranged to receive the
downlink message comprising a TCP data segment; processing logic,
operably coupled to the receiver and arranged to process the
downlink message to identify an allocation of downlink resources
plus sufficient uplink resources to transfer a stand-alone ACK data
segment; and a transmitter arranged to transmit a stand-alone ACK
data segment in response to the downlink message.
BRIEF DESCRIPTION OF THE DRAWINGS
[0046] FIG. 1 illustrates a known example of UL data transfer, in a
"request and allocate" system;
[0047] FIG. 2 illustrates a known delayed "ACK" feature, with a TCP
segment transmitted between a transmitter and a receiver; and
[0048] FIG. 3 illustrates a "request and allocate" wireless
communication system where TCP is used for bulk data transfer in a
message flow between a UE and a network.
[0049] Embodiments of the invention will be described, by way of
example only, with reference to the accompanying drawings, in
which:
[0050] FIG. 4 illustrates a 3GPP cellular communication system
capable of supporting embodiments of the present invention; and
[0051] FIG. 5 illustrates a method to support a transmission of an
ACK message in a TCP-based wireless communication system employing
resource and allocation acknowledge messages, according to
embodiments of the present invention.
DESCRIPTION OF EMBODIMENTS OF THE INVENTION
[0052] In summary, embodiments of the present invention describe an
architecture for supporting a scheduler within the Radio Access
Network is configured to allocate "ACK" resources to a UE.
[0053] Referring first to FIG. 4, a typical, standard UMTS Radio
Access Network (UTRAN) system 400 is conveniently considered as
comprising: terminal/user equipment domain 410; a UMTS Terrestrial
Radio Access Network domain 420; and an infrastructure domain
430.
[0054] In the terminal/user equipment domain 410, terminal
equipment (TE) 412 is connected to mobile equipment (ME) 414 via
the wired or wireless R interface. The ME 414 is also connected to
a user service identity module (USIM) 416; the ME 414 and the USIM
416 together are considered as user equipment (UE) 418. The UE may
be for example a remote unit, a mobile station, a communication
terminal, a personal digital assistant, a laptop computer, an
embedded communication processor or any communication element
communicating over the air interface of the cellular communication
system.
[0055] The UE 418 communicates data with a Node-B (base station)
422 in the radio access network domain 420 via the wireless Uu
interface. Within the radio access network domain 420, the Node-B
422 communicates with a radio network controller (RNC) 424 via the
Iub interface. The RNC 424 communicates with other RNCs (not shown)
via the Iur interface.
[0056] The Node-B 422 and the RNC 424 together form the UTRAN 426.
The RNC 424 communicates with a serving GPRS service node (SGSN)
432 in the core network domain 430 via the Iu interface. Within the
core network domain 430, the SGSN 432 communicates with a gateway
GPRS support node 434 via the Gn interface; the SGSN 432 and the
GGSN 434 communicate with a home location register (HLR) server 436
via the Gr interface and the Gc interface respectively. The GGSN
434 communicates with public data network 438 via the Gi
interface.
[0057] Thus, the elements RNC 424, SGSN 432 and GGSN 434 are
conventionally provided as discrete and separate units (on their
own respective software/hardware platforms) divided across the
radio access network domain 420 and the core network domain 430, as
shown FIG. 4.
[0058] The RNC 424 is the UTRAN element responsible for the control
and allocation of resources for numerous Node-Bs 422; typically 50
to 100 Node-Bs may be controlled by one RNC. The RNC also provides
reliable delivery of user traffic over the air interfaces. RNCs
communicate with each other (via the Iur interface).
[0059] The SGSN 432 is the UMTS Core Network element responsible
for Session Control and interface to the HLR. The SGSN keeps track
of the location of an individual UE and performs security functions
and access control. The SGSN is a large centralised controller for
many RNCs.
[0060] The GGSN 434 is the UMTS Core Network element responsible
for concentrating and tunnelling user data within the core packet
network to the ultimate destination (e.g., internet service
provider--ISP). Terminal equipment (TE) 412 is connected to mobile
equipment (ME) 414 via the wired or wireless R interface. The ME
414 is also connected to a user service identity module (USIM) 416;
the ME 414 and the USIM 416 together are considered as user
equipment (UE) 418. The UE 418 communicates data with a Node-B
(base station) 422 in the radio access network domain 420 via the
wireless Uu interface. Within the radio access network domain 420,
the Node-B 422 communicates with a radio network controller (RNC)
424 via the Iub interface. The RNC 424 communicates with other RNCs
(not shown) via the Iur interface. The Node-B 422 and the RNC 424
together form the UTRAN 426. The RNC 424 communicates with a
serving GPRS service node (SGSN) 432 in the core network domain 430
via the Iu interface. Within the core network domain 430, the SGSN
432 communicates with a gateway GPRS support node 434 via the Gn
interface; the SGSN 432 and the GGSN 434 communicate with a home
location register (HLR) server 436 via the Gr interface and the Gc
interface respectively. The GGSN 434 communicates with public data
network 438 via the Gi interface.
[0061] Thus, the elements RNC 424, SGSN 432 and GGSN 434 are
conventionally provided as discrete and separate units (on their
own respective software/hardware platforms) divided across the
radio access network domain 420 and the core network domain 430, as
shown FIG. 4.
[0062] The RNC 424 is the UTRAN element responsible for the control
and allocation of resources for numerous Node-B's 422; typically 50
to 400 Node-B's may be controlled by one RNC. The RNC 424 also
provides reliable delivery of user traffic over the air interfaces.
RNCs communicate with each other (via the Iur interface).
[0063] The SGSN 432 is the UMTS Core Network element responsible
for Session Control and interface to the HLR. The SGSN keeps track
of the location of an individual UE and performs security functions
and access control. The SGSN is a large centralised controller for
many RNCs.
[0064] The GGSN 434 is the UMTS Core Network element responsible
for concentrating and tunnelling user data within the core packet
network to the ultimate destination (e.g., internet service
provider--ISP).
[0065] Such a UTRAN system and its operation are described more
fully in the 3rd Generation Partnership Project technical
specification documents 3GPP TS 25.401, 3GPP TS 23.060, and related
documents, available from the 3GPP website at www.3gpp.org, and
need not be described herein in more detail.
[0066] Within the RNC 424, separate functional blocks exist that
have been incorporated or adapted in accordance with embodiments of
the present invention. In particular, as shown in FIG. 4, a
scheduler 428, comprising or operably coupled to counting logic
429, has been adapted to perform the inventive concept as described
further with respect to FIG. 5. RNC 424 also comprises element
manager 440 containing an RB mapping database.
[0067] Referring now to FIG. 5, a data flow process 500 is
illustrated between a UE 505 and a scheduler 428 in the network
510. The inventive concept described in FIG. 5 commences with a
full-sized TCP data segment arriving at a DL buffer within the
network 510. The network determines that an ACK is likely to be
generated by the receiving UE in response to the transmitted TCP
data segment, in step 515. The knowledge is based on the fact that
with a delayed ACK feature there will be an ACK every other
segment. It is therefore possible to easily count DL segments (for
each TCP flow, if necessary) and then when the counter reaches two
allocate UL resources accordingly. The counter is then reset. Thus,
the scheduler is made aware that the data being transferred is
using the TCP protocol following transmission of a message to the
UE, as shown in step 525.
[0068] Notably, the scheduler arranges for the message to indicate
an allocation of DL resources plus sufficient UL resources to
transfer a stand-alone ACK data segment 530, in step 520. The
scheduler 428 (from FIG. 4) continues allocating DL resources to
transfer the segments to the UE 505. Notably, the scheduler
comprises counting logic 429 arranged to count a number of
transmitted segments, as they are transferred to the UE 505. In
this manner, the scheduler 428 is made aware of when the end of
each data segment is likely to be fully transferred to the UE
505.
[0069] In accordance with one embodiment of the present invention,
the full-sized TCP data segment is received by the UE 505 and
passed to the TCP memory stack of the UE 505. The UE then responds
with a stand-alone ACK data segment 545, in step 535. In accordance
with one embodiment of the present invention, the stand-alone "ACK"
data segment may be immediately placed in allocated UL resources in
540, so there is no requirement to transmit a message to request UL
resources, in step 550.
[0070] In one embodiment of the present invention, at the end of
every second segment, or greater number of segments depending upon
the particular TCP implementation, the allocation message
containing a downlink resource allocation will also contain enough
uplink resource allocation for a stand-alone ACK to be transmitted.
A stand-alone ACK is typically "40" to "60" bytes (though this
might be less if some form of header compression is applied).
Hence, in this embodiment of the present invention, the UL resource
is provided with enough bytes to include the stand-alone ACK
message. It is also envisaged that the start of the UL allocation
may also be slightly delayed in time, from the DL transmission, in
order for the TCP stack at the UE to process the downlink segments
and generate the stand-alone ACK.
[0071] It is envisaged that it may not be possible to exactly
predict a sending of an ACK from the UE. For example, a missing
segment may be detected and an ACK generated unexpectedly.
Similarly, there may be piggybacked data to send and the allocation
may be too small to carry the ACK plus data segment. However, it
has been determined that the overall statistical performance is to
significantly improve latency at the cost of some wasted uplink
resource.
[0072] In summary, the inventive concept of the present invention
aims to provide at least one or more of the following features:
[0073] (i) A method and apparatus to provide reduced latency in
TCP;
[0074] (ii) In large bulk data transfer cases, such as file
transfer protocol (FTP), the reduced latency may lead to improved
throughput, due to the fact that the overall throughput may be
limited by the window size (i.e. number of unacknowledged segments)
rather than the throughput possible across the air interface;
and
[0075] (iii) In short data transfers such, as hyper-text transfer
protocol (HTTP), the observed throughput may be significantly
affected by the latency, due to slow start functionality of TCP.
Since the latency will be reduced using the inventive concept
herein described the overall observed performance (for page
download time in the case of HTTP) is improved.
[0076] In particular, it is envisaged that the aforementioned
inventive concept may be applied by a semiconductor manufacturer to
any signal processing integrated circuit (IC). It is further
envisaged that, for example, a semiconductor manufacturer may
employ the inventive concept in a design of a stand-alone device,
or application-specific integrated circuit (ASIC) and/or any other
sub-system element.
[0077] It will be appreciated that any suitable distribution of
functionality between different functional units or logic elements
may be used without detracting from the inventive concept herein
described. Hence, references to specific functional devices or
elements are only to be seen as references to suitable means for
providing the described functionality, rather than indicative of a
strict logical or physical structure or organization.
[0078] Aspects of the invention may be implemented in any suitable
form including hardware, software, firmware or any combination of
these. The elements and components of an embodiment of the
invention may be physically, functionally and logically implemented
in any suitable way. Indeed, the functionality may be implemented
in a single unit or IC, in a plurality of units or ICs or as part
of other functional units.
[0079] Although the present invention has been described in
connection with some embodiments, it is not intended to be limited
to the specific form set forth herein. Rather, the scope of the
present invention is limited only by the accompanying claims.
Additionally, although a feature may appear to be described in
connection with particular embodiments, one skilled in the art
would recognize that various features of the described embodiments
may be combined in accordance with the invention. In the claims,
the term "comprising" does not exclude the presence of other
elements or steps.
[0080] Furthermore, although individual features may be included in
different claims, these may possibly be advantageously combined,
and the inclusion in different claims does not imply that a
combination of features is not feasible and/or advantageous. Also,
the inclusion of a feature in one category of claims does not imply
a limitation to this category, but rather indicates that the
feature is equally applicable to other claim categories, as
appropriate.
[0081] Furthermore, the order of features in the claims does not
imply any specific order in which the features must be performed
and in particular the order of individual steps in a method claim
does not imply that the steps must be performed in this order.
Rather, the steps may be performed in any suitable order. In
addition, singular references do not exclude a plurality. Thus,
references to "a", "an", "first", "second" etc. do not preclude a
plurality.
[0082] Thus, an improved wireless communication system, apparatus,
integrated circuit, and a method of operation therefor have been
described, wherein the aforementioned disadvantages with prior art
arrangements have been substantially alleviated.
* * * * *
References