USB

**범용 직렬 버스**(, )는 다양한 유형의 전자 제품 간에 디지털 데이터 전송 및 전력 공급을 위한 USB Implementers Forum (USB-IF)에서 개발한 산업 표준이다. 이 표준은 개인용 컴퓨터와 같은 호스트와 디스플레이, 키보드, 대용량 저장 장치와 같은 주변기기 및 호스트 포트 수를 늘리는 중간 허브 간의 물리적 인터페이스와 통신 프로토콜을 지정한다.

1996년에 도입된 USB는 원래 직렬 포트, 병렬 포트, 게임 포트, Apple Desktop Bus (ADB) 포트 등 다양한 인터페이스를 대체하여 주변 기기를 컴퓨터에 연결하는 것을 표준화하기 위해 설계되었다. 초기 버전의 USB는 키보드, 마우스, 카메라, 프린터, 스캐너, 플래시 드라이브, 스마트폰, 게임 콘솔, 보조 배터리와 같은 광범위한 장치에 보편화되었다. USB는 이후 컴퓨터, 모바일 장치, 주변기기, 전원 공급 장치 및 기타 다양한 소형 전자 제품의 거의 모든 일반 포트를 대체하는 표준으로 발전했다.

최신 표준에서는 USB-C 커넥터가 전원(최대 240W), 디스플레이(예: DisplayPort, HDMI) 및 기타 여러 용도를 위한 다양한 유형의 커넥터와 이전의 모든 USB 커넥터를 대체한다.

 USB는 USB 1.x, USB 2.0, USB 3.x, USB4의 4세대 사양으로 구성된다. USB4 사양은 데이터 전송 및 전력 공급 기능을 향상시키며, "단일 물리적 인터페이스에 여러 프로토콜을 결합하도록 설계된 연결 지향 터널링 아키텍처를 통해 USB4 패브릭의 총 속도 및 성능을 동적으로 공유할 수 있다." 특히, USB4는 썬더볼트 3 프로토콜, 즉 PCI Express (PCIe, 로드/저장 인터페이스) 및 디스플레이포트 (디스플레이 인터페이스)의 터널링을 지원한다. USB4는 또한 호스트 간 인터페이스를 추가한다.

각 사양 하위 버전은 USB 1.0/1.1의 1.5 및 12&nbsp;Mbit/s 반이중에서 USB4 2.0의 80&nbsp;Gbit/s 전이중에 이르는 다양한 신호 속도를 지원한다. USB는 또한 주변 장치에 전력을 공급한다. 표준의 최신 버전은 USB 파워 딜리버리 (USB-PD) Rev. V3.1에 정의된 대로 배터리 충전 및 최대 240와트를 필요로 하는 장치에 대한 전력 공급 한도를 확장한다. 수년 동안 USB(-PD)는 휴대폰과 같은 많은 모바일 장치의 표준 전원 공급 및 충전 형식으로 채택되어 독점 충전기의 필요성을 줄였다.

## 개요
USB는 주변기기를 개인용 컴퓨터에 연결하여 데이터를 교환하고 전력을 공급하는 것을 표준화하기 위해 설계되었다. USB는 직렬 포트 및 병렬 포트와 같은 인터페이스를 대부분 대체했으며 다양한 장치에서 보편화되었다. USB를 통해 연결되는 주변기기에는 컴퓨터 키보드 및 마우스, 비디오 카메라, 프린터, 휴대용 미디어 플레이어, 모바일(휴대용) 디지털 전화, 디스크 드라이브, 네트워크 어댑터가 포함된다.

USB 커넥터는 휴대용 장치의 다른 유형의 충전 케이블을 점점 더 많이 대체하고 있다.

USB 커넥터 인터페이스는 세 가지 유형으로 분류된다. 호스트, 허브, 주변 장치에서 발견되는 다양한 레거시 Type-A (업스트림) 및 Type-B (다운스트림) 커넥터, 그리고 USB4에서 유일하게 적용 가능한 커넥터로 많은 레거시 커넥터를 대체하는 최신 Type-C (USB-C) 커넥터이다.

Type-A 및 Type-B 커넥터는 표준, 미니, 마이크로 크기로 제공되었다. 표준 형식은 가장 크고 주로 데스크톱 및 대형 주변 장비에 사용되었다. 미니-USB 커넥터(미니-A, 미니-B, 미니-AB)는 모바일 장치용으로 도입되었지만, 더 얇은 마이크로-USB 커넥터(마이크로-A, 마이크로-B, 마이크로-AB)로 빠르게 대체되었다. USB-C라고도 알려진 Type-C 커넥터는 USB 전용이 아니며, USB의 유일한 현재 표준이며 USB4에 필요하며 최신 DisplayPort 및 Thunderbolt를 포함한 다른 표준에서도 필요하다. 이 커넥터는 가역적이며 USB를 포함한 다양한 기능과 프로토콜을 지원할 수 있다. 일부는 필수이고, 하드웨어 유형(호스트, 주변 장치 또는 허브)에 따라 많은 것이 선택 사항이다.

USB 사양은 하위 호환성을 제공하며, 일반적으로 신호 속도, 최대 전력 공급 및 기타 기능이 감소한다. USB 1.1 사양은 USB 1.0을 대체한다. USB 2.0 사양은 USB 1.0/1.1과 하위 호환된다. USB 3.2 사양은 USB 2.0 사양을 포함하면서 USB 3.1 (및 USB 3.0)을 대체한다. USB4는 USB 3.2를 "기능적으로 대체"하는 동시에 USB 2.0 버스를 병렬로 유지한다.

USB&nbsp;3.0 사양은 SuperSpeed(일명 SuperSpeed USB, SS로 마케팅됨)라는 새로운 아키텍처 및 프로토콜을 정의했으며, 새로운 신호 코딩 방식(8b/10b 심볼, 5&nbsp;Gbit/s, 나중에는 Gen 1로도 알려짐)을 위한 새로운 레인을 포함하여 물리적으로 5개의 추가 와이어와 핀을 필요로 하는 전이중 데이터 전송을 제공했다. 동시에 USB&nbsp;2.0 아키텍처 및 프로토콜을 보존하여 USB&nbsp;2.0 하위 호환성을 위해 원래 4개의 핀/와이어를 유지하여 총 9개의 와이어(커넥터 인터페이스에서는 9개 또는 10개의 핀; ID 핀은 연결되지 않음)가 되었다.

USB&nbsp;3.1 사양은 SuperSpeed 아키텍처 및 프로토콜(SuperSpeed USB)을 유지하면서 향상된 SuperSpeed 시스템을 도입했으며, 새로운 코딩 스키마(128b/132b 심볼, 10&nbsp;Gbit/s; Gen 2로도 알려짐)를 추가하는 SuperSpeedPlus 아키텍처 및 프로토콜(일명 SuperSpeedPlus USB)을 추가했다. 한동안 SuperSpeed+ (SS+)로 마케팅되었다.

USB&nbsp;3.2 사양은 다른 개선 사항 외에도 향상된 SuperSpeed 시스템에 두 번째 레인을 추가하여 SuperSpeedPlus USB 시스템 부분이 Gen 1×2, Gen 2×1, Gen 2×2 작동 모드를 구현한다. 그러나 시스템의 SuperSpeed USB 부분은 여전히 단일 레인 Gen 1×1 작동 모드를 구현한다. 따라서 2레인 작동, 즉 USB&nbsp;3.2 Gen&nbsp;1×**2** *(10&nbsp;Gbit/s) 및 *Gen&nbsp;2×**2** *(20&nbsp;Gbit/s)는 Full-Featured USB-C에서만 가능하다. 2023년 현재 구현은 다소 드물지만, 인텔은 11세대 SoC 프로세서 모델에 이를 포함하기 시작했지만 애플은 이를 제공하지 않았다. 반면 *USB&nbsp;3.2 Gen&nbsp;1(×1)* (5&nbsp;Gbit/s) 및 *Gen&nbsp;2(×1)* (10&nbsp;Gbit/s)는 수년 동안 꽤 일반적이었다.

=== 커넥터 유형 빠른 참조 ===

각 USB 연결은 *리셉터클*과 *플러그*라는 두 개의 커넥터를 사용하여 이루어진다. 그림은 리셉터클만 보여준다.



=== 목적 ===
유니버설 시리얼 버스는 휴대폰, 컴퓨터 액세서리, 모니터와 같은 개인용 컴퓨터와 주변 장치 간의 인터페이스를 기존의 표준 또는 *임시* 독점 인터페이스와 비교하여 단순화하고 개선하기 위해 개발되었다.

컴퓨터 사용자 관점에서 USB 인터페이스는 여러 면에서 사용 편의성을 향상시킨다.
* USB 인터페이스는 자체 구성이 가능하여 사용자가 속도나 데이터 형식에 대한 장치 설정을 조정하거나, [[인터럽트]], 입출력 주소 또는 [[직접 메모리 접근|직접 메모리 액세스]] 채널을 구성할 필요가 없다.
* USB 커넥터는 호스트에서 표준화되어 있으므로 모든 주변 기기가 대부분의 사용 가능한 리셉터클을 사용할 수 있다.
* USB는 주변 장치에 경제적으로 투입될 수 있는 추가 처리 능력을 최대한 활용하여 자체적으로 관리할 수 있도록 한다. 따라서 USB 장치는 사용자 조정 가능한 인터페이스 설정을 갖지 않는 경우가 많다.
* USB 인터페이스는 [[핫 스왑|핫 스왑 가능]]하다(호스트 컴퓨터를 종료하지 않고도 장치를 교체할 수 있다).
* 작은 장치는 USB 인터페이스에서 직접 전원을 공급받을 수 있으므로 추가 전원 공급 케이블이 필요하지 않다.
* USB 로고는 [[컴플라이언스 테스팅|준수 테스트]] 후에만 허용되므로 사용자는 USB 장치가 설정 및 구성과의 광범위한 상호 작용 없이 예상대로 작동할 것이라는 확신을 가질 수 있다.
* USB 인터페이스는 일반적인 오류로부터 복구하기 위한 프로토콜을 정의하여 이전 인터페이스보다 신뢰성을 향상시킨다.
* USB 표준에 의존하는 장치를 설치하는 데는 최소한의 작업자 조치만 필요하다. 사용자가 실행 중인 컴퓨터의 포트에 장치를 연결하면 기존 [[장치 드라이버|드라이버]]를 사용하여 완전히 자동으로 구성되거나 시스템이 드라이버를 찾으라는 메시지를 표시하면 자동으로 설치 및 구성한다.

USB 표준은 또한 하드웨어 제조업체 및 소프트웨어 개발자에게 여러 이점을 제공하며, 특히 구현의 상대적 용이성 측면에서 다음과 같다.
* USB 표준은 새로운 주변 기기에 대한 독점 인터페이스를 개발할 필요성을 없앤다.
* USB 인터페이스에서 사용할 수 있는 다양한 전송 속도는 키보드 및 마우스부터 스트리밍 비디오 인터페이스에 이르는 장치에 적합하다.
* USB 인터페이스는 시간 임계 기능에 대해 최상의 [[레이턴시|지연 시간]]을 제공하도록 설계되거나 시스템 리소스에 거의 영향을 주지 않고 대량 데이터의 백그라운드 전송을 수행하도록 설정할 수 있다.
* USB 인터페이스는 일반화되어 있으며 단일 장치의 한 기능에만 전용된 신호 라인이 없다.

=== 한계 ===
다른 모든 표준과 마찬가지로 USB는 설계에 여러 가지 한계를 가지고 있다.
* USB 케이블은 길이가 제한되어 있으며, 이 표준은 방이나 건물 사이가 아닌 같은 테이블 위에 있는 주변 기기용으로 설계되었다. 그러나 USB 포트는 원격 장치에 액세스하는 [[게이트웨이 (통신)|게이트웨이]]에 연결될 수 있다.
* USB 데이터 전송 속도는 [[100기가비트 이더넷]]과 같은 다른 상호 연결보다 느리다.
* USB는 엄격한 [[스타 네트워크|계층적 트리 네트워크]] 토폴로지와 [[마스터/슬레이브 (기술)|마스터/슬레이브]] 프로토콜을 사용하여 주변 장치에 주소를 지정한다. 슬레이브 장치는 호스트를 통해서만 서로 상호 작용할 수 있으며, 두 호스트는 USB 포트를 통해 직접 통신할 수 없다. 이러한 제한은 [[USB 온더고]], 이중 역할 장치 및 [[프로토콜 변환기|프로토콜 브리지]]를 통해 확장할 수 있다.
* 호스트는 모든 주변 장치에 한 번에 신호를 브로드캐스트할 수 없으며, 각 장치에 개별적으로 주소를 지정해야 한다.
* 특정 [[레거시 시스템|레거시 인터페이스]]와 USB 간에 변환기가 존재하지만, 레거시 하드웨어의 완전한 구현을 제공하지 못할 수도 있다. 예를 들어, USB-병렬 포트 변환기는 프린터에는 잘 작동할 수 있지만, 데이터 핀의 양방향 사용을 요구하는 스캐너에는 작동하지 않을 수 있다.

제품 개발자에게 USB를 사용하는 것은 복잡한 프로토콜을 구현해야 하며 주변 장치에 "지능형" 컨트롤러가 필요하다. 일반 판매를 위한 USB 장치 개발자는 일반적으로 [[USB-IF|USB Implementers Forum]] (USB-IF)에 수수료를 지불해야 하는 USB ID를 획득해야 한다. USB 사양을 사용하는 제품 개발자는 USB-IF와 계약을 체결해야 한다. 제품에 USB 로고를 사용하려면 연회비와 해당 조직의 회원 자격이 필요하다.

== 역사 ==
[[파일:USB Icon.svg|섬네일|upright=0.5|alt=큰 원은 수평선의 왼쪽 끝이다. 선은 원, 삼각형, 사각형 기호로 끝나는 세 갈래로 갈라진다.|기본 USB *삼지창* 로고]]

1995년 [[컴팩]], [[디지털 이큅먼트 코퍼레이션|DEC]], [[IBM]], [[인텔]], [[마이크로소프트]], [[NEC]], [[노텔]]의 7개 회사 그룹이 USB 개발을 시작했다. 목표는 PC 뒷면의 수많은 커넥터를 대체하고 기존 인터페이스의 사용성 문제를 해결하며 USB에 연결된 모든 장치의 소프트웨어 구성을 단순화하고 외부 장치에 더 높은 데이터 전송 속도와 [[플러그 앤 플레이]] 기능을 허용함으로써 외부 장치를 PC에 연결하는 것을 근본적으로 더 쉽게 만드는 것이었다. 1979년 [[아타리 SIO]] 직렬 버스, 8비트 아타리 컴퓨터, 1980년 [[IEEE-488]] 파생 [[코모도어 버스]], 휴렛 팩커드의 [[HP-IL]] 버스의 개념이 이 접근 방식을 개척했다. 애플이 주도하고 소니, 파나소닉(마쓰시타), LG, 도시바, 히타치, 캐논, 필립스 전자, 컴팩, 톰슨, 텍사스 인스트루먼트가 참여한 컨소시엄은 1986년부터 [[IEEE 1394]] 파이어와이어 표준 및 특허 풀로 개념을 더욱 발전시켰다. 원래 아타리, 코모도어의 [[조셉 C. 데큐어]]는 아타리 SIO 공통 버스의 설계자였으며, 마이크로소프트의 USB 프로젝트에 참여하여 관련 미국 특허 중 하나를 획득했다. [[아자이 바트]]와 그의 팀은 인텔에서 표준 작업을 진행했다. USB를 지원하는 최초의 [[집적 회로]]는 1995년 인텔에서 생산되었다.

=== USB 1.*x* <span class="anchor" id="1.0"></span><span class="anchor" id="1.1"></span><span class="anchor" id="1.x"></span><span class="anchor" id="LS"></span><span class="anchor" id="FS"></span> ===
[[파일:Certified USB.svg|섬네일|upright=0.5|기본 속도 USB 로고]]
1996년 1월 출시된 USB&nbsp;1.0은 1.5&nbsp;Mbit/s (*저대역폭* 또는 *저속*) 및 12&nbsp;Mbit/s (*풀 스피드*)의 신호 속도를 지정했다. 타이밍 및 전원 제한으로 인해 연장 케이블은 허용되지 않았다. 1998년 8월 USB&nbsp;1.1이 출시될 때까지 USB 장치는 거의 시장에 나오지 않았다. USB&nbsp;1.1은 널리 채택된 가장 초기 개정판이었으며, 마이크로소프트가 "[[레거시 프리 PC]](Legacy-free PC)"라고 명명한 제품으로 이어졌다.

USB 1.0과 1.1 모두 표준 Type A 또는 Type B보다 작은 커넥터 디자인을 지정하지 않았다. 많은 소형 Type B 커넥터 디자인이 다양한 주변 장치에 나타났지만, 소형 커넥터가 있는 주변 장치를 테더링 연결(즉, 주변 장치 끝에 플러그나 리셉터클이 없는)처럼 취급했기 때문에 USB&nbsp;1.*x* 표준과의 호환성이 방해되었다. USB&nbsp;2.0 (개정 1.01)이 도입되기 전까지는 알려진 소형 Type A 커넥터가 없었다.

=== USB 2.0 <span class="anchor" id="2.0"></span><span class="anchor" id="2.0HS"></span><span class="anchor" id="HS"></span><span class="anchor" id="62680-1"></span>===
[[파일:Certified Hi-Speed USB.svg|섬네일|upright=0.5|고속 USB 로고]]

USB&nbsp;2.0은 2000년 4월에 출시되었으며, USB&nbsp;1.*x*의 *풀 스피드* 신호 속도인 12&nbsp;Mbit/s (최대 이론 데이터 처리량 1.2&nbsp;MByte/s) 외에 480&nbsp;Mbit/s (최대 이론 데이터 처리량 53&nbsp;MByte/s)의 더 높은 최대 신호 속도를 추가했으며, 이를 *고속* 또는 *고대역폭*이라고 명명했다.

USB 사양은 [[Engineering change order|ECN(설계 변경 통지)]]를 통해 수정되었다. 이 ECN 중 가장 중요한 것들은 USB.org에서 제공하는 USB&nbsp;2.0 사양 패키지에 포함되어 있다.

* 미니-A 및 미니-B 커넥터
* 마이크로-USB 케이블 및 커넥터 사양 1.01
* [[InterChip USB]] 보충 자료
* 온더고 보충 자료 1.3 [[USB 온더고]]는 별도의 USB 호스트 없이 두 USB 장치 간에 통신할 수 있게 해준다.
* [[USB 하드웨어#USB 배터리 충전|배터리 충전]] 사양 1.1 전용 충전기, 배터리 방전 장치에 대한 호스트 충전기 동작 지원 추가
* 배터리 충전 사양 1.2: 구성되지 않은 장치용 충전 포트에서 1.5&nbsp;A로 증가된 전류를 제공하여 최대 1.5&nbsp;A의 전류로 고속 통신을 가능하게 한다.
* 링크 전원 관리 추가 ECN, 절전 전원 상태 추가

=== USB 3.*x* <span class="anchor" id="3.0"></span><span class="anchor" id="SS"></span><span class="anchor" id="3.x"></span>===

[[파일:Certified SuperSpeed USB Logo.svg|섬네일|upright=0.5|더 이상 사용되지 않는 SuperSpeed USB 로고]]

USB&nbsp;3.0 사양은 2008년 11월 12일에 출시되었으며, 관리는 USB&nbsp;3.0 프로모터 그룹에서 USB-IF로 이전되었고 2008년 11월 17일 SuperSpeed USB 개발자 회의에서 발표되었다.

USB&nbsp;3.0은 *SuperSpeed*라는 새로운 아키텍처 및 프로토콜과 이와 관련된 [[하위 호환성|하위 호환]] 플러그, 리셉터클 및 케이블을 추가한다. SuperSpeed 플러그 및 리셉터클은 고유한 로고와 표준 형식 리셉터클의 파란색 삽입물로 식별된다.

SuperSpeed 아키텍처는 기존 세 가지 작동 모드 외에 5.0&nbsp;Gbit/s 속도의 작동 모드를 제공한다. 효율성은 물리적 심볼 인코딩 및 링크 레벨 오버헤드를 포함한 여러 요소에 따라 달라진다. [[8b/10b 인코딩]]을 사용하는 5&nbsp;Gbit/s 신호 속도에서 각 바이트는 전송에 10비트가 필요하므로 원시 처리량은 500&nbsp;MB/s이다. 흐름 제어, 패킷 프레임 및 프로토콜 오버헤드를 고려하면 원시 처리량의 약 3분의 2 또는 330&nbsp;MB/s가 애플리케이션으로 전송되는 것이 현실적이다. SuperSpeed 아키텍처는 [[전이중]]이다. USB 1-2의 모든 이전 구현은 호스트에 의해 중재되는 반이중이다.

저전력 및 고전력 장치는 이 표준에서도 작동하지만, SuperSpeed를 구현하는 장치는 150&nbsp;mA 및 900&nbsp;mA 사이에서 150&nbsp;mA 단위로 증가된 전류를 제공할 수 있다.

USB 3.0은 또한 BOT(대량 전용 전송) 프로토콜보다 일반적으로 빠른 전송 속도를 제공하는 [[USB Attached SCSI|USB Attached SCSI 프로토콜(UASP)]]을 도입했다.

[[USB 3.0#USB 3.1|USB&nbsp;3.1]]은 2013년 7월에 출시되었으며 두 가지 변형이 있다. 첫 번째는 USB&nbsp;3.0의 *SuperSpeed* 아키텍처 및 프로토콜을 보존하며 작동 모드는 *USB&nbsp;3.1 Gen 1*으로 새로 명명되었다. 두 번째 버전은 독특하게 새로운 *SuperSpeedPlus* 아키텍처 및 프로토콜을 도입했으며, 두 번째 작동 모드는 *USB&nbsp;3.1 Gen 2* (때로는 USB-IF 권장 사항과 달리 *SuperSpeed+ USB*로 마케팅됨)로 명명되었다. 이는 최대 신호 속도를 10&nbsp;Gbit/s로 두 배 증가시켰고(나중에 *SuperSpeed USB 10Gbps*, 그 다음에는 간단히 *USB&nbsp;10Gbps*로 마케팅됨), [[인코딩 방식]]을 [[128b/132b]]로 변경하여 선 인코딩 오버헤드를 3%로 줄였다.

2017년 9월에 출시된 [[USB 3.0#USB 3.2|USB&nbsp;3.2]]는 기존 USB&nbsp;3.1의 *SuperSpeed* 및 *SuperSpeedPlus* 아키텍처와 프로토콜 및 각각의 작동 모드를 보존하지만, 10 및 20&nbsp;Gbit/s의 결합 신호 속도(원시 데이터 속도 1212 및 2424&nbsp;MB/s)를 가진 두 가지 추가 작동 모드( *USB&nbsp;3.2 Gen&nbsp;1×2* 및 *USB&nbsp;3.2 Gen&nbsp;2×2*)를 도입한다. 대역폭 증가는 모든 Full-Featured USB‑C 케이블에 포함된 추가 와이어를 통한 2레인 작동의 결과이다.

==== 명명 체계 ====
USB 3.2 사양부터 USB-IF는 새로운 명명 체계를 도입했다. USB-IF는 다른 작동 모드의 브랜딩을 돕기 위해 5, 10, 20&nbsp;Gbit/s 기능을 각각 *SuperSpeed USB 5Gbps*, *SuperSpeed USB 10Gbps*, *SuperSpeed USB 20Gbps*로 브랜딩하도록 권장했다.

2023년에는 *"SuperSpeed"*를 삭제하고 *USB 5Gbps*, *USB 10Gbps*, *USB 20Gbps*로 다시 대체되었으며, 새로운 *패키징* 및 *포트* 로고가 추가되었다.

=== USB4<span class="anchor" id="USB4"></span>===


[[파일:Certified USB4 40Gbps Logo.svg|섬네일|upright=0.5|더 이상 사용되지 않는 *Certified USB4* 로고]]

USB4 사양은 2019년 8월 29일 USB Implementers Forum에서 발표했다.

USB4 2.0 사양은 2022년 9월 1일 USB Implementers Forum에서 발표했다.

USB4는 [[선더볼트 3]] 프로토콜을 기반으로 한다. 40&nbsp;Gbit/s 처리량을 지원하며, 썬더볼트 3와 호환되며 USB&nbsp;3.2 및 USB&nbsp;2.0과 하위 호환된다. 이 아키텍처는 단일 고속 링크를 여러 최종 장치 유형과 동적으로 공유하여 유형 및 애플리케이션에 따라 데이터 전송에 가장 적합한 방법을 정의한다.

[[CES 2020]]에서 USB-IF와 인텔은 모든 선택적 기능을 지원하는 USB4 제품을 [[썬더볼트 4]] 제품으로 허용할 의사를 밝혔다.

80&nbsp;Gbit/s 속도의 USB4&nbsp;2.0은 2022년 11월에 공개될 예정이었다. 추가 기술 세부 사항은 2022년 11월로 예정된 두 번의 USB 개발자 회의에서 공개될 예정이었다.

USB4 사양은 다음 기술이 USB4에 의해 지원되어야 한다고 명시한다.



==== 2022년 9월 명명 체계 ====
[[파일:USB 2022 September naming scheme.svg|섬네일|upright=2.8|2022년 9월에 시행된 USB 명명 체계 개요<br />(USB 사양과 마케팅 이름이 혼합되어 표시됨<br />사양이 때때로 마케팅 이름으로 잘못 사용되기 때문임.)]]
이전의 혼란스러운 명명 체계 때문에 USB-IF는 다시 한 번 변경하기로 결정했다. 2022년 9월 2일 현재, 마케팅 이름은 "USB&nbsp;*x*Gbps" 구문을 따르며, 여기서 *x*는 Gbit/s 단위의 전송 속도이다. 업데이트된 이름과 로고의 개요는 인접한 표에서 볼 수 있다.

작동 모드 USB&nbsp;3.2&nbsp;Gen&nbsp;2×2 및 USB4&nbsp;Gen&nbsp;2×2 – 또는: USB&nbsp;3.2&nbsp;Gen&nbsp;2×1 및 USB4&nbsp;Gen&nbsp;2×1 –는 상호 교환 가능하거나 호환되지 않는다. 모든 참여 컨트롤러는 동일한 모드로 작동해야 한다.

=== 버전 이력 <span class="anchor" id="0.6e"></span><span class="anchor" id="0.7"></span><span class="anchor" id="0.8"></span><span class="anchor" id="0.9"></span><span class="anchor" id="0.99"></span><span class="anchor" id="1.0RC"></span> ===

==== 출시 버전 ====


==== 전원 관련 표준 <span class="anchor" id="PD"></span>====


== 시스템 설계 <span class="anchor" id="HOST"></span>==
USB 시스템은 하나 이상의 다운스트림 포트(DFP)를 가진 호스트와 여러 주변 장치로 구성되어 계층적 [[스타 네트워크|스타 토폴로지]]를 형성한다. 추가 [[USB 허브]]를 포함할 수 있으며, 최대 5단계까지 허용된다. USB 호스트는 여러 컨트롤러를 가질 수 있으며, 각 컨트롤러는 하나 이상의 포트를 가질 수 있다. 단일 호스트 컨트롤러에는 최대 127개의 장치를 연결할 수 있다. USB 장치는 허브를 통해 직렬로 연결된다. 호스트 컨트롤러에 내장된 허브는 *루트 허브*라고 불린다.

USB 장치는 *장치 기능*이라고 불리는 여러 논리적 하위 장치로 구성될 수 있다. *복합 장치*는 예를 들어, 내장 마이크(오디오 장치 기능)가 있는 [[웹캠]](비디오 장치 기능)과 같이 여러 기능을 제공할 수 있다. 이에 대한 대안은 *복합 장치*로, 호스트가 각 논리 장치에 고유한 주소를 할당하고 모든 논리 장치가 물리적 USB 케이블에 연결되는 내장 허브에 연결된다.

[[파일:USB pipes and endpoints (en).svg|섬네일|alt=다이어그램: 장치 내부에는 여러 엔드포인트가 있으며, 각 엔드포인트는 논리 파이프를 통해 호스트 컨트롤러에 연결된다. 각 파이프의 데이터는 한 방향으로 흐르지만, 호스트 컨트롤러로 들어오고 나가는 데이터가 혼합되어 있다.|USB 엔드포인트는 주변 장치에 위치한다. 호스트로의 채널은 *파이프*라고 한다.]]

USB 장치 통신은 *파이프*(논리 채널)를 기반으로 한다. 파이프는 호스트 컨트롤러를 장치 내의 논리적 엔티티인 *엔드포인트*에 연결한다. 파이프가 엔드포인트에 해당하기 때문에 이 용어들은 때때로 상호 교환적으로 사용된다. 각 USB 장치는 최대 32개의 엔드포인트(16개의 *입력* 및 16개의 *출력*)를 가질 수 있지만, 그렇게 많은 수를 갖는 경우는 드물다. 엔드포인트는 초기화(물리적 연결 후 *열거*라고 불리는 기간) 중에 장치에 의해 정의되고 번호가 지정되므로 비교적 영구적이지만, 파이프는 열고 닫을 수 있다.

파이프에는 스트림과 메시지의 두 가지 유형이 있다.
* *메시지* 파이프는 양방향이며 *제어* 전송에 사용된다. 메시지 파이프는 일반적으로 장치에 대한 짧고 간단한 명령과 장치로부터의 상태 응답(예: 버스 제어 파이프 번호 0에서 사용됨)에 사용된다.
* *스트림* 파이프는 *등시성*, *인터럽트* 또는 *대량* 전송을 사용하여 데이터를 전송하는 단방향 엔드포인트에 연결된 단방향 파이프이다.
*;등시성 전송: 보장된 데이터 속도(고정 대역폭 스트리밍 데이터용)로 전송되지만 데이터 손실 가능성(예: 실시간 오디오 또는 비디오)이 있다.
*;인터럽트 전송: 포인팅 장치, [[마우스]], 키보드와 같이 보장된 빠른 응답(제한된 지연 시간)이 필요한 장치
*;대량 전송: 남은 사용 가능한 대역폭을 모두 사용하는 대규모 비정기적 전송이지만, 대역폭이나 지연 시간에 대한 보장은 없다(예: 파일 전송).

호스트가 데이터 전송을 시작할 때, *(장치 주소, 엔드포인트 번호)*의 [[튜플]]로 지정된 엔드포인트를 포함하는 TOKEN 패킷을 보낸다. 전송이 호스트에서 엔드포인트로 향하는 경우, 호스트는 원하는 장치 주소와 엔드포인트 번호를 포함하는 OUT 패킷(TOKEN 패킷의 특수화)을 보낸다. 데이터 전송이 장치에서 호스트로 향하는 경우, 호스트는 대신 IN 패킷을 보낸다. 대상 엔드포인트가 제조업체가 지정한 방향이 TOKEN 패킷과 일치하지 않는 단방향 엔드포인트인 경우(예: 제조업체가 지정한 방향이 IN인데 TOKEN 패킷이 OUT 패킷인 경우), TOKEN 패킷은 무시된다. 그렇지 않으면 승인되고 데이터 트랜잭션이 시작될 수 있다. 반면에 양방향 엔드포인트는 IN 및 OUT 패킷을 모두 수락한다.

[[파일:USB 2 and 3.jpg|섬네일|alt=폭이 높이의 두 배인 직사각형 구멍. 이 구멍에는 금속 테두리가 있으며, 구멍 안에는 상단과 평행하게 평평한 직사각형 막대가 있다.|컴퓨터 전면 패널에 있는 두 개의 USB&nbsp;3.0 Standard-A 리셉터클(왼쪽)과 두 개의 USB&nbsp;2.0 Standard-A 리셉터클(오른쪽)]]

엔드포인트는 *인터페이스*로 그룹화되며, 각 인터페이스는 단일 장치 기능과 연결된다. 예외는 장치 구성에 사용되며 어떤 인터페이스와도 연결되지 않는 엔드포인트 제로이다. 독립적으로 제어되는 인터페이스로 구성된 단일 장치 기능을 *복합 장치*라고 한다. 복합 장치는 호스트가 단일 기능에만 장치 주소를 할당하므로 단일 장치 주소만 갖는다.

USB 장치가 USB 호스트에 처음 연결되면 USB 장치 열거 프로세스가 시작된다. 열거는 USB 장치에 재설정 신호를 보내는 것으로 시작된다. USB 장치의 신호 속도는 재설정 신호 중에 결정된다. 재설정 후 USB 장치의 정보는 호스트에 의해 읽히고 장치에는 고유한 7비트 주소가 할당된다. 장치가 호스트에 의해 지원되는 경우, 장치와 통신하는 데 필요한 [[장치 드라이버]]가 로드되고 장치는 구성된 상태로 설정된다. USB 호스트가 다시 시작되면 연결된 모든 장치에 대해 열거 프로세스가 반복된다.

호스트 컨트롤러는 장치로의 트래픽 흐름을 지시하므로, 호스트 컨트롤러의 명시적인 요청 없이는 어떤 USB 장치도 버스에서 데이터를 전송할 수 없다. USB&nbsp;2.0에서는 호스트 컨트롤러가 일반적으로 [[라운드 로빈 스케줄링|라운드 로빈]] 방식으로 버스에서 트래픽을 [[폴링 (컴퓨터 과학)|폴링]]한다. 각 USB 포트의 처리량은 USB 포트 또는 포트에 연결된 USB 장치 중 느린 속도에 따라 결정된다.

고속 USB&nbsp;2.0 허브에는 고속 USB&nbsp;2.0 버스와 풀 및 저속 버스 간을 변환하는 트랜잭션 변환기라는 장치가 포함되어 있다. 허브당 또는 포트당 하나의 변환기가 있을 수 있다.

각 USB&nbsp;3.0 호스트에는 두 개의 별도 컨트롤러가 있기 때문에 USB&nbsp;3.0 장치는 해당 호스트에 연결된 USB&nbsp;2.0 또는 이전 장치와 관계없이 USB&nbsp;3.0 신호 속도로 데이터를 전송하고 수신한다. 이전 장치의 작동 신호 속도는 이전 방식으로 설정된다.

== 장치 클래스 <span class="anchor" id="PHDC"></span>==
USB 장치의 기능은 USB 호스트에 전송되는 클래스 코드로 정의된다. 이를 통해 호스트는 장치용 소프트웨어 모듈을 로드하고 다른 제조업체의 새 장치를 지원할 수 있다.

장치 클래스는 다음과 같다.



=== USB 대용량 저장소 / USB 드라이브 <span class="anchor" id="MASSSTORAGE"></span>===

[[파일:SanDisk-Cruzer-USB-4GB-ThumbDrive.jpg|섬네일|일반적인 USB 대용량 저장 장치인 [[USB 플래시 드라이브|플래시 드라이브]]]]
[[파일:M.2 2242 SSD connected into USB 3.0 adapter.jpg|섬네일|컴퓨터에 연결된 USB 3.0 어댑터에 연결된 [[M.2]] (2242) [[솔리드 스테이트 드라이브|SSD]]]]

[[USB 대용량 저장소 장치 유형|USB 대용량 저장 장치 클래스]] (MSC 또는 UMS)는 저장 장치에 대한 연결을 표준화한다. 처음에는 자기 및 광 드라이브용으로 의도되었지만, [[USB 플래시 드라이브|플래시 드라이브]] 및 [[SD 카드]] 리더를 지원하도록 확장되었다. USB 어댑터와 함께 쓰기 잠금 [[SD 카드]]로 부팅할 수 있는 기능은 부팅 미디어의 무결성과 손상되지 않은 원래 상태를 유지하는 데 특히 유리하다.

2005년 초 이후 대부분의 개인용 컴퓨터는 USB 대용량 저장 장치에서 부팅할 수 있지만, USB는 컴퓨터 내부 저장소의 기본 버스로 의도된 것은 아니다. 그러나 USB는 [[핫 스왑]]을 허용하는 장점이 있어 다양한 종류의 드라이브를 포함한 모바일 주변 장치에 유용하다.

몇몇 제조업체는 외장 휴대용 USB [[하드 디스크 드라이브]] 또는 디스크 드라이브용 빈 인클로저를 제공한다. 이들은 연결된 USB 장치의 수 및 유형과 USB 인터페이스의 상한에 의해 제한되지만, 내부 드라이브와 유사한 성능을 제공한다. 외장 드라이브 연결을 위한 다른 경쟁 표준으로는 [[eSATA]], [[ExpressCard]], [[IEEE 1394|FireWire]] (IEEE 1394), 그리고 가장 최근에는 [[선더볼트 (인터페이스)|Thunderbolt]]가 있다.

USB 대용량 저장 장치의 또 다른 용도는 호스트 컴퓨터에 설치할 필요 없이 웹 브라우저 및 VoIP 클라이언트와 같은 소프트웨어 응용 프로그램을 휴대용으로 실행하는 것이다.

=== 미디어 전송 프로토콜 ===


[[미디어 전송 프로토콜|Media Transfer Protocol]] (MTP)은 [[마이크로소프트]]가 USB 대용량 저장 장치보다 더 높은 수준의 장치 파일 시스템 접근을 허용하기 위해 설계한 것으로, 디스크 블록이 아닌 파일 수준에서 작동한다. 또한 선택적 [[디지털 권리 관리|DRM]] 기능을 가지고 있다. MTP는 [[포터블 미디어 플레이어]]와 함께 사용하도록 설계되었지만, 이후 [[안드로이드 (운영체제)|안드로이드 운영 체제]] 4.1 젤리빈 버전부터 주 저장소 접근 프로토콜로 채택되었으며, 윈도우 폰 8 (윈도우 폰 7 장치는 MTP의 진화형인 Zune 프로토콜을 사용했음)에서도 사용되었다. 주된 이유는 MTP가 UMS와 달리 저장 장치에 대한 독점적인 접근을 요구하지 않아, 안드로이드 프로그램이 컴퓨터에 연결된 동안 저장소를 요청할 경우 발생할 수 있는 잠재적인 문제를 완화하기 때문이다. 주된 단점은 MTP가 윈도우 운영 체제 외부에서는 잘 지원되지 않는다는 점이다.

=== 인간 인터페이스 장치 ===


USB [[마우스]] 또는 [[컴퓨터 자판|키보드]]는 일반적으로 소형 USB-PS/2 어댑터를 사용하여 [[PS/2 단자|PS/2 포트]]가 있는 구형 컴퓨터에서 사용할 수 있다. 이중 프로토콜을 지원하는 마우스 및 키보드의 경우, [[전자 회로|논리 회로]]가 없는 수동 어댑터를 사용할 수 있다. 키보드 또는 마우스의 [[USB 하드웨어]]는 USB 또는 PS/2 포트에 연결되었는지 감지하고 적절한 프로토콜을 사용하여 통신하도록 설계되었다. USB 키보드 및 마우스를 PS/2 포트에 연결하는 능동형 변환기도 존재한다.

=== 장치 펌웨어 업그레이드 메커니즘 <span class="anchor" id="DFU"></span>===
*장치 펌웨어 업그레이드*(DFU)는 USB 장치의 [[펌웨어]]를 제조업체가 제공하는 개선된 버전으로 업그레이드하기 위한 일반적인 메커니즘으로, (예를 들어) 펌웨어 버그 수정 사항을 배포하는 방법을 제공한다. 펌웨어 업그레이드 작업 중에 USB 장치는 작동 모드를 효과적으로 [[PROM 프로그래머]]로 변경한다. USB 장치의 모든 클래스는 공식 DFU 사양을 따르면 이 기능을 구현할 수 있다. 이렇게 하면 DFU 호환 호스트 도구를 사용하여 장치를 업데이트할 수 있다.

DFU는 때때로 USB 부트로더 기능이 내장된 마이크로컨트롤러에서 플래시 메모리 프로그래밍 프로토콜로 사용된다.

=== 오디오 스트리밍 ===
USB 장치 워킹 그룹은 오디오 스트리밍 사양을 제시했으며, 마이크, 스피커, 헤드셋, 전화기, 악기 등 오디오 클래스 사용을 위한 특정 표준이 개발 및 구현되었다. 워킹 그룹은 오디오 장치 사양의 네 가지 버전을 발표했다. UAC 또는 ADC라고 불리는 USB Audio&nbsp;1.0, 2.0, 3.0 및 4.0이다.

UAC 3.0은 주로 휴대용 장치를 위한 개선 사항을 도입한다. 예를 들어, 데이터를 버스트하고 저전력 모드에 더 자주 머무름으로써 전력 사용량을 줄이고, 장치의 다른 구성 요소에 대한 전력 도메인을 제공하여 사용하지 않을 때 전원을 끌 수 있도록 한다.

UAC 2.0은 고속 USB (풀 스피드 외에) 지원을 도입하여 멀티 채널 인터페이스를 위한 더 큰 대역폭, 더 높은 샘플 속도, 낮은 내재 지연, 및 동기 및 적응 모드에서 타이밍 해상도를 8배 향상시켰다. UAC2는 또한 클록 도메인 개념을 도입하여 호스트에게 어떤 입력 및 출력 터미널이 동일한 소스에서 클록을 파생하는지에 대한 정보를 제공하고, [[다이렉트 스트림 디지털|DSD]]와 같은 오디오 인코딩, 오디오 효과, 채널 클러스터링, 사용자 제어 및 장치 설명에 대한 향상된 지원을 제공했다.

그러나 UAC 1.0 장치는 플랫폼 간 드라이버 없는 호환성 때문에 여전히 흔하며, 부분적으로는 [[마이크로소프트 윈도우|마이크로소프트]]가 출시 후 10년 이상 UAC 2.0을 구현하지 못했기 때문이기도 하다. 마이크로소프트는 2017년 3월 20일 크리에이터 업데이트를 통해 [[윈도우 10]]에 마침내 지원을 추가했다. UAC 2.0은 [[macOS]], [[iOS]], [[리눅스]]에서도 지원되지만, [[안드로이드 (운영체제)|안드로이드]]는 UAC 1.0 사양의 하위 집합만 구현한다.

USB는 세 가지 등시성(고정 대역폭) 동기화 유형을 제공하며, 이 모든 유형은 오디오 장치에서 사용된다.

* 비동기 — ADC 또는 DAC는 호스트 컴퓨터의 클록과 전혀 동기화되지 않고, 장치에 로컬인 자유 실행 클록으로 작동한다.
* 동기 — 장치의 클록은 USB 프레임 시작(SOF) 또는 버스 간격 신호에 동기화된다. 예를 들어, 이는 11.2896&nbsp;MHz 클록을 1&nbsp;kHz SOF 신호에 동기화하는 것을 필요로 할 수 있으며, 이는 큰 주파수 배율이다.
* 적응 — 장치의 클록은 호스트가 프레임당 전송하는 데이터 양에 동기화된다.

USB 사양은 원래 비동기 모드가 "저가형 스피커"에서 사용되고 적응 모드가 "고급 디지털 스피커"에서 사용된다고 설명했지만, [[하이파이]] 세계에서는 그 반대의 인식이 존재하며, 비동기 모드가 기능으로 광고되고 적응/동기 모드는 나쁜 평판을 가지고 있다. 실제로는 모든 유형이 엔지니어링 및 응용 프로그램의 품질에 따라 고품질 또는 저품질일 수 있다. 비동기 방식은 컴퓨터의 클록에 종속되지 않는다는 장점이 있지만, 여러 소스를 결합할 때 [[샘플 레이트 변환]]이 필요하다는 단점이 있다.

== 커넥터 <span class="anchor" id="CONNECTORS"></span>==


USB 위원회가 지정한 커넥터는 USB의 기본 목표를 여러 가지로 지원하며, 컴퓨터 산업에서 사용된 많은 커넥터에서 얻은 교훈을 반영한다. 호스트 또는 장치에 장착된 암 커넥터를 *리셉터클*이라고 하고, 케이블에 부착된 수 커넥터를 *플러그*라고 한다. 공식 USB 사양 문서에서는 주기적으로 *male*을 플러그로, *female*을 리셉터클로 정의하기도 한다.
[[파일:USB Type-A plug B&W.svg|alt=USB Type-A 플러그|섬네일|한때 가장 일반적인 [[USB 커넥터]] 유형이었지만 지금은 많은 레거시 USB 커넥터 유형 중 하나인 USB Standard-A 플러그]]
이 디자인은 USB 플러그를 리셉터클에 잘못 삽입하기 어렵게 만들려는 의도이다. USB 사양은 사용자가 올바른 방향을 인식할 수 있도록 케이블 플러그와 리셉터클에 표시를 해야 한다고 요구한다. 그러나 USB-C 플러그는 양면 사용이 가능하다. USB 케이블과 소형 USB 장치는 리셉터클의 그립력으로 고정되며, 일부 커넥터처럼 나사, 클립 또는 엄지 나사를 사용하지 않는다.
[[파일:USB-Micro-B-plug--and--USB-Mini-B-plug (cropped).jpg|섬네일|USB Mini-B (오른쪽)와 그 후속 모델인 USB Micro-B (왼쪽). 이들은 [[USB-C|USB Type‑C]]가 만들어질 때까지 소형 및 휴대용 하드웨어에서 가장 일반적인 USB 커넥터 유형이었다.]]
*A*와 *B* 커넥터의 구분은 USB에 내재된 방향성을 강제하기 위함이었다. 단일 *호스트*는 Type‑A 리셉터클을 가지며, 각 *주변 장치*는 단일 Type‑B 리셉터클을 갖는다. *허브*는 여러 개의 *다운스트림*을 향하는 Type‑A 리셉터클을 제공하며, 단일 Type‑B 리셉터클(2014년에 대체된 Micro‑AB 또는 2007년에 더 이상 사용되지 않는 Mini-AB) 또는 Type‑A 플러그가 있는 고정 케이블을 통해 호스트에 연결된다. 허브는 직접 또는 하나 이상의 추가 허브를 통해 호스트에 연결될 수 있다. Type‑C 이전에는 [[USB 온더고|USB On-The-Go]]를 통해 스마트폰과 같은 장치가 *호스트* 또는 *주변 장치* 역할을 모두 수행할 수 있었으며, Type‑A 및 Type‑B 플러그를 모두 수용하는 단일 Type‑AB 리셉터클을 사용했다.

USB 커넥터 유형은 사양이 발전함에 따라 증가했다. 원래 USB 사양은 Standard‑A 및 Standard‑B 플러그와 리셉터클을 상세히 설명했다. 이들은 원래 단순히 *Type‑A* 및 *Type‑B*라고 불렸지만, Mini 및 이후 Micro 커넥터와 구별하기 위해 *Standard*로 이름이 변경되었다. Standard 플러그의 데이터 접점은 전원 및 접지 접점에 비해 들어가 있어 더 섬세한 데이터 통신 회로가 연결되기 전에 장치가 안전하게 전기적으로 연결되어 손상을 방지한다. 일부 장치는 데이터 연결이 이루어지는지에 따라 다른 모드로 작동한다. 간단한 전원 공급 장치에는 데이터 연결이 포함되지 않고 대신 데이터 접점을 함께 단락시키지만, 모든 가능한 USB 장치가 표준 USB 케이블을 통해 충전되거나 작동할 수 있도록 한다. 충전 케이블은 전원 연결은 제공하지만 데이터는 제공하지 않는다. 충전 전용 케이블에서는 장치 끝에서 데이터 와이어가 단락되어 있으며, 그렇지 않으면 장치가 충전기를 부적합하다고 거부할 수 있다.



== 케이블링 <span class="anchor" id="CABLING"></span>==

[[파일:Cables in Hong Kong.JPG|섬네일|[[홍콩]]에서 판매되는 다양한 USB 케이블]]

USB&nbsp;1.1 표준은 표준 케이블의 최대 길이를 풀 스피드(12&nbsp;Mbit/s)로 작동하는 장치의 경우 , 저속(1.5&nbsp;Mbit/s)으로 작동하는 장치의 경우 로 지정한다.

USB&nbsp;2.0은 고속(480&nbsp;Mbit/s)으로 실행되는 장치에 대해 최대 의 케이블 길이를 제공한다.

USB&nbsp;3.0 표준은 최대 케이블 길이를 직접 지정하지 않고, 모든 케이블이 전기적 사양을 충족할 것을 요구한다. [[AWG]]&nbsp;26 와이어를 사용하는 구리 케이블의 경우 최대 실제 길이는 이다.

=== USB 브리지 "케이블" ===
두 대의 컴퓨터(호스트)는 USB‑C 케이블을 통해 쉽게 연결할 수 있지만, Type‑C 이전에는 일반 USB 케이블로는 호스트끼리 연결할 수 없었다. USB 브리지 "케이블" 또는 데이터 전송 케이블은 시중에서 찾을 수 있으며, 직접 PC 대 PC 연결을 제공한다. 브리지 "케이블"은 실제로는 연결된 각 *호스트*에게 USB *주변 장치*로 나타나는 전자 장치로, 컴퓨터 간의 피어 투 피어 통신을 허용한다. 이러한 USB 브리지 케이블은 USB 포트를 통해 두 컴퓨터 간에 파일을 전송하는 데 사용된다.

마이크로소프트가 [[Windows Easy Transfer]]로 대중화한 이 유틸리티는 특수 USB 브리지 케이블을 사용하여 이전 버전의 윈도우를 실행하는 컴퓨터에서 최신 버전을 실행하는 컴퓨터로 개인 파일 및 설정을 전송했다. *Windows Easy Transfer* 소프트웨어 사용 맥락에서, 브리지 케이블은 때때로 *Easy Transfer cable*로 참조될 수 있다.

많은 USB 브리지/데이터 전송 케이블은 여전히 USB 2.0이지만, USB 3.0 전송 케이블도 다수 존재한다. USB 3.0이 USB 2.0보다 10배 빠르지만, USB 3.0 전송 케이블은 설계상 두세 배 정도만 빠르다.

USB 3.0 사양은 두 대의 PC를 연결하기 위한 전원 없는 A-to-A 크로스오버 케이블을 도입했다. 이들은 데이터 전송용이 아니라 진단 용도로 사용된다.

==== 이중 역할 USB 연결 ====
USB 브리지 케이블은 USB 3.1 사양과 함께 도입된 USB 이중 역할 장치 기능으로 인해 중요성이 줄어들었다. 최신 사양에 따르면, USB는 Type-C 케이블을 사용하여 시스템을 직접 연결하는 대부분의 시나리오를 지원한다. 그러나 이 기능을 사용하려면 연결된 시스템이 역할 전환을 지원해야 한다. 이중 역할 기능은 시스템 내에 *두 개의* 컨트롤러와 *역할 컨트롤러*가 있어야 한다. 태블릿이나 휴대폰과 같은 모바일 플랫폼에서는 이를 예상할 수 있지만, 데스크톱 PC 및 랩톱은 이중 역할을 지원하지 않는 경우가 많다.

== 전원 <span class="anchor" id="POWER"></span>==


업스트림 USB 커넥터는 V_BUS 핀을 통해 다운스트림 USB 장치에 공칭 5&nbsp;V [[직류|DC]] 전원을 공급한다.

=== 저전력 및 고전력 장치 <span class="anchor" id="HOST"></span>===

이 문단에서는 [[USB 하드웨어#USB 파워 딜리버리|파워 딜리버리]] (USB-PD) 이전의 USB 전원 분배 모델에 대해 설명한다. PD를 사용하지 않는 장치에서는 USB가 Type-A 및 Type-B 커넥터를 통해 최대 4.5&nbsp;W, USB-C를 통해 최대 15&nbsp;W를 제공한다. 모든 PD 이전 USB 전원은 5&nbsp;V로 공급된다.

장치에 전원을 공급하는 호스트의 경우, USB에는 *단위 부하* 개념이 있다. 모든 장치는 하나의 단위 전력을 소모할 수 있으며, 장치는 이러한 개별 단계에서 더 많은 전력을 요청할 수 있다. 호스트가 요청된 전력을 제공할 의무는 없으며, 장치는 협상된 전력 이상을 소모할 수 없다.

하나의 단위 이하의 전력을 소모하는 장치를 *저전력* 장치라고 한다. 모든 장치는 구성되지 않은 상태에서 시작할 때 저전력 장치로 작동해야 한다. USB 2.0까지의 USB 장치의 단위 부하는 100&nbsp;mA (또는 500&nbsp;mW)인 반면, USB&nbsp;3.0은 단위 부하를 150&nbsp;mA (750&nbsp;mW)로 정의한다. Full-featured USB-C는 단위 부하가 250&nbsp;mA (또는 1250&nbsp;mW)인 저전력 장치를 지원할 수 있다.

하나 이상의 단위를 소모하는 장치는 *고전력* 장치이다(예: 일반적인 2.5인치 하드 디스크 드라이브). USB 2.0까지는 호스트 또는 허브가 각 장치에 100&nbsp;mA의 5단계로 최대 2.5&nbsp;W를 제공할 수 있으며, SuperSpeed 장치(USB 3.x)는 호스트 또는 허브가 150&nbsp;mA의 6단계로 최대 4.5&nbsp;W를 제공할 수 있다.
USB-C는 더 큰 단위 부하(250&nbsp;mA; 최대 7.5&nbsp;W)로 USB 3.x의 이중 레인 작동을 허용한다. USB-C는 또한 USB BC를 대체하는 Type-C 전류를 허용하여 데이터 연결 없이도 전원 가용성을 간단한 방식으로 신호화할 수 있다.



배터리 충전 모드를 인식하기 위해 전용 충전 포트는 D+ 및 D- 단자 사이에 200&nbsp;Ω을 초과하지 않는 저항을 배치한다. D+ 및 D- 단자 사이에 200&nbsp;Ω 미만의 저항을 가진 단락되거나 거의 단락된 데이터 라인은 무한 충전 속도를 가진 전용 충전 포트(DCP)를 나타낸다.

표준 USB 외에도 1990년대에 개발된 [[PoweredUSB]]라는 독점적인 고전력 시스템이 있으며, 주로 금전 등록기 등의 판매 시점 단말기에서 사용된다.

== 신호 전송 ==


USB 신호는  [[특성 임피던스]]를 갖는 [[꼬임쌍선]] 데이터 와이어에서 [[차동 신호]]를 사용하여 전송된다. USB 2.0 및 이전 사양은 [[이중통신#반이중|반이중]](HDx)의 단일 쌍을 정의한다. USB 3.0 및 이후 사양은 USB 2.0 호환성을 위한 전용 쌍 하나와 데이터 전송을 위한 두 개 또는 네 개의 쌍을 정의한다. 단일 레인 (*×1*) 변형의 경우 [[이중통신#전이중|전이중]](FDx)을 구현하는 두 개의 데이터 와이어 쌍에는 최소 SuperSpeed (SS) 커넥터가 필요하다. 두 레인 (*×2*) 변형의 경우 전이중을 구현하는 네 개의 쌍에는 USB-C 커넥터가 필요하다.

USB4 Gen 4는 네 쌍 모두를 사용해야 하지만 비대칭 쌍 구성을 허용한다. 이 경우 한 데이터 와이어 쌍은 업스트림 데이터에 사용되고 다른 세 쌍은 다운스트림 데이터 또는 그 반대로 사용된다. USB4 Gen 4는 3개 레벨의 [[펄스 진폭 변조|PAM-3]]를 사용하며, 전송된 [[보 (통신 단위)|보]]당 [[삼진법|삼진수]] 정보를 제공한다. 12.8&nbsp;GHz의 전송 주파수는 25.6&nbsp;GBd의 전송 속도로 변환되며, 11비트-7삼진수 변환은 이론적으로 최대 40.2&nbsp;Gbit/s 이상의 전송 속도를 제공한다.





* *'저속(LS)** 및 **풀 스피드(FS)** 모드는 D+ 및 D−로 표시된 단일 데이터 와이어 쌍을 [[이중통신#반이중|반이중]]으로 사용한다. 전송되는 신호 레벨은 논리적 낮음의 경우 이고, 논리적 높음의 경우 이다. 신호선은 [[전기 종단|종단되지 않는다]].
* **고속(HS)**은 동일한 와이어 쌍을 사용하지만, 다른 전기적 규약을 사용한다. 논리적 낮음의 경우 , 논리적 높음의 경우 의 낮은 신호 전압과, 데이터 케이블 임피던스에 맞게 접지에 45&nbsp;Ω 또는 차동으로 90&nbsp;Ω의 종단을 사용한다.
* **SuperSpeed (SS)**는 두 개의 추가 차폐 꼬임 데이터 와이어 쌍(및 새로운, 대부분 호환되는 확장 커넥터)을 추가 접지 와이어 외에 추가한다. 이들은 전이중 SuperSpeed 작동에 전용된다. SuperSpeed 링크는 USB&nbsp;2.0 채널과 독립적으로 작동하며 연결 시 우선권을 가진다. 링크 구성은 LFPS(저주파 주기적 신호, 약 20&nbsp;MHz 주파수)를 사용하여 수행되며, 전기적 기능에는 송신기 측의 전압 역강조 및 전송 라인의 전기적 손실을 상쇄하기 위한 수신기 측의 적응형 선형 등화가 포함되어 링크는 ''링크 훈련'' 개념을 도입한다.
* **SuperSpeed+ (SS+)'는 증가된 신호 속도(Gen 2×1 모드)와/또는 USB-C의 추가 레인(Gen 1×2 및 Gen 2×2 모드)을 가진 새로운 코딩 방식을 사용한다.

USB 연결은 항상 A 끝(호스트 또는 허브의 다운스트림 포트)과 B 끝(주변 장치 또는 허브의 업스트림 포트) 사이에서 이루어진다. 역사적으로 이는 호스트가 Type-A 포트만 가지고 주변 장치가 Type-B 포트만 가지고 있으며 모든 호환 가능한 케이블에 Type-A 플러그와 Type-B 플러그가 하나씩 있다는 사실로 명확하게 드러났다. USB-C(Type-C)는 모든 레거시 Type-A 및 Type-B 커넥터를 대체하는 단일 커넥터이므로, 양쪽이 USB Type-C 포트가 있는 장비일 경우 어느 쪽이 호스트이고 어느 쪽이 장치인지 협상한다.

## 프로토콜 계층

USB 통신 중 데이터는 패킷으로 전송된다. 초기에는 모든 패킷이 호스트에서 루트 허브를 거쳐 (아마도 더 많은 허브를 거쳐) 장치로 전송된다. 이 패킷 중 일부는 장치에게 응답으로 일부 패킷을 보내도록 지시한다.

## 트랜잭션

USB의 기본 트랜잭션은 다음과 같다.
* OUT 트랜잭션
* IN 트랜잭션
* SETUP 트랜잭션
* 제어 전송 교환

## 관련 표준 <span class="anchor" id="HSIC"></span><span class="anchor" id="SSIC"></span>
섬네일|upright=0.5|무선 USB 로고

### 미디어 불가분 USB
USB Implementers Forum은 2015년 7월 29일 USB 프로토콜을 기반으로 한 Media Agnostic USB (MA-USB) v.1.0 무선 통신 표준을 도입했다. 무선 USB는 케이블 대체 기술이며, 최대 480&nbsp;Mbit/s의 데이터 속도를 위해 초광대역 무선 기술을 사용한다.

USB-IF는 WiGig Serial Extension v1.2 사양을 MA-USB 사양의 초기 기반으로 사용했으며 SuperSpeed USB (3.0 및 3.1) 및 Hi-Speed USB (USB 2.0)와 호환된다. MA-USB를 사용하는 장치는 제품이 인증 프로그램을 통과하는 경우 "Powered by MA-USB"로 브랜딩된다.

### 인터칩 USB

InterChip USB는 기존 USB에서 볼 수 있는 트랜시버를 제거한 칩 간 변형이다. HSIC 물리 계층은 USB&nbsp;2.0에 비해 약 50% 적은 전력과 75% 적은 보드 면적을 사용한다. SPI 및 I²C의 대안 표준이다.

### USB-C

USB-C (공식 명칭 USB Type-C)는 새로운 커넥터와 몇 가지 새로운 연결 기능을 정의하는 표준이다. 이 중 대체 모드를 지원하여 USB-C 커넥터 및 케이블을 통해 다른 프로토콜을 전송할 수 있다. 이는 일반적으로 디스플레이포트 또는 HDMI 프로토콜을 지원하는 데 사용되며, 컴퓨터 모니터 또는 텔레비전과 같은 디스플레이를 USB-C를 통해 연결할 수 있게 한다.

다른 모든 커넥터는 USB 3.2에서 2레인 작동(Gen 1×2 및 Gen 2×2)이 불가능하지만, 1레인 작동(Gen&nbsp;1×1 및 Gen&nbsp;2×1)에는 사용할 수 있다.

### 디스플레이링크

DisplayLink는 여러 디스플레이를 USB를 통해 컴퓨터에 연결할 수 있는 기술이다. 2006년경에 도입되었으며, USB-C를 통한 대체 모드 이전에 USB를 통해 디스플레이를 연결하는 유일한 방법이었다. 이는 독점 기술이며, USB Implementers Forum에서 표준화되지 않았고 일반적으로 컴퓨터에 별도의 장치 드라이버가 필요하다.

## 다른 연결 방식과의 비교
### 파이어와이어 (IEEE 1394)
처음에는 USB가 파이어와이어 (IEEE 1394) 기술의 보완물로 간주되었다. 파이어와이어는 디스크 드라이브, 오디오 인터페이스, 비디오 장비와 같은 주변기기를 효율적으로 상호 연결하는 고대역폭 직렬 버스로 설계되었다. 초기 설계에서 USB는 훨씬 낮은 데이터 속도로 작동하고 덜 정교한 하드웨어를 사용했다. 키보드 및 포인팅 장치와 같은 소형 주변기기에 적합했다.

파이어와이어와 USB의 가장 중요한 기술적 차이점은 다음과 같다.

* USB 네트워크는 계층적 스타 토폴로지를 사용하는 반면, IEEE&nbsp;1394 네트워크는 트리 토폴로지를 사용한다.
* USB&nbsp;1.0, 1.1, 2.0은 "요청 시 응답" 프로토콜을 사용한다. 즉, 호스트가 특정 통신을 요청할 때 각 주변기기가 호스트와 통신한다. USB&nbsp;3.0은 장치에서 호스트로의 통신을 허용한다. 파이어와이어 장치는 네트워크 조건에 따라 언제든지 다른 노드와 통신할 수 있다.
* USB 네트워크는 네트워크를 제어하기 위해 트리 상단의 단일 호스트에 의존한다. 모든 통신은 호스트와 하나의 주변기기 사이에서 이루어진다. 파이어와이어 네트워크에서는 모든 가능한 노드가 네트워크를 제어할 수 있다.
* USB는 5&nbsp;V 전원 라인으로 작동하는 반면, 파이어와이어는 12&nbsp;V를 공급하며 이론적으로 최대 30&nbsp;V까지 공급할 수 있다.
* 표준 USB 허브 포트는 일반적인 500&nbsp;mA/2.5&nbsp;W의 전류를 제공할 수 있으며, 비 허브 포트는 100&nbsp;mA만 제공한다. USB&nbsp;3.0 및 USB On-The-Go는 1.8&nbsp;A/9.0&nbsp;W(전용 배터리 충전의 경우 1.5&nbsp;A/7.5&nbsp;W 풀 대역폭 또는 900&nbsp;mA/4.5&nbsp;W 고대역폭)를 공급하는 반면, 파이어와이어는 이론적으로 최대 60&nbsp;W의 전력을 공급할 수 있지만, 일반적으로 10~20&nbsp;W가 더 일반적이다.

이러한 차이점들은 두 버스의 설계 목표가 달랐음을 반영한다. USB는 단순성과 저비용을 위해 설계된 반면, 파이어와이어는 특히 오디오 및 비디오와 같은 시간 민감 응용 프로그램에서 높은 성능을 위해 설계되었다. 이론적인 최대 신호 속도는 유사하지만, 파이어와이어&nbsp;400은 USB&nbsp;2.0 고대역폭보다 실제 사용에서 더 빠르다. 특히 외장 하드 드라이브와 같은 고대역폭 사용에서 그렇다. 새로운 파이어와이어&nbsp;800 표준은 파이어와이어&nbsp;400보다 두 배 빠르고 USB&nbsp;2.0 고대역폭보다 이론적으로나 실제적으로 더 빠르다. 그러나 파이어와이어의 속도 이점은 DMA(Direct Memory Access)와 같은 저수준 기술에 의존하며, 이는 다시 DMA 공격과 같은 보안 취약점을 야기할 수 있다.

USB와 파이어와이어를 구현하는 데 사용되는 칩셋과 드라이버는 사양에 명시된 대역폭이 실제 세계에서 얼마나 달성되는지, 그리고 주변 기기와의 호환성에 결정적인 영향을 미친다.

### 이더넷
IEEE 802.3af, 802.3at, 802.3bt Power over Ethernet (PoE) 표준은 전원 공급 USB보다 더 정교한 전원 협상 방식을 지정한다. 이더넷은 48&nbsp;V&nbsp;DC에서 작동하며 USB&nbsp;2.0(최대 케이블 길이 5&nbsp;m에서 2.5&nbsp;W 제공)에 비해 최대 100&nbsp;m 케이블을 통해 더 많은 전력(802.3af의 경우 최대 12.95&nbsp;W, 802.3at(PoE+)의 경우 25.5&nbsp;W, 802.3bt(4PPoE)의 경우 71&nbsp;W)을 공급할 수 있다. 이로 인해 PoE는 VoIP 전화, 보안 카메라, 무선 액세스 포인트, 건물 내 다른 네트워크 장치에 널리 사용되고 있다. 그러나 USB는 거리가 짧고 전력 수요가 적은 경우 PoE보다 저렴하다.

이더넷 표준은 네트워크 장치(컴퓨터, 전화 등)와 네트워크 케이블 간에 60초 동안 최대 1500&nbsp;V&nbsp;AC 또는 2250&nbsp;V&nbsp;DC의 전기적 절연을 요구한다. USB는 호스트 컴퓨터와 밀접하게 관련된 주변 장치를 위해 설계되었기 때문에 이러한 요구 사항이 없으며, 실제로는 주변 장치와 호스트 접지를 연결한다. 이로 인해 이더넷은 특정 오류 조건에서 위험한 전압을 가질 수 있는 외부 배선에 연결된 케이블 및 DSL 모뎀과 같은 주변 장치와 관련하여 USB보다 상당한 안전상의 이점을 제공한다.

### MIDI
MIDI 장치용 USB 장치 클래스 정의는 USB를 통해 음악 악기 디지털 인터페이스 (MIDI) 음악 데이터를 전송한다. MIDI 기능은 최대 16개의 동시 가상 MIDI 케이블을 허용하도록 확장되었으며, 각 케이블은 일반적인 MIDI 16채널과 클록을 전달할 수 있다.

USB는 저가형 및 물리적으로 인접한 장치에 대해 경쟁력이 있다. 그러나 Power over Ethernet 및 MIDI 플러그 표준은 긴 케이블을 사용할 수 있는 고급 장치에서 장점을 가진다. USB는 두 트랜시버의 접지 기준을 연결하기 때문에 장비 간에 접지 루프 문제를 일으킬 수 있다. 이와 대조적으로 MIDI 플러그 표준과 이더넷은 500&nbsp;V 이상의 내장 절연 기능을 가지고 있다.

### eSATA/eSATAp
eSATA 커넥터는 외장 하드 드라이브 및 SSD 연결을 위해 고안된 더 견고한 SATA 커넥터이다. eSATA의 전송 속도(최대 6&nbsp;Gbit/s)는 USB&nbsp;3.0(최대 5&nbsp;Gbit/s) 및 USB&nbsp;3.1(최대 10&nbsp;Gbit/s)과 유사하다. eSATA로 연결된 장치는 일반 SATA 장치로 나타나 내부 드라이브와 관련된 완전한 성능과 호환성을 제공한다.

eSATA는 외장 장치에 전원을 공급하지 않는다. 이는 USB와 비교하여 점점 더 큰 단점이다. USB&nbsp;3.0의 4.5&nbsp;W가 때때로 외장 하드 드라이브에 전력을 공급하기에 불충분하더라도 기술은 발전하고 있으며, 외장 드라이브는 점차 더 적은 전력을 필요로 하여 eSATA의 이점을 약화시킨다. eSATAp (전력 공급 eSATA, 일명 ESATA/USB)는 2009년에 도입된 커넥터로, 새로운 하위 호환 커넥터를 사용하여 연결된 장치에 전력을 공급한다. 노트북에서 eSATAp는 일반적으로 2.5인치 HDD/SSD에 전원을 공급하기 위해 5&nbsp;V만 공급한다. 데스크톱 워크스테이션에서는 3.5인치 HDD/SSD 및 5.25인치 광 드라이브를 포함한 더 큰 장치에 전원을 공급하기 위해 추가로 12&nbsp;V를 공급할 수 있다.

eSATAp 지원은 메인보드 SATA, 전원 및 USB 자원을 연결하는 브래킷 형태로 데스크톱 컴퓨터에 추가할 수 있다.

eSATA는 USB와 마찬가지로 핫 플러깅을 지원하지만, 이는 OS 드라이버 및 장치 펌웨어에 의해 제한될 수 있다.

### 선더볼트

선더볼트는 PCI 익스프레스와 디스플레이포트를 새로운 직렬 데이터 인터페이스로 결합한다. 원래 선더볼트 구현은 각각 10&nbsp;Gbit/s의 전송 속도를 가진 두 개의 채널을 가지며, 결과적으로 총 단방향 대역폭은 20&nbsp;Gbit/s이다.

선더볼트 2는 링크 집계를 사용하여 두 개의 10&nbsp;Gbit/s 채널을 하나의 양방향 20&nbsp;Gbit/s 채널로 결합한다.

선더볼트 3 및 선더볼트 4는 USB-C를 사용한다. 썬더볼트&nbsp;3은 두 개의 물리적 20&nbsp;Gbit/s 양방향 채널을 가지며, 이를 통합하여 단일 논리적 40&nbsp;Gbit/s 양방향 채널로 나타낸다. 썬더볼트 3 컨트롤러는 USB&nbsp;3.1 Gen&nbsp;2 컨트롤러를 통합하여 USB 장치와의 호환성을 제공할 수 있다. 또한 DisplayPort 대체 모드와 USB4 패브릭을 통한 DisplayPort를 제공할 수 있어 썬더볼트&nbsp;3 포트의 기능이 USB&nbsp;3.1 Gen&nbsp;2 포트의 상위 집합이 된다.

DisplayPort Alternate Mode 2.0: USB4 (USB-C 필수)는 허브가 USB-C 대체 모드를 통해 DisplayPort 2.0을 지원해야 한다고 요구한다. DisplayPort 2.0은 HDR10 색상으로 60&nbsp;Hz에서 8K 해상도를 지원할 수 있다. DisplayPort 2.0은 최대 80&nbsp;Gbit/s를 사용할 수 있으며, 이는 USB 데이터에 사용 가능한 양의 두 배이다. 이는 모든 데이터를 한 방향(모니터로)으로 보내 모든 8개 데이터 와이어를 동시에 사용할 수 있기 때문이다.

사양이 로열티 없이 개방되고 썬더볼트 프로토콜의 관리 권한이 인텔에서 USB Implementers Forum으로 이전된 후, 썬더볼트 3는 USB4 사양에 효과적으로 구현되었다. (썬더볼트 3와의 호환성은 USB4 제품에 대해 선택 사항이지만 권장된다.)

## 상호 운용성

USB 데이터 신호를 다른 통신 표준으로 변환하는 다양한 프로토콜 변환기를 사용할 수 있다.

## 보안 위협
USB 표준의 보급률로 인해 USB 표준을 이용한 많은 익스플로잇이 존재한다. 오늘날 가장 큰 사례 중 하나는 USB 킬러로 알려진 장치로, 데이터 라인을 통해 고전압 펄스를 전송하여 USB 장치를 손상시킨다.

또 다른 보안 위협은 플래시 드라이브처럼 보이는 장치를 삽입하면 키보드처럼 작동하는 것이다. 이는 마이크로소프트 윈도우에서 장치가 설정된 시간 동안 기다린 다음 파워셸 또는 명령 프롬프트를 열고 악성 명령을 눈 깜짝할 사이에 입력하는 것과 같이 키보드만으로 호스트 컴퓨터에서 할 수 있는 모든 작업을 수행하는 데 사용될 수 있다. 이 공격은 BadUSB 공격이라고 불리며, 장치들은 일반적으로 동일한 명명법을 따른다.

윈도우 XP 이전 버전의 마이크로소프트 윈도우에서는 윈도우가 AutoRun을 통해 특정 장치(USB 대용량 저장 장치 포함)에서 스크립트(존재하는 경우)를 자동으로 실행하여 악성 소프트웨어를 포함할 수 있었다.

## 같이 보기

### USB

* USB 통신
* USB 하드웨어
* USB-C
* USB 허브
* XHCI
* 주변기기
* WebUSB

### 파생 및 관련 표준

* 독포트
* LIO Target
* 미디어 전송 프로토콜
* 모바일 고선명 링크
* 선더볼트
* Windows Easy Transfer

## 각주

## 외부 링크
* 
*  www.usb.org
*  USB - 네이버 캐스트


분류:미국의 발명품
분류:컴퓨터 버스
분류:컴퓨터 단자
분류:일본의 발명품
분류:물리 계층 프로토콜
분류:직렬 버스