Android 공부

BlueTooth Classic VS BlueTooth Low Energy

Machine_웅 2024. 9. 13. 14:06
728x90
반응형

BLE(Bluetooth Low Energy)와 Bluetooth Classic은 둘 다 **Bluetooth** 기술을 기반으로 하지만, 목표로 하는 사용 사례와 성능 요구 사항에 따라 서로 다른 **프로토콜 스택**과 특성을 가집니다. 그 결과, 두 기술은 전송 속도, 전력 소비, 연결 방식에서 큰 차이를 보입니다. 아래는 **BLE**와 **Bluetooth Classic**의 프로토콜 차이에 대한 설명입니다.

### 1. **주요 목표 및 사용 사례**


- **Bluetooth Classic**:
  - 주로 **고대역폭**과 **지속적인 데이터 전송**이 필요한 애플리케이션에 사용됩니다.
  - 음성 통화(헤드셋), 고음질 음악 스트리밍(A2DP), 파일 전송 등이 주요 사용 사례입니다.
  - **높은 전송 속도**와 **지속적인 연결**이 필요합니다.
  
- **BLE**:
  - **저전력**을 목표로 설계되었습니다. 짧은 주기로 작은 데이터를 교환하는 애플리케이션에 적합합니다.
  - 피트니스 트래커, 스마트 워치, IoT 기기와 같은 센서 기반 애플리케이션에 주로 사용됩니다.
  - **낮은 전력 소모**와 **간헐적인 데이터 전송**이 요구됩니다.

### 2. **프로토콜 스택**


#### **Bluetooth Classic 프로토콜 스택**
Bluetooth Classic은 다음과 같은 주요 프로토콜을 사용합니다:
1. **L2CAP (Logical Link Control and Adaptation Protocol)**: 데이터 프레임을 여러 프로토콜에 맞게 조정하는 역할을 합니다.
2. **RFCOMM**: 시리얼 포트 에뮬레이션을 제공하는 프로토콜로, 주로 **SPP (Serial Port Profile)**에서 사용됩니다.
3. **A2DP (Advanced Audio Distribution Profile)**: 오디오 스트리밍에 사용됩니다.
4. **HFP (Hands-Free Profile)**: 핸즈프리 통화를 위한 프로파일입니다.
5. **OBEX (Object Exchange)**: 파일 및 데이터 전송을 지원하는 프로토콜로, FTP나 OPP에서 사용됩니다.

#### **BLE 프로토콜 스택**


BLE는 **GATT(Generic Attribute Profile)**과 **ATT(Attribute Protocol)**를 사용해 데이터를 주고받습니다.
1. **L2CAP**: Bluetooth Classic과 동일한 계층에서 데이터 패킷을 다룹니다. 그러나 BLE의 L2CAP은 훨씬 단순화되어, 주로 **작은 데이터**의 신속한 전송에 최적화되어 있습니다.
2. **ATT (Attribute Protocol)**: BLE에서 사용되는 프로토콜로, GATT 프로파일을 통해 데이터를 교환할 때 각 데이터를 속성(Attribute)으로 다룹니다.
3. **GATT (Generic Attribute Profile)**: BLE 장치 간에 데이터를 주고받는 방식으로, 각 데이터는 서비스와 특성(characteristic)으로 표현됩니다.
4. **SMP (Security Manager Protocol)**: 암호화 및 인증과 같은 보안 기능을 담당하는 계층입니다.
5. **Link Layer**: BLE의 저전력 특성에 맞춰 설계된 물리 계층으로, 간헐적인 데이터 교환에 적합한 구조입니다.

### 3. **전송 속도 및 대역폭**
- **Bluetooth Classic**:
  - 최대 **3Mbps**까지의 데이터 전송 속도를 지원합니다. 일반적으로 오디오 스트리밍(A2DP)과 같은 **고대역폭 애플리케이션**에 적합합니다.
  
- **BLE**:
  - 기본 전송 속도는 약 **1Mbps**이며, BLE 5.0 이후로는 **2Mbps**까지 확장할 수 있습니다. BLE는 주로 **작은 데이터 패킷**을 교환하는 데 최적화되어 있으며, 대량의 데이터 전송에는 적합하지 않습니다.

### 4. **전력 소비**
- **Bluetooth Classic**:
  - 상대적으로 **높은 전력 소비**를 하며, 장기간의 지속적인 연결이나 고대역폭 전송에서는 더 많은 배터리를 소모합니다.
  
- **BLE**:
  - **저전력 소비**가 핵심입니다. BLE는 주로 **간헐적인 데이터 전송**을 위한 기기로 설계되었으며, 대기 모드에서 매우 적은 전력을 소비합니다. 이는 IoT 및 웨어러블 기기와 같은 배터리로 구동되는 장치에 매우 적합합니다.

### 5. **연결 유지 방식**
- **Bluetooth Classic**:
  - **연결 기반 통신**이 기본입니다. 장치 간의 페어링이 이루어지면, 데이터를 지속적으로 주고받는 동안 연결이 유지됩니다. 연결이 끊어지면 재연결이 필요합니다.
  
- **BLE**:
  - BLE는 **간헐적인 연결**을 지원하며, 데이터를 전송할 때만 연결을 설정하고 나머지 시간 동안 절전 모드로 유지됩니다. BLE 장치들은 광고(Advertising)를 통해 연결 요청을 받으며, 필요 시 연결을 설정하고 데이터를 전송한 후 다시 연결을 종료할 수 있습니다.

### 6. **보안**
- **Bluetooth Classic**:
  - 기본적인 암호화 및 인증을 지원하지만, BLE에 비해 보안 측면에서 더 단순합니다. **PIN 코드** 기반 페어링이 일반적입니다.
  
- **BLE**:
  - **SMP (Security Manager Protocol)**을 사용하여 **AES-128 암호화**와 같은 강력한 보안 기능을 제공합니다. BLE 4.2 이후로 **LE Secure Connections**가 도입되면서 더 높은 수준의 보안을 제공하며, MITM(Man-In-The-Middle) 공격 방지 기능도 지원합니다.

### 7. **통신 거리**
- **Bluetooth Classic**:
  - 전송 거리는 일반적으로 **10미터에서 100미터** 범위입니다. 장치의 전력 클래스에 따라 거리가 달라집니다.
  
- **BLE**:
  - BLE 5.0에서는 통신 범위가 크게 확장되어 **100미터 이상**까지 도달할 수 있으며, **LE Coded PHY**를 사용하면 이보다 더 긴 거리에서 통신이 가능합니다.

### 8. **프로파일**
- **Bluetooth Classic**:
  - 다양한 **프로파일**을 지원하여 여러 유형의 데이터 및 애플리케이션을 처리합니다. 예: **SPP**, **A2DP**, **HFP**, **FTP** 등.
  
- **BLE**:
  - **GATT 프로파일**을 중심으로 **서비스(Service)**와 **특성(Characteristics)**을 통해 데이터 교환을 처리합니다. 특정 용도에 맞춘 서비스가 있으며, 예를 들어 **Heart Rate Service**, **Battery Service** 등이 있습니다.

### 요약

 




BLE는 **저전력**과 **간헐적인 통신**에 중점을 두고, Bluetooth Classic은 **고대역폭**과 **지속적인 데이터 스트리밍**을 필요로 하는 경우에 더 적합합니다.

728x90
반응형