<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>MQX Software SolutionsのトピックRe: Re: MQX httpsrv - large cgi stream - retransmissons</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379589#M12663</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would strongly recommend against using function snprintf in such way. It is &lt;SPAN style="text-decoration: underline;"&gt;very&lt;/SPAN&gt; complicated function so it takes long time to complete. Better solution is to create say 2KiB big buffer, store data in there in binary format (even better - compressed). And send it in 2KiB chunks to client. If you need your data in human readable form, do the conversion to string client-side. Regarding the commented out RTCS_time_get(): This has a side effect. The session will always time-out after 20 seconds and server will close the connection. Also not setting content_length to valid value will probably cause client hang as it will not know where the data ends. In future version of HTTPSRV we plan to implement chunked transfer encoding to eliminate this limitation (content-length is then no longer needed).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Karel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 28 Aug 2014 10:34:41 GMT</pubDate>
    <dc:creator>karelm_</dc:creator>
    <dc:date>2014-08-28T10:34:41Z</dc:date>
    <item>
      <title>MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379587#M12661</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm quite new to MQX, just starting to port some projects to MQX. I need to create an application which is generating 'big' files as dynamically generated CGI data, so I started to figure out what the MQX http server is capable of.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;First question: is it allowed to have a resource like this, which is 'just' doing multiple subsequent calls to HTTPSRV_cgi_write() ?&lt;/P&gt;&lt;P&gt;My first impression: it works. (spot on).&lt;/P&gt;&lt;P&gt;My second impression: it's slow. After a few packets, I see many TCP re-transmission on a very regular basis.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You find attached a wireshark trace of the complete TCP stream.&lt;/P&gt;&lt;P&gt;It's not always exactly the same packet no, though the re-transmissions are kicking in at approx the same stream-position, maybe one or two packets more or less.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the code I added to cgi.c, starting at the MQX demo http server project:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;const HTTPSRV_CGI_LINK_STRUCT cgi_lnk_tbl[] = {&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { "bigdata",&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cgi_big_data,&amp;nbsp; 1500},&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { 0, 0 }&amp;nbsp;&amp;nbsp;&amp;nbsp; // DO NOT REMOVE - last item - end of table&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;static _mqx_int cgi_big_data(HTTPSRV_CGI_REQ_STRUCT* param)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; HTTPSRV_CGI_RES_STRUCT response;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (param-&amp;gt;request_method != HTTPSRV_REQ_GET)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.ses_handle = param-&amp;gt;ses_handle;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.content_type = HTTPSRV_CONTENT_TYPE_PLAIN;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.status_code = 200;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.content_length = 0; // @TODO this prevents keep-alive&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char str[32];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.data = str;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; 60000; i++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.data_length = snprintf(str, 32, "%ld\n", i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HTTPSRV_cgi_write(&amp;amp;response);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (1); // ?&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone can tell me if it's OK to generate large CGI streams that way?&lt;/P&gt;&lt;P&gt;Does anyone know what might be the reason for the many re-transmissions?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is my example wget call to get the file:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; $ wget "&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://192.168.3.43/bigdata.cgi"&gt;http://192.168.3.43/bigdata.cgi&lt;/A&gt;&lt;SPAN&gt;"&amp;nbsp; -O /tmp/bla&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&lt;SPAN&gt;&amp;nbsp; --2014-08-25 13:41:36--&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://192.168.3.43/bigdata.cgi"&gt;http://192.168.3.43/bigdata.cgi&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Connecting to 192.168.3.43:80... connected.&lt;/P&gt;&lt;P&gt;&amp;nbsp; HTTP request sent, awaiting response... 200 OK&lt;/P&gt;&lt;P&gt;&amp;nbsp; Length: unspecified [text/plain]&lt;/P&gt;&lt;P&gt;&amp;nbsp; Saving to: ‘/tmp/bla’&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;=&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ] 348.890&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 26,9KB/s&amp;nbsp;&amp;nbsp; in 13s&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; 2014-08-25 13:41:49 (26,3 KB/s) - ‘/tmp/bla’ saved [348890]&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;best regards, and many thank in advance,&lt;/P&gt;&lt;P&gt; Martin&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338815"&gt;wiresharp_cgi_bigdata.pcapng.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Aug 2014 11:44:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379587#M12661</guid>
      <dc:creator>m_bach</dc:creator>
      <dc:date>2014-08-25T11:44:30Z</dc:date>
    </item>
    <item>
      <title>Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379588#M12662</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, I have some news, and even more questions...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using the 52259 eval tower, and the httpsrv demo app to check if I'm able to produce a large stream of sprintf generated data in a cgi_callback task.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As captured by Wireshark above, it's awfully slow. Turned out I can speed up things a great deal when I skip&lt;/P&gt;&lt;P&gt;&amp;nbsp; // session-&amp;gt;time = RTCS_time_get();&lt;/P&gt;&lt;P&gt;in HTTPSRV_cgi_write, and in addition to that skip the&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp; // response.data_length = snprintf(str, 32, "%ld\n", i);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;in my for-loop in &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;cgi_big_data()&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That'll boost the performance a lot, which makes the complete 300k stream being transmitted in less than a second, with 417kb/s, without any retransmissions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once I include the sprintf again, the performance is reduced to 110kb/s, which is 60k times sprintf. Well, Ok...&lt;/P&gt;&lt;P&gt;Doing so, the re-transmissions are kicking in again, and now I see the relationship: after 1s of the overall TCP-streaming the retransmissions are beginning...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, my guess is something is stuck. While the ongoing &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;cgi_big_data() task is producing data, somehow the TCP retrans timer of I think 1s becomes elapsed, and is not reset by client's ACKs. So TCP thinks it has to transmit all the time...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;So again, I'm not sure if I'm allowed to have a cgi-callback which is sending 'a lot' of data over 'a long' time-span, or if this is just a bug in the TCP&amp;lt;-&amp;gt;HTTP Server synchronization...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any comments are very welcome.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers, Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 09:59:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379588#M12662</guid>
      <dc:creator>m_bach</dc:creator>
      <dc:date>2014-08-28T09:59:51Z</dc:date>
    </item>
    <item>
      <title>Re: Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379589#M12663</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would strongly recommend against using function snprintf in such way. It is &lt;SPAN style="text-decoration: underline;"&gt;very&lt;/SPAN&gt; complicated function so it takes long time to complete. Better solution is to create say 2KiB big buffer, store data in there in binary format (even better - compressed). And send it in 2KiB chunks to client. If you need your data in human readable form, do the conversion to string client-side. Regarding the commented out RTCS_time_get(): This has a side effect. The session will always time-out after 20 seconds and server will close the connection. Also not setting content_length to valid value will probably cause client hang as it will not know where the data ends. In future version of HTTPSRV we plan to implement chunked transfer encoding to eliminate this limitation (content-length is then no longer needed).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Karel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 10:34:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379589#M12663</guid>
      <dc:creator>karelm_</dc:creator>
      <dc:date>2014-08-28T10:34:41Z</dc:date>
    </item>
    <item>
      <title>Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379590#M12664</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Karel,&lt;/P&gt;&lt;P&gt;again thanks for answer.&lt;/P&gt;&lt;P&gt;So in short: everything is OK as long as the cgi-callback is producing the data just fast enough? Creating data in less than 1s is needed for being retrans-free?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edit:&lt;/P&gt;&lt;P&gt;In fact my options are somehow limited, because I need to implement an existing CGI/JSON API with MQX. Client sends a GET requests, containing several CGI Params, and Server answers with more or less complex JSON. I'm currently working on porting existing firmware to MQX, so sticking to same HTTP API interfaces is mandatory, for there are mobile and PC Apps out there relying in that CGI/JSON interface.&lt;/P&gt;&lt;P&gt;In fact, the actual maximum size of the JSON reply is somewhere between 5 and 30kb, depending on the product capabilities and client's cgi-get-params.&lt;/P&gt;&lt;P&gt;Since generating server-side JSON-encoded replies are mandatory, I'm currently interested in 'how' and to what extend I can make use use the MQX httpsrv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards, Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 14:14:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379590#M12664</guid>
      <dc:creator>m_bach</dc:creator>
      <dc:date>2014-08-28T14:14:20Z</dc:date>
    </item>
    <item>
      <title>Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379591#M12665</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;those retransmissions should not occur as long as server is on lower priority then TCP/IP task (by default this is the case). I understand your use case and it is completely OK to generate these responses in CGI. Probably best is to let CGIs run in separate tasks so they are processed in parallel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Karel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 14:57:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379591#M12665</guid>
      <dc:creator>karelm_</dc:creator>
      <dc:date>2014-08-28T14:57:11Z</dc:date>
    </item>
    <item>
      <title>Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379592#M12666</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Karel,&lt;/P&gt;&lt;P&gt;I did not change the HTTP server prio, it is (8) as far as I can see. Besides, the 'bigdata' cgi is already running in as separated task. So I go with "it's a bug" :smileywink:&lt;/P&gt;&lt;P&gt;best regards, and thanks a lot for your time, Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 15:09:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379592#M12666</guid>
      <dc:creator>m_bach</dc:creator>
      <dc:date>2014-08-28T15:09:05Z</dc:date>
    </item>
    <item>
      <title>Re: Re: MQX httpsrv - large cgi stream - retransmissons</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379593#M12667</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please try to add following code before RTCS initialization:&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_14092970418097500" jivemacro_uid="_14092970418097500"&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _RTCSPCB_init = 4;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _RTCSPCB_grow = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _RTCSPCB_max = 20;&lt;/P&gt;

&lt;/PRE&gt;&lt;P&gt;This will increase number of packet control blocks and thus should reduce/eliminate retransmissions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Another tip:&lt;/P&gt;&lt;P&gt;You may try to increase HTTP session buffer size by adding following line to you user_config.h:&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_14092970417855838" jivemacro_uid="_14092970417855838"&gt;
&lt;P&gt;#define HTTPSRVCFG_SES_BUFFER_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (3000) //default is 1360&lt;/P&gt;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Karel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 29 Aug 2014 07:23:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/MQX-httpsrv-large-cgi-stream-retransmissons/m-p/379593#M12667</guid>
      <dc:creator>karelm_</dc:creator>
      <dc:date>2014-08-29T07:23:27Z</dc:date>
    </item>
  </channel>
</rss>

