{"id":25184,"date":"2016-02-19T10:52:15","date_gmt":"2016-02-19T08:52:15","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=25184"},"modified":"2016-02-19T13:33:22","modified_gmt":"2016-02-19T11:33:22","slug":"wtf-with-amazon-and-tcp","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/","title":{"rendered":"WTF with Amazon and TCP"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>Here goes the story of me learning a few new swear words and pulling out nearly all my hair. \u00a0Grab a cup of coffee, this will take make a while to tell&#8230;<\/p>\n<p>First of all, here is a diagram to make things a little bit more visual.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?ssl=1\" rel=\"attachment wp-att-25185\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"25185\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/wtf\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?fit=972%2C328&amp;ssl=1\" data-orig-size=\"972,328\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"wtf\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?fit=660%2C223&amp;ssl=1\" class=\"aligncenter size-medium wp-image-25185\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf-500x169.png?resize=500%2C169&#038;ssl=1\" alt=\"wtf\" width=\"500\" height=\"169\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?resize=500%2C169&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?resize=768%2C259&amp;ssl=1 768w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf.png?w=972&amp;ssl=1 972w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p>As you can see, we have an office network with NAT on the gateway. \u00a0We have an Amazon VPC with NAT on the bastion host. \u00a0And then there&#8217;s the rest of the Internet.<\/p>\n<p>The setup is pretty straight forward. \u00a0There are no outgoing firewalls anywhere, no VLANs, no network equipment &#8211; all of the involved machines are a variety of Linux boxes. \u00a0The whole thing has been working fine for a while now.<\/p>\n<p>A couple of weeks ago we had an issue with our ISP in the office. \u00a0The Internet connection was alive, but we were getting extremely high packet loss &#8211; around 80%. \u00a0The technician passed by, changed the cables, rebooted the ADSL modem, and we&#8217;ve also rebooted the gateway. \u00a0The problem was fixed, except for one annoying bit. \u00a0We could access all of the Internet just fine, except our Amazon VPC bastion host. \u00a0Here&#8217;s where it gets interesting.<\/p>\n<p><!--more--><\/p>\n<p>Consider the following:<\/p>\n<ul>\n<li>Amazon VPC bastion host was perfectly available from all Internet hosts.<\/li>\n<li>Amazon VPC bastion host was perfectly available from the gateway host.<\/li>\n<li>All Internet hosts were perfectly available from all office computers.<\/li>\n<li>Amazon VPC bastion host was pingable from all office computers &#8230; but<\/li>\n<li>Amazon VPC service (ssh, https, etc) were unavailable from all office computers (&#8220;Connection timeout&#8221; errors).<\/li>\n<\/ul>\n<p>The following were checked and confirmed:<\/p>\n<ul>\n<li>Office gateway NAT configuration was fine.<\/li>\n<li>Amazon VPC bastion NAT configuration was fine.<\/li>\n<li>No outgoing firewall was present on the office gateway.<\/li>\n<li>Incoming firewall on the Amazon VPC bastion was fine.<\/li>\n<li>All necessary services on Amazon VPC bastion (ssh, https, etc) were working fine.<\/li>\n<\/ul>\n<p>And yet it was impossible to SSH into the bastion host from any computer on the office network. \u00a0The outgoing IP address of the office gateway was the same as the outgoing IP of the machines going through NAT. \u00a0The <em>traceroute<\/em> was the same from the office gateway and the machines on the office network&#8230;<\/p>\n<p>Let&#8217;s where lots of swearing and hair pulling happened.<\/p>\n<p>Until I gave up and called for help. \u00a0<a href=\"http:\/\/alex.mamchenkov.net\/\">My younger brother<\/a>, who is a sysadmin genius, jumped on the case. \u00a0Within the first hour of checking everything and troubleshooting the issue, he confirmed that I wasn&#8217;t a complete idiot &#8211; all the settings looked right and it should be working.<\/p>\n<p>A few more hours later, with <em>tcpdump<\/em> in his hands, he managed to locate and fix the problem. \u00a0The solution was very simple. \u00a0Add the following line to the <em>\/etc\/sysctl.conf<\/em> of the Amazon VPC bastion host (running Amazon Linux AMI 2015.09):<\/p>\n<pre class=\"brush: plain; light: true; title: ; notranslate\" title=\"\">\r\nnet.ipv4.tcp_tw_recycle=0\r\n<\/pre>\n<p>I&#8217;ll leave it to his discretion to explain <a href=\"http:\/\/alex.mamchenkov.net\/2016\/02\/19\/tcp-fine-tuning-consiquenses\/\">how he found the problem<\/a>. \u00a0How does the fix work? \u00a0Well, here is a handy article &#8211; &#8220;<a href=\"http:\/\/vincent.bernat.im\/en\/blog\/2014-tcp-time-wait-state-linux.html\">Copying with the TCP TIME-WAIT state on busy Linux servers<\/a>&#8220;. \u00a0I read the article twice, and the best way to describe how I understand it is with <a href=\"https:\/\/www.youtube.com\/watch?v=IHgWsTymr-E\">this scene<\/a> from the IT Crowd TV series &#8211; season 1, episode 1, Jen zones out on Moss&#8217; explanation:<\/p>\n<div class=\"jetpack-video-wrapper\"><span class=\"embed-youtube\" style=\"text-align:center; display: block;\"><iframe loading=\"lazy\" class=\"youtube-player\" width=\"660\" height=\"372\" src=\"https:\/\/www.youtube.com\/embed\/IHgWsTymr-E?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\"><\/iframe><\/span><\/div>\n<p>Gladly, the article provides the &#8220;too long; didn&#8217;t read&#8221; summary:<\/p>\n<blockquote><p><strong><span class=\"caps\">TL<\/span>;<span class=\"caps\">DR<\/span><\/strong>: Do not enable <code>net.ipv4.tcp_tw_recycle<\/code>.<\/p><\/blockquote>\n<p>So, for all of you future generations, I hope you&#8217;ll find this useful.<\/p>\n<p>Huge thanks goes to <a href=\"http:\/\/alex.mamchenkov.net\/\">my brother<\/a> for solving the issue, <a href=\"http:\/\/vincent.bernat.im\/en\/\">Vincent Bernat<\/a> for posting the article, and <a href=\"https:\/\/www.guinness.com\/\">Guinness<\/a> for providing the best sanity medication worldwide.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>Here goes the story of me learning a few new swear words and pulling out nearly all my hair. \u00a0Grab a cup of coffee, this will take make a while to tell&#8230; First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">WTF with Amazon and TCP<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"WTF with Amazon and TCP #networking #SysAdmin #Linux","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,6,133,62],"tags":[3333,281,3318,989,17],"keyring_services":[],"class_list":["post-25184","post","type-post","status-publish","format-standard","hentry","category-general","category-linux","category-sysadmin","category-technology","tag-amazon-ec2","tag-networks","tag-qobo","tag-troubleshooting","tag-work"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"WTF with Amazon and TCP - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2016-02-19T08:52:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2016-02-19T11:33:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"WTF with Amazon and TCP - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#blogposting\",\"name\":\"WTF with Amazon and TCP - Leonid Mamchenkov\",\"headline\":\"WTF with Amazon and TCP\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/wp-content\\\/uploads\\\/2016\\\/02\\\/wtf-500x169.png\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#articleImage\"},\"datePublished\":\"2016-02-19T10:52:15+02:00\",\"dateModified\":\"2016-02-19T13:33:22+02:00\",\"inLanguage\":\"en-US\",\"commentCount\":1,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#webpage\"},\"articleSection\":\"All, Linux, Sysadmin, Technology, Amazon EC2, networks, Qobo, troubleshooting, work\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"name\":\"Linux\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"position\":3,\"name\":\"Linux\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#listItem\",\"name\":\"WTF with Amazon and TCP\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#listItem\",\"position\":4,\"name\":\"WTF with Amazon and TCP\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"name\":\"Linux\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/\",\"name\":\"WTF with Amazon and TCP - Leonid Mamchenkov\",\"description\":\"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2016\\\/02\\\/19\\\/wtf-with-amazon-and-tcp\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2016-02-19T10:52:15+02:00\",\"dateModified\":\"2016-02-19T13:33:22+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"WTF with Amazon and TCP - Leonid Mamchenkov","description":"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#blogposting","name":"WTF with Amazon and TCP - Leonid Mamchenkov","headline":"WTF with Amazon and TCP","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/wtf-500x169.png","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#articleImage"},"datePublished":"2016-02-19T10:52:15+02:00","dateModified":"2016-02-19T13:33:22+02:00","inLanguage":"en-US","commentCount":1,"mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#webpage"},"articleSection":"All, Linux, Sysadmin, Technology, Amazon EC2, networks, Qobo, troubleshooting, work"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","name":"Linux"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","position":3,"name":"Linux","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#listItem","name":"WTF with Amazon and TCP"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#listItem","position":4,"name":"WTF with Amazon and TCP","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","name":"Linux"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/","name":"WTF with Amazon and TCP - Leonid Mamchenkov","description":"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2016-02-19T10:52:15+02:00","dateModified":"2016-02-19T13:33:22+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"WTF with Amazon and TCP - Leonid Mamchenkov","og:description":"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office","og:url":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2016-02-19T08:52:15+00:00","article:modified_time":"2016-02-19T11:33:22+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"WTF with Amazon and TCP - Leonid Mamchenkov","twitter:description":"Here goes the story of me learning a few new swear words and pulling out nearly all my hair. Grab a cup of coffee, this will take make a while to tell... First of all, here is a diagram to make things a little bit more visual. As you can see, we have an office","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"25184","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-20 03:44:53","updated":"2026-01-15 12:02:46","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/\" title=\"Linux\">Linux<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tWTF with Amazon and TCP\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Linux","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/"},{"label":"WTF with Amazon and TCP","link":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/19\/wtf-with-amazon-and-tcp\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":26308,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/08\/04\/setting-up-nat-on-amazon-aws\/","url_meta":{"origin":25184,"position":0},"title":"Setting up NAT on Amazon AWS","author":"Leonid Mamchenkov","date":"August 4, 2016","format":false,"excerpt":"When it comes to Amazon AWS, there are a few options for configuring Network Address Translation (NAT). \u00a0Here is a brief overview. NAT Gateway NAT Gateway is a configuration very similar to Internet Gateway. \u00a0My understanding is that the only major difference between the NAT Gateway and the Internet Gateway\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27102,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/12\/11\/amazon-rds-and-amazon-virtual-private-cloud-vpc\/","url_meta":{"origin":25184,"position":1},"title":"Amazon RDS and Amazon Virtual Private Cloud (VPC)","author":"Leonid Mamchenkov","date":"December 11, 2016","format":false,"excerpt":"Yesterday I helped a friend to figure out why he couldn't connect to his Amazon RDS database inside the Amazon VPC\u00a0(Virtual Private Cloud). \u00a0It was the second time someone asked me to help with the Amazon Web Services (AWS), and it was the first time I was actually helpful. \u00a0Yey!\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"gs-vpc-network","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/12\/GS-VPC-network-500x199.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":26696,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/09\/19\/top-13-amazon-virtual-private-cloud-vpc-best-practices\/","url_meta":{"origin":25184,"position":2},"title":"Top 13 Amazon Virtual Private Cloud (VPC) Best Practices","author":"Leonid Mamchenkov","date":"September 19, 2016","format":false,"excerpt":"Cloud Academy Blog goes over top 13 Amazon VPC best practices - particularly good for those just starting up with the platform. \u00a0The article discusses the following: Choosing the Proper VPC Configuration for Your Organization\u2019s Needs Choosing a CIDR Block for Your VPC Implementation Isolating Your VPC Environments Securing Your\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27312,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/09\/amazon-aws-mtu-for-ec2\/","url_meta":{"origin":25184,"position":3},"title":"Amazon AWS : MTU for EC2","author":"Leonid Mamchenkov","date":"February 9, 2017","format":false,"excerpt":"I came across this handy Amazon AWS manual for the maximum transfer unit (MTU) configuration for EC2 instances. \u00a0This is not something one needs every day, but, I'm sure, when I need it, I'll otherwise be spending hours trying to find it. The maximum transmission unit (MTU) of a network\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/packet-headers-500x337.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":42587,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/05\/05\/packets-per-second-limits-in-ec2\/","url_meta":{"origin":25184,"position":4},"title":"Packets-per-second limits in EC2","author":"Leonid Mamchenkov","date":"May 5, 2019","format":false,"excerpt":"\"Packets-per-second limits in EC2\" is an interesting dive into network limits on the Amazon EC2. Even if you aren't hitting any limits yet, this article provides plenty of useful information, including benchmarking tools and quick reference links for Enhanced Networking. The conclusion of the article is: By running these experiments,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/05\/per_type_max_pps.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":26705,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/09\/28\/amazon-linux-ami-2016-09\/","url_meta":{"origin":25184,"position":5},"title":"Amazon Linux AMI 2016.09","author":"Leonid Mamchenkov","date":"September 28, 2016","format":false,"excerpt":"AWS Blog lets us know that Amazon Linux AMI 2016.09 is now available. \u00a0It comes with a variety of updates, such as Nginx 1.10, PHP 7, and PostgreSQL 9.5 and Python 3.5. \u00a0Another thing that got quite a bit of improvement is the boot time of the Amazon Linux AMI\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"amazon ami 2016.09","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/09\/amazon-ami-2016.09.gif?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/25184","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=25184"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/25184\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=25184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=25184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=25184"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=25184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}