Method and system for efficient enrichment of upper layer protocol content in transmission control program (TCP) based sessions
View Patent ↗A gateway system employing a redirect mechanism at upper layer protocols over Transmission Control Protocol (TCP) in a packet network to circumvent problems related to alteration of TCP sequence number due to header enrichment. The gateway system increases the size of a redirect message by the size of the header enrichment and thereby brings TCP sequence number on both ends in sync despite adding the header enrichment information.
1. A network element for processing message flow of a network comprising:
an access network interface unit configured to send and receive communications from a mobile device; and
a processor with a memory associated with the network interface unit and adapted to:
receive as Hypertext Transfer Protocol (HTTP1 Request from a mobile device and identify if the HTTP Request needs to be enriched;
if so, create a Redirect uniform resource locator (URL) including: i) an original requested URL; and ii) a Substitution String following the original requested URL; and
send the Redirect URL back to the mobile device;
wherein the size of the Substitution String equals a predicted size of an Enriched Header if the network element were to enrich the HTTP Request.
2. The network element of claim 1 , wherein the Substitution String includes a Marker.
3. The network element of claim 2 , wherein the Substitution String further includes a header enrichment (HE) placeholder.
4. The network element of claim 2 , wherein the processor is further adapted to:
identify an HTTP Request having the Substitution String;
replace the Substitution String in the HTTP Request with the Enriched Header; and
transmit the modified HTTP Request to a server.
5. The network element of claim 4 , wherein the TCP sequence number of the modified HTTP request is the same as the TCP sequence number of the identified HTTP request.
6. The network element of claim 1 , wherein the network element is a gateway general packet radio service support node (GGSN).
7. The network element of claim 1 , wherein the network element is a PDN gateway (P-GW).
8. A method performed within a network element having an access network interface unit, a processor and memory, said network element configured to process network signaling of a packet core network, the method comprising:
receiving a Hypertext Transfer Protocol (HTTP) Request from a mobile device and identifying if the HTTP Request needs to be enriched;
if so, creating a Redirect uniform resource locator (URL) including: i) an original requested URL; and ii) a Substitution String following the original requested URL; and
sending the Redirect URL back to the mobile device;
wherein the size of the Substitution String equals a predicted size of an Enriched Header if the network element were to enrich the HTTP request.
9. The method of claim 8 , wherein the Substitution String includes a Marker.
10. The method of claim 9 , wherein the Substitution String further includes a header enrichment (HE) placeholder.
11. The method of claim 9 , further comprising:
identifying an HTTP Request having the Substitution String;
replacing the Substitution String in the HTTP Request with the Enriched Header; and
transmitting the modified HTTP Request to a server.
12. The method of claim 11 , wherein the TCP sequence number of the modified HTTP request is the same as the TCP sequence number of the identified HTTP request.
13. The method of claim 8 , wherein the network element is a_gateway general packet radio service support node (GGSN).
14. The method of claim 8 , wherein the network element is a PDN gateway (P-GW).
15. A network element for processing message flow of a network comprising:
an access network interface unit configured to send and receive communications from a mobile device; and
a processor with a memory associated with the network interface unit and adapted to:
receive a Hypertext Transfer Protocol (HTTP) Request from a mobile device and identify if the HTTP Request needs to be enriched;
if so, create a Redirect uniform resource locator (URL) including: i) an original requested URL; and ii) a Substitution String following the original requested URL, wherein the size of the Substitution String equals a predicted size of an Enriched Header if the network element were to enrich the HTTP Request;
send the Redirect URL back to the mobile device;
identify an HTTP Request having the Substitution String;
replace the Substitution String in the HTTP Request with the Enriched Header; and
transmit the modified HTTP Request to a server.
16. The network element of claim 15 , wherein the network element is a gateway general packet radio service support node (GGSN).
17. The network element of claim 15 , wherein the network element is a PDN gateway (P-GW).
18. The network element of claim 15 , wherein the Substitution String includes a Marker.
19. The network element of claim 18 , wherein the Substitution String further includes a header enrichment (HE) placeholder.
20. The network element of claim 15 , wherein the TCP sequence number of the modified HTTP request is the same as the TCP sequence number of the identified HTTP request.