2007년 3월 22일 목요일

IEEE 1394 (Firewire)와 USB의 비교 (Comparison IEEE 1394(Firewire) with USB)

처음에 클리앙에 올렸던 글인데 조금 다듬고 정리해서 다시 올린다.

 

사용자 삽입 이미지


* 첨부한 그래프는 HDD로부터 1GB 파일을 옮기는데 걸리는 시간을 비교한 것이다. 단위는 초이기 때문에 짧을수록 성능이 좋은 것임.

IEEE 1394와 USB, 서로 유사한것 같은데 두개의 차이를 정확히 아는 사람이 많지 않은거같아 나름대로 정리해 보겠다.

현재 시장 상황을 보면 USB의 압도적 승리이다. 물론 그렇다고 IEEE 1394가 없어진건 아니지만 거의 모든 컴퓨터에 USB는 기본 장착되어 있는데 비해 IEEE 1394를 쓰고 싶으면 따로 카드를 구입해야 하는 경우가 많다.

1394가 usb에 비해 덜 사용되는 가장 큰 이유는 가격때문이다. 물론 업체의 프로모션/마케팅 영향도 전혀 없지는 않겠지만.

USB는 master-slave 구조라 usb host controller에서 모든 통신을 관리하는데 비해 1394는 모든 디바이스에 controller가 있어서 각각이 master/slave가 될 수 있다. USB 디바이스는 대부분 클라이언트로만 동작하면 되니까 칩셋의 가격이 저렴할 수 있다.

USB는 기본적으로 컴퓨터(USB host controller)가 없으면 USB 디바이스간 통신이 불가능하지만 1394는 모든 디바이스간 직접 통신이 가능하다.

예를 들어 캠코더와 외장하드를 직접 연결해서 바로 파일전송이 가능하다.

물론 캠코더에 usb host controller를 넣으면 불가능하지는 않지만 그런 경우 가격도 많이 올라가고 1394에 비해 별다른 장점이 없다.

그리고 그 USB포트는 호스트가 되기 때문에 캠코더(호스트)와 하드(클라이언트)는 연결이 돼도 캠코더(호스트)-컴퓨터(호스트)는 연결할 수가 없다. 결국 호스트 포트/클라이언트 포트를 따로 둬야 하는 경우가 발생하는거다. (물론 USB 진영에서도 이런 문제를 해결하기 위해 USB OTG(On The Go)를 만들었지만 아직까지 그렇게 널리 사용되는거 같지는 않다.)

그게 USB로 컴퓨터 2대를 직접 연결해서 파일 전송이 안되는 이유다. 둘 다 USB 호스트이기 때문이다. 하지만 1394를 사용하면 컴퓨터 2대를 직접 연결해서 파일 전송도 얼마든지 가능하다.

XP SP2부터인가는 TCP/IP over 1394를 지원해서 그냥 케이블만 꼽아주면 바로 컴퓨터간 네트웍이 구성된다. 집에서 책상에 있는 pc 2~3대 연결하는 경우라면 사실 fast ethernet 보다 1394 허브 구해서 연결해 주는게 전송속도가 훨씬 빠르다.

또한 1394는 각 디바이스마다 controller를 가지고 있기 때문에 컴퓨터에 부하를 최소화 할 수 있기 때문에 스펙상의 최대 전송률은 USB2.0이 더 빠를지 몰라도 실제 전송률은 1394가 더 빠르다.

참고로 1394b는 800 Mbps 전송이 가능하지만 이것 역시 아직은 많이 사용되지 않아서 일반적으로 1394라고 이야기하면 400 Mbps를 전송할 수 있는 1394a를 말한다. 여기서 비교하는 USB는 USB 2.0 high-speed 전송을 말한다.


PS1. Windows Vista부터는 다시 TCP/IP over 1394 지원을 빼 버렸다고 한다. 이해할 수 없는 놈들 -.-;

PS2. 어느 분이 위에 그림이 Mac 기준인데 intel-based mac에 USB 버그(?)가 있어서 USB 전송속도가 떨어지기 때문에 자료의 신뢰성에 의문을 가졌기에 구글신에게 물어봤다.


Mac OS의 USB protocol stack에 약간의 버그가 있는건 확실한거 같다.

High speed ISOCH transfer에 문제가 있다는데 그건 ISOCHRONOUS(등시성) 전송 모드에서 발생하는 것이다. 등시성 전송은 일정한 속도로 도착해야만 하는 스트리밍이나 리얼타임 데이터 전송에 사용하는 전송 모드이다.

Mass Storage(대용량 저장장치) 클래스는 USB의 4개의 전송모드 중 BULK 모드만 사용하거나 (USB spec. for mass storage devices v1.0) 아니면 CONTROL/BULK/INTERRUPT 모드만 사용 (USB spec. for mass storage devices v1.1)한다.

결론적으로 Mac OS에 있다는 버그는 하드디스크 전송에 있어서는 관계가 없다.

버그가 문제가 될 수 있는 부분이라면 USB 웹캠같은 장치들에서 발생할 가능성이 있을수도 있겠지만....


IEEE Microprocessor Standards Zone

USB Organization

댓글 1개:

  1. 조금은 기술적으로 비교를 원하는 내용을 생각하고 들어 왔지만은 그냥 읽기에 좋은 내용인것 같습니다.^^



    그래도 역시 사람들은 사용하기 편하고 조금은 쉽게 쉽게 되면서 사회 통념을 따라 가는것이 아닐까 합니다.^^

    답글삭제