Slashdot Mirror


FastTCP Commercialized Into An FTP Appliance

prostoalex writes "FastTCP technology, developed by researchers at CalTech, is being commercialized. A company called FastSoft has introduced a hardware appliance that delivers 15x-20x faster FTP transmissions than those delivered via regular TCP. Says eWeek: 'The algorithm implemented in the Aria appliance senses congestion by continuously measuring the round-trip time for the TCP acknowledgment and then monitoring how that measurement changes from moment to moment.'"

156 comments

  1. After more than 14 years... by Anonymous Coward · · Score: 1

    Of several research in the field. The problem is, still, microsoft being able to support it. If they crossed that bridge already, then it's great.

    Mainly, SCTP, XCP, etc. are all great protocols, but if nobody supports them. In particular MS, well, it's not going to work in the long term.

    1. Re:After more than 14 years... by Idbar · · Score: 2, Interesting

      They should, in fact, start supporting ECN instead of changing TCP. Implementing ECN altogether with a well tuned AQM can reduce packet losses and difference packet losses due to congestion from those due to medium (now more important with so many wireless networks). Then, they can start looking for TCP versions that can react to congestion in a different way to the way they react to packet losses.

      But that's just my thought.

    2. Re:After more than 14 years... by KPU · · Score: 1

      If, for whatever bizarre reason, you have a Windows server able to serve quickly, Fastsoft sells a BSD-based proxy product intended to sit between it and the Internet.

  2. 15-20 x faster ? i call bs by Anonymous Coward · · Score: 0

    saying transfers will go 15-20 times faster makes me think it'll go 14-19 times line-speed, sounds like stupid marketing bs

  3. Ok. by Anonymous Coward · · Score: 0

    Ya... but what about FastSCP?

    1. Re:Ok. by aliquis · · Score: 2, Insightful

      It was the speed of TCP which would improve, not only FTP, I guess, so therefor whatever else uses TCP should get faster aswell, shouldn't it?

  4. hmm by biscon · · Score: 3, Interesting

    Wouldn't you need to have FastTCP routers throughout the route in order to reach the speed mentioned?
    and if so why bother using the old FTP protocol instead of just making a new and more modern protocol?

    1. Re:hmm by GWLlosa · · Score: 4, Informative

      No, basically its just an optimization of packet rerouting and timing in hardware, instead of software. So its the same 'old' protocol, but with bits of it implemented in chips for speed, specifically the 'hey should I reroute now and it is ok to send a packet right now' bits.

    2. Re:hmm by Idbar · · Score: 1

      In fact, although many routers and switches have level 4 (transport) capabilities those are still level 3 (routing) and level 2 (data link) equipment, and that should be transparent to them.

    3. Re:hmm by profplump · · Score: 1

      Most routers -- particularly those on the public Internet -- route only at the IP level and not at the TCP level. As such they would not notice anything different about these packets.

    4. Re:hmm by acil · · Score: 1

      Exactly. The only reason most routers even touch the layer 4 header for is to look at port numbers for blocking purposes. This is a change in the end to end communication, and how the end devices detect and limit their bandwidth usage in a single "conversation".

    5. Re:hmm by stud9920 · · Score: 5, Informative

      No. TCP is end to end, the nodes in between could not care less (except for dubious filtering purposes) what layer 4 protocol is piggybacking upon IP proper.

    6. Re:hmm by biscon · · Score: 1

      yes you are absolutely correct which I realized shortly after having submitted my comment.

      Wish slashdot had an edit option but I guess it will teach me to think before I type.

    7. Re:hmm by multipartmixed · · Score: 2

      No.

      Al Gore didn't invent the Transmission Control, he invented the Internet.

      Hence, data centers today mostly use Internet Protocol routers.

      All Hail Al!

      --

      Do daemons dream of electric sleep()?
    8. Re:hmm by KPU · · Score: 1

      Routers need not be changed to support FastTCP. The IP-level packets are unchanged. It simply a change in congestion control (i.e. rate at which packets are sent) which is done at the sender.

      FTP was mentioned in the article as an example. Any TCP-based protocol can use the box. All the box does is change the congestion control on packets passing through it.

    9. Re:hmm by Citizen+of+Earth · · Score: 4, Funny

      Al Gore didn't invent the Transmission Control, he invented the Internet.

      Al Gore never claimed to invent the Internet. That's just a Republican spin on relatively accurate statements that Gore Made. What Al Gore invented is Algorithms. That's why they are called that!

    10. Re:hmm by Courageous · · Score: 2, Interesting

      Honestly, I don't know what all the hooplah is about. We've known for ages about the impact of latency and its interplay with windowing on thruputs.

      I'm more excited by the new class of devices that are acting as block-caches for generalized TCP/IP traffic. These things are really neat-o for large distributed organziations, because they really help with duplicate traffic of which there is typically LOTS in every large organization. Idea is very simple:

      Devices sit at each WAN end point, transparently inserted between ordinary TCP/IP end points. Devices layer the protocols, with traffic sort of like this: "hey, I'm about to send you MD5-such-n-such. Need it. No? Okay, consider it sent." Wash, rinse, repeat. I call this "content-aware compression," (which I admit is a misnomer of sorts), but it can really, reallllly compress some organizations WAN traffic pretty well.

      C//

    11. Re:hmm by sudog · · Score: 3, Informative

      .. yea, sure, they'd be great.. if they actually worked. Which they don't. If you have any non-standard device sitting in between a client and server which speaks a non-standard protocol, unless the device can guarantee that to each end there is in fact no modification of the traffic, that the device itself is completely transparent, the device is useless.

      And I mean that: next time you implement one of these so-called miracle devices, run a TCP dump from both ends. If the TCP syn cookie is different, DO NOT INSTALL IT, AND RETURN THE DEVICE IMMEDIATELY.

      Don't say someone didn't warn you.

      I've spent the last four to six months debugging peoples' networks where it has invariably come down to these WAN-accelerators getting in the way and mangling network traffic.

      *VERY* poorly implemented, to a one!

    12. Re:hmm by Courageous · · Score: 1

      Have you had trouble with the Juniper devices? I'd be interested in some kind of reference to a report. A group of ours has charter to investigate them, have gotten a pair. I doubt their testing will be particularly thorough on that level, so I'd love to hear more. BTW, it was my understanding that the Juniper device was supposed to be indeed "completely transparent." I.e., only mutations that can possibly be detected are timing. There's no theoretical reason why this oughtn't be.

      C//

    13. Re:hmm by TeknoHog · · Score: 1

      What Al Gore invented is Algorithms. That's why they are called that!

      I think they were originally spelled Al-Gore-Rhythms, methods for precise timing of Internet traffic.

      --
      Escher was the first MC and Giger invented the HR department.
    14. Re:hmm by z80kid · · Score: 1
      http://www.snopes.com/quotes/internet.asp

      During my service in the United States Congress, I took the initiative in creating the Internet. I took the initiative in moving forward a whole range of initiatives that have proven to be important to our country's economic growth and environmental protection, improvements in our educational system.

    15. Re:hmm by Anonymous Coward · · Score: 0

      Feel free to read the rest of that page some day.

    16. Re:hmm by D_Otis · · Score: 1

      It is not uncommon for a TCP packet to be modified somewhere in the path. There are many devices that proxy or regulate TCP traffic. Whether that might cause a problem for an algorithm that is measuring delays versus TCP windows would be a different story. If this algorithm also makes the mistake that nothing will modify a TCP packet, then likely it will not function properly in these cases.

  5. No Way by hardburn · · Score: 3, Insightful

    Regular TCP can't be more than an order of magnitude away from the Shannon Limit, can it?

    --
    Not a typewriter
    1. Re:No Way by maharg · · Score: 5, Interesting

      The problem is that "regular" TCP mis-interprets long Round-Trip-Time (aka latency) as link congestion and backs off the rate at which it is sending packets.

      The bandwidth between point A and B may be rated at a high throughput, but TCP protocols such as FTP will never achieve that speed if the RTT is long. Increasing the bandwidth won't help !! So a slowdown of 20-30x is not uncommon on WAN links with high latency e.g. transcontinental, via satellite.

      I've looked at technologies like Digital Fountain (and it's Java implementation, FileCatalyst) which use UDP and some clever mathematics to overcome latency, however it's not clear from TFA what FastTCP is doing underneath..

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    2. Re:No Way by Stellian · · Score: 3, Funny

      Shannon-shmannon. How dare you !
      If you've read TFA you'll know this revolutionary technology not only increases the speed by a factor of 15 to 20 times, but also insures "overall client happiness". Amazing !

    3. Re:No Way by jumpingfred · · Score: 0, Redundant

      TCP does not have anything at all to do with the Shannon Limit. The Shannon limit lets you know how fast it is possible to send the bits with a given error rate over a finite bandwidth channel in the presence of noise. It does not have anything to say about higher level protocols.

    4. Re:No Way by maharg · · Score: 4, Interesting

      .. although I keep coming back to the sentence "...senses congestion by continuously measuring the round-trip time for the TCP acknowledgment and then monitoring how that measurement changes from moment to moment.".

      I would imagine in the typical high-latency scenario, where regular TCP is mis-interpreting long RTT as link congestion, and backing off the rate, FastTCP is able to actually keep pushing the rate up, meanwhile keeping an eye on the RTT. I mean, the RTT shouldn't increase in line with the rate, unless the link actually *is* congested. So just increase the rate until the RTT increases, at which point you are genuinely maxxing out the link. I think that must be how it is working..

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    5. Re:No Way by maharg · · Score: 2, Informative
      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    6. Re:No Way by Eivind · · Score: 1, Informative

      Uhm, let me guess, your knowledge of TCP is based on Trumpet Winsock for Windows 3.11 ?

      Modern tcp-stacks most certainly scale the window and certainly don't "mis-interpret" high latency as congestion. (they do however interpret high packet-loss as congestion, which is a reasonable guesstimate most of the time, but *DOES* break down on links that, for example, have a constant packet-loss of a few percent (regardless of traffic-levels)

    7. Re:No Way by maharg · · Score: 1

      funnily enough, no. so why exactly does a high latency low packet loss network slow down TCP based protocols so much ? Or are you saying that this doesn't happen ? I'm genuinely interested in your answer.

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    8. Re:No Way by jollyreaper · · Score: 1

      Shannon-shmannon. How dare you !
      If you've read TFA you'll know this revolutionary technology not only increases the speed by a factor of 15 to 20 times, but also insures "overall client happiness". Amazing ! That's it, I'm putting another blade in the server...and another aloe strip. Beat that, asshole. :)
      --
      Kwisatz Haderach
      Sell the spice to CHOAM
      This Mahdi took Shaddam's Throne
    9. Re:No Way by Andy+Dodd · · Score: 4, Interesting

      It doesn't, unless your TCP implementation is from the stone age.

      I love how fastsoft likes to compare themselves to Reno. 4.3BSD "Reno" was released in 1990, and the classic Reno implementation is LONG obsolete (and does indeed suck on a wide variety of connections).

      I can see how it would be quite easy to achieve 10-20 times the throughput of Reno on a high-loss or high-latency connection, in fact a stock untuned Linux stack will do so in many situations. (For example, a few months ago I was doing TCP throughput tests dealing with some faulty hardware that liked to drop bursts of packets due to a shitty network driver. A machine running VxWorks 5.4, which is pretty much vanilla Reno, could only send 160 kilobytes/second over a 100Base-T LAN to that machine due to the packet loss making it throttle back. An untuned laptop with Linux 2.6.20 managed 1.7 megabytes/second over the same connection to the same destination.)

      High latency connections were a major problem for TCP prior to RFC 1323 were a problem, but TCP stack authors have had 15 years to implement RFC 1323.

      FastSoft's product may have been big news in the early 1990s, but if a company has to resort to making performance comparisons against the "Reno" TCP implementation, they're a snake oil salesman because Reno is such an obsolete and shitty TCP congestion control implementation.

      --
      retrorocket.o not found, launch anyway?
    10. Re:No Way by 644bd346996 · · Score: 2, Insightful

      Windows is still highly sensitive to high latency. Try running a bandwidth test with a nearby server and one across an ocean. You'll notice a much bigger difference with Windows than with a stock modern UNIX, which can still be tweaked quite a bit.

    11. Re:No Way by PDAllen · · Score: 2, Interesting

      Basic TCP simply ramps up the transmission rate linearly until it starts dropping packets (timeout for receiver acknowledgement), then it halves the rate and begins to ramp up again. So that means that if there is a decent amount of capacity (i.e. the receiver can ack the packets in time) then you expect to get at least half the speed the data protocol allows (this too isn't perfect but again it's not too far from Shannon). There are fiddles to deal with low capacity channels, which are pretty standard. There are a few tricks (called 'slow start'!) to get a decent transmission rate quickly from the off (if you have a 10M connection and you use the original TCP protocol you'll spend the first couple of minutes of transmission just getting up to pace). Still not very good if you have a really fast connection for big files (say a few TB of astronomical data) when you spend 20 minutes building the rate up to the channel limit only to see it reset to half.

      So, there are problems. One is that if a channel gets overloaded and starts dropping packets then probably there are several TCP links going through it, most of them lose packets, drop to half rate and the link is suddenly at about 60% capacity. Another is that if you have time-critical data (videoconferencing, say) there isn't any way to protect capacity - so your videoconference gets freezes which annoy everyone because some PFY's P2P traffic is filling the channel, even though the PFY couldn't care less if his porn takes five or ten minutes to download.

      There are also things you can do - for example there is nothing to stop you fiddling your implementation of TCP to only drop to 90% on a packet loss; do that and you'll get about 40% better upload speed (obviously it'll do nothing to download speed) if you're on a reasonably direct backbone connection (i.e. not a T1 or cable or whatever). But that's antisocial, and if you send enough data for people to notice then you will be very unpopular (you'll be causing far more channel overloads, and everyone else's data rates will take a big hit).

      Ultimately, though, even if you cannot in theory do better than get 2x performance over TCP (it's probably a bit less than 2, I'd guess) you're still going to find it cheaper to get 1% more performance out of TCP (which certainly is possible) than to lay another 1% of fibre.

    12. Re:No Way by hardburn · · Score: 1

      Those higher level protocols will partially determine how close we can get to the theoretical limit. If TCP was shown to be 10-20 slower than that theoretical limit, then there are possibilities for improvements to give you a 10-20 faster throughput, as FastTCP claims to do.

      Since I highly doubt that TCP is that inefficient (which seems to be confirmed by other posters), this product is probably snake oil.

      --
      Not a typewriter
    13. Re:No Way by Anonymous Coward · · Score: 0

      TCP's performance isn't bounded by the Shannon Limit in any meaningful way. To analyze TCP you make assumptions about things like packet loss probability and latency distributions; that's such a higher level of abstraction than Shannon that speaking of the two together doesn't make any sense.

      Besides, it's not like high-speed communications technologies are typically very efficient relative to the Shannon Limit in the first place. Fiber-optics are usually PSK, FSK, or even baseband.

    14. Re:No Way by Workaphobia · · Score: 1

      Thanks for the explanation. A question:

      In general, what is the actual limiting factor when I'm trying to get throughput between two endpoints on opposite sides of the world over the public Internet? That is, why do I want to select a download mirror close to where I live? Is it this RTT/congestion issue that comes into play, or is it that intercontinental bandwidth is less accessible (or is that totally inaccurate), or is there some other factor?

      --
      Evidently, the key to understanding recursion is to begin by understanding recursion. The rest is easy.
    15. Re:No Way by RincewindTVD · · Score: 1

      Sweet! I've always wanted to insure my client's happiness, I've never found an insurer that would cover me though.

    16. Re:No Way by goarilla · · Score: 1

      can you i ask you something ? how come bill maher can seemingly voice conference live over satellite without lag or choppy motion (low fps). i just don't get it it seems like magic to me :D

    17. Re:No Way by Radyair · · Score: 1

      CERN (Hadron colider, etc.) was experimenting with TCP optimization back in 2004, and their experiments, involving 1Gbps and 10Gbps trans-atlantic networks, showed that basic TCP buffer tweaking could get 20x improvement in transfer speeds, mostly because of this RTT issue and the default DCP behaviour to halve the transmit window every time one packet needed retransmission. Many existing implementations of TCP, even after Reno, still assume that any packet loss at all might mean a bandwidth constraint. So, for the next while it would transmit half the data. http://www.broadnets.org/2004/workshop-papers/Path nets/03_TCPHighSpeedWAN-SylvianRavot.pdf I'm wondering, maybe there really is something to be said for optimizing your TCP settings for your primary links. I'm certainly gonna do some reading up, before I go spending money on Citrix (Bluecoat) or Riverbed or all those other optimization boxes, even FastTCP...

    18. Re:No Way by harlows_monkeys · · Score: 4, Informative

      FastSoft's product may have been big news in the early 1990s, but if a company has to resort to making performance comparisons against the "Reno" TCP implementation, they're a snake oil salesman because Reno is such an obsolete and shitty TCP congestion control implementation

      Well, let's see. They won the 2005 supercomputing bandwidth challenge with their system. They also have numerous publications in peer-reviewed journals, invited presentations at conferences, etc. Sure doesn't sound like snake oil.

    19. Re:No Way by Eivind · · Score: 2, Interesting

      It doesn't, in general. There are edge-cases.

      For example, most tcp-implementations use slow-start, which mean they will, regardless of latency, start with a small window, and then if that goes trough, gradually increase the window-size until no improvement is experienced anymore.

      This makes a huge difference for example if your application transfers many small files, each over its own tcp-connection, which FTP will do but which I'm aware of no other commonly used file-transfer application doing. It's no accident that they use ftp as the example-protocol, while ignoring the simple fix for that case: Make a large zip or tgz-file and transfer that one large file rather than the huge collection of tiny files.

      Indeed this fix is so well-known that there are ftp-servers with built in support for it: you can do "get directory.tgz" and the ftp-server will, on the fly, make a tgz and send it to you, instead of the myriad files inside that directory.

      The worst though, is, like I mentioned, links that have packet-loss unrelated to congestion. Most tcp-implementations I'm aware of will interpret packet-loss as congestion, and react by throttling back. Which is disastrous if really, the packet-loss is unrelated to congestion. A good heristic for separating these two cases from eachother would indeed help a lot. (potentially several orders of magnitude), but that is a very rare situation. The more common response to links that are inherently packet-lossy is to build in error-correction on lower-levels. Satelite-links, for example, commonly do this. Instead of a 10Mbps link with 1% of all packets getting corrupted you get a 7Mbps link where 0.001% of all packets get corrupted.

      For modern tcp-stacks at reasonable speeds and latencies, it shouldn't happen. We certainly had no problems at all of this type when, for example, mirroring Debian transatlantically at 100Mbps. To the contrary, if we hadn't had traffic-prioritizing the single ftp-connection would've degraded other uses of the network for the duration.

    20. Re:No Way by anpe · · Score: 1

      High loss and high latency are different beasts. The example you mention only refers to high loss. We've got 250ms latency links, and the vanilla Linux stack sucks, period. Even if you tune the stack, you'll still get TCP slow start, so I don't really get your previous posts.

    21. Re:No Way by ostiguy · · Score: 2, Informative

      Windows 2003 and XP still do not have rfc 1323 options enabled by default. This means a tcp window size of 2^32 bytes maximum, which is problematic for high bandwidth high latency links.

    22. Re:No Way by Anonymous Coward · · Score: 0

      Problematic?
      Okay, firstly, using your numbers (which are wrong):

      Throughput = window_size / round_trip_time

      ws = 2^32-1 bytes
      rtt = 1 second (two sattelite hops, and about 10x a reasonable mean RTT for Internet traffic)
      T = 43 gigabytes/second or 344 gigabits/second

      T increases as rtt decreases, so a long terrestrial fibre run might have a 5x-10x increase in throughput.

      So a window size of 2^32-1 lets you move on the order of terabytes/second, which is much greater than single-link bandwidths available today.

      The reality however is that "classic" pre-window-scaling TCPs have a maximum window size of 2^16-1 bytes.

      For one second rtt T= 64 kilobytes/second; for 100ms rtt, T= 5 megabits/second.

      RFC 1323 window scaling allows for a maximum window size of 2^30-1 bytes, two binary orders of magnitude less than your numbers, and consequently

      1s, T= 1 gigabyte/second; 100ms, T= 86 gigabit/second

      That's only 2x the bandwidth of available optical runs today.

      Moreover, in all of these calculations, throughput is the maximum theoretical throughput of a TCP in equilibrium. Not all TCPs reach equilibrium as quickly, and many transition out of equilibrium in response to packet loss that is not congestion related (bit errors, mainly). A TCP with a huge window (megabytes) falling back to a one-two-four-eight segment progression in slow start will see a huge falloff in throughput since the same calculation applies, with a smaller window size for the duration of those rtts.

      The problem with older Microsoft OSes and many other OS default TCP settings is that advertised maximum window sizes tend to be further reduced to a mere 16 kbytes.

    23. Re:No Way by Anonymous Coward · · Score: 0

      The major problem is that firstly RFC 2001 style congestion avoidance is the principal stability mechanism of the Internet, providing reasonable fairness to all the various users of bottlenecks. Abandoning RFC 2001 would require abandoning fairness or imposing a fair queueing discipline at every bottleneck (including the last hop between home users and their ISPs).

      Moreover, RFC 2001 style congestion avoidance does remarkably well at maximizing goodput even in the presence of transmitters who do not avoid congestion. The latter run into the Nagle problem in that they are required to add increasing redundancy (FEC or outright duplication) as bottleneck queues grow, and asymptotically approach the point where they do no more useful work than a fully RFC 2001 compliant TCP backed off into full RTO .

      RFC 2001-style congestion avoidance is great where there is a network with statistical multiplexing gain. In a dedicated single-use/single-user network, with no potential bottlenecks between transmitter and receiver, it is counterproductive when any packet loss is caused by random bit errors. This is very rare, and usually only happens to researchers. They tend to adapt to this by (among other things) using a much more aggressive slow start, a much less dramatic transition from equilibrium into slow start, delaying a transition into slow start, or using a signal other than duplicate ACKs as a congestion notification (mainly timing or network messages).

      Real-world TCP segment loss due to in-flight corruptions are well below 1e-8 per hop, which means that even for very high bandwidth, very high delay links, with tens of hops, there will be less than a packet lost per tens or hundreds of fully transferred congestion windows (where cw = bottleneck bandwidth * rtt).

      Most high speed routers' network interfaces have substantial (tens to hundreds of ms) of buffering to absorb transient congestion, consequently a very high bandwidth bulk transfer will only observe outright segment loss in the event of collision with other high bandwidth bulk transfers, or if the transmitting TCP misjudges the bottleneck bandwidth of an interface with a tail-drop FIFO queue, and keeps it totally full. In both these cases, fast-start/fast-recovery is desirable -- for fairness in the first case, and for a probable increase in goodput (and decrease in retransmit and receive buffer demand in transmitter and receiver, respectively) in the second case.

      The probable increase in goodput is related to Nagle's observation of work done in the presence of infinite buffering, and the silly window syndrome.

      Finally, except for really unusual situations (like CERN's data replications), most Internet bulk transfers are not limited by TCP itself, provided that large congestion windows are available (RFC 1323 window scaling). TCPs are in practice very good at probing and fairly sharing bottleneck bandwidths, particularly for sustained bulk transfers (all that file sharing traffic, for example). The most useful "optimizations" are therefore avoiding short bursty transfers in favour of longer transfers, where possible, and advertising a reasonably large receive window size.

    24. Re:No Way by ultranova · · Score: 1

      This means a tcp window size of 2^32 bytes maximum, which is problematic for high bandwidth high latency links.

      I think most home computers might be quite slow if they allocate a 4 gigabyte network buffer ;).

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  6. guessing but by Anonymous Coward · · Score: 0

    i think it's not altering the pipes / tubes =} ?.
    the pipe stays the same (TCP/IP).
    it's just a tech to fill the pipe more smartly.

    on the senders end, normal tcp half's the bandwidth once
    it detects a dropped packet and then tries to go faster
    and faster until, again a packet is dropped. rinse repeat ...

    my guess, this new tech is preempting the ceiling, and
    trying to stay below it (ceiling being packet
    gets dropped somewhere).

    doesn't sound very difficult to do ... if it works like that.

  7. FastTCP is just a fancy name for TCP Vegas? by Anonymous Coward · · Score: 5, Informative

    FastTCP sounds like a fancy name for TCP Vegas (which has been around for quite some time). Window scaling and Vegas should buy you pretty much everything that FastTCP seems to be offering... Sounds like marketspeak to me.

    1. Re:FastTCP is just a fancy name for TCP Vegas? by bach · · Score: 3, Informative

      These slides http://www.fastsoft.com/downloads/Optimizing_TCP_P rotocols.ppt refer to TCP FAST as a faster version of Vegas.

    2. Re:FastTCP is just a fancy name for TCP Vegas? by jrumney · · Score: 1

      TCP Vegas sounds like quite a fancy name itself. FastTCP is far more appropriate IMHO, so if it is merely a name change, it is for the better.

    3. Re:FastTCP is just a fancy name for TCP Vegas? by nanosquid · · Score: 1

      Note that the company only claims a 15-20x improvement for a customer (who may have been using a really bad TCP stack), not relative to TCP FAST.

    4. Re:FastTCP is just a fancy name for TCP Vegas? by jollyreaper · · Score: 5, Funny

      FastTCP sounds like a fancy name for TCP Vegas (which has been around for quite some time). Window scaling and Vegas should buy you pretty much everything that FastTCP seems to be offering... Sounds like marketspeak to me. You wouldn't want to use TCP Vegas, the packets are unroutable. What happens in TCP Vegas stays in TCP Vegas.
      --
      Kwisatz Haderach
      Sell the spice to CHOAM
      This Mahdi took Shaddam's Throne
    5. Re:FastTCP is just a fancy name for TCP Vegas? by Andy+Dodd · · Score: 1

      Not really that fancy - the 1990 4.3BSD release was codenamed "Reno" and its TCP stack was widely copied into many other OSes due to its permissive license. Even though I believe that release of BSD as a whole was considered "Reno" (in the same manner as "Feisty Fawn" for Ubuntu or "Zod" for Fedora), in general Reno is now used to refer to its TCP stack and/or TCP implementations that behave the same as Reno's stack. i.e. nearly every OS in the mid-1990s used "TCP Reno".

      Reno is so obsolete that you can't even choose it as one of the many pluggable congestion control algorithms in recent Linux kernels.

      --
      retrorocket.o not found, launch anyway?
    6. Re:FastTCP is just a fancy name for TCP Vegas? by beyondkaoru · · Score: 1

      well considering that 'vegas' is both speed neutral and matches the name of the 'usual' tcp congestion control algorithm (tcp reno), and there seems to be a tradition of naming new tcp ideas after cities (say, tcp westwood), i think 'fast' is more inappropriate. fast tcp is a backronym that, well, might be obsoleted some day should we switch to something faster... which will be awkward to name if we keep calling things with faster adjectives... should we name things 'swift tcp', 'agile tcp', 'hypersonic tcp'? those all sound kind of silly. as technology advances you can easily get into some sort of arms race with naming things based on their quality. fast tcp might be faster, but it is still a relatively inappropriate name, in my opinion.

      --
      the privacy of one's mind is important.
      you do have something to hide.
    7. Re:FastTCP is just a fancy name for TCP Vegas? by jgrahn · · Score: 1

      TCP Vegas sounds like quite a fancy name itself. FastTCP is far more appropriate IMHO, so if it is merely a name change, it is for the better.

      "TCP Vegas" is better, because it clearly indicates that this is a TCP implementation and can talk to other TCPs, rather than some protocol vaguely similar to, but different from, TCP.

  8. Powered by handwavium by Rix · · Score: 2, Informative

    The same amazing material that makes these so fast!

    1. Re:Powered by handwavium by bockelboy · · Score: 4, Informative

      Actually, FAST TCP is also available as a linux kernel patch. It's a well-tuned Caltech product which has been in development for years:

      http://netlab.caltech.edu/FAST/

      Several highlights include:
      - Caltech held the world record for data transfer for awhile
      - Won the bandwidth challenge at SC05

      It's one of the best ways to tune a single TCP stream. Finally, the list of about 50 TCP-related publications should indicate this isn't handwavium:

      http://netlab.caltech.edu/FAST/fastpub.html

      Traditional TCP streams (such as what you get with FTP) top out around 10-20 Mbps. If you want to see a single stream go a couple hundred Mbps, you need TCP tweaks like FAST (however, FAST is one of many competing TCP "fixes").

    2. Re:Powered by handwavium by superanonman · · Score: 0

      They're not fast, but they are awesome and I have noticed a better connection when using these to bridge my Xbox Live connection through my comp.

    3. Re:Powered by handwavium by rduke15 · · Score: 1

      Traditional TCP streams (such as what you get with FTP) top out around 10-20 Mbps.

      I have recently observed 50-60 MBYTESps on a Gigabit LAN, between a vanilla Linux FTP server and a Windows client. And that was about the hard disk read limit on the server. Didn't look like a "traditional TCP stream" limit at all. It was a 300 MB. file, filled with random bytes. If I remember correctly, I didn't even enable jumbo frames, because one of the cards couldn't do it.
    4. Re:Powered by handwavium by Andy+Dodd · · Score: 1

      "vanilla Linux" isn't a traditional TCP implementation for any reasonably recent kernel. In fact, if one assumes by "traditional TCP" the grandparent meant Reno, then that particular implementation is so obsolete you cannot even choose it as a congestion control algorithm for Linux any more. (Linux allows you to choose between 6-10 pluggable congestion control algorithms, the recent defaults of BIC and later CUBIC are both very nice ones.)

      --
      retrorocket.o not found, launch anyway?
  9. Does it speed up ftp or TCP/IP by the_womble · · Score: 1

    Does this speed up FTP or TCP?

    If the latter can it speed up other protocols?

    1. Re:Does it speed up ftp or TCP/IP by Anonymous Coward · · Score: 0

      Any protocol implemented on top of TCP can benefit. This means protocols like HTTP and FTP are primed.

    2. Re:Does it speed up ftp or TCP/IP by grub · · Score: 1


      It's supposed to speed up TCP. Ergo, because FTP rides on TCP it should be faster.

      --
      Trolling is a art,
  10. Doesn't TCP... by Good+Sumerian · · Score: 1

    ...already use a smoothed moving average of RTTs? (Remembered from a few terms old networking class)

    1. Re:Doesn't TCP... by acil · · Score: 1

      I believe TCP adjusts its window based on packet loss, not latency.

  11. Hype by Zarhan · · Score: 3, Informative

    Sounds like they just skip TCP slow start algorithm and stuff like that - so it's probably not faster than regular TCP after the window has stabilized. Slow-start and backoff algorithms of course cause slowdowns.

    Other possibility is some sort of header compression.

    Anyway, to use this safely you'd need to be *sure* you know your link charasteristics. The reason TCP has the slow-start mechanisms in the first place is to make sure you don't overflow the link - that's why it's known as flow control :)

    1. Re:Hype by Zarhan · · Score: 2, Informative

      Oh, after reading other comments, I guess they really are going for solving the high-bandwidth high-latency link problems. I didn't even consider that to be necessary since I thought that was pretty much solved and as such, "old news".

      ftp://ftp.rfc-editor.org/in-notes/rfc3649.txt

      ftp://ftp.rfc-editor.org/in-notes/rfc3742.txt

      I guess this device works as some sort of wrapper so that legacy TCP implementations don't get slowdowns, but doesn't strike as anything revolutionary to me - the RFCs are from year 2003.

  12. Nonsense by gweihir · · Score: 1

    Typical FTP connections get 80% or so of available bandwidth. 15-20x faster is not possible. Maybe 1.2x if you re lucky.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:Nonsense by MindStalker · · Score: 3, Interesting

      Only for short lengths. For international or especially satellite connections you get less than 10% with normal TCP.

    2. Re:Nonsense by gweihir · · Score: 1

      Which still does not matter, since yous last mile is typically a lot slower than the international connection. Anyways, I get far more than 50% of my last mile (1MBps) routinely with FTP.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    3. Re:Nonsense by bockelboy · · Score: 4, Insightful

      Think again. I suspect that you only have tried that on a low-speed link (DSL, Cable, FIOS, etc). Try thinking about 2 orders of magnitude faster.

      I transfer about 20 TB / day at work, and that wouldn't be possible with a "typical FTP connection".

      If you read the papers coming out of Caltech, you'd see they were optimizing for 10 Gbps lines, not residential lines. 15-20x faster is a very fair estimate; look at Caltech's presentations at SC05 or SC07.

    4. Re:Nonsense by maharg · · Score: 1

      .. unless the last mile is vertically down from the satellite (at both ends of the link) ;o)

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    5. Re:Nonsense by Ant+P. · · Score: 2, Insightful

      I don't think you're the target market for this piece of hardware.

    6. Re:Nonsense by Wesley+Felter · · Score: 1

      Except in the Grid, where your last mile is more like 10Gbps.

    7. Re:Nonsense by Anonymous Coward · · Score: 2, Insightful

      I dunno, at a previous company I built a FTP gizmo based on Windows 2k which could saturate a 1000 mile long OC3 line. That's 1.4 TBytes a day.

      To transfer 20 TB/day, you need something like 1.8 Gbps sustained, not my measly 155 MBps, but that's only (only!) an order of magnitude better. TCP has shown itself quite comfortable scaling up from 300 baud modems to GigE links (6+ orders) so what's one more among friends? This is not to say TCP can't be improved: I've always thought using dropped packets to measure congestion was a but hokey, but it seems to work fine. If the fine researchers at CalTech think they can do better by measuring RTT, that sounds just great.

    8. Re:Nonsense by piggydoggy · · Score: 1

      I transfer about 20 TB / day at work

      Does your employer know you are?

    9. Re:Nonsense by bockelboy · · Score: 1

      Yup,

      http://cmsdoc.cern.ch/cms/aprom/phedex/prod/Activi ty::RatePlots?graph=quantity&entity=dest&src_filte r=&dest_filter=Nebraska&no_mss=true&period=l14d&up to=&.submit=Update

      In fact, we often talk with the Caltech folk about deploying FAST TCP; the problem is that both ends need to deploy the kernel patches. Truthfully, the limiting factor becomes the disk systems, not the network. When we start to push closer to 10 Gbps instead of 4-6 Gbps, we'll need to make smarter decisions about the TCP stacks.

    10. Re:Nonsense by bockelboy · · Score: 3, Interesting

      It works fine, but we actually tend to lean toward many streams as opposed to uber-fast single streams.

      Truthfully, you have to tweak the system pretty hard to get decent performance over a single stream (for us, 155 Mbps isn't sufficient - I work on a LHC project), especially from Nebraska to Switzerland (CERN). FAST TCP helps out a whole lot. GridFTP is the other piece of the equation - it is basically FTP with multiple data streams.

      We tend to lean on hundreds of streams a whole lot more than tweaking TCP settings, and the Caltech guys give us heck for that. They're right, however - if you're getting 100s of KBps per stream to some European site, it just takes a ridiculous number of streams to get up to 100 MBps. Right now, the storage systems are behind the network, so we haven't even been able to start playing with FAST TCP yet.

      http://cmsdoc.cern.ch/cms/aprom/phedex/prod/Activi ty::RatePlots?graph=quantity&entity=dest&src_filte r=&dest_filter=Nebraska&no_mss=true&period=l14d&up to=&.submit=Update

    11. Re:Nonsense by Anonymous Coward · · Score: 0

      So, will any of this give me transfer speeds greater than 3KB/s on my 28.8Kbps dial-up connection?

      I highly doubt it. The modulation of digital data for transmission as analog signals over phone lines is the rate limiting step for much of the world.

      I will never see coax or fiber on my road, nor will I ever see DSL. It's just not profitable for anyone to do it, it will never happen.

      What we need is a reinvention of the analog modem that achieves superior speeds over phone lines within the voltage limits set out by the FCC, or get the FCC to review those limits and increase them if possible.

      And don't say satellite or wireless... I want a reliable connection.

      New and alternative protocols mean nothing to me. Tell me about a new take on the analog modem and I might get excited.

    12. Re:Nonsense by Helios1182 · · Score: 1

      Could you imagine an employer _not_ realizing it?

    13. Re:Nonsense by donkeyb · · Score: 1

      I have been working on a client project for about a year. Twin 155Mpbs STM1 worldwide rings (Asia, Americas, Europe, Middle East), max latency ~ 350ms. We were seeing throughputs of 4-5 (not 45!) Mbps without any form of TCP optimisation. We investigated several products and settled one one that gave us 120Mpbs, so I wonder if those people who decry these products have _actually_ used one?

    14. Re:Nonsense by Anonymous Coward · · Score: 0

      Why do they give you heck for using many streams?

      No network equipment will usually maintain per-stream state, and those that do at that bandwidth, won't really care about hundreds of streams -- detailed per-flow states for tens of thousands of simultaneous flows without performance problems were features in Cisco 7500s in the mid 1990s.

      TCP bulk transfers in equilibrium are also very fair in terms of sharing the bottleneck bandwidth, and a hundred parallel TCP bulk transfers are not really worse than a single much larger one (in fact, they have a statistically lower impact with respect to slow starts, since the final exponential increase will generally lead to fewer dropped packets).

      A hundred very bursty flows instead of one very bursty (or better still, one not-very-bursty) flow can cause collateral damage, which is exacerbated by poor buffer management (a very long tail-drop FIFO queue, for example). Delay-sensitive interactive users (ssh logins, for example, FPS tournament gamers, and a variety of conferencers) may also be troubled by these. However, RED and other progressive queue disciplines that statistically or actually stomp on the flows occupying the greatest amount of the bottlneck buffers over time, tend to effectively eliminate these complaints.

      The only real corner case, which again is fixable through almost any non-tail-drop queue discipline, is when there are many high-RTT bulk transfers, which in some cases can lead to clustered/synchronized slow starts. In some cases the synchronization is between a subset of parallel flows and other unrelated flows, which doesn't really hurt the overall goodput of the A->B many-flow transfer, but can destroy the performance of the C->D flows sharing the same bottleneck. Again, there are known mitigations to this, including various flavours of RED.

      Incidentally, some ISPs have bottlnecks being traversed by literally millions of simultaneous bulk transfers (9MB chunks of file transfers, in particluar), with little problem. Even plain tail-drop FIFO queueing is more likely to spread drops around many parallel flows nearly randomly, than to pick on and synchronize subsets.

    15. Re:Nonsense by Anonymous Coward · · Score: 0

      4-5 Mbps is probably due to 64kbyte window sizes.

      Throughput = window_size/rtt.

      For trans-Atlantic traffic, 125ms is a reasonable guess of RTT, so:

      T = 65535 bytes / 0.125 second
      T = 524280 bytes/second
      T = 4338240 bits/second
      T = 4.3 megabits/second

      RFC 1323 window scaling lets window sizes increase to 2^30 from 2^16.

      However, many networking stacks require "recvspace", "sendspace" and/or some other parameter to be adjusted to take advantage of this.

  13. To gain that much speed... by Aladrin · · Score: 1

    To gain that much speed, your network must be really fscked up. I can max out my 7mbps line on any FTP that has the bandwidth available. I've heard of people lines much much bigger than mine that max theirs our regularly, also. I'm not talking about short hops, either... I mean international.

    The only way I could see this as being possible is if there is so much latency that it basically makes the TCP protocol think every packet is lost, and resends them... 20 times. If you are seriously on a network that is that messed up, you need to just find another network. Some silly little piece of hardware is -not- going to solve your problems.

    If they had said 1.5x to 2.0x... I could believe them. It's not that hard to find network conditions that slow things that much. But 15x to 20x? No way.

    --
    "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    1. Re:To gain that much speed... by maharg · · Score: 1

      Not so. High (>1500ms) latency *severely* affects TCP protocols like FTP. I encounter this on trans-continental WANs which go over satellite every day. I've tried some UDP compression such as FileCatalyst, and 15-20x speedup is possible on some links.

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    2. Re:To gain that much speed... by bockelboy · · Score: 1

      Hi -

      You're thinking way too small. FAST TCP was designed with 10 Gbps links in mind - i.e., Internet2 type applications. FAST TCP streams are able to achieve several hundred Mbps. FTP streams over TCP Reno usually max out on something relatively pathetic, like 10-20 Mbps.

      Caltech's SC07 presentation showed commodity servers which could transfer 2 Gbps end-to-end using their FDT tool (Java based, actually). The servers had 4 HDDs, dual Gigabit ethernet conncetions, and ran a Linux 2.6 kernel with the FAST TCP patches.

      On the other hand, GridFTP takes a different approach - parallelizing several TCP streams at a time. Why get a single stream going 10x faster using a special Linux kernel when you just send 10 parallel TCP streams at once? (While GridFTP over TCP with lots of streams is more popular than FAST TCP with GridFTP using a small number of streams, imagine what happens to your RAID array when there is a large (>100) number of streams of data coming off different parts of the same disk...)

    3. Re:To gain that much speed... by xotakuotaconx · · Score: 1

      I believe the article states 15-20%, not 15x-20x. That is a big difference.

    4. Re:To gain that much speed... by Aladrin · · Score: 1

      You should probably bother to RTFA then.

      "Beta testers at The Post Group, a film post-production facility in Hollywood, Calif., found that the Aria delivered 15 to 20 times faster transmissions "and better overall client happiness," said CIO Darin Harris."

      --
      "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    5. Re:To gain that much speed... by Aladrin · · Score: 2, Informative

      RTFA.

      "The Aria 2000, which is due in July, supports 1G-bps links. Existing Aria appliances support 10M-bps links, 50M-bps links and 200M-bps links."

      10gbps my ass. The one they haven't released only does a tenth of that. And the smallest of their products barely handles my home cable line.

      For what it's worth, my initial thought was that they must be targetted truly massive lines and that it would be a lot harder to truly use those. Too bad it wasn't true.

      --
      "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    6. Re:To gain that much speed... by bockelboy · · Score: 1

      I was referring to the Caltech efforts, not the commercialized device. Don't know anything about the Aria products. For example, see the below link: http://ultralight.caltech.edu/web-site/sc05/html/i ndex.html This is based on a patched Linux 2.6 kernel, and it's a couple of years old.

    7. Re:To gain that much speed... by g0dsp33d · · Score: 1

      Meh, whats a few powers of ten?? Your like those buggy folk at NASA that care what measurement system people are using.

      --
      lol: You see no door there!
  14. For single connection use of big pipes by Animats · · Score: 1

    This is for single-connection use of wide-bandwidth channels with long latency. If you're synchronizing two servers across a considerable distance and have more than 1Gb/s or so available, it might be useful. For anything less, don't bother.

    For local connections, you don't have many packets in flight, so you don't need this. For slower connections, you don't have the bandwidth to get that useful many packets in flight, so it doesn't help there either. It's not going to help your web browsing.

  15. HOW much speedup? by Have+Blue · · Score: 1, Insightful

    An FTP session running over a 100Mbit LAN should see about 10MB/sec real data transfer, maxing out the line and accounting for overhead. They're claiming that their gadgets could move a file between each other at 150 megabytes per second over the same cable?

    As the saying goes, this requires some very extraordinary evidence. Or there are a lot of missing qualifiers like "over a specific worst-case line that TCP doesn't come close to theoretical maximum performance on".

    1. Re:HOW much speedup? by Anonymous Coward · · Score: 0

      Perhaps they have too much of Steve Jobs' RDF generator. And they are now claiming the same "revolution" on TCP. So... the new hype is:

      yeah... but does the iPhone support it?

    2. Re:HOW much speedup? by Dacelo+Gigas · · Score: 0

      An FTP session running over a 100Mbit LAN should see about 10MB/sec real data transfer, maxing out the line and accounting for overhead. They're claiming that their gadgets could move a file between each other at 150 megabytes per second over the same cable? As the saying goes, this requires some very extraordinary evidence. Or there are a lot of missing qualifiers like "over a specific worst-case line that TCP doesn't come close to theoretical maximum performance on".

      Note the last line of the story for the real reason :

      The Aria 2000, which is due in July, supports 1G-bps links. Existing Aria appliances support 10M-bps links, 50M-bps links and 200M-bps links.

      Their previous products supported a max link speeds from 50Mbsp to 200Mbps, but the new one supports 1000Mbps. 20 * 50 = 1000. If you upgraded from their lowest end product, to their new one, you may well achieve a 20x improvement. It seems this is just a product upgrade with over-eager marketing claims. Imagine that.

      Dacelo Gigas

    3. Re:HOW much speedup? by Wesley+Felter · · Score: 1

      Or there are a lot of missing qualifiers like "over a specific worst-case line that TCP doesn't come close to theoretical maximum performance on".

      Yes, this is what FAST TCP is designed for.

    4. Re:HOW much speedup? by TubeSteak · · Score: 1

      An FTP session running over a 100Mbit LAN Oh, you didn't RTFA.
      No wonder you're confused.

      The *first* sentance of TFA tells you everything you need to know:
      This application is for WANs

      http://en.wikipedia.org/wiki/Wide_area_network
      "The largest and most well-known example of a WAN is the Internet."

      Now don't you wish you had skimmed TFA?
      I expect better from a 3-digit UID
      --
      [Fuck Beta]
      o0t!
    5. Re:HOW much speedup? by DRJlaw · · Score: 1

      The Aria is designed primarily to optimize large file transmissions "over long distances through large pipes," Henderson said. The Aria 2000, which is due in July, supports 1G-bps links. Existing Aria appliances support 10M-bps links, 50M-bps links and 200M-bps links.

      An FTP session running over a 100Mbit LAN should see about 10MB/sec real data transfer, maxing out the line and accounting for overhead They're claiming that their gadgets could move a file between each other at 150 megabytes per second over the same cable?

      No. They're claiming that their gadgets could move a file over a long distance 200Mbps link at 10-15x faster than FTP. You're claiming that you could get 10MB/sec over the same link. It's your claim that requires evidence.

  16. FastTCP == 4 LoCs per hour by maharg · · Score: 4, Funny

    Yes, you read that right - 4 Libraries of Congress per hour !!!!

    See http://www.fastsoft.com/research.html

    --

    $ strings FTP.EXE | grep Copyright
    @(#) Copyright (c) 1983 The Regents of the University of California.
    1. Re:FastTCP == 4 LoCs per hour by novus+ordo · · Score: 1

      Yes, but how many laptop miles per hour is that?

      --
      "You're everywhere. You're omnivorous."
    2. Re:FastTCP == 4 LoCs per hour by jollyreaper · · Score: 1

      Yes, you read that right - 4 Libraries of Congress per hour !!!! And once the talibaptists and theocons finish removing the objectionable material, 50 Libraries of Congress per hour!
      --
      Kwisatz Haderach
      Sell the spice to CHOAM
      This Mahdi took Shaddam's Throne
    3. Re:FastTCP == 4 LoCs per hour by aboyko · · Score: 1

      So it happens that I work at the Library of Congress, and I'm working on transferring big piles of data over the Internet. Imagine how worried I am that my boss is going to see this and ask me why ANYTHING should ever take more than 15 minutes, given a 4 LoC/hr rate.

    4. Re:FastTCP == 4 LoCs per hour by Lord+Ender · · Score: 1

      4 Libraries of Congress per hour
      There is only one Library of Congress. Therefore, it should be written "4 Library of Congresses per hour."
      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
  17. Why no mention of this? by Anonymous Coward · · Score: 0

    http://en.wikipedia.org/wiki/SCTP

    http://www.ibm.com/developerworks/linux/library/l- sctp/?ca=dgr-wikiaSCTP

    And who cares about moldy old FTP anymore, anyway when there's HTTP, networked filesystems, and (name your favorite peer to peer file sharing program)?

  18. So where's the SlowTCP? by bhmit1 · · Score: 1

    If FastTCP is great for speeding things up over high latency links, what is there for slowing down connections? Particularly when you only want to take the remaining bandwidth and not impact users. I've seen various products that do this, but they never describe how it's done. Is it sufficient to slow down the connection when you see latency increase, or are there better algorithms?

    1. Re:So where's the SlowTCP? by g0dsp33d · · Score: 2, Funny

      I believe the application is called Internet Explorer iirc.

      --
      lol: You see no door there!
    2. Re:So where's the SlowTCP? by Andy+Dodd · · Score: 2, Informative

      QoS - typically implemented not in the TCP stack but in intermediary routers that prioritize packets (important stuff goes out first and is less likely to be dropped if the connection is saturated, "bulk" data like BitTorrent goes out only if the send queue is empty at the router's WAN connection and is most likely to get dropped if a queue fills up), and in some cases artifically throttle the connection by dropping packets if the sender transmits beyond a set limit.

      If you're looking for QoS in a home environment, the easiest solution is likely to replace your router with one capable of running DD-WRT. (This assumes you have a "consumer grade" router. If your gateway to the outside world is a normal PC running Linux, it's just a matter of setting up QoS on that box... Quite a few HOWTOs exist for this.)

      --
      retrorocket.o not found, launch anyway?
    3. Re:So where's the SlowTCP? by bhmit1 · · Score: 1

      QoS is great at the router level, where you have all the information and can pick which packets to sent over a limited pipe. But when you're at the application level, you can't be sure what else is happening on the machine, let alone the rest of the network. IBM has been pushing some technology called Adaptive Bandwidth Control. From various bits I've seen, they appear to continuously stress the network to determine the peak and then back off from that peak to avoid starving more important applications. This is important when you have a high bandwidth, low priority application, and don't want to update every part of a highly dispersed network to minimize it's impact. Think peer to peer, software deployments, retail organizations with lots of branches and limited WAN connections. The technology exists, but the implementations vary, so I was pondering the best way to implement something like this. Can you determine bandwidth available indirectly, without saturating the connection.

      Are latency measurement, dropped packet counts, window size tweaking, or some other magical solution usable to get the full bandwith out of a pipe when it's not being used and yet avoid impacting other users when they need it?

    4. Re:So where's the SlowTCP? by Andy+Dodd · · Score: 1

      Some BT clients attempt to do such a thing (crank up the upstream rate until latency starts increasing, then back off), although it doesn't work nearly as well as a proper QoS setup.

      --
      retrorocket.o not found, launch anyway?
    5. Re:So where's the SlowTCP? by Thundersnatch · · Score: 1

      Particularly when you only want to take the remaining bandwidth and not impact users.

      There is Packeteer, but most people can't afford them.

    6. Re:So where's the SlowTCP? by bhmit1 · · Score: 1

      Yup, I've actually used their PacketShaper at a previous client when the application didn't perform as advertised. Their solution worked by adjusting window sizes if I recall correctly, which was great at slowing down incoming connections without delaying traffic or acks. This is still a hardware based solution that requires network level data to implement where I'm more interested in an application level algorithm running on the end machine (with imperfect data).

  19. impossible to know if real from site by sentientbrendan · · Score: 3, Insightful

    It's true that early implementations of TCP were very naive. Over time this has been fixed, but there are still a number of problems remaining, especially to do with packet loss on WIFI networks (which it sounds like this may address).

    The primary problem with WIFI networks is that they naturally have a lot more packet loss than normal links. On other links, a lot of packet loss tends to indicate packet congestion, so TCP likes to decrease throughput to try to solve it. Under WIFI, that's of course unnecessary and won't solve the underlying problem.

    The article is missing some important technical details and there's a little too much marketing speak, but it does clearly sound like an improved TCP implementation, and probably some kind of traffic shaping hardware on one end (so that they don't have to change the networking stack on linux and windows, patch all their machines, etc).

    There were a couple of other posters that suggested that such a thing wouldn't work. One guy even suggested that it would require different routers end to end! This is of course nonsense.

    1. TCP != IP. Routers don't have to know anything about TCP to work (although they generally do for NAT, ACL, and traffic shaping purposes).
    2. TCP implementations have been changed a number of times in the past. Changing the implementation is not the same as changing the protocol. Nothing else on the network cares what TCP implementation you are using as long as you speak the same protocol.

    1. Re:impossible to know if real from site by KPU · · Score: 1

      FastTCP uses latency-based congestion control. The theory is that by comparing current and minimum round-trip time, one can deduce the router queue sizes and control congestion based solely on round trip time. Since loss is not a signal, FastTCP performs far better than BIC on high-loss networks.

    2. Re:impossible to know if real from site by Workaphobia · · Score: 1

      > "There were a couple of other posters that suggested that such a thing wouldn't work. One guy even suggested that it would require different routers end to end! This is of course nonsense."

      With regard to firewalls, would many of them see a packet containing an unrecognized transport protocol (in general, not this case which may use the same protocol number as normal TCP) and drop it? Is it possible to run your own protocol over IP without also controlling the filters at the endpoints? Or will the average firewall (home router for instance) not care what transport protocol is running and just keep track of what internal IP address sent an outgoing packet to an external host?

      > "The primary problem with WIFI networks is that they naturally have a lot more packet loss than normal links. On other links, a lot of packet loss tends to indicate packet congestion, so TCP likes to decrease throughput to try to solve it. Under WIFI, that's of course unnecessary and won't solve the underlying problem."

      Can modifying the TCP stack on the client and possibly the access point help, without damaging TCP's ability to sense congestion on the WAN side of the link? If so, how much of an improvement do you think it'd make?

      --
      Evidently, the key to understanding recursion is to begin by understanding recursion. The rest is easy.
    3. Re:impossible to know if real from site by Nurgled · · Score: 1

      I can't comment on the "average home router", but I have tested on mine and it'll happily route protocols other than those that are natively supported, but it ends up adding an entry to the state table for that entire protocol, so any incoming packets with the same protocol number end up getting sent to the system that sent out the first packet. You can see this entry in its state table with the port number fields set to zero. This does of course block any other hosts on my LAN from using that protocol until the forwarding rule expires or is explicitly removed.

  20. Why Not UDP by maz2331 · · Score: 2, Funny

    Maybe they should just use good old UDP instead and implement a tweak to the FTP protocol to handle retransmit and error checking. The 'Net doesn't drop very many packets anymore, and UDP can work just fine.

  21. Those who fail to understand TCP.. by Junta · · Score: 2, Informative

    Are doomed to reinvent it, poorly, to paraphrase a well known saying. I have to roll my eyes everytime I see someone recommend the use of UDP in a circumstance where the application will not tolerate data loss. In gaming and media streaming, UDP can make sense, where the receiver can gloss over the details and do something reasonable, to an extent possible interpolating the missing data or simply showing a corrupted block or having someone skip a little in an online game. The only places where I see UDP implemented in a context where packet loss without retry is tolerated is in traditionally embedded applications (i.e. service processors with IPMI, and TFTP in ethernet boot roms). Both of these protocols can start behaving very badly if packets are lost or if over a high-latency link.

    TCP is the most researched most tweaked and most examined reliable transport protocol, and trying to reinvent your own over an unreliable protocol is asking for trouble.

    --
    XML is like violence. If it doesn't solve the problem, use more.
    1. Re:Those who fail to understand TCP.. by ShakaUVM · · Score: 1

      If you know what you're doing and know your application, you can build a better UDP based transport layer than what you get with TCP.

    2. Re:Those who fail to understand TCP.. by petermgreen · · Score: 1

      TCP is a generalist. This is often good it means its well tested but can also mean its not well suited to a specific case. It is also implemented in the network stack. Again this can be a good thing (only one copy of code) but it can also be a bad thing because it means you need to modify the OS if you want to tweak any part of it.

      One interesting possibility would be to do TCP over UDP. This would allow you to use the latest TCP tweaks without the need to modify the OS.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    3. Re:Those who fail to understand TCP.. by PDAllen · · Score: 1

      Yes - but essentially this is because TCP includes a bunch of be-nice-to-everyone stuff. It doesn't try just to optimise your personal connection, it tries to send your data in a way that will not screw over everyone else who uses the same channel.

      If you just want to transfer your data as fast as possible, change a couple of parameters in your TCP implementation so it ramps up faster and drops to maybe 95% instead of all the way to 50% when it gets packet loss. That'll work about as well as completely doing your own thing with UDP. But, you will have no friends because all the channels you send data over will end up carrying your data and no-one else's (you overload the channel, it drops many packets, your rate drops to 95% but everyone else's drops to 50%, then you ramp up quicker than they do and grab most of the bandwidth they used to have, rinse and repeat).

    4. Re:Those who fail to understand TCP.. by harlows_monkeys · · Score: 1

      TCP over UDP would be very useful, as it would allow two people behind NAT routers to communicate using protocols that are built on TCP.

    5. Re:Those who fail to understand TCP.. by Anonymous Coward · · Score: 0

      If you just want to transfer your data as fast as possible, change a couple of parameters in your TCP implementation so it ramps up faster and drops to maybe 95% instead of all the way to 50% when it gets packet loss. That'll work about as well as completely doing your own thing with UDP. But, you will have no friends because all the channels you send data over will end up carrying your data and no-one else's (you overload the channel, it drops many packets, your rate drops to 95% but everyone else's drops to 50%, then you ramp up quicker than they do and grab most of the bandwidth they used to have, rinse and repeat).


      This won't work well for the "cheater" if the bottleneck is shared by a number of TCPs.

      In general, the more aggressively a TCP tries to remain in equilibrium state despite duplicate ACK pressure, the more likely there will be a full RTO due to an end of cwnd drop.

      How it works is straightforward: your "cheater" fills the bottlneck queue, causing drops to be spread around all the TCP flows sharing that bottleneck. The ones obeying RFC 2001 will either fast-retransmit/fast-recover or drop into slow start. With increasing pressure from the cheater, transition to slowstart becomes increasingly likely.

      Slowstarting TCPs ramp up exponentially, and can induce "collateral" drops at a bottlneck -- this is how multiple bulk transfer TCPs that can do FR^2 quickly find a very approximately fair equilibrium bandwidth among themselves. These slowstart-induced collateral drops rapidly evolve into a "herd of mice" when a cheater refuses to relinquish a share of bottleneck bandwidth, leading to multiple-drops-per-window being observed by the cheater.

      This leads to a dramatic decrease in the packets_transmitted : packets_received ratio, and a concomitant increase in the number of retransmitted packets. In short, goodput decreases even as output increases, in the face of contention.

      Thus, being aggressive is counterproductive, and can be much more expensive (many people pay directly for "upload" bandwidth, or have bandwidth limits or bytes-transmitted caps) for the same number of application bytes transferred.

    6. Re:Those who fail to understand TCP.. by PDAllen · · Score: 1

      Yes, in some situations. If the cheater tries to always get as much bandwidth as possible, then yes.

      If there are a lot of low-throughput TCPs and no or few higher throughput ones then exactly what you describe will happen. However, it's also the case that if you have a large number of low throughput TCPs, then chances are that they are mainly short term TCPs in the first place, lots of new ones coming along and old ones finishing all the time. And all of those new ones are going to slow start, which means the bottleneck is probably overloading far too frequently anyway. If on the other hand you've got a decent number of higher throughput TCPs around, then the cheater will win (even though there will be a lot of slow-start mess making for less data actually being transferred, the cheater will end up with more bandwidth).

      The sort of thing that really benefits from cheating is something like videoconferencing or streaming - you don't ever grab enough of the channel to knock lots of people into slowstart, because you never need that much bandwidth, but you do keep your bandwidth high enough to avoid freezes.

    7. Re:Those who fail to understand TCP.. by Anonymous Coward · · Score: 0

      Well, I don't quite agree...

      TCPs in congestion avoidance on paths with delay bandwidth products less than their maximum congestion window size always disequilibriate (if you count shutdown as a form of disequilibrium :-) ). (TCPs whose path d*b is always less than the maximum congestion window will never discover the bottleneck bandwidth).

      The reason is simply that in congestion avoidance, TCPs will gently probe the bottleneck bandwidth, either increasing their queue occupancy at the bottleneck or inducing a drop. As you increase the amount of traffic sharing the bottleneck, you increase the chance of drops in each flow using it.

      This is a pretty well-known consequence of congestion avoidance, and is reasonably desirable when there as it increases statistical fairness at the bottleneck, even though it hurts a TCP bulk transfer which is limited by an unshared bottleneck. (This hurt can be avoided if ECN is used). It is the regular reduction of the congestion window that is at the root of the good fairness experienced at bottlenecks in the Internet, and also at the roots of "TCP upgrades" expounded by people who are fortunate enough to have high-bandwidth bottlenecks that are generally unshared, or who otherwise reject fairness outright, even at the cost of actively hurting interactive traffic and the ramp-up of new flows.

      Non congestion-avoiding traffic will also experience drops caused by the regular probing of the bottleneck bandwidth by TCPs. Consequently even a constant-rate transmitter will see drops at a bottleneck it shares with TCP traffic, since TCP transmit rates grow until drops are experienced. The receive end will not experience a constant arrival rate, partly due to drops, and partly due to waves of queue occupancy at the bottleneck by TCPs as their congestion windows grow and shrink, thus (unpredictably) delaying the packets at the bottleneck.

      Proponents of constant-rate-transmitter protocols seem to prefer to argue that the network should help them out with QoS tools, so that a constant rate is experienced by the receiver, as a result.

      An alternative "cheating" approach to this problem is to have the transmitter increase transmission rate in response to drops, adding in forward error correction codes (or outright "pre-retransmitting"). This is liable to push TCPs into synchronized slowstart, and so is counterproductive (since it increases the drops experienced by the cheater).

      RED and a variety of other queue disciplines which tend to pick on the biggest flows by effectively removing packets from the flows with the most packets in the queue, also hurt this sort of cheating while reducing the chance of TCP slowstart synchronization.

      Because outbound bandwidth is never entirely free, increasing output in response to apparent congestion has rarely been deployed by anyone for a long time.

      As you say yourself: "even though there will be a lot of slow-start mess making for less data actually being transferred, the cheater will end up with more bandwidth". The reason anyone is paying for network connectivity is goodput, even if the commodity being paid for is bandwidth.

      Videoconferencing and other streaming applications that might think of cheating would be better off selecting protocols that allow one to increase or decrease detail on the fly in response to congestion. It is not difficult to do with video or audio streaming one can (for example) decrease frame rate, frame size or sample rate in response to packet loss reported by the receiver, or choose among different compression tactics (processing_time:space tradeoffs). Where congestion signals from a receiver is not appropriate (broadcasting, for example), then one could (for example) transmit multiple streams where a receiver can ask for or abandon them at will. Each subscribed stream adds detail to its predecessor(s). One can quickly imagine such streams for video: stream 0 is a basic video, 1 doubles vertical re

  22. FTP obsolete ? by bheading · · Score: 1

    Do any other slashdotters feel, like myself, that this device is a bit of a damp squib given that FTP is somewhat obsolete ? HTTP provides upload as well as download capabilities, and in any tests I've done I get the same download speed as with FTP. Since it doesn't have a stupid protocol I can easily tunnel it as required.

    1. Re:FTP obsolete ? by KingMotley · · Score: 1

      No, because most of us know that HTTP uses TCP, and would benefit from the device.

    2. Re:FTP obsolete ? by Idbar · · Score: 1

      The reason for using FTP is a metric for long-lived connections, or connections that will transmit lots of data. It's not because FTP is or not obsolete, it applies to SCP or downloads through http (like those ISO files many download).

      So, no, it's not related to TCP but in the sense of transmission of lots of data during a single connection.

    3. Re:FTP obsolete ? by jgrahn · · Score: 1

      Do any other slashdotters feel, like myself, that this device is a bit of a damp squib given that FTP is somewhat obsolete ?

      Yes, if that is indeed what it is (didn't RTFA).

      HTTP provides upload as well as download capabilities, and in any tests I've done I get the same download speed as with FTP. Since it doesn't have a stupid protocol I can easily tunnel it as required.

      It's not FTP that is stupid; it's the things that force you to use tunnels. NAT, firewalls ... in a real Internet, anyone can open TCP connections to anyone.

      Still, for the non-anonymous use that these people seem to envision, something like rsync (or rsync-over-ssh) seems much more sane. That or sftp and similar ssh-based protocols.

      I wonder how those protocols behave over long fat pipes; will CPU be the bottleneck, perhaps?

  23. Congestion Control by pc486 · · Score: 4, Informative

    FastTCP isn't really a full TCP replacement but rather a congestion control algorithm. There are many competitors to FastTCP, including BIC/CUBIC (common Linux default), High-Speed TCP, H-TCP, Hybla, and many others. Microsoft calls their version Compound TCP (available in Vista).

    If you use Linux, have (CU)BIC loaded, correctly setup your NIC, and tune your TCP settings (rx/tx mem, queuelen, and such) then there is be no way for FastSoft to claim a 15-20x speedup improvement. I've done full 10 gigabit transmissions with a 150ms RTT using that kind of setup. FastSoft's device doesn't even support 10 gigabit, and their 1 gigabit device still isn't released.

    This article is nothing other than a Slashadvertisment.

    1. Re:Congestion Control by Anonymous Coward · · Score: 0

      www.wovensystems.com

      these guys do their congestion management/multipath routing in the switch.

  24. Porn of course! by Anonymous Coward · · Score: 0

    Of course they'll be happy!

    They'll be getting their porn 20x faster!

  25. TCP is underestimated... by Junta · · Score: 2, Informative

    I've seen arguments used where people say 'we don't need to worry about aspect X that TCP takes care of' and ultimately get bitten. IPMI to me is a good example. They have the notion of retries (more of an afterthought), and have sequence numbers above and beyond what UDP offers. The problem is that retries for most packets increment that sequence number, so a retry is indistinuishable from a reissuance of the same command. For some contents, this can be very undesirable.

    When something with as much high-profile support as IPMI ends up with such shortcomings, it goes to show that people easily fail to understand why this aspect or that of TCP is not applicable to their use.

    As to TCP over UDP, that's an example of a very bad sounding ideas. Redundant features of TCP and UDP. It's not as bad as TCP over IP over PPP over SSH which is over TCP (multiple reliable protocols on top of each other), but still, if you wanted to be a better TCP than TCP, the place to implement would be at the same layer, on top of IP protocol, not on top of UDP.

    --
    XML is like violence. If it doesn't solve the problem, use more.
    1. Re:TCP is underestimated... by petermgreen · · Score: 1

      As to TCP over UDP, that's an example of a very bad sounding ideas.
      I disagree

      Redundant features of TCP and UDP.
      all UDP provides is checksums and application multiplexing. If you really wanted you could tweak the version of TCP you were adapting to run over UDP to remove those features but even if you don't they are very low overhead.

      It's not as bad as TCP over IP over PPP over SSH which is over TCP (multiple reliable protocols on top of each other),
      Yes multiple reliable protocols over each other is generally bad unless they are carefully designed to play nice and there is a good reason for doing it (such as one bad link in the middle of a long chain) but i don't see how that is relavent here.

      but still, if you wanted to be a better TCP than TCP, the place to implement would be at the same layer, on top of IP protocol, not on top of UDP.
      To implement a protocol directly over IP afaict either requires you to use raw sockets or to implement it as part of the OS. The former raises all sorts of privilages/security concerns and the latter requires you to convince all your users to swtich/upgrade thier OS. The hard truth is that for most applications the choice comes down to either take the TCP implementation the OS gives you which may or may not support the latest TCP improvements or build over UDP.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  26. 15x - 20x faster? i smell some bullshit by timmarhy · · Score: 1

    20x faster huh, so they could make my modem go at broadband speeds? i think i've seen claims like that on annoying flashing ads on the web. fuck them.

    --
    If you mod me down, I will become more powerful than you can imagine....
  27. patent pending by Anonymous Coward · · Score: 0

    So basically after tahoe, reno and vegas, fasttcp is a nex gen congestion algorithm.
    Benefits of fasttcp can be observed at 1gbps an up.

    All this good an well but will Linux suport it ?
    Not sure because it's patend pending technology.

    http://www.freepatentsonline.com/20070121511.html

  28. Papers by KPU · · Score: 1

    E-week was never known for its academic rigor. Netlab posts their published papers including FAST TCP: motivation, architecture, algorithms, performance in IEEE Transactions on Networking.

  29. XMODEM by BinBoy · · Score: 5, Funny

    This could be the XMODEM killer.

    1. Re:XMODEM by Anonymous Coward · · Score: 0

      You sir, are a comedic genius.

      Kudos!

    2. Re:XMODEM by Anonymous Coward · · Score: 0

      this a joke?
      ZMODEM is faster, duh.

    3. Re:XMODEM by Anonymous Coward · · Score: 0

      Re your sig - Channon Christian & Christopher Newsom may have been raped and murdered but that's no excuse for disseminating marketing propaganda for white supremecists. Yes, what was done to Channon and Christopher was appalling but all you're doing is fanning the flames of racism. There were and are no indications that this crime was racially-motivated and the four responsible are likely to face either the death sentence or indefinate detention. There ain't no miscarriage of justice going on here. How does the video you link to help Channon, Christopher or their families?

  30. Hi from FastSoft by fastsoft · · Score: 2, Interesting

    I'm Steven Low from FastSoft. We are really excited by all the discussions,
    and would like to share a few things.

    As several people have already pointed out that, like most TCP
    variants, FastTCP is end-to-end and does not require router support,
    nor does it require any hardware or software installation at the receiving
    computer. It accelerates all TCP-based applications. It eliminates inefficiencies
    of current TCP implementations in the presence of packet loss and long latency.
    It thus provides the most benefit in transferring large files over long-fat
    or lossy paths. For large file transfers, slow-start is less important
    than TCP's steady state behavior (congestion avoidance algorithm)
    and this is what we have optimized.

    I'll be happy to answer any questions. Feel free to give me a call
    at 626 357-7012, or email me at info@fastsoft.com

    Steven

  31. The more things change... by ta+bu+shi+da+yu · · Score: 2, Informative

    ... the the more they stay the same. And I quote:

    "Many very stupid companies have tried to come up with overly clever ways to speed up TCP/IP. TCP, by its nature, is a stateful and bidirectional protocol that requires all data packets to be acknowledged; this makes the data flow reliable, by providing a mechanism for dropped packets to be retransmitted; but this also makes for a more strictly regimented flow structure involving more packets transmitted over the wire than in simpler, non-reliable protocols like UDP-- and therefore it's slower. One company that thought itself a lot smarter than it really was, called RunTCP, came up with the idea of "pre-acking" TCP packets; it would send out the acknowledgments for a whole pile of data packets in advance, thus freeing them from the onerous necessity of double-checking that each packet actually got there properly. And it worked great, speeding up TCP flows by a significant margin-- in the lab, under ideal test conditions. The minute you put RunTCP's products out onto the real Internet, everything stopped working. Which stands to reason-- their "solution" was to tear out all the infrastructure that made TCP work reliably, under competing load and in adverse conditions, in the first place. Dumbasses."

    --
    XML is like violence. If it doesn't solve the problem, use more.
  32. 1Mbps???? by Nicolas+MONNET · · Score: 1

    1Mbps is prehistoric.

    Where do you live, the US?

  33. Mod parent down by Anonymous Coward · · Score: 0

    How the hell is this informative?! It's completely wrong. The sibling post by stud9920 is the correct explanation.

  34. Sort of like Zmodem then? by splutty · · Score: 1

    If we're successful in sending packets, we'll increase packet size, and we'll download multiple blocks at a time, even if the ack/nak for the previous ones hasn't been fully processed then.

    Hmm.. Sounds like I want my Zmodem back :)

    --
    Coz eternity my friend, is a long *ing time.
  35. Hype, not innovation by Shoten · · Score: 1

    There are already (and have been) network accelerators that do this, and more. Cisco has a product called WAAS that incorporates this technology, and adds quite a bit more to it. As others have said here, though, I don't think that just FastTCP would get you the kinds of gains that they're talking about. Where it is good is when you have apps that don't like latency. When that's the case, throwing more bandwidth at the problem doesn't help, and instead an accelerator is the best bet. But while this company has come out with their first system, others are on their second-gen versions, and have a lot more features (like file caching...and that's not as simple as it sounds, since they can cache the main versions of files and simply send the minor changes back and forth, for example).

    --

    For your security, this post has been encrypted with ROT-13, twice.
  36. What it does? by samjam · · Score: 1

    It probably compensates for applications or servers that don't allocate a large enough TCP buffer, whose windows-size/RTT bandwidth.

    (i.e. The system needs to keep a buffer of all transmitted data until it is acknowledged)

    I guess it behaves as a tcp proxy, the RTT between the sending server and the applicance (on the same LAN) is small, so whatever buffer size is allocated by the server is enough.

    Sam

  37. Is this a joke? by m.dillon · · Score: 1

    We already have an ability to run tcp over high bandwidth x delay-product links, its called Selective Acknowledgement (SACK), its implemented by everyone with a clue, and it works just fine.

    Also, DragonFly and FreeBSD have had server-side bandwidth delay product band-limiting code in place for years to deal with the most common congestion point, which is the LANWAN interface. Combine that with fair-share scheduling and you don't have to run RED on the routers bordering your server farm. Leave RED where it should be... in the middle of the internet, not on the edges.

    New Reno is possibly the most idiotic congestion control algorithm ever devised. It's not hard to do better and still be friendly to the mesh.

    -Matt

    1. Re:Is this a joke? by Anonymous Coward · · Score: 0

      Of course, the inflight limiting code in FreeBSD has not been without its problems, and has now been turned off on short RTT connections, because it was doing the wrong thing.

      Doing better than New Reno isn't too hard. Doing it in a way that can coexist with New Reno in a reasonable way is quite a lot more difficult.

      dwm

  38. It works on Linux, too? Why didn't you SAY so? by DragonHawk · · Score: 1

    Actually, FAST TCP is also available as a linux kernel patch.

    Oh, it's available for Linux? Well, then, FastTCP must be a great idea. Indeed, this just shows how Windows is inferior, since Microsoft isn't shipping support for FastTCP in Windows yet...

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  39. Better in Software by Markus+Registrada · · Score: 1
    If you're transferring files, TCP knocks you down several different ways. First, it treats loss as congestion and backs off way too much, and takes way too long to speed up again. Second, if the delay-bandwidth product is bigger than the window, it stalls. Both make it fail to use much of the available bandwidth, on typical high-rate lines. Worst of all, you give up a lot of capacity for in-order delivery, and file-transfer hardly benefits from in-order delivery at all. Whatever you do to TCP (and there is a long history of doing things to TCP), you're stuck with that. In any case, deploying fancy TCP means kernel hackery or funny routers, on both ends. For more details, see

    Link.

    Like most things, IP acceleration is better done in software. You can get all the benefit claimed for special routers or kernel drivers in user-level software by using UDP and controlling the packet injection rate and retransmission yourself. It's not even very hard to code -- unless you also want things like automatic back-off to allow incidental TCP traffic to share the line, automatic bandwidth measurement, parallel transfers (e.g. a dozen machines sharing the work to fill a 10Gbit link), file streamlining (to send whole directory trees with no delay between files), database-logged fully-acknowledged transfers, secure encryption, reliable checksumming, partial-transfer resumption, cooperative scheduled variable bandwidth limits, portability to whatever the people on the other end run, web-server and web-browser integration, GUI- or automated control and monitoring, and/or support. Then you're probably better off using a commercial product. As it happens, the movie and music studios feel that way, and they have mostly settled on the software linked from the page above.

    1. Re:Better in Software by Courageous · · Score: 1

      The class of WAN accelerator I was referring to stores massive MD5-indexed MRU caches of frequently transferred datablocks. This definitionally requires an aggregator... a device of some sort. These devices help little if there is not lots of duplicate traffic, but most organizations have very large volumes of duplicate traffic.

      C//