Transmission and flow control
First Claim
Patent Images
1. A wireless content switch for transmitting and receiving data packets and acknowledgments, said wireless content switch comprising:
- an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to a content source;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from a mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
optimization code stored in the memory, the optimization code, when executed, performing the steps of;
receiving at least one data packet at the upstream port;
transmitting the data packet via the downstream port;
calculating a data packet round trip time;
determining if expiration of round trip time occurred prior to reception of acknowledgment for data packet;
if expiration of round trip time occurred, transmit a probe via the downstream port;
determine if receive probe acknowledgment; and
if no probe acknowledgment received, retransmit probe at fixed interval.
0 Assignments
0 Petitions
Accused Products
Abstract
A system, method, and apparatus for transmitting packet data over a wireless network to a mobile station is presented herein. Packet data are received at a wireless content switch that is part of the wireless data network. The wireless content switch is equipped to detect lost packets, lost acknowledgments, and take appropriate remedial action, without invoking the congestion control and avoidance mechanisms of the transmission control protocol.
73 Citations
67 Claims
-
1. A wireless content switch for transmitting and receiving data packets and acknowledgments, said wireless content switch comprising:
-
an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to a content source;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from a mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
optimization code stored in the memory, the optimization code, when executed, performing the steps of;
receiving at least one data packet at the upstream port;
transmitting the data packet via the downstream port;
calculating a data packet round trip time;
determining if expiration of round trip time occurred prior to reception of acknowledgment for data packet;
if expiration of round trip time occurred, transmit a probe via the downstream port;
determine if receive probe acknowledgment; and
if no probe acknowledgment received, retransmit probe at fixed interval. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a packet data network comprising a wired network and a mobile station, a method of optimizing retransmission functions, the method comprising:
-
receiving at least one data packet from the wired network;
storing the data packet;
transmitting the data packet to the mobile station;
calculating a round trip time for the data packet;
determining if the acknowledgment for the data packet is received prior to the expiration of the round trip time;
if the acknowledgment is not received, transmitting a probe to the mobile station; and
responsive to receiving an acknowledgment to the transmitted probe, transmitting the requested data packet. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A wireless content switch for persisting a content source during periods of a mobile station unavailability, said wireless content switch comprising:
-
an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to the content source;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from the mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
persist code stored in the memory, the persist code, when executed, performing the steps of;
receiving at least one data packet at the upstream port;
transmitting the data packet via the downstream port;
calculating a data packet round trip time;
determining if expiration of round trip time occurred or an external mobile unavailable message is received;
if expiration of round trip time occurred or the mobile is unavailable, transmitting a persist acknowledgment via the upstream port;
calculating and executing a dead timer;
determining if a dead timer event has occurred; and
if a dead timer event has occurred, transmitting an open acknowledgment via the upstream port. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
- 29. he wireless content switch of claim 20 wherein the step of transmitting an open acknowledgment via the upstream port includes transmitting an acknowledgment with the sequence number one less than the last acknowledged data packet.
-
29-1. In a packet data network comprising a wired network and a mobile station, a method of persisting the server, the method comprising:
-
receiving at least one data packet from the wired network;
transmitting the data packet to the mobile station;
calculating a round trip time for the data packet;
determining if the round trip time has expired or an external mobile unavailable message is received;
if expiration of round trip time occurred or the mobile is unavailable, transmitting a first acknowledgment to the wired network;
calculating and executing a dead timer;
determining if a dead timer event has occurred; and
if a dead timer event has occurred, transmitting a second acknowledgment to the wired network.
-
-
38. A wireless content switch for regulating the rate of data packet transmissions to a mobile station, said wireless content switch comprising:
-
an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to a content source;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from a mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
rate regulation code stored in the memory, the rate regulation code, when executed, performing the steps of;
receiving at least one data packet at the upstream port;
transmitting the data packet via the downstream port;
calculating a buffer trigger;
determining if buffer trigger is met;
if buffer trigger is met, transmitting a first acknowledgment to the content source;
monitoring air interface to the mobile station;
determining if air interface degradation is encountered;
if degradation encountered, implementing the drain the packet functionality; and
if no degradation encountered, transmitting a second acknowledgment to the content source - View Dependent Claims (39, 40, 41, 42, 43)
-
-
44. In a packet data network comprising a wired network and a mobile station, a method of rate regulation, the method comprising:
-
receiving at least one data packet from the wired network;
transmitting the data packet to the mobile station;
calculating a buffer trigger;
determining if buffer trigger is met;
if buffer trigger is met, transmitting a persist server acknowledgment to the wired network;
monitoring air interface to the mobile station;
determining if air interface degradation is encountered;
if degradation encountered, implementing the drain the packet functionality; and
if no degradation encountered, transmitting a restore server acknowledgment to the wired network. - View Dependent Claims (45, 46, 47, 48, 49)
-
-
50. A wireless content switch for expedited congestion window increases at a content server during retransmissions of data packets to a mobile station, said wireless content switch comprising:
-
an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to the content server;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from the mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
expedited congestion window code stored in the memory, the expedited congestion window code, when executed, performing the steps of;
receiving at least two data packets at the upstream port;
transmitting the data packets via the downstream port;
monitoring acknowledgments from the mobile source;
detecting a lost data packet or lost acknowledgment;
executing retransmission of detected data packet;
receiving cumulative acknowledgment, wherein the cumulative acknowledgment represents the retransmitted data packet and all other received data packets prior to the reception by the mobile station of the retransmitted packet;
determining if the content server has timed out;
if the content server has not timed out, transmitting the cumulative acknowledgment to the content server; and
if the content server has timed out, separating the cumulative acknowledgment in to single data packet acknowledgments and transmitting the individual single data packet acknowledgments to the content server. - View Dependent Claims (51, 52, 53, 54)
-
-
55. In a packet data network comprising a content server and a mobile station, a method of expedited congestion window increases, the method comprising:
-
receiving at least two data packets from the content server;
transmitting the data packets to the mobile station;
monitoring acknowledgments from the mobile source;
detecting a lost data packet or lost acknowledgment;
executing retransmission of detected data packet;
receiving cumulative acknowledgment, wherein the cumulative acknowledgment represents the retransmitted data packet and all other received data packets prior to the reception by the mobile station of the retransmitted packet;
determining if the content server has timed out;
if the content server has not timed out, transmitting the cumulative acknowledgment to the content server; and
if the content server has timed out, separating the cumulative acknowledgment in to single data packet acknowledgments and transmitting the individual single data packet acknowledgments to the content server. - View Dependent Claims (56, 57, 58, 59)
-
-
60. A wireless content switch for increased goodput in a cell of a wireless network during transmissions of data packets to a mobile station present in the cell, said wireless content switch comprising:
-
an upstream port for receiving one or more data packets and for transmitting one or more acknowledgments to the content server;
a downstream port for transmitting the one or more data packets and for receiving one or more acknowledgments from the mobile station;
at least one processing unit coupled to the upstream and down stream ports;
memory for storing the one or more data packets responsive to receiving the data packets; and
increased goodput code stored in the memory, the increased goodput code, when executed, performing the steps of;
determining bit error rate (BER) for the cell;
calculating the optimal maximum segment size (MSS);
setting Transmission Control Protocol (TCP) MSS to optimal MSS;
receiving at least one data packet at the upstream port;
transmitting the data packet via the downstream port; and
monitoring acknowledgments from the mobile source. - View Dependent Claims (61, 62, 63)
-
-
64. In a packet data network comprising a cell and a mobile station of a wireless network and a wired network, a method of increased goodput, the method comprising:
-
determining bit error rate (BER) for the cell;
calculating the optimal maximum segment size (MSS);
setting Transmission Control Protocol (TCP) MSS to optimal MSS;
receiving at least one data packet from the wired network;
transmitting the data packet to the mobile station; and
monitoring acknowledgment from the mobile source. - View Dependent Claims (65, 66, 67)
-
Specification