
{"id":1736,"date":"2010-06-25T18:03:58","date_gmt":"2010-06-25T12:33:58","guid":{"rendered":"http:\/\/www.jeffrin.in\/?p=1736"},"modified":"2010-06-25T18:03:58","modified_gmt":"2010-06-25T12:33:58","slug":"tcp-mem-vectorof-3-integers","status":"publish","type":"post","link":"https:\/\/www.trueangle.org\/index.php\/2010\/06\/25\/tcp-mem-vectorof-3-integers\/","title":{"rendered":"tcp mem vector of 3 integers"},"content":{"rendered":"<pre>\n$cat \/proc\/sys\/net\/ipv4\/tcp_mem\n40704\t54272\t81408\n$\n<\/pre>\n<pre>\ntcp_mem\n\n vector of 3 INTEGERs: min, pressure, max\nmin: below this number of pages TCP is not bothered about its memory appetite.\n\npressure: when amount of memory allocated by TCP exceeds this\nnumber of pages, TCP moderates its memory consumption and\n enters memory pressure mode, which is exited when memory\n consumption fall  under \"min\".\n\nmax: number of pages allowed for queueing by all TCP sockets.\nDefaults are calculated at boot time from amount of available\nmemory.\n<\/pre>\n<pre>\nnet\/ipv4\/tcp_input.c - 11 identical\n\n   308:   (int)tp-&gt;rcv_ssthresh &lt; tcp_space(sk) &amp;&amp;\n   309:   !tcp_memory_pressure) {\n   310:       int incr;\n\n   391:   !tcp_memory_pressure &amp;&amp;\n   392:   atomic_read(&amp;tcp_memory_allocated)  \/proc\/sys\/net\/ipv\/tcp_mem\n\n33:\n\nluotao1130.googlecode.com\/svn - Unknown - Shell\n<\/pre>\n<pre>\n\n\"IV CONFIGURATION\"\n\na selection follows ...\n\nThe ideal TCP window size is approximately equal to\nthe bandwidth-delay product. For some of the\nexperiments, the window size required is higher than the\ndefault allowed by Linux. To be able to use the proper\nwindow sizes required for the experiments, the TCP\nbuffers must be tuned. The five Linux configuration\nvalues tcp_mem, tcp_rmem, tcp_wmem, wmem_max\nand rmem_max must be modified to accommodate the\nhigher window sizes. This is done by executing the\nfollowing commands on both the sender and the\nreceiver.\necho \u201c48128 48640 49152\u201d &gt;\n\/proc\/sys\/net\/ipv4\/tcp_mem\necho 4096 33554432 33554432 &gt;\n\/proc\/sys\/net\/ipv4\/tcp_rmem\necho 4096 33554432 33554432 &gt;\n\/proc\/sys\/net\/ipv4\/tcp_wmem\necho \u201c33554432\u201d &gt; \/proc\/sys\/net\/core\/wmem_max\necho \u201c33554432\u201d &gt; \/proc\/sys\/net\/core\/rmem_max\n\nsource :\n\nImplementing a Testbed for the Evaluation of\nFAST TCP in DOCSIS-based\nAccess Networks\nDavid Kennedy and Irena Atov\nCentre for Advanced Internet Architectures. Technical Report 060119A\nSwinburne University of Technology\nMelbourne, Australia\n{dkennedy,iatov}@swin.edu.au\n\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>$cat \/proc\/sys\/net\/ipv4\/tcp_mem 40704 54272 81408 $ tcp_mem vector of 3 INTEGERs: min, pressure, max min: below this number of pages TCP is not bothered about its memory appetite. pressure: when amount of memory allocated by TCP exceeds this number of pages, TCP moderates its memory consumption and enters memory pressure mode, which is exited when &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.trueangle.org\/index.php\/2010\/06\/25\/tcp-mem-vectorof-3-integers\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;tcp mem vector of 3 integers&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[1035,1108,1548,1642],"_links":{"self":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/posts\/1736"}],"collection":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/comments?post=1736"}],"version-history":[{"count":0,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/posts\/1736\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/media?parent=1736"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/categories?post=1736"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/tags?post=1736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}