{"id":8020,"date":"2026-08-10T06:37:01","date_gmt":"2026-08-10T13:37:01","guid":{"rendered":"https:\/\/www.missinglinkelectronics.com\/devzone\/?p=8020"},"modified":"2026-09-07T05:32:34","modified_gmt":"2026-09-07T12:32:34","slug":"npap-tcp-rx-tx-buffer-sizes","status":"publish","type":"post","link":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/","title":{"rendered":"TCP Rx\/Tx Buffer Sizes"},"content":{"rendered":"Chosing the Right TCP Rx\/Tx Buffer Sizes Chosing the right TCP Rx\/Tx buffer sizes is fundamental to any TCP connection: If the TCP Rx\/Tx buffers are undersized, then the TCP throughput may not reach maximum line rate. Hence, in software systems we typically set those TCP Rx\/Tx buffers to some large value. However, in a Full Accelerator TCP Tx buffers and TCP Rx buffers require expensive on-chip memory resources. So, we suggest to chose the &#8220;right&#8221; TCP Rx\/Tx buffer sizes. To help you pick a good tradeoff, please use the so-called Bandwidth-Delay Product (BDP) metric to determine TCP buffer sizes for TCP (keep in mind, TCP buffers are placed on both ends: Tx side and Rx side): Buffer size (in bits) = Bandwidth (in bits-per-second) * RTT (in seconds) RTT is the Round-Trip Time which is the time for the sender to transmit the data plus the time-of-flight for the data, plus the time it takes the recipient to check for packet correctness (CRC), plus the time for the recipient to send out the ACK, plus the time-of-flight for the ACK, plus the time it takes the sender to process the ACK and release the buffer. Here examples: Assuming a direct connection with the recipient being MLE NPAP, and a 25 GBit\/s<p class=\"more-link\"><a href=\"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/\" class=\"themebutton\">Read More<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Chosing the Right TCP Rx\/Tx Buffer Sizes Chosing the right TCP Rx\/Tx buffer sizes is fundamental to any TCP connection: If the TCP Rx\/Tx buffers are undersized, then the TCP throughput may not reach maximum line rate. Hence, in software systems we typically set those TCP Rx\/Tx buffers to some large value. However, in a<\/p>\n<p class=\"more-link\"><a href=\"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/\" class=\"themebutton\">Read More<\/a><\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[163,170],"tags":[],"class_list":["post-8020","post","type-post","status-publish","format-standard","hentry","category-datasheet","category-npap-architecture"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>TCP Rx\/Tx Buffer Sizes - MLE Developer Zone<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"TCP Rx\/Tx Buffer Sizes - MLE Developer Zone\" \/>\n<meta property=\"og:description\" content=\"Chosing the Right TCP Rx\/Tx Buffer Sizes Chosing the right TCP Rx\/Tx buffer sizes is fundamental to any TCP connection: If the TCP Rx\/Tx buffers are undersized, then the TCP throughput may not reach maximum line rate. Hence, in software systems we typically set those TCP Rx\/Tx buffers to some large value. However, in aRead More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/\" \/>\n<meta property=\"og:site_name\" content=\"MLE Developer Zone\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-10T13:37:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-07T12:32:34+00:00\" \/>\n<meta name=\"author\" content=\"Yi-Ying Li\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yi-Ying Li\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/\"},\"author\":{\"name\":\"Yi-Ying Li\",\"@id\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/#\\\/schema\\\/person\\\/5767b9d4c5bd6c8a13078612212c518b\"},\"headline\":\"TCP Rx\\\/Tx Buffer Sizes\",\"datePublished\":\"2026-08-10T13:37:01+00:00\",\"dateModified\":\"2026-09-07T12:32:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/\"},\"wordCount\":461,\"articleSection\":[\"Datasheet\",\"NPAP Architecture\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/\",\"url\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/\",\"name\":\"TCP Rx\\\/Tx Buffer Sizes - MLE Developer Zone\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/#website\"},\"datePublished\":\"2026-08-10T13:37:01+00:00\",\"dateModified\":\"2026-09-07T12:32:34+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/#\\\/schema\\\/person\\\/5767b9d4c5bd6c8a13078612212c518b\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.missinglinkelectronics.com\\\/devzone\\\/datasheet\\\/npap-tcp-rx-tx-buffer-sizes\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"TCP Rx\\\/Tx Buffer Sizes\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/#website\",\"url\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/\",\"name\":\"MLE Developer Zone\",\"description\":\"Missing Link Electronics MLE Developer Zone and FPGA Application Notes\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/devzone.missinglinkelectronics.com\\\/#\\\/schema\\\/person\\\/5767b9d4c5bd6c8a13078612212c518b\",\"name\":\"Yi-Ying Li\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"TCP Rx\/Tx Buffer Sizes - MLE Developer Zone","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/","og_locale":"en_US","og_type":"article","og_title":"TCP Rx\/Tx Buffer Sizes - MLE Developer Zone","og_description":"Chosing the Right TCP Rx\/Tx Buffer Sizes Chosing the right TCP Rx\/Tx buffer sizes is fundamental to any TCP connection: If the TCP Rx\/Tx buffers are undersized, then the TCP throughput may not reach maximum line rate. Hence, in software systems we typically set those TCP Rx\/Tx buffers to some large value. However, in aRead More","og_url":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/","og_site_name":"MLE Developer Zone","article_published_time":"2026-08-10T13:37:01+00:00","article_modified_time":"2026-09-07T12:32:34+00:00","author":"Yi-Ying Li","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Yi-Ying Li","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/#article","isPartOf":{"@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/"},"author":{"name":"Yi-Ying Li","@id":"https:\/\/devzone.missinglinkelectronics.com\/#\/schema\/person\/5767b9d4c5bd6c8a13078612212c518b"},"headline":"TCP Rx\/Tx Buffer Sizes","datePublished":"2026-08-10T13:37:01+00:00","dateModified":"2026-09-07T12:32:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/"},"wordCount":461,"articleSection":["Datasheet","NPAP Architecture"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/","url":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/","name":"TCP Rx\/Tx Buffer Sizes - MLE Developer Zone","isPartOf":{"@id":"https:\/\/devzone.missinglinkelectronics.com\/#website"},"datePublished":"2026-08-10T13:37:01+00:00","dateModified":"2026-09-07T12:32:34+00:00","author":{"@id":"https:\/\/devzone.missinglinkelectronics.com\/#\/schema\/person\/5767b9d4c5bd6c8a13078612212c518b"},"breadcrumb":{"@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.missinglinkelectronics.com\/devzone\/datasheet\/npap-tcp-rx-tx-buffer-sizes\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/devzone.missinglinkelectronics.com\/"},{"@type":"ListItem","position":2,"name":"TCP Rx\/Tx Buffer Sizes"}]},{"@type":"WebSite","@id":"https:\/\/devzone.missinglinkelectronics.com\/#website","url":"https:\/\/devzone.missinglinkelectronics.com\/","name":"MLE Developer Zone","description":"Missing Link Electronics MLE Developer Zone and FPGA Application Notes","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devzone.missinglinkelectronics.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/devzone.missinglinkelectronics.com\/#\/schema\/person\/5767b9d4c5bd6c8a13078612212c518b","name":"Yi-Ying Li"}]}},"_links":{"self":[{"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/posts\/8020","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/comments?post=8020"}],"version-history":[{"count":11,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/posts\/8020\/revisions"}],"predecessor-version":[{"id":8750,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/posts\/8020\/revisions\/8750"}],"wp:attachment":[{"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/media?parent=8020"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/categories?post=8020"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.missinglinkelectronics.com\/devzone\/wp-json\/wp\/v2\/tags?post=8020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}