CS/네트워크

블루투스(Bluetooth)의 동작 원리

Ynghan 2023. 5. 17. 23:56
블루투스는 주파수 무선 통신이다.
  • Hz(헤르츠) = 주파수 = 진동수 : 일정한 시간당 진동하는 수
모든 물질은 고유의 진동수가 있다.

모든 물질은 원자로 이루어져 있는데 원자 내에서 진동이 일어나게 되는데 그게 물체의 고유한 진동수가 된다.

국내 전파자 흡수율(SAR) 규제 대상 기준은 세계에서도 엄격하게 유지, 관리되고 있다.

블루투스 이어폰은 규제 대상 기준이 되는 20밀리와트(mW) 이상의 시스템에 해당되지 않는 소출력 비신고 기기로, 인체 보호 수준 대비 낮아 안전합니다.

인체에 해롭지 않다고 알려진 ISM 대역인 2.4GHz(1초에 24억번 진동)에서 2.48GHz 사용.

모든 기기들이 2.4GHz 대역 사용함.

다른 장치와의 간섭을 막기위해 밴드 아래쪽에 2MHz, 위쪽에 3.5MHz의 가드 밴드를 둠.
그리고 블루투스는 그 구역에서 79개의 채널을 예약함.
각 채널의 대역폭을 1MHz로 함. 2402 + k (MHz) (k = 0, 1, 2, ... , 78)

그래도 간섭이 일어남.

79개의 채널을 1초에 1600번씩 왔다갔다 하면서 통신이 원활한 채널을 찾게된다.(주파수 호핑 방식 : Frequency Hopping 방식)

2개의 모듈이 만나면 서로 일정한 진동을 보내서 확인한다.

연결이 되면 암호화된 메세지를 주고 받는다(대칭or비대칭). 이 과정에서 4자리 비밀번호를 입력한다.

비밀번호가 맞으면 페어링을 시작한다.

둘 간의 피코넷이라고 하는 조그만한 네트워크가 만들어지게 된다. 이 와중에도 계속 1600번씩 이동하면서 원할한 통신을 찾도록 채널을 찾는다.

 

블루투스의 링크와 네트워크

블루투스 연결방식

  • 1대1 연결방식
  • 1대다 연결방식
  • 하나의 피코넷 안에서 그물망처럼 연결되어 있는 방식
  • 링크 설정
    • 마스터(Master) - 슬레이브(Slave) 방식
  • 피코넷(Piconet) : 1 대의 마스터는 7대까지의 슬레이브를 연결
    • 마스터 유닛은 기지국 역할
      • 마스터 유닛은 피코넷 내부의 슬레이브 유닛들의 연결 상태(Connection State)를
        Active, Sniff, Hold, Park의 네 가지로 관리합니다.
    • 슬레이브 유닛들은 마스터의 클럭에 동기화
      • 슬레이브 유닛은 마스터 유닛의 호핑 시퀀스에 따라가 통신 수행
    • 항상 마스터와 슬레이브 사이의 통신만이 가능
    • 슬레이브 사이에 직접적인 연결은 불가능
  • 스캐터넷(Scatternet) : 피코넷이 여러 개 모여 계층적이고 규모가 큰 네트워크 구성

 

또 다른 통신 방식 : 시분할 이중 방식 : TDD(Time Division Duplex)

  • 1Mhz의 대역폭을 지닌 각각의 채널들은 625µs의 타임슬롯(Time Slot)으로 할당되어 있습니다.
  • 타임 슬롯을 통해 패킷이 전송이 되는데, 길이가 긴 패킷의 경우 5개까지의 슬롯으로 나누어져 전송되기도 합니다.

 

WLAN(ex. WIFI)과 블루투스 사이에는 어느 정도의 간섭이 있다.
블루투스보다 와이파이가 더 좋지않나요?

 

블루투스와 와이파이 비교

둘이 근본 방식이 다르다.

블루투스

  • 무선 USB를 대체하기 위해서 나옴
  • (근거리에 특화)

와이파이

  • 와이파이는 이더넷 케이블을 대체하기 위해서 나옴
  • (근장거리)
  • 와이파이는 연결을 위한 구매, 결합 과정이 복잡함.

 

둘다 각자의 목적에 맞게 특화되어 있다.

 

대역


둘 다 대역은 2.4GHz(*ISM 밴드)를 사용한다.

ISM 밴드(2400 ~ 2483.5MHz)의 특징은 별도의 라이센스를 받을 필요가 없다.

속도

블루투스 속도 : 2Mbps
와이파이 속도 : 1300Mbps


거리

블루투스 : 10m 내외
와이파이 : 100m 내외


보안

블루투스 : 취약 but 거리가 가까워 체감상 안전
와이파이 : 강력 but 거리가 멀어 체감상 위험


기기 연결 개수

블루투스 : 제한된 수의 연결 가능
와이파이 : 많은 연결 가능 


버전 별 블루투스

1.0(1999) : 기기의 제조사가 다르면 호환이 안되는 문제. 보안 취약

2.0(2004) : 느렸던 속도에서 초당 3Mbit까지 올라가는 EDR 지원. 장치간 호환성이 많이 개선.

3.0(2009) : 속도, 안정성 향상, 블루투스간에 사진, 그림, 동영상 등을 주고받을 수 있게 다양한 약속들이 후가, 전력 소모량 감소.

4.0(2010) : 전력소모 개선, LTE 통신이 나오면서 블루투스와 간섭이 심해지는 문제 개선, 거리가 멀어져서 서로 연결이 해제됬을때 자동으로 다시 연결하는 기술 생김.

5.0(2016) : 전송속도, 통신거리 등이 IOT 사물 인터넷 시대에 초점이 맞추어져서 업데이트

 

블루투스 사양

블루투스의 링크방식

SCO 링크

  • 625µs의 일정한 시간 간격으로 예약된 타임 슬롯을 통해 데이터를 통신한다.
  • 대칭적 암호화 방식이다.
  • 마스터와 슬레이브 간의 포인트-포인트 방식으로 연결됩니다.
  • 한번 전송된 SCO 데이터 패킷은 재전송 되지 않습니다.
  • 시간적 요인이 중요하고 신뢰성은 크게 요구되지 않는 데이터 전송에 적합하다.
  • 대부분 음성 채널로 사용된다.
  • 실제로 하나의 타임 슬롯 길이인 625µs는 음성 신호 속도인 64kbps에 맞는 수치이다.

ACL 링크

  • 예약된 타임 슬롯이 존재하지 않는다.
  • 포인트 - 멀티포인트의 연결
  • 하나의 마스터와 슬레이브 사이에는 ACL 링크가 반드시 한 개만 설정 가능하다.
  • 데이터 재전송이 지원되어 신뢰성이 보장된다.
  • 하나의 피코넷 내부의 모든 슬레이브에게 데이터를 보내는 브로드캐스팅(Broadcasting)도 가능하다.
  • 일반적인 데이터 통신에 이용된다.

 

블루투스에 사용되는 패킷도 링크의 종류(SCO/ACL)에 따라 다릅니다.

보통 FEC 방식CRC의 유무에 따라 다양한 패킷으로 구분됩니다.

블루투스 패킷의 종류는 주로 블루투스 프로토콜 스택의 계층 구조에 따라 구분됩니다. 블루투스 프로토콜 스택은 일반적으로 물리 계층, 링크 계층, L2CAP(Logical Link Control and Adaptation Protocol) 계층, 프로필 및 애플리케이션 계층으로 구성됩니다. 각 계층은 특정 기능을 수행하고 특정 유형의 패킷을 처리합니다.

블루투스 패킷 종류의 구분 기준은 다음과 같을 수 있습니다:

물리 계층 패킷: 블루투스에서 사용되는 무선 통신 기술에 따라 다양한 물리 계층 패킷이 있을 수 있습니다.

링크 계층 패킷: 블루투스에서 링크 설정, 링크 제어 및 데이터 전송을 담당하는 링크 계층 패킷이 있습니다.
예를 들어, 스캔 요청 패킷, 연결 요청 패킷, 데이터 패킷 등이 있습니다.

L2CAP 패킷(Logical Link Control and Adaptation Protocol): L2CAP 계층은 블루투스 장치 간에 논리적인 데이터 전송을 관리합니다.
L2CAP 패킷은 L2CAP 계층에서 사용되는 패킷으로, 데이터 전송, 연결 설정 등을 포함할 수 있습니다.

프로필 패킷: 블루투스 프로파일
  • FEC(Forward Error Correction)
    • 전송 중에 발생할 수 있는 오류를 감지하고 수정하는 방법
    • FEC 방식은 오류 검출 및 수정에 대한 메커니즘을 포함하고 있기 때문에 패킷 손실을 감소시키는 데 도움을 준다.
  • CRC(Cyclic Redundancy Check)
    • 오류 감지 기술 중 하나이다.
    • 데이터 블록에 대한 체크섬을 생성한다.
    • 수신측은 수신된 데이터와 체크섬을 비교하여 오류를 감지한다.

SCO 패킷

  • 대부분 64kbps이고 대칭 모드만 지원합니다.

ACL 패킷

  • 패킷의 종류에 따라 전송 속도가 다양하다.
  • 비대칭 모드에서 최고 723.2 kbps
  • 대칭 모드에서 최고 433.9 kbps까지 가능하다.

하나의 데이터가 실제로 무선으로 전송이 될 때까지 여러 단계의 비트 프로세스를 거치게 된다.

<비트 프로세스에 대한 규정>은 헤더와 페이로드에 따라 다르다.

'CS > 네트워크' 카테고리의 다른 글

네트워크 프록시 (Network Proxy)  (0) 2024.03.29
OSI 7 계층  (0) 2024.03.28