{"id":21490,"date":"2014-04-10T10:11:36","date_gmt":"2014-04-10T08:11:36","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=21490"},"modified":"2014-04-10T10:11:36","modified_gmt":"2014-04-10T08:11:36","slug":"the-anternet","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2014\/04\/10\/the-anternet\/","title":{"rendered":"The anternet"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p><a href=\"http:\/\/news.stanford.edu\/news\/2012\/august\/ants-mimic-internet-082312.html\">Stanford researchers discover the &#8216;anternet&#8217;<\/a><\/p>\n<blockquote><p>Transmission Control Protocol, or TCP, is an algorithm that manages data congestion on the Internet, and as such was integral in allowing the early web to scale up from a few dozen nodes to the billions in use today. Here&#8217;s how it works: As a source, A, transfers a file to a destination, B, the file is broken into numbered packets. When B receives each packet, it sends an acknowledgment, or an ack, to A, that the packet arrived.<\/p>\n<p>This feedback loop allows TCP to run congestion avoidance: If acks return at a slower rate than the data was sent out, that indicates that there is little bandwidth available, and the source throttles data transmission down accordingly. If acks return quickly, the source boosts its transmission speed. The process determines how much bandwidth is available and throttles data transmission accordingly.<\/p>\n<p>It turns out that harvester ants (<em>Pogonomyrmex barbatus<\/em>) behave nearly the same way when searching for food. Gordon has found that the rate at which harvester ants \u2013 which forage for seeds as individuals \u2013 leave the nest to search for food corresponds to food availability.<\/p>\n<p>A forager won&#8217;t return to the nest until it finds food. If seeds are plentiful, foragers return faster, and more ants leave the nest to forage. If, however, ants begin returning empty handed, the search is slowed, and perhaps called off.<\/p>\n<p>Prabhakar wrote an ant algorithm to predict foraging behavior depending on the amount of food \u2013 i.e., bandwidth \u2013 available. Gordon&#8217;s experiments manipulate the rate of forager return. Working with Stanford student Katie Dektar, they found that the TCP-influenced algorithm almost exactly matched the ant behavior found in Gordon&#8217;s experiments.<\/p><\/blockquote>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>Stanford researchers discover the &#8216;anternet&#8217; Transmission Control Protocol, or TCP, is an algorithm that manages data congestion on the Internet, and as such was integral in allowing the early web to scale up from a few dozen nodes to the billions in use today. Here&#8217;s how it works: As a source, A, transfers a file &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2014\/04\/10\/the-anternet\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">The anternet<\/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":"link","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","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},"_links_to":"","_links_to_target":""},"categories":[1,62],"tags":[2985,1192,2414,841,281,1117,655],"keyring_services":[],"class_list":["post-21490","post","type-post","status-publish","format-link","hentry","category-general","category-technology","tag-biology","tag-computer-science","tag-insects","tag-nature","tag-networks","tag-research","tag-science","post_format-post-format-link"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18411,"url":"https:\/\/mamchenkov.net\/wordpress\/2013\/06\/28\/google-adds-quic-protocol-to-latest-chrome-build-delivering-http-over-udp\/","url_meta":{"origin":21490,"position":0},"title":"Google adds QUIC protocol to latest Chrome build, delivering HTTP over UDP","author":"Leonid Mamchenkov","date":"June 28, 2013","format":"link","excerpt":"Google adds QUIC protocol to latest Chrome build, delivering HTTP over UDP Here are the QUIC highlights Google wants to emphasize right now: High security similar to TLS. Fast (often 0-RTT) connectivity similar to TLS Snapstart combined with TCP Fast Open. Packet pacing to reduce packet loss. Packet error correction\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":25049,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/how-far-can-you-go-with-haproxy-and-a-t2-micro\/","url_meta":{"origin":21490,"position":1},"title":"How Far Can You Go With HAProxy and a t2.micro","author":"Leonid Mamchenkov","date":"December 12, 2015","format":false,"excerpt":"Here's an interesting set of experiments trying to answer the question of how far can you go with HAProxy setup on the smallest of the Amazon EC2 instances - t2.micro (1 virtual CPU, 1 GB of RAM). \u00a0Here's the summary. At 460 req\/second response times are mostly a flat ~300\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"460 requests\/second","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2015\/12\/460loader-500x261.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":44298,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/09\/23\/dnsfs-and-pingfs\/","url_meta":{"origin":21490,"position":2},"title":"DNSFS and PingFS","author":"Leonid Mamchenkov","date":"September 23, 2019","format":false,"excerpt":"The other day I came across this fun read - DNSFS. Store your files in others DNS resolver caches. And this bit in the article really cracked me up: This is not the first time something like this has been done, Erik Ekman made\u00a0PingFS, a file system that stores data\u00a0in\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\/09\/pingfs.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/09\/pingfs.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/09\/pingfs.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/09\/pingfs.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/09\/pingfs.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":29021,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/24\/some-notes-about-http-3\/","url_meta":{"origin":21490,"position":3},"title":"Some notes about HTTP\/3","author":"Leonid Mamchenkov","date":"November 24, 2018","format":false,"excerpt":"Robert Graham shares some notes about HTTP\/3.\u00a0 The whole blog post is well worth the read.\u00a0 Here are some of my favorite bits. Google is in control of future web protocol development: Google (pbuh) has both the most popular web browser (Chrome) and the two most popular websites (#1 Google.com\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":16392,"url":"https:\/\/mamchenkov.net\/wordpress\/2012\/07\/09\/corny-network-engineer-jokes\/","url_meta":{"origin":21490,"position":4},"title":"Corny network engineer jokes","author":"Leonid Mamchenkov","date":"July 9, 2012","format":false,"excerpt":"A colleague sent me a link to this list of network engineer humor. \u00a0If you are not a networking guy, you should probably skip altogether, cause these are pretty geeky. \u00a0I haven't got all of them, but a few that I did are actually quite good. \u201cKnock Knock\u201d \u201cwho\u2019s there?\u201d\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":21490,"position":5},"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":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/21490","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=21490"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/21490\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=21490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=21490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=21490"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=21490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}