topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday March 29, 2024, 9:21 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Is firewire better than USB?  (Read 15156 times)

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Is firewire better than USB?
« on: June 03, 2006, 05:56 PM »
If I'm going to transfer large amounts of information back and forth from my desktop to a portable hard drive, is firewire better than USB?  I ask because it seems like firewire is used when people transfer video from their digital camcorders instead of USB.

What are the pros/cons of each?

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #1 on: June 03, 2006, 05:59 PM »
my understanding is that there is very little difference in speed and quality of usb2 vs. firewire.

firewire is surelly faster than usb1, but most computers and usb drives are usb2 now.

in general, i would prefer usb2 over firewire any time. more compatible with more devices, and i had bad experience with my bytecc hd enclosure and firewire.

just my 2 cents.

kimmchii

  • Honorary Member
  • Joined in 2005
  • **
  • Posts: 360
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #2 on: June 03, 2006, 06:04 PM »
FireWire vs. USB 2.0

Question: Which is faster Hi-Speed USB 2.0 or FireWire?
Answer: In sustained throughput FireWire is faster than USB 2.0.

Question: If Hi-Speed USB 2.0 is a 480 Mbps interface and FireWire is a 400 Mbps interface, how can FireWire be faster?
Answer: Differences in the architecture of the two interfaces have a huge impact on the sustained throughput.
If you find a good solution and become attached to it, the solution may become your next problem.
~Robert Anthony

Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,066
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #3 on: June 03, 2006, 06:41 PM »
Both are good - but Firewire was really developed for Macs (as iLink) and USB for Windows. Gradually Firewire was adopted on Windows because it was so much better than USB 1 ... USB 2 was really a respose to the growth of Firewire and they went for a higher data rate to say 'look Windows is beter' unfortunately the architecture of USB isn't nearly as good as Firewire so in practice Firewire is quicker.

There was talk a while back about Firewire2 coming out to push data rates again - but I get the impression it has died a death.

Personally the only thing I have used Firewire for is DV (Camcorder Video tape) dubbing to hard disc adn via my DVD recorder to DVD and I have never had any problems with it. I used to have loads of probs with USB 1 being flaky - but it seems to have become a bit more stable since USB2 came out - maybe the drivers have stabilised a bit.

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #4 on: June 04, 2006, 12:13 AM »
Yeah Carol, I've heard firewire has better sustained throughput.  Mouser, I think the best solution would be to have a hard drive enclosure capable of supporting both usb and firewire.  Sounds good!  Thanks everyone.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #5 on: June 04, 2006, 12:19 AM »
I think the best solution would be to have a hard drive enclosure capable of supporting both usb and firewire.


yup, this is what i had; like i said the firewire never worked right though, so i just use the usb2.  but frankly i have no interest in using firewire anyway so i dont care.

Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,066
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #6 on: June 04, 2006, 05:48 AM »
Actually I was wrong Firewire 2 did appear - here is a Windows box example:

http://www.xpcgear.com/fire800pci5.html

800Mb/s - not bad eh?

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #7 on: June 04, 2006, 12:28 PM »
The speed difference between firewire and usb2 is quite noticable, by the way! My hdd enclosure does both, and firewire is quite noticeably faster when copying a couple of gigabytes or more.

800mbps isn't bad indeed, and since firewire400 can already beat usb2@480, well... :)

By the way, be careful if you use firewire for external hdds. I've ended up with sevaral cases of filesystem corruption. Appearantly has to do with some DMA buffer size limitation not being reported correctly or whatever, and there's some filter driver to fix it.
- carpe noctem

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #8 on: June 05, 2006, 10:25 AM »
filesystem corruption?  This is kinda off topic, but is there a software that would be able to check the integrity of data transferred once it is transferred?  I wouldn't really have a problem with the corruption if I knew right at the time that the transfer didn't succeed, because I'll just copy the stuff over again.

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #9 on: June 05, 2006, 12:07 PM »
The filesystem corruption manifests in "delay-write failures" right away :)
- carpe noctem

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #10 on: June 05, 2006, 12:43 PM »
The filesystem corruption manifests in "delay-write failures" right away :)

Hmmm...I'm not sure I understand what you just said.  Once I copy some data over, how do I know if there was any corruption?  Does an error dialog pop up?  If not, how can I check to see if the data was copied properly?  I'm visualizing something like the diagnostic text you can run on a cd after you burn it.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #11 on: June 05, 2006, 06:53 PM »
By the way, be careful if you use firewire for external hdds. I've ended up with sevaral cases of filesystem corruption. Appearantly has to do with some DMA buffer size limitation not being reported correctly or whatever, and there's some filter driver to fix it.

f0dder that sounds like exactly what happened to me.

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #12 on: June 05, 2006, 07:09 PM »
For some reason, I am genetically predisposed to hate USB.  I really don't have a good reason why.  Let me explain...in the past, it's been slower then I've expected, but Carol helped me get through that a while ago.

I still don't think it's as fast as it's all cracked up to be.  I never really go over 20MB/s if ever.  If firewire is consistently faster, then I'm all for it.  However, this corruption thing worries me.  But if fodder is right about the driver that fixes it, then that's fine.  Also, I'd like to be able to check the integrity of the copied files somehow.

Just yesterday, I transferred some large files to a portable hard drive using USB.  I moved them instead of copying them...before I disconnected it, I checked to see if the files had appeared in the portable drive and they did.  Then I took the drive to my laptop and the files were gone!  I took it back to my desktop and plugged it back in and it was gone, also!  And since I had moved the files instead of copying, I couldn't undo it.  So goes my story with USB.  I've never been a big fan.

vegas

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 357
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #13 on: June 05, 2006, 08:02 PM »
I too have experienced more corruption and lost files using Firewire, although I would much prefer its sustained transfer rate, I cannot bring myself to risk losing data.  I have no idea about these drivers that may fix any issues.  Just reporting my experience. 

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #14 on: June 06, 2006, 02:16 AM »
This page seems to be a pretty good information resource on the delay-write firewire issues: http://www.bustrace.com/delayedwrite/ .

Integrity of copied files? There's a lot of ways to go about this. You can either use file comparison or file hashes - I prefer file hashes myself. md5sum is pretty decent, but you might prefer something that has a GUI :)

Just yesterday, I transferred some large files to a portable hard drive using USB.  I moved them instead of copying them...before I disconnected it, I checked to see if the files had appeared in the portable drive and they did.  Then I took the drive to my laptop and the files were gone!  I took it back to my desktop and plugged it back in and it was gone, also!  And since I had moved the files instead of copying, I couldn't undo it.  So goes my story with USB.  I've never been a big fan.
Sounds weird! You did remember to "safely remove device"?
- carpe noctem

Rover

  • Master of Smilies
  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 632
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #15 on: June 06, 2006, 02:20 AM »
Windows has a write delay "feature" for all drives.  The fine folks over at http://www.sysinternals.com have a neat utility called "sync" that will flush the delayed writes to disk.

There is a command line option that will flush all removealbe drives.  It has worked well for me.  YMMV.
Insert Brilliant Sig line here

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #16 on: June 06, 2006, 02:33 AM »
Rover, sync just flushes the usual filesystem cache - it's a great tool (especially if you're a driver developer), but won't save you from the firewire problems.
- carpe noctem

gjehle

  • Member
  • Joined in 2006
  • **
  • Posts: 286
  • lonesome linux warrior
    • View Profile
    • Open Source Corner
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #17 on: June 06, 2006, 08:23 AM »
if you have security concerns, i would choose usb over firewire
afaik firewire devices are directly dma capable and able to address all of your memory resulting in an device you can plug in and dump a RAM image (including but not limited to eg. passwords stored in plain somewhere in memory)
for all i know BSD developers use this to get memory images for debugging after the kernel went into total lockdown

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #18 on: June 06, 2006, 12:23 PM »
Hmm, direct DMA'able? This sounds weird. Afaik only devices attached directly to a bus (be it pci, agp, pci-x, pci expresss, et cetera) can do direct DMA?

But I also do remember some security concerns over firewire, though. It was extremely far-fetched stuff, though.
- carpe noctem

Cloq

  • Charter Member
  • Joined in 2006
  • ***
  • default avatar
  • Posts: 282
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #19 on: June 15, 2006, 10:58 PM »
Good Pros and Cons of both technologies.

http://www.choice.com.au/viewArticle.aspx?id=104527&catId=100533&tid=100008&p=3&title=FireWire+vs+Hi-Speed+USB

Short version:

FireWire, uses a "Peer-to-Peer" architecture in which the peripherals are intelligent and can negotiate bus conflicts to determine which device can best control a data transfer
 
Hi-Speed USB 2.0 uses a "Master-Slave" architecture in which the computer handles all arbitration functions and dictates data flow to, from and between the attached peripherals (adding additional system overhead and resulting in slower data flow control)
« Last Edit: June 15, 2006, 11:00 PM by Cloq »

superticker

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 143
    • View Profile
    • Superticker's SU reviews about technology
    • Donate to Member
Re: Is firewire better than USB?
« Reply #20 on: June 16, 2006, 12:45 PM »
Good Pros and Cons of both technologies.
http://www.choice.com.au/viewArticle.aspx?id=104527&catId=100533&tid=100008&p=3&title=FireWire+vs+Hi-Speed+USB

Short version:
Firewire, uses a "Peer-to-Peer" architecture in which the peripherals are intelligent and can negotiate bus conflicts to determine which device can best control a data transfer
 
Hi-Speed USB 2.0 uses a "Master-Slave" architecture in which the computer handles all arbitration functions and dictates data flow to, from and between the attached peripherals (adding additional system overhead and resulting in slower data flow control)
Some people in this forum are probably not hardware savvy, so we need to clarify generalizations carefully.

Firewire is DMA and peer-to-peer, so it has much better real-time deterministic service times.  The DMA capability lets it write directly into DMA buffers without involving Windows and its drivers.  This means there's less CPU overhead for large file transfers and real-time activities (like watching videos) will be much smoother.

However, when TI defined the peer-to-peer IEEE 1394 (Firewire) standard, they did it only for the transport layer, not the session layer (middleware component as some call it).  As a result, if you plug a 1394 Sony DVD re-recorder into a Panasonic HDTV, it won't work.  If you plan to use the peer-to-peer features, you need to buy all your equipment from a single manufacture until the require middleware can be standardized probably around year 2012 or so.  When there is "eventually" a middleware standard, there will probably be a logo for it that you'll need to look for.

In constrast, USB is not DMA; therefore, there's much more CPU overhead in moving data around between USB buffers by the CPU.  The speeds of these moves will be non-deterministic, which will cause jitter in real-time traffic, especially with a heavily burdened CPU doing lots of background I/O.

Because USB is not typically peer-to-peer, the smarts (or middleware) required to make it interoperable is programmed in the daughter half of the USB driver.  This daughter half can be made smart so that it will negotiate resources such as power, bandwidth, response time, etc when it gets connected.  This is why it takes forever for you computer to boot up with lots of USB devices are plugged in--time is required for this negotiation between devices, which is a good thing BTW, because you get the best trade-offs.  But try booting with your USB devices UNplugged and you'll see it's much faster.

Embedded system engineers love the negotiation feature of USB because it avoids a lot of end-user service calls from users trying to overload their USB bandwidth or create device conflicts.  For the non-geek, USB is plug-and-play.

There is a peer-to-peer version of USB called "USB on-the-go".  Some of your peripheral devices (especially cameras and photo printers) may have this feature.  Check on the box that your photo printer came in.  It's based in part on Universal Plug-n-Play (UPnP), which Microsoft developed.  If your USB device supports UPnP, then it probably supports USB on-the-go as well.  If you can plug your camera directly into your photo printer, then you must have it.

I like USB better for non-computer geeks because it's smarter.  But for professional use, 1394 is faster and deterministic, which is important for real-time data streaming.  In the commercial environment, you should pay the price and buy a 1394 camera for streaming data transfers.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: Is firewire better than USB?
« Reply #21 on: June 16, 2006, 12:52 PM »
that is a really fantastic explanation, superticker.

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #22 on: June 16, 2006, 01:08 PM »
Funny enough, the CPU load when I use my HDD enclosure is about the same whether I use USB2 or FireWire... FireWire gives better speed at (approximately) the same CPU speed, though.
- carpe noctem

superticker

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 143
    • View Profile
    • Superticker's SU reviews about technology
    • Donate to Member
Re: Is firewire better than USB?
« Reply #23 on: June 16, 2006, 06:53 PM »
Funny enough, the CPU load when I use my HDD enclosure is about the same whether I use USB2 or FireWire... FireWire gives better speed at (approximately) the same CPU speed, though.
This is a very interesting observation, which I wouldn't have expected.  One possibility is that the CPU workload for processing the IDE requests may be many times higher than the USB workload.  In other words, the IDE driver uses significantly more CPU cycles than the USB driver.  Let me ask you to run an experiment:

In both cases, disable all disk caching by the Windows OS and the disk controller chip before running these tests so all disk requests must go through the USB or 1394 interfaces.  You do not need to disable caching on the disk volumes themselves (and I'm not sure you can anyway from the Win32 API level).

1) Run the same comparison between USB and 1394 Firewire disks while doing an I/O intensive operation in the background.  The background task could be an I/O intensive search on a second, badly fragmented IDE drive.

2) Run the same comparison using SCSI disks instead of IDE disks so the CPU isn't tide up in the IDE driver, which may be the rate determining (slow) step for the E-IDE disk case.

Recall, servers always use SCSI and ISI disks because they have their own internal processor aboard each disk volume allowing them to do many disks operations in parallel (independently) when the CPU is busy.  Intelligent System Interface (ISI 2) is more commonly seen with main-frame OSes (IBM MVS) that demand variable-length block sizes to fit database records more efficiently.  Windows uses disks with fixed cluster sizes determined when the SCSI or IDE disk is low-level formatted.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Is firewire better than USB?
« Reply #24 on: June 16, 2006, 08:15 PM »
great to read superticker's description of firewire and usb - love these kinds of posts  :Thmbsup: