
{"id":1825,"date":"2010-07-01T21:42:35","date_gmt":"2010-07-01T16:12:35","guid":{"rendered":"http:\/\/www.jeffrin.in\/?p=1825"},"modified":"2010-07-01T21:42:35","modified_gmt":"2010-07-01T16:12:35","slug":"1825","status":"publish","type":"post","link":"https:\/\/www.trueangle.org\/index.php\/2010\/07\/01\/1825\/","title":{"rendered":"out-of order data&#8230;"},"content":{"rendered":"<pre>\n$cat \/proc\/sys\/net\/ipv4\/tcp_reordering\n3\n$\n<\/pre>\n<pre>\ntcp_reordering - INTEGER\nMaximal reordering of packets in a TCP stream.\nDefault: 3\n<\/pre>\n<pre>\nproj-rep\/kernel_code\/tcp_ipv4.c\n  1921:         tp-&gt;reordering = sysctl_tcp_reordering;\n  1922:\nnms.csail.mit.edu\/~kandula\/data\/tcp-mult.tgz - Unknown - C\n\nirestarter-0.9.0\/src\/netfilter-script.c\n   271:         fprintf (script, \"# Set TCP Re-Ordering value in kernel to '5'\\n\");\n   272:         fprintf (script, \"if [ -e \/proc\/sys\/net\/ipv4\/tcp_reordering ]; then\\n\"\n   273:         \"  echo 5 &gt; \/proc\/sys\/net\/ipv4\/tcp_reordering\\nfi\\n\\n\");\n   274:\npacketstormsecurity.nl\/...\/firewall\/firestarter\/firestarter-0.9.0.tar.gz - GPL - C\n\ncifs-1.13\/fs\/cifs\/file.s\n 64934: .LC2778:\n 64935:         .string \"NET_TCP_REORDERING\"\n 64936: .LC873:\nde.samba.org\/samba\/ftp\/cifs-cvs\/cifs-1.13-2.6-bad.tar.gz - Unknown - Assembly\n\n<\/pre>\n<pre>\n\n\u2022 Load splitting: To balance the load among the multiple\npaths, different packets of the same stream take different\nroutes leading to different delays causing reordering.\nProblems caused by reordering are handled at different\nlevels in TCP\/IP suite. TCP allows adjustment of \u2018dupthresh\u2019\nparameter, i.e., the number of duplicate ACKs to be allowed\nbefore classifying a following non-acknowledged packet as\nlost [3]. This parameter (also called tcp_reordering in Linux\nimplementations) allows the reordering to occur to a certain\nextent without affecting the throughput. At application level,\nthe out-of-sequence packets are buffered until they can be\nplayed back in sequence. An increase in out-of-order delivery\nhowever consumes more resources and also affects the end-to-\nend performance. Consequently, certain techniques attempt to\nreduce reordering at intermediate nodes, i.e., at IP level.\n\nA Comparative Analysis of Packet Reordering Metrics*\nNischal M. Piratla1, 2\n1\nAnura P. Jayasumana1 Abhijit Bare1\nComputer Networking Research Laboratory, Colorado State University, Fort Collins, CO 80523, USA\n2\nDeutsche Telekom Laboratories, Ernst-Reuter-Platz 7, D-10587 Berlin, Germany\n\n\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>$cat \/proc\/sys\/net\/ipv4\/tcp_reordering 3 $ tcp_reordering &#8211; INTEGER Maximal reordering of packets in a TCP stream. Default: 3 proj-rep\/kernel_code\/tcp_ipv4.c 1921: tp-&gt;reordering = sysctl_tcp_reordering; 1922: nms.csail.mit.edu\/~kandula\/data\/tcp-mult.tgz &#8211; Unknown &#8211; C irestarter-0.9.0\/src\/netfilter-script.c 271: fprintf (script, &#8220;# Set TCP Re-Ordering value in kernel to &#8216;5&#8217;\\n&#8221;); 272: fprintf (script, &#8220;if [ -e \/proc\/sys\/net\/ipv4\/tcp_reordering ]; then\\n&#8221; 273: &#8221; echo 5 &gt; &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.trueangle.org\/index.php\/2010\/07\/01\/1825\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;out-of order data&#8230;&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":-1,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[618,1035,1158,1368,1548],"_links":{"self":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/posts\/1825"}],"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=1825"}],"version-history":[{"count":0,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/posts\/1825\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/media?parent=1825"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/categories?post=1825"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.trueangle.org\/index.php\/wp-json\/wp\/v2\/tags?post=1825"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}