KR20230051501A - Ble 접속 지향 서비스들에 대한 제어 절차 가속화 - Google Patents

Ble 접속 지향 서비스들에 대한 제어 절차 가속화 Download PDF

Info

Publication number
KR20230051501A
KR20230051501A KR1020237005211A KR20237005211A KR20230051501A KR 20230051501 A KR20230051501 A KR 20230051501A KR 1020237005211 A KR1020237005211 A KR 1020237005211A KR 20237005211 A KR20237005211 A KR 20237005211A KR 20230051501 A KR20230051501 A KR 20230051501A
Authority
KR
South Korea
Prior art keywords
bluetooth device
packet
bluetooth
control procedure
value
Prior art date
Application number
KR1020237005211A
Other languages
English (en)
Inventor
야니브 마차니
리오르 게르시
야니브 웨이즈만
Original Assignee
텍사스 인스트루먼츠 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텍사스 인스트루먼츠 인코포레이티드 filed Critical 텍사스 인스트루먼츠 인코포레이티드
Publication of KR20230051501A publication Critical patent/KR20230051501A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • H04W76/25Maintenance of established connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0215Traffic management, e.g. flow control or congestion control based on user or device properties, e.g. MTC-capable devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

제1 블루투스 디바이스(100)는 제1 블루투스 디바이스(100)와 제2 블루투스 디바이스(101) 사이의 블루투스 접속의 블루투스 접속 이벤트(102) 동안 제2 블루투스 디바이스(101)로부터 제어 절차 패킷(107)을 수신하도록 구성된 송수신기(111)를 포함한다. 제1 블루투스 디바이스(100)는 또한 송수신기(111)에 결합되고, 제1 블루투스 디바이스(100)가 제2 블루투스 디바이스(101)에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 제어 절차 패킷(107)에 대한 응답 패킷(116)의 더 많은 데이터(MD) 비트(118)를 제1 값(119)으로 설정하도록 구성된 제어기(112)를 포함한다. 제1 값(119)은 블루투스 접속 이벤트(102)를 개방으로 유지하는 것에 대응한다. 송수신기(111)는 블루투스 접속 이벤트(102) 동안 응답 패킷(116)을 제2 블루투스 디바이스(101)에 전송하도록 추가로 구성된다.

Description

BLE 접속 지향 서비스들에 대한 제어 절차 가속화
본 개시내용의 적어도 하나의 예에 따르면, 제1 블루투스 디바이스(BLUETOOTH device)는 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속(BLUETOOTH connection)의 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제어 절차 패킷(control procedure packet)을 수신하도록 구성된 송수신기(transceiver)를 포함한다. 제1 블루투스 디바이스는 또한 송수신기에 결합되고, 제1 블루투스 디바이스가 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(more data)(MD) 비트를 제1 값으로 설정하도록 구성된 제어기를 포함한다. 제1 값은 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응한다. 송수신기는 블루투스 접속 이벤트 동안 응답 패킷을 제2 블루투스 디바이스에 전송하도록 추가로 구성된다.
적어도 하나의 예에서, 응답 패킷의 데이터 필드는 비어 있다.
적어도 하나의 예에서, 제어 절차 패킷의 MD 비트는 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정된다.
적어도 하나의 예에서, 송수신기는 응답 패킷의 MD 비트가 제1 값으로 설정되어 있는 것에 기초하여 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제2 패킷을 수신하도록 추가로 구성된다.
적어도 하나의 예에서, 제어기는 블루투스 접속 이벤트 동안 및 응답 패킷에 후속하여 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하도록 구성되고, 제2 패킷은 제어 절차 패킷에 응답하는 제어 정보를 포함한다.
적어도 하나의 예에서, 제1 블루투스 디바이스는 제1 블루투스 디바이스가 제2 블루투스 디바이스에 전송할 데이터를 저장하는 송신 데이터 큐(transmission data queue)를 더 포함하고, 제어기는 송신 데이터 큐가 비어 있을 때 응답 패킷의 MD 비트를 제1 값으로 설정하도록 구성된다.
적어도 하나의 예에서, 제1 값은 1이다.
본 개시내용의 적어도 하나의 예에 따르면, 컴퓨터 프로그램 제품은 컴퓨터 판독가능 명령어들을 포함하고, 컴퓨터 판독가능 명령어들은 제1 블루투스 디바이스의 프로세서에 의해 실행될 때, 제1 블루투스 디바이스로 하여금, 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속의 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하게 한다. 컴퓨터 판독가능 명령어들은 또한 제1 블루투스 디바이스로 하여금, 제1 블루투스 디바이스가 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(MD) 비트를 제1 값으로 설정하게 한다. 제1 값은 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응한다. 컴퓨터 판독가능 명령어들은 또한 제1 블루투스 디바이스로 하여금, 블루투스 접속 이벤트 동안 응답 패킷을 제2 블루투스 디바이스에 전송하게 한다.
적어도 하나의 예에서, 응답 패킷의 데이터 필드는 비어 있다.
적어도 하나의 예에서, 제어 절차 패킷의 MD 비트는 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정된다.
적어도 하나의 예에서, 컴퓨터 판독가능 명령어들은 제1 블루투스 디바이스로 하여금, 응답 패킷의 MD 비트가 제1 값으로 설정되는 것에 기초하여 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제2 패킷을 수신하게 하도록 추가로 구성된다.
적어도 하나의 예에서, 컴퓨터 판독가능 명령어들은 제1 블루투스 디바이스로 하여금, 블루투스 접속 이벤트 동안 및 응답 패킷에 후속하여 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하게 하도록 추가로 구성된다. 제2 패킷은 제어 절차 패킷에 응답하는 제어 정보를 포함한다.
적어도 하나의 예에서, 컴퓨터 판독가능 명령어들은 제1 블루투스 디바이스로 하여금, 제1 블루투스 디바이스의 송신 데이터 큐가 비어 있을 때 응답 패킷의 MD 비트를 제1 값으로 설정하게 하도록 추가로 구성된다.
적어도 하나의 예에서, 제1 값은 1이다.
본 개시내용의 적어도 하나의 예에 따르면, 제1 블루투스 디바이스에 의해 수행되는 방법은 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속의 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하는 단계를 포함한다. 방법은 제1 블루투스 디바이스가 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(MD) 비트를 제1 값으로 설정하는 단계를 더 포함한다. 제1 값은 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응한다. 방법은 블루투스 접속 이벤트 동안 응답 패킷을 제2 블루투스 디바이스에 전송하는 단계를 더 포함한다.
적어도 하나의 예에서, 응답 패킷의 데이터 필드는 비어 있다.
적어도 하나의 예에서, 제어 절차 패킷의 MD 비트는 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정된다.
적어도 하나의 예에서, 방법은 응답 패킷의 MD 비트가 제1 값으로 설정되어 있는 것에 기초하여 블루투스 접속 이벤트 동안 제2 블루투스 디바이스로부터 제2 패킷을 수신하는 단계를 더 포함한다.
적어도 하나의 예에서, 방법은 블루투스 접속 이벤트 동안 및 응답 패킷에 후속하여 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하는 단계를 더 포함하고, 제2 패킷은 제어 절차 패킷에 응답하는 제어 정보를 포함한다.
적어도 하나의 예에서, 방법은 제1 블루투스 디바이스의 송신 데이터 큐가 비어 있을 때 응답 패킷의 MD 비트를 제1 값으로 설정하는 단계를 더 포함한다.
다양한 예들의 상세한 설명을 위해, 이제 첨부 도면들이 참조될 것이다.
도 1은 다양한 예들에 따른, 블루투스 접속 이벤트 동안 제2 블루투스 디바이스에 통신가능하게 결합되고 그와 통신하는 제1 블루투스 디바이스의 블록도이다.
도 2는 다양한 예들에 따른 패킷 스트림의 도면이다.
도 3은 다양한 예들에 따른 타이밍도이다.
도 4는 다양한 예들에 따른 타이밍도이다.
도 5는 다양한 예들에 따른 방법의 흐름도이다.
블루투스 저에너지(BLUETOOTH low energy)(BLE) 패킷들에서, (BLE 패킷 헤더의 MD 비트 필드에서의) 더 많은 데이터(MD) 비트 MD 비트는 디바이스가 전송할 추가 데이터를 갖는지를 표시한다. 중앙 및 주변 디바이스들로부터의 패킷들 내의 MD 비트들이, 디바이스들이 전송할 더 많은 데이터를 갖지 않음을 표시할 때, 디바이스들 사이의 현재 접속 이벤트가 폐쇄되고, 그에 의해 접속 이벤트 동안 추가 패킷들의 송신을 방지한다. 현재, 복잡하고 값비싼 소프트웨어 및/또는 하드웨어 없이, 주변 및 중앙 디바이스들은 주변 및 중앙 디바이스들이 제어 절차 요청을 포함하는 패킷에 응답하도록 요구되는 시간 기간(예를 들어, 프로토콜에 의해 특정되는 프레임간 간격(interframe spacing)) 내에 중앙 디바이스 또는 주변 디바이스로부터의 제어 절차 요청에 응답할 수 없다. 따라서, 주변 또는 중앙 디바이스가 제어 절차 요청을 수신하고, 주변 또는 중앙 디바이스가 전송할 더 많은 데이터를 갖지 않을 때, 주변 또는 중앙 디바이스는 제어 절차 요청에 응답하여 주변 또는 중앙 디바이스가 전송하는 패킷의 MD 비트를 설정하여 주변 또는 중앙 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시할 것이다. 주변 디바이스 및 중앙 디바이스가 전송할 추가 데이터를 갖지 않을 때, 이것은 주변 디바이스 또는 중앙 디바이스가 제어 절차 요청에 실질적으로 응답하지 않고 접속 이벤트를 폐쇄할 것이다. 이 시나리오에서, 주변 디바이스 또는 중앙 디바이스는 제어 절차 요청에 실질적으로 응답하기 위해 다음 접속 이벤트까지 대기해야 하며, 이는 지연을 야기한다.
본 명세서에 설명된 예들은 주변 디바이스뿐만 아니라 중앙 디바이스가 전송할 더 많은 데이터를 갖는지에 관계없이 접속 이벤트가 폐쇄되는 것을 방지하기 위해 신규한 방식으로 MD 비트를 이용하여 제어 절차들(예를 들어, BLE 스택 제어 절차들 및/또는 애플리케이션 레벨에서의 제어 절차들)을 가속화한다. 일부 예들에서, 다른 디바이스(예를 들어, 개시 디바이스)에 의해 개시된 제어 절차에 응답하는 디바이스(예를 들어, 응답 디바이스)(예를 들어, 주변 디바이스 또는 중앙 디바이스)는, 응답 디바이스가 접속 이벤트를 유지하기 위해 개시 디바이스에 전송할 더 많은 데이터(예를 들어, 이용가능한 및/또는 백로그된(backlogged) 데이터)를 갖지 않을 때에도 응답 디바이스가 전송할 더 많은 데이터를 갖는다는 것을 표시하도록 MD 비트를 설정하여, 응답 디바이스가 제어 절차 요청에 실질적으로 응답하기 위해 다음 접속 이벤트까지 대기해야 하는 대신에 제어 절차 요청이 전송되는 접속 이벤트 동안 제어 절차 요청에 실질적으로 응답할 수 있게 한다. 이것은 제어 절차들의 완료 시간을 실질적으로 감소시킨다.
도 1은 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 블루투스 접속의 블루투스 접속 이벤트(102)(예를 들어, 단일 블루투스 접속 이벤트) 동안 블루투스 디바이스(101)(예를 들어, 제2 블루투스 디바이스)에 통신가능하게 결합되고 그와 통신하는 예시적인 블루투스 디바이스(100)(예를 들어, 제1 블루투스 디바이스)의 블록도이다. 일부 예들에서, 블루투스 디바이스(100)는 주변 디바이스이고, 블루투스 디바이스(101)는 중앙 디바이스이다. 다른 예들에서, 블루투스 디바이스(100)는 중앙 디바이스이고, 블루투스 디바이스(101)는 주변 디바이스이다. 일부 예들에서, 블루투스 디바이스(100) 및 블루투스 디바이스(101)는 BLE 디바이스들이고, 블루투스 접속 이벤트(102)는 블루투스 디바이스(101)와 블루투스 디바이스(100) 사이의 BLE 접속의 BLE 접속 이벤트이다.
본 명세서에서 이용된 바와 같이, 용어 블루투스 접속 이벤트(102)(예를 들어, BLE 접속 이벤트)는 중앙 디바이스와 주변 디바이스 사이의 접속 구간(connection interval) 동안 발생하는 접속 기간(connection period)을 지칭한다. 접속 구간은, 중앙 디바이스가 데이터 물리적 채널(Data Physical Channel)(PDU)을 주변에 송신하기 시작하는 제1 앵커 포인트(anchor point)에서 시작하고, 중앙 디바이스가 PDU를 송신하기 시작하는 후속 앵커 포인트(제1 앵커 포인트 직후의 앵커 포인트) 이전에 종료한다.
블루투스 디바이스(101)는 송수신기(103) 및 송수신기(103)에 결합된 제어기(105)를 포함한다. 제어기(105)는 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(100)에 전송하기 위한 하나 이상의 패킷을 생성, 생산, 구성 및/또는 제공하도록 구성된 패킷 생성기(106)를 포함한다. 예를 들어, (예를 들어, 블루투스 디바이스(100)에) 전송하기 위해 패킷 생성기(106)에 의해 생성, 생산, 구성 및/또는 제공된 하나 이상의 패킷은 (제어 절차 패킷(107)과 같은) 하나 이상의 제어 절차 패킷을 포함할 수 있다.
본 명세서에서 이용된 바와 같이, 용어 제어 절차 패킷은 제어 절차(예를 들어, 암호화 절차)에 대응하는 제어 정보(예를 들어, 암호화 요청)를 포함하는 패킷(예를 들어, 제어 절차 패킷(107))을 지칭한다. 제어 절차 패킷(예를 들어, 제어 절차 패킷(107))은 국부적으로 생성된 제어 페이로드(예를 들어, 제어기(105)와 같은 제어기에 의해 생성된 제어 페이로드) 또는 상위 계층(예를 들어, BLE 호스트 또는 BLE 애플리케이션)으로부터 제공된 페이로드를 포함한다. 제어 절차 패킷(예를 들어, 제어 절차 패킷(107))이 상위 계층으로부터 제공된 페이로드를 포함하는 예들에서, 제어기(예를 들어, 제어기(105))는 제어 절차 패킷을 제공하기 위해 링크 계층 데이터 PDU 내에 페이로드를 랩핑(wrap)한다. 제어 절차 패킷(예를 들어, 제어 절차 패킷(107))이 상위 계층으로부터 제공된 페이로드를 포함하는 예들에서, 제어 절차 패킷은 링크 계층에서 데이터 패킷으로서 보여진다.
일부 예들에서, 제어 절차 패킷(107)에 대응하는 제어 절차는 블루투스 디바이스(101)에 의해 개시된다. 제어 절차 패킷(107)에 대응하는 제어 절차가 블루투스 디바이스(101)에 의해 개시되는 일부 예들에서, 제어 절차 패킷(107)은 제어 절차의 제1 패킷이다.
다른 예들에서, 제어 절차 패킷(107)에 대응하는 제어 절차는 블루투스 디바이스(100)에 의해 개시된다. 이러한 예들에서, 블루투스 디바이스(100)는 블루투스 디바이스(101)가 제어 절차 패킷(107)을 전송하기 전에 제어 절차 패킷(도시되지 않음)을 블루투스 디바이스(101)에 전송한다.
제어 절차 패킷(107)은 MD 필드(108)와 같은 필드들을 포함한다. 도 1은 제어 절차 패킷(107)에서의 MD 필드(108)만을 도시하지만, 제어 절차 패킷(107)은 데이터 필드와 같은 하나 이상의 추가 필드를 포함할 수 있다. 일부 예들에서, 블루투스 디바이스(101)는 (예를 들어, 제어 절차 패킷(107)이 생성될 때) 블루투스 디바이스(100)에 전송할 데이터를 갖지 않는다. 이러한 예들에서, 제어기(105)는 제어 절차 패킷(107)의 MD 필드(108)의 MD 비트(109)를 (예를 들어, 제어 절차 패킷(107)이 생성될 때) 블루투스 디바이스(101)가 블루투스 디바이스(100)에 전송할 데이터를 갖지 않는다는 것에 기초하고/하거나 이를 표시하는 제2 값(110)으로 설정하도록 구성된다. 제2 값(110)은 블루투스 접속 이벤트(102)를 종료/폐쇄하는 것에 대응한다. 예를 들어, 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(101)와 블루투스 디바이스(100) 사이의 패킷 교환의 연속적인 패킷들이 제2 값(110)으로 설정된 MD 비트를 포함하는 경우, 블루투스 접속 이벤트(102)는 연속적인 패킷들의 MD 비트들이 제2 값(110)으로 설정되는 것에 응답하여 종료/폐쇄할 것이다. 블루투스 디바이스(101)는 송수신기(103)를 이용하여 블루투스 접속 이벤트(102) 동안 제어 절차 패킷(107)을 (예를 들어, 블루투스 디바이스(100)에) 송신하도록 구성된다. 일부 예들에서, 제어 절차 패킷(107)은 블루투스 접속 이벤트(102)의 앵커 포인트에서 전송된다. 다른 예들에서, 제어 절차 패킷(107)은 블루투스 접속 이벤트(102)의 비-앵커 포인트(non-anchor point)에서 전송된다.
블루투스 디바이스(100)는 송수신기(111) 및 송수신기(111)에 결합된 제어기(112)를 포함한다. 도 1에 도시된 예에서, 블루투스 디바이스(100)는 또한 제어기(112)에 결합되고 프로세서 판독가능 명령어들(114)을 저장하는 메모리(113)를 포함한다. 일부 예들에서, 제어기(112)는 프로세서 판독가능 명령어들(114)을 실행하여 본 명세서에 설명된 하나 이상의 동작을 수행하도록 구성된다. 블루투스 디바이스(100)는 또한 제어기(112)에 결합되고 블루투스 디바이스(100)에 의한 송신을 위한 데이터를 저장하도록 구성된 송신 데이터 큐(115)를 포함한다.
송수신기(111)는 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(101)로부터 제어 절차 패킷(107)을 수신하도록 구성된다. 제어기(112)는 제어 절차 패킷(107)에 응답하여 응답 패킷(116)을 생성하도록 구성된다. 응답 패킷(116)은 MD 필드(108)를 포함하고, 데이터 필드(117)와 같은 하나 이상의 다른 필드를 포함할 수 있다.
제어기(112)는 (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로(예를 들어, 그에 관계없이) 응답 패킷(116)의 MD 필드(108)의 MD 비트(118)를 제1 값(119)으로 설정하도록 구성된다. 예를 들어, 제어기(112)는 응답 패킷(116)이 생성될 때 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖지 않는 경우에도 제1 값(119)으로 설정된 MD 비트(118)를 포함하는 응답 패킷(116)을 생성하도록 구성되는 응답 패킷 생성기(121)를 포함한다. 블루투스 디바이스(100)는 송수신기(111)를 이용하여, 블루투스 접속 이벤트(102) 동안 응답 패킷(116)을 블루투스 디바이스(101)에 전송하도록 추가로 구성된다.
제1 값(119)은 블루투스 접속 이벤트(102)를 개방으로 유지하는 것에 대응한다. 일부 예들에서, 제1 값(119)은 1이고, 제2 값(110)은 0이다.
블루투스 디바이스(100)가 응답 패킷(116)이 생성될 때 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 설정한다는 것은, 블루투스 디바이스(100)가 응답 패킷(116)이 생성될 때 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지에 관계없이 응답 패킷(116)의 MD 비트(118)를 설정하는 것을 의미한다. 예를 들어, 데이터 필드(117)가 비어 있는 예들에서, 블루투스 디바이스(100)는 응답 패킷(116)의 데이터 필드(117)가 비어 있더라도 MD 비트(118)를 제1 값(119)으로 설정하도록 구성된다. 대안적으로 또는 추가적으로, (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)의 송신 데이터 큐(115)가 비어 있는 예에서, 블루투스 디바이스(100)는 MD 비트(118)를 제1 값(119)으로 설정하도록 구성된다.
일부 예들(예를 들어, 제1 예들)에서, 블루투스 디바이스(100)(예를 들어, 제어기(112))는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있거나 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았을 때; 및 2) 응답 패킷(116)이 제어 절차를 완료하지 않을 때, (예를 들어, 그것을 결정 또는 검출하는 것에 기초하여 또는 그에 응답하여) (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 설정하도록 추가로 구성된다. 제1 예들 중 일부에서, 응답 패킷(116)을 생성하기 전에, 제어기(112)는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지; 및 2) 응답 패킷(116)이 제어 절차를 완료할 것인지를 결정하도록 구성된다.
제어기(112)가 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지를 결정하도록 구성되는 일부 예들에서, 제어기(112)는 블루투스 디바이스(101)로부터의 제어 절차 패킷(예를 들어, 제어 절차 패킷(107))의 포맷 및/또는 내용에 기초하여 그리고 제어 절차의 패킷들을 정의하는 관련 프로토콜에 따라, 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지를 결정하도록 구성된다. 예를 들어, 제어기(112)는 제어 절차 패킷(107)의 포맷 및/또는 내용에 기초하여 제어 절차 패킷(107)이 제어 절차 패킷이라고 결정하기 위해 제어 절차 패킷(107)을 적어도 부분적으로 파싱할 수 있다. 제어기(112)는 제어 절차의 패킷들을 정의하는 관련 프로토콜에 기초하여 제어 절차 패킷(107)이 제어 절차를 완료하지 않은 것으로 추가로 결정할 수 있다(예를 들어, 제어기(112)는 제어 절차 패킷(107)이 관련 프로토콜에 의해 정의된 제어 절차의 마지막 패킷에 대응하지 않는 것으로 결정할 수 있다). 따라서, 제어기(112)는 블루투스 디바이스(101)로부터의 제어 절차 패킷(예를 들어, 제어 절차 패킷(107))의 포맷 및/또는 내용에 기초하여 그리고 제어 절차의 패킷들을 정의하는 관련 프로토콜에 따라, 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지를 결정하도록 구성될 수 있다.
일부 예들에서, 제어기(112)가 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있고/있거나 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았다고 결정할 때, 제어기(112)는 응답 패킷(116)이 제어 절차를 실질적으로 완료할지를 결정하도록 추가로 구성된다. 제어기(112)는 응답 패킷(116)이 제어 절차 패킷(107)에 실질적으로 응답하는지 및/또는 관련 프로토콜이 제어 절차의 완료가 후속 패킷들(예를 들어, 응답 패킷(116)에 후속하는 패킷들)을 수반한다는 것을 표시하는지에 기초하여, 응답 패킷(116)이 제어 절차를 실질적으로 완료할지를 결정하도록 구성될 수 있다. 예를 들어, 응답 패킷(116)은 제어 절차 패킷(107)에 표시된 제어 절차에 실질적으로 응답하지 않을 수 있다. 예를 들어, 블루투스 디바이스(100)는 제어 절차 패킷(107)을 완전히 처리(예를 들어, 파싱)하고/하거나 블루투스 디바이스(100)가 제어 절차 패킷(107)에 응답하기 위해 설정된(예를 들어, 프로토콜에 의해 특정된 프레임간 간격에 따라 요구되는) 시간 기간 내에 제어 절차에 대한(예를 들어, 제어 절차 패킷(107)에 대한) 실질적인 응답을 생성하기에 충분한 시간을 갖지 않을 수 있다. 따라서, 이 예에서, 제어 절차 패킷(107)에 의해 표시된 제어 절차는 블루투스 디바이스(101)가 응답 패킷(116)을 수신하고 처리하는 것에 응답하여 완료되지 않을 것이다. 이 예에서, 제어기(112)는 제어 절차 패킷(107)에 대한 실질적인 응답을 포함하지 않는 응답 패킷(116)에 기초하여 응답 패킷(116)이 제어 절차를 완료하지 않을 것이라고 결정하도록 구성될 수 있다. 대안적으로 또는 추가적으로, 다른 예에서, 관련 프로토콜은 후속 패킷들(예를 들어, 응답 패킷(116)에 후속하는 패킷들)을 포함하도록 제어 절차를 정의할 수 있다. 이 예에서, 제어기(112)는 관련 프로토콜에 기초하여 응답 패킷(116)이 제어 절차를 완료하지 않을 것이라고 결정하도록 구성될 수 있다.
따라서, 제1 예들 중 적어도 일부에서, 제어기(112)는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았다는 것; 및 2) 응답 패킷(116)이 제어 절차를 완료하지 않을 것이라는 것을 결정 또는 검출하는 것에 기초하여 또는 그에 응답하여 (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 설정하도록 추가로 구성된다.
일부 다른 예들(예를 들어, 제2 예들)에서, 블루투스 디바이스(100)(예를 들어, 제어기(112))는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있거나 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았을 때; 2) 응답 패킷(116)이 제어 절차를 완료하지 않을 때; 및 3) 블루투스 디바이스(100)가 블루투스 디바이스(101)에게 관련 프로토콜에 의해 정의된 바와 같은 제어 절차에 대응하는 제어 절차 패킷을 전달해야 하는 입장에 있을 때, (예를 들어, 그것을 결정 또는 검출하는 것에 기초하여 또는 그에 응답하여) (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 설정하도록 추가로 구성된다. 제2 예들 중 일부에서, 응답 패킷(116)을 생성하기 전에, 제어기(112)는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지; 2) 응답 패킷(116)이 제어 절차를 완료할 것인지; 및 3) 블루투스 디바이스(100)가 블루투스 디바이스(101)에게 관련 프로토콜에 의해 정의된 바와 같은 제어 절차에 대응하는 제어 절차 패킷을 전달해야 하는 입장에 있는지를 결정하도록 구성된다.
제어기(112)가 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지를 결정하도록 구성되는 일부 예들에서, 제어기(112)는 전술한 바와 같이 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있는지 및/또는 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았는지를 결정하도록 구성된다. 일부 예들에서, 제어기(112)가 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100)에 의해) 개시되고 있고/있거나 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았다고 결정할 때, 제어기(112)는 응답 패킷(116)이 전술한 바와 같이 제어 절차를 실질적으로 완료할지를 결정하도록 추가로 구성된다. 일부 예들에서, 제어기(112)가 응답 패킷(116)이 제어 절차를 실질적으로 완료하지 않을 것이라고 결정할 때, 제어기(112)는 블루투스 디바이스(100)가 블루투스 디바이스(101)에게 관련 프로토콜에 기초하여 제어 절차에 대응하는 제어 절차 패킷을 전달해야 하는 입장에 있는지를 결정하도록 추가로 구성된다. 예를 들어, 관련 프로토콜은 블루투스 디바이스(100)가 블루투스 디바이스(101)에게 제어 절차를 완료하기 위해 제어 절차에 대응하는 제어 절차 패킷을 전달해야 하는 입장에 있음을 표시할 수 있다.
따라서, 제2 예들 중 적어도 일부에서, 제어기(112)는, 1) 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이의 제어 절차가 (예를 들어, 블루투스 디바이스(100) 또는 블루투스 디바이스(101)에 의해) 이전에 개시되었고 완료되지 않았다는 것; 2) 응답 패킷(116)이 제어 절차를 완료하지 않을 것이라는 것; 및 3) 블루투스 디바이스(100)가 블루투스 디바이스(101)에게 관련 프로토콜에 의해 정의된 바와 같은 제어 절차에 대응하는 제어 절차 패킷을 전달해야 하는 입장에 있다는 것을 결정 또는 검출하는 것에 기초하여 또는 그에 응답하여 (예를 들어, 응답 패킷(116)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 설정하도록 추가로 구성된다. 블루투스 디바이스(101)는 블루투스 접속 이벤트(102) 동안 응답 패킷(116)을 수신하도록 구성된다. 제1 값(119)으로 설정된 MD 비트(118)를 갖는 응답 패킷(116)을 수신하는 것에 응답하여, 블루투스 디바이스(101)(예를 들어, 제어기(105))는 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(100)에 전송하기 위한 제2 패킷(120)을 생성하도록 구성된다. 일부 예들에서, 제2 패킷(120)은 비어 있다(예를 들어, 어느 것도 제어 정보도 데이터도 포함하지 않음). 이러한 예들에서, 제어기(105)는 (예를 들어, 제2 패킷(120)이 생성될 때) 블루투스 디바이스(101)가 블루투스 디바이스(100)에 전송할 데이터를 갖지 않는 것에 기초하여 MD 비트(122)를 제2 값(110)으로 설정하도록 구성된다.
일부 예들에서, 블루투스 디바이스(101)는 응답 패킷(116)이 제2 값(110)으로 설정된 MD 비트(118)를 포함했다면 제2 패킷(120)을 생성하고 전송하지 않도록 구성될 수 있다. 예를 들어, 블루투스 디바이스(101)는 블루투스 디바이스(100)에 전송할 추가 데이터를 갖지 않을 수 있다. 이러한 예들에서, 블루투스 접속 이벤트(102)는 블루투스 디바이스(101)가 제2 값(110)으로 설정된 MD 비트(118)를 갖는 응답 패킷(116)을 수신하는 것에 응답하여 종료되었을 것이다. 따라서, 일부 예들에서(예를 들어, 블루투스 디바이스(100) 및 블루투스 디바이스(101)가 전송할 더 많은 데이터를 갖지 않을 때), 블루투스 디바이스(100)가 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(116)의 MD 비트(118)를 제1 값(119)으로 설정함으로써, 블루투스 디바이스(100)는 블루투스 접속 이벤트(102)를 개방으로 유지할 수 있어서, (블루투스 디바이스(101)가 제2 패킷(120)을 생성 및 전송하게 야기하여) 그에 의해 블루투스 접속 이벤트(102) 동안 및 응답 패킷(116)을 전송하는 것에 후속하여 (제어 절차 패킷(107)에 표시된) 제어 절차에 실질적으로 응답할 기회를 블루투스 디바이스(100)에 제공할 수 있다.
블루투스 디바이스(101)는 송수신기(103)를 이용하여, 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(100)에 제2 패킷(120)을 전송하도록 구성된다. 블루투스 디바이스(100)는 블루투스 접속 이벤트(102) 동안 송수신기(111)를 이용하여 제2 패킷(120)을 수신하도록 구성된다. 일부 예들에서, 블루투스 디바이스(100)가 제2 패킷(120)을 수신하는 것에 후속하여, 제어기(112)는 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(101)에 전송될 제2 응답 패킷(123)을 생성하도록 구성된다. 일부 예들에서, 제2 응답 패킷(123)은 제어 절차 패킷(107)에 표시된 제어 절차에 응답하는 제어 정보를 포함한다. 제어 절차 패킷(107)이 LL_ENC_REQ를 포함한 예를 이용하여 예시하기 위해, 제2 응답 패킷(123)에서의 제어 정보는 LL_ENC_RSP(예를 들어, 암호화 요청에 대한 암호화 응답)를 포함할 수 있다. 일부 예들에서, 제2 응답 패킷(123)의 MD 비트(124)는 MD 비트(118)를 참조하여 전술한 바와 같이 (예를 들어, 제2 응답 패킷(123)이 생성될 때) 블루투스 디바이스(100)가 블루투스 디바이스(101)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값(119)으로 설정된다.
일부 예들에서, 제2 응답 패킷(123)은 블루투스 디바이스(100)가 제2 패킷(120)을 수신하는 것에 응답하여 블루투스 디바이스(100)에 의해 생성 및 전송된다.
다른 예들에서, 제2 응답 패킷(123)은 블루투스 디바이스(100)가 블루투스 접속 이벤트(102) 동안 블루투스 디바이스(101)에 의해 전송된 상이한 패킷(도시되지 않음)(예를 들어, "중간" 응답 패킷)을 수신하는 것에 응답하여 블루투스 디바이스(100)에 의해 생성 및 전송된다. 예를 들어, 블루투스 디바이스(100)는 블루투스 디바이스(100)가 제2 패킷(120)을 수신하는 것에 응답하여 제1 중간 응답 패킷(도시되지 않음)을 생성하여 블루투스 디바이스(101)에 전송할 수 있다. 제1 중간 응답 패킷은 제1 값(119)으로 설정된 MD 비트를 포함할 수 있고, 제1 중간 응답 패킷은 비어 있을 수 있다(예를 들어, 데이터 또는 제어 정보를 포함하지 않음). 블루투스 디바이스(101)는 제1 중간 응답 패킷을 수신할 수 있고, 제1 중간 응답 패킷을 수신하는 것에 응답하여 제2 중간 응답 패킷을 생성 및 전송할 수 있다. 제2 중간 응답 패킷은 제2 값(110)으로 설정된 MD 비트를 포함할 수 있고, 제2 중간 응답 패킷은 비어 있을 수 있다(예를 들어, 데이터 또는 제어 정보를 포함하지 않음). 블루투스 디바이스들(101 및 100)은 블루투스 디바이스(100)가 제어 절차 패킷(107)에 표시된 제어 절차에 응답하는 제어 정보를 포함할 수 있는 제2 응답 패킷(123)을 생성 및 전송할 때까지 제1 및 제2 중간 응답 패킷들을 참조하여 설명된 바와 같이 설정된 MD 비트들과 중간 응답 패킷들(예를 들어, 빈 패킷들)을 교환할 수 있다.
따라서, 블루투스 디바이스(100)가 더 많은 데이터를 갖지 않을 때 응답 패킷들(예를 들어, 116, 123)의 MD 필드(108)에서의 MD 비트들(예를 들어, 118, 124)을 제1 값(119)으로 설정함으로써, 블루투스 디바이스(100)는 블루투스 접속 이벤트(102)를 개방으로 유지하고, 그에 의해 블루투스 디바이스(101) 및 블루투스 디바이스(100)가 블루투스 접속 이벤트(102) 동안 더 많은 패킷들을 교환할 수 있게 하여, (일부 예들에서) 그렇지 않으면 다수의 블루투스 접속 이벤트들이 제어 절차를 완료하는 데 이용되었을 수 있을 때 단일 블루투스 접속 이벤트 동안 제어 절차(예를 들어, 암호화 제어 절차)의 완료를 가능하게 한다.
도 2는 블루투스 접속 이벤트(201)(예를 들어, 단일 블루투스 접속 이벤트) 동안 도 1의 블루투스 디바이스(100)와 블루투스 디바이스(101) 사이에서 통신되는 패킷들의 패킷 스트림(200)의 예를 도시한다. 블루투스 접속 이벤트(201)는 도 1의 블루투스 접속 이벤트(102)에 대응할 수 있다. 패킷들 사이의 시간 구간은 T_IFS 간격에 대응할 수 있다.
패킷들은 접속 이벤트의 앵커 포인트에서 도 1의 블루투스 디바이스(101)에 의해 생성되고 도 1의 블루투스 디바이스(100)에 전송된 제어 절차 패킷(202)을 포함한다. 제어 절차 패킷(202)은 LL_Enc_Req(예를 들어, 암호화 요청)를 포함한다. 도 2의 제어 절차 패킷(202)은 도 1의 제어 절차 패킷(107)에 대응할 수 있다. 제어 절차 패킷(202)의 MD 비트(224)는 제2 값(226)(예를 들어, "0")으로 설정되는데, 그 이유는, 도 2에 도시된 예에서, 도 1의 블루투스 디바이스(101)가 전송할 추가 데이터를 갖지 않기 때문이다. 일부 예들에서, 제2 값(226)은 도 1의 제2 값(110)에 대응한다. 일부 예들에서, 제어 절차 패킷(202)을 전송하는 지속기간은 264 마이크로초이다.
패킷들은 도 1의 블루투스 디바이스(100)가 도 2의 제어 절차 패킷(202)을 수신하는 것에 응답하여 도 1의 블루투스 디바이스(100)에 의해 생성되고 도 1의 블루투스 디바이스(101)에 전송된 응답 패킷(204)을 더 포함한다. 도 2의 응답 패킷(204)은 도 1의 응답 패킷(116)에 대응할 수 있다. 일부 예들에서, 응답 패킷(204)을 전송하는 지속기간은 80 마이크로초이다. 도 2의 응답 패킷(204)의 MD 비트(228)는 "1"에 대응하는 제1 값(225)으로 설정된다. 도 2의 제1 값(225)은 도 1의 제1 값(119)에 대응할 수 있다. 도 2의 응답 패킷(204)은 비어 있다(예를 들어, 데이터도 제어 정보도 포함하지 않음). 따라서, 이 예에서, 응답 패킷(204)은, 응답 패킷(204)이 비어 있더라도 제1 값(225)에 대응하는 MD 비트(228)를 포함하도록 생성된다. 이는 블루투스 접속 이벤트(201)를 개방으로 유지하도록 야기한다.
패킷들은 도 1의 블루투스 디바이스(101)에 의해 생성되고 도 1의 블루투스 디바이스(100)에 전송된 패킷(206)을 더 포함한다. 일부 예들에서, 패킷(206)을 전송하는 지속기간은 80 마이크로초이다. 패킷(206)은 비어 있고(예를 들어, 데이터도 제어 정보도 포함하지 않음), 패킷(206)의 MD 비트(230)는 제2 값(226)(예를 들어, "0")으로 설정된다. 패킷(206)은 도 1의 제2 패킷(120)에 대응할 수 있다.
패킷들은 도 1의 블루투스 디바이스(100)에 의해 생성되고 도 1의 블루투스 디바이스(101)에 전송된 응답 패킷(208)을 더 포함한다. 일부 예들에서, 응답 패킷(208)을 전송하는 지속기간은 80 마이크로초이다. 응답 패킷(208)은 비어 있고(예를 들어, 데이터도 제어 정보도 포함하지 않음), 응답 패킷(208)이 비어 있더라도 응답 패킷(208)의 MD 비트(232)는 제1 값(225)으로 설정된다. 응답 패킷(208)은 도 1을 참조하여 전술한 제1 중간 응답 패킷에 대응할 수 있다.
패킷들은 도 1의 블루투스 디바이스(101)에 의해 생성되고 도 1의 블루투스 디바이스(100)에 전송된 응답 패킷(210)을 더 포함한다. 일부 예들에서, 응답 패킷(210)을 전송하는 지속기간은 80 마이크로초이다. 응답 패킷(210)은 비어 있고(예를 들어, 데이터도 제어 정보도 포함하지 않음), 응답 패킷(210)의 MD 비트(234)는 제2 값(226)(예를 들어, "0")으로 설정된다. 응답 패킷(210)은 도 1을 참조하여 전술한 제2 중간 응답 패킷에 대응할 수 있다.
패킷들은 도 1의 블루투스 디바이스(100)에 의해 생성되고 도 1의 블루투스 디바이스(101)에 전송된 응답 패킷(212)을 더 포함한다. 일부 예들에서, 응답 패킷(212)을 전송하는 지속기간은 80 마이크로초이다. 응답 패킷(212)은 제어 절차 패킷(202)의 LL_Enc_Req에 응답하는 LL_Enc_Rsp(암호화 응답)를 포함하고, 응답 패킷(212)의 MD 비트(236)는 도 1의 블루투스 디바이스(100)의 송신 데이터 큐(115)가 비어 있더라도 제1 값(225)으로 설정된다. 응답 패킷(212)은 도 1의 제2 응답 패킷(123)에 대응할 수 있다.
패킷들은 도 1의 블루투스 디바이스(101)에 의해 생성되고 도 1의 블루투스 디바이스(100)에 전송된 패킷(214)을 더 포함한다. 일부 예들에서, 패킷(214)을 전송하는 지속기간은 80 마이크로초이다. 패킷(214)은 비어 있고(예를 들어, 데이터도 제어 정보도 포함하지 않음), 패킷(214)의 MD 비트(238)는 제2 값(226)(예를 들어, "0")으로 설정된다.
패킷들은 도 1의 블루투스 디바이스(100)에 의해 생성되어 도 1의 블루투스 디바이스(101)에 전송된 패킷(216)을 더 포함한다. 일부 예들에서, 패킷(216)을 전송하는 지속기간은 80 마이크로초이다. 패킷(216)은 비어 있고(예를 들어, 데이터도 제어 정보도 포함하지 않음), 패킷(216)의 MD 비트(240)는 패킷(216)이 비어 있더라도 제1 값(225)으로 설정된다.
따라서, 도 2의 예시적인 패킷 스트림(200)에서 알 수 있는 바와 같이, 도 1의 블루투스 디바이스(100)는 응답 패킷(204 및 208)의 MD 비트들(228 및 232)을 제1 값(225)으로 설정함으로써 블루투스 접속 이벤트(102)를 개방으로 유지하고, 그에 의해 도 1의 블루투스 디바이스(100)가, 응답 패킷(204)의 MD 비트(228)가 제2 값(226)으로 설정된 경우, 접속 이벤트가 폐쇄되었을 때 블루투스 접속 이벤트(102) 내에 제어 정보 응답을 제공하기 위해 응답 패킷(212)으로 제어 절차 패킷(202)에 응답할 수 있게 하여, 블루투스 디바이스(100)가 제어 절차 패킷(202)에서의 암호화 요청에 실질적으로 응답하는 것을 방지한다.
도 3은 블루투스 접속 이벤트(예를 들어, 단일 블루투스 접속 이벤트) 동안 블루투스 디바이스들(301 및 302) 사이에 전송된 적어도 일부 패킷들의 타이밍도(300)의 예를 도시한다. 타이밍도(300)의 패킷들은 블루투스 디바이스들(301 및 302) 사이의 제어 절차에 대응하는 하나 이상의 제어 절차 패킷을 포함한다. 일부 예들에서, 도 3의 블루투스 디바이스들(301 및 302)은 각각 도 1의 블루투스 디바이스들(101 및 100)에 대응한다. 추가적으로, 도 3에 대응하는 블루투스 접속 이벤트(예를 들어, 도 3의 패킷들이 블루투스 디바이스들(301 및 302) 사이에서 전송 및/또는 수신되는 블루투스 접속 이벤트)는 도 1의 블루투스 접속 이벤트(102)에 대응할 수 있다.
도 3에 도시된 예에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때) 블루투스 디바이스(302)가 전송할 데이터를 갖는지의 여부와는 독립적으로 블루투스 디바이스(302)가 (제어 절차의 수행 동안) 블루투스 디바이스(301)에 전송하도록 구성되는 타이밍도(300)의 패킷들의 마지막 패킷을 제외하고, 타이밍도(300)의 패킷들의 각각의 패킷의 MD 비트를 제1 값(예를 들어, 도 1의 제1 값(119))으로 설정하도록 구성된다.
타이밍도(300)는 블루투스 디바이스(301)에 의해 블루투스 디바이스(302)에 전송된 패킷(308)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(308)은 제어 정보(예를 들어, 암호화 요청)를 포함하고, 도 1의 제어 절차 패킷(107)에 대응할 수 있다. 일부 예들에서, 블루투스 디바이스(301)가 패킷(308)을 생성할 때 블루투스 디바이스(301)가 블루투스 디바이스(302)에 전송할 데이터를 갖지 않는 것에 기초하여 패킷(308)의 MD 비트는 제2 값(예를 들어, 도 1의 제2 값(110))으로 설정된다.
타이밍도(300)는 블루투스 디바이스(301)와 블루투스 디바이스(302) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(310)을 포함한다. 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(310)의) 각각의 패킷은 블루투스 디바이스(302)가 패킷을 생성할 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로(예를 들어, 그에 관계없이) 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 블루투스 디바이스(302)는 하나 이상의 패킷 교환(310) 동안 블루투스 디바이스(301)에 전송할 데이터를 갖지 않는다. 이 예에서, 블루투스 디바이스(302)가 하나 이상의 패킷 교환(310) 동안 블루투스 디바이스(301)에 전송할 데이터를 갖지 않음에도 불구하고, 블루투스 디바이스(302)는 블루투스 디바이스(302)로부터 블루투스 디바이스(301)에 전송되는 (하나 이상의 패킷 교환(310)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 일부 예들에서, 블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(310)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(301)가 블루투스 디바이스(302)에 전송할 데이터를 갖지 않기 때문이다.
패킷(308)의 MD 비트 및/또는 블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(310)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(310)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 하나 이상의 패킷 교환(310)의 마지막 패킷에 응답하여 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송된 응답 패킷(312)(예를 들어, 제어 절차 패킷)을 포함한다. 응답 패킷(312)은 패킷(308)에 응답하는 제어 정보(예를 들어, 암호화 응답)를 포함한다. 일부 예들에서, 응답 패킷(312)은 도 1의 제2 응답 패킷(123) 또는 도 2의 응답 패킷(212)에 대응한다. 블루투스 디바이스(302)는 응답 패킷(312)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(312)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 응답 패킷(312)이 생성될 때) 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 응답 패킷(312)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(301)에 의해 전송되는 하나 이상의 패킷 교환(310)의 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 응답 패킷(312)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 블루투스 디바이스(301)와 블루투스 디바이스(302) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(315)을 포함한다. 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(315)의) 각각의 패킷은 블루투스 디바이스(302)가 패킷을 생성할 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 하나 이상의 패킷 교환(315) 동안 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송되는 (하나 이상의 패킷 교환(315)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(315)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(301)가 블루투스 디바이스(302)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(315)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(315)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 하나 이상의 패킷 교환(315)의 마지막 패킷에 응답하여 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송된 패킷(316)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(316)은 제어 정보를 포함한다. 예를 들어, 패킷(316)은 LL_START_ENC_REQ(예를 들어, 시작 암호화 요청)를 포함할 수 있다. 블루투스 디바이스(302)는 패킷(316)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 패킷(316)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 패킷(316)이 생성될 때) 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 패킷(316)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(315)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷(316)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 패킷(316)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 블루투스 디바이스(301)와 블루투스 디바이스(302) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(318)을 포함한다. 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(318)의) 각각의 패킷은 블루투스 디바이스(302)가 패킷을 생성할 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 하나 이상의 패킷 교환(318) 동안 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송되는 (하나 이상의 패킷 교환(318)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(318)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(301)가 블루투스 디바이스(302)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(318)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(318)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 하나 이상의 패킷 교환(318)의 마지막 패킷에 응답하여 블루투스 디바이스(301)에 의해 블루투스 디바이스(302)에 전송된 패킷(320)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(320)은 제어 정보를 포함한다. 예를 들어, 패킷(320)은 LL_START_ENC_RSP(예를 들어, 시작 암호화 응답)를 포함할 수 있다. 블루투스 디바이스(302)는 패킷(320)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 패킷(320)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 패킷(320)이 생성될 때) 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 패킷(320)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(318)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷(320)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 패킷(320)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 블루투스 디바이스(301)와 블루투스 디바이스(302) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(322)을 포함한다. 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송되는 (하나 이상의 패킷 교환(322)의) 각각의 패킷은 블루투스 디바이스(302)가 패킷을 생성할 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 하나 이상의 패킷 교환(322) 동안 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(302)는 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송되는 (하나 이상의 패킷 교환(322)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(322)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(301)가 블루투스 디바이스(302)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(322)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(302)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(302)에 의해 전송되는 (하나 이상의 패킷 교환(322)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(300)는 하나 이상의 패킷 교환(322)의 마지막 패킷에 응답하여 블루투스 디바이스(302)에 의해 블루투스 디바이스(301)에 전송된 패킷(324)을 포함한다. 패킷(324)은 5-웨이 암호화 제어 절차를 완료하는 제어 정보를 포함한다. 예를 들어, 패킷(324)은 LL_START_ENC_RSP(예를 들어, 시작 암호화 응답)를 포함할 수 있다.
패킷(324)이 (예를 들어, 관련 프로토콜에 의해 정의된 바와 같은) 제어 절차 동안 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송하도록 구성되는 마지막 패킷이기 때문에, 블루투스 디바이스(302)는 패킷(324)이 생성될 때 블루투스 디바이스(302)가 블루투스 디바이스(301)에 전송할 데이터를 갖는지 여부에 기초한 값으로 패킷(324)의 MD 비트를 설정한다. 예에서, 패킷(324)이 생성될 때 블루투스 디바이스(302)는 블루투스 디바이스(301)에 전송할 데이터를 갖지 않는다. 이 예에서, 블루투스 디바이스(302)는 패킷(324)의 MD 비트를 제2 값으로 설정한다.
블루투스 디바이스(301)에 의해 전송되는 (하나 이상의 패킷 교환(322)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되고 패킷(324)의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 접속 이벤트는 종료할 것이다.
도 4는 블루투스 접속 이벤트(예를 들어, 단일 블루투스 접속 이벤트) 동안 블루투스 디바이스들(401 및 402) 사이에 전송된 적어도 일부 패킷들의 타이밍도(400)의 예를 도시한다. 타이밍도(400)의 패킷들은 블루투스 디바이스들(401 및 402) 사이의 제어 절차에 대응하는 하나 이상의 제어 절차 패킷을 포함한다. 일부 예들에서, 도 4의 블루투스 디바이스들(401 및 402)은 각각 도 1의 블루투스 디바이스들(101 및 100)에 대응한다. 추가적으로, 도 4에 대응하는 블루투스 접속 이벤트(예를 들어, 도 4의 패킷들이 블루투스 디바이스들(401, 402) 사이에서 전송 및/또는 수신되는 블루투스 접속 이벤트)는 도 1의 블루투스 접속 이벤트(102)에 대응할 수 있다.
도 4에 도시된 예에서, 블루투스 디바이스(402)는, 블루투스 디바이스(402)가 블루투스 디바이스(401)에게 제어 절차 패킷을 전달해야 하는 입장에 있을 때(예를 들어, 블루투스 디바이스(402)가 다음 제어 절차 패킷을 블루투스 디바이스(401)에 전송하도록 구성될 때) (예를 들어, 패킷이 생성될 때) 블루투스 디바이스(402)가 전송할 데이터를 갖는지의 여부와는 독립적으로 블루투스 디바이스(402)가 (제어 절차의 수행 동안) 블루투스 디바이스(401)에 전송하도록 구성되는 타이밍도(400)의 패킷들의 마지막 패킷을 제외하고, 타이밍도(400)의 패킷들의 각각의 패킷의 MD 비트를 제1 값(예를 들어, 도 1의 제1 값(119))으로 설정하도록 구성된다. 추가적으로, 도 4에 도시된 예에서, 블루투스 디바이스(401)는, 블루투스 디바이스(401)가 블루투스 디바이스(402)에게 제어 절차 패킷을 전달해야 하는 입장에 있을 때(예를 들어, 블루투스 디바이스(401)가 다음 제어 절차 패킷을 블루투스 디바이스(402)에 전송하도록 구성될 때) (예를 들어, 패킷이 생성될 때) 블루투스 디바이스(401)가 전송할 데이터를 갖는지의 여부와는 독립적으로 블루투스 디바이스(401)가 (제어 절차의 수행 동안) 블루투스 디바이스(402)에 전송하도록 구성되는 타이밍도(400)의 패킷들의 각각의 패킷의 MD 비트를 제1 값으로 설정하도록 구성된다.
타이밍도(400)는 블루투스 디바이스(401)에 의해 블루투스 디바이스(402)에 전송된 패킷(408)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(408)은 제어 정보(예를 들어, 암호화 요청)를 포함하고, 도 1의 제어 절차 패킷(107)에 대응할 수 있다. 일부 예들에서, 블루투스 디바이스(401)가 패킷(408)을 생성할 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않는 것에 기초하여 패킷(408)의 MD 비트는 제2 값(예를 들어, 도 1의 제2 값(110))으로 설정된다.
블루투스 디바이스들(401 및 402)은 패킷(408) 이후의 (제어 절차의) 다음 제어 절차 패킷이 블루투스 디바이스(402)에 의해 전송될 것임을 표시하는 관련 프로토콜에 따라 동작하도록 구성된다. 즉, 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 패킷(408)에 응답하는 제어 절차 패킷을 전달해야 하는 입장에 있다.
타이밍도(400)는 블루투스 디바이스(401)와 블루투스 디바이스(402) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(410)을 포함한다. 블루투스 디바이스(402)는 블루투스 디바이스(402)에게 패킷(408)에 응답하는 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(410)의) 각각의 패킷은 블루투스 디바이스(402)가 패킷을 생성할 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지의 여부와는 독립적으로(예를 들어, 그에 관계없이) 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 블루투스 디바이스(402)는 하나 이상의 패킷 교환(410) 동안 블루투스 디바이스(401)에 전송할 데이터를 갖지 않는다. 이 예에서, 하나 이상의 패킷 교환(410) 동안 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않음에도 불구하고, 블루투스 디바이스(402)는 블루투스 디바이스(402)로부터 블루투스 디바이스(401)에 전송되는 (하나 이상의 패킷 교환(410)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 일부 예들에서, 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(410)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않기 때문이다.
패킷(408)의 MD 비트 및/또는 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(410)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(402)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(410)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(400)는 하나 이상의 패킷 교환(410)의 마지막 패킷에 응답하여 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송된 응답 패킷(412)(예를 들어, 제어 절차 패킷)을 포함한다. 응답 패킷(412)은 패킷(408)에 응답하는 제어 정보(예를 들어, 암호화 응답)를 포함한다. 일부 예들에서, 응답 패킷(412)은 도 1의 제2 응답 패킷(123) 또는 도 2의 응답 패킷(212)에 대응한다. 블루투스 디바이스(402)는 블루투스 디바이스(401)게 패킷(408)에 응답하는 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(402)는 응답 패킷(412)이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지의 여부와는 독립적으로 응답 패킷(412)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 응답 패킷(412)이 생성될 때) 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(402)는 응답 패킷(412)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(401)에 의해 전송되는 하나 이상의 패킷 교환(410)의 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(402)는 (예를 들어, 응답 패킷(412)이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않을 때에도) 응답 패킷(412)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
블루투스 디바이스들(401 및 402)은 응답 패킷(412) 이후의 (제어 절차의) 다음 제어 절차 패킷이 블루투스 디바이스(402)에 의해 전송될 것임을 표시하는 관련 프로토콜에 따라 동작하도록 구성된다. 즉, 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 응답 패킷(412) 이후의 제어 절차 패킷을 전달해야 하는 입장에 있다.
타이밍도(400)는 블루투스 디바이스(401)와 블루투스 디바이스(402) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(415)을 포함한다. 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 패킷(408)에 응답하는 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(415)의) 각각의 패킷은 블루투스 디바이스(402)가 패킷을 생성할 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 하나 이상의 패킷 교환(415) 동안 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(402)는 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송되는 (하나 이상의 패킷 교환(415)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(415)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(415)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(402)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(415)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(400)는 하나 이상의 패킷 교환(415)의 마지막 패킷에 응답하여 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송된 패킷(416)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(416)은 제어 정보를 포함한다. 예를 들어, 패킷(416)은 LL_START_ENC_REQ(예를 들어, 시작 암호화 요청)를 포함할 수 있다. 패킷(416)이 생성될 때 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(402)는 패킷(416)이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지의 여부와는 독립적으로 패킷(416)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 패킷(416)이 생성될 때) 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(402)는 패킷(416)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(415)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(402)는 (예를 들어, 패킷(416)이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않을 때에도) 패킷(416)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
블루투스 디바이스들(401 및 402)은 패킷(416) 이후의 (제어 절차의) 다음 제어 절차 패킷이 블루투스 디바이스(401)에 의해 전송될 것임을 표시하는 관련 프로토콜에 따라 동작하도록 구성된다. 즉, 블루투스 디바이스(401)는 블루투스 디바이스(402)에게 패킷(416) 이후의 제어 절차 패킷을 전달해야 하는 입장에 있다.
타이밍도(400)는 블루투스 디바이스(401)와 블루투스 디바이스(402) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(418)을 포함한다. 블루투스 디바이스(401)는 블루투스 디바이스(402)에게 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(418)의) 각각의 패킷은 블루투스 디바이스(401)가 패킷을 생성할 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 블루투스 디바이스(401)는 하나 이상의 패킷 교환(418) 동안 블루투스 디바이스(402)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(401)는 블루투스 디바이스(401)에 의해 블루투스 디바이스(402)에 전송되는 (하나 이상의 패킷 교환(418)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(418)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(418)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(401)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(418)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(400)는 하나 이상의 패킷 교환(418)의 마지막 패킷에 응답하여 블루투스 디바이스(401)에 의해 블루투스 디바이스(402)에 전송된 패킷(420)(예를 들어, 제어 절차 패킷)을 포함한다. 패킷(420)은 제어 정보를 포함한다. 예를 들어, 패킷(420)은 LL_START_ENC_RSP(예를 들어, 시작 암호화 응답)를 포함할 수 있다. 패킷(420)이 생성될 때 블루투스 디바이스(401)는 블루투스 디바이스(402)에게 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(401)는 패킷(420)이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖는지의 여부와는 독립적으로 패킷(420)의 MD 비트를 제1 값으로 설정한다. 예시를 위해, 일부 예들에서, (예를 들어, 패킷(420)이 생성될 때) 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(401)는 패킷(420)의 MD 비트를 제1 값으로 설정한다.
블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(418)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(401)는 (예를 들어, 패킷(420)이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않을 때에도) 패킷(420)의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
블루투스 디바이스들(401 및 402)은 패킷(420) 이후의 (제어 절차의) 다음 제어 절차 패킷이 블루투스 디바이스(402)에 의해 전송될 것임을 표시하는 관련 프로토콜에 따라 동작하도록 구성된다. 즉, 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 패킷(420) 이후의 제어 절차 패킷을 전달해야 하는 입장에 있다.
타이밍도(400)는 블루투스 디바이스(401)와 블루투스 디바이스(402) 사이에서 대안적으로 전송된 패킷들의 하나 이상의 패킷 교환(422)을 포함한다. 블루투스 디바이스(402)는 블루투스 디바이스(401)에게 제어 절차 패킷을 전달해야 하는 입장에 있기 때문에, 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송되는 (하나 이상의 패킷 교환(422)의) 각각의 패킷은 블루투스 디바이스(402)가 패킷을 생성할 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지의 여부와는 독립적으로 제1 값으로 설정된 MD 비트를 갖는다. 예에서, 블루투스 디바이스(402)는 하나 이상의 패킷 교환(422) 동안 블루투스 디바이스(401)에 전송할 데이터를 갖지 않지만, 블루투스 디바이스(402)는 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송되는 (하나 이상의 패킷 교환(422)의) 각각의 패킷의 MD 비트를 제1 값으로 설정한다.
대안적으로 또는 추가적으로, 블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(422)의) 적어도 하나의 패킷은 제2 값으로 설정된 MD 비트를 갖는데, 그 이유는, 적어도 하나의 패킷이 생성될 때 블루투스 디바이스(401)가 블루투스 디바이스(402)에 전송할 데이터를 갖지 않기 때문이다.
블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(422)의) 하나 이상의 패킷의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 디바이스(402)는 (예를 들어, 패킷이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖지 않을 때에도) 블루투스 디바이스(402)에 의해 전송되는 (하나 이상의 패킷 교환(422)의) 각각의 패킷의 MD 비트를 제1 값으로 설정하여, 블루투스 접속 이벤트가 종료/폐쇄되는 것을 방지한다.
타이밍도(400)는 하나 이상의 패킷 교환(422)의 마지막 패킷에 응답하여 블루투스 디바이스(402)에 의해 블루투스 디바이스(401)에 전송된 패킷(424)을 포함한다. 패킷(424)은 5-웨이 암호화 제어 절차를 완료하는 제어 정보를 포함한다. 예를 들어, 패킷(424)은 LL_START_ENC_RSP(예를 들어, 시작 암호화 응답)를 포함할 수 있다.
패킷(424)은 블루투스 디바이스(402)가 (예를 들어, 관련 프로토콜에 의해 정의된 바와 같은) 제어 절차 동안 블루투스 디바이스(401)에 전송하도록 구성되는 마지막 패킷이기 때문에, 블루투스 디바이스(402)는 패킷(424)이 생성될 때 블루투스 디바이스(402)가 블루투스 디바이스(401)에 전송할 데이터를 갖는지 여부에 기초한 값으로 패킷(424)의 MD 비트를 설정한다. 예에서, 블루투스 디바이스(402)는 패킷(424)이 생성될 때 블루투스 디바이스(401)에 전송할 데이터를 갖지 않는다. 이 예에서, 블루투스 디바이스(402)는 패킷(424)의 MD 비트를 제2 값으로 설정한다.
블루투스 디바이스(401)에 의해 전송되는 (하나 이상의 패킷 교환(422)의) 마지막 패킷의 MD 비트가 제2 값으로 설정되고 패킷(424)의 MD 비트가 제2 값으로 설정되는 예들에서, 블루투스 접속 이벤트는 종료할 것이다.
도 5는 제1 블루투스 디바이스에 의해 구현되는 방법의 예의 흐름도를 도시한다. 제1 블루투스 디바이스는 도 1의 블루투스 디바이스(100)에 대응할 수 있다.
방법(500)은 502에서, 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 BLE 접속의 접속 이벤트 동안 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하는 것을 포함한다. 제어 절차 패킷은 도 1의 제어 절차 패킷(107)에 대응할 수 있고, 접속 이벤트는 도 1의 블루투스 접속 이벤트(102)에 대응할 수 있다. 일부 예들에서, 제어 절차 패킷의 MD 비트는 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정된다. 예를 들어, 도 1의 제어 절차 패킷(107)의 MD 비트(109)는 도 1의 제2 값(110)으로 설정될 수 있다.
방법(500)은 504에서, 제1 블루투스 디바이스가 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 제어 절차 패킷에 대한 응답 패킷의 MD 비트를 제1 값으로 설정하는 것을 포함한다. 제1 값은 접속 이벤트를 개방으로 유지하는 것에 대응한다. 예를 들어, 도 1을 참조하여 전술한 바와 같이, 응답 패킷은 도 1의 응답 패킷(116)에 대응할 수 있고, 도 1의 블루투스 디바이스(100)는 도 1의 응답 패킷(116)에서의 도 1의 MD 비트(118)를 제1 값(119)으로 설정할 수 있다. 일부 예들에서, 응답 패킷의 데이터 필드는 도 1의 응답 패킷(116)을 참조하여 전술한 바와 같이 비어 있다. 일부 예들에서, 도 1을 참조하여 전술한 바와 같이, 응답 패킷의 MD 비트는 제1 블루투스 디바이스의 송신 데이터 큐가 비어 있을 때 제1 값으로 설정된다.
방법(500)은 506에서, 접속 이벤트 동안 응답 패킷을 제2 블루투스 디바이스에 전송하는 것을 포함한다. 예를 들어, 도 1을 참조하여 전술한 바와 같이, 도 1의 블루투스 디바이스(100)는 블루투스 접속 이벤트(102) 동안 응답 패킷(116)을 도 1의 블루투스 디바이스(101)에 전송할 수 있다.
일부 예들에서, 방법(500)은 응답 패킷의 MD 비트가 제1 값으로 설정되어 있는 것에 기초하여 접속 이벤트 동안 제2 블루투스 디바이스로부터 제2 패킷을 수신하는 것을 더 포함한다. 예를 들어, 도 1을 참조하여 전술한 바와 같이, 제2 패킷은 도 1의 제2 패킷(120)에 대응할 수 있고, 도 1의 블루투스 디바이스(100)는 도 1의 블루투스 접속 이벤트(102) 동안 도 1의 블루투스 디바이스(101)로부터 도 1의 제2 패킷(120)을 수신할 수 있다.
일부 예들에서, 방법(500)은 접속 이벤트 동안 및 응답 패킷에 후속하여 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하는 것을 더 포함한다. 제2 패킷은 제어 절차 패킷에 응답하는 제어 정보를 포함한다. 예를 들어, 도 1을 참조하여 전술한 바와 같이, 제2 패킷은 도 1의 제2 응답 패킷(123)에 대응할 수 있고, 제2 응답 패킷(123)은 도 1의 제어 절차 패킷(107)에 응답하는 제어 정보를 포함할 수 있다.
본 개시내용의 예들은, 프로세서에 의해 실행될 때, 블루투스 디바이스로 하여금 본 명세서에 설명된 기능들, 동작들, 또는 단계들을 실행하게 하는 컴퓨터 판독가능 프로그램 명령어들을 포함하는 컴퓨터 프로그램 제품을 더 포함한다. 예를 들어, 프로세서는 도 1의 제어기(112)에 대응할 수 있고, 기능들 또는 동작들은 도 1의 블루투스 디바이스(100)를 참조하여 설명된 기능들 또는 동작들을 포함할 수 있다.
용어 "결합(couple)"이 명세서 전반에 걸쳐 이용된다. 이 용어는 이 설명과 부합하는 기능적 관계를 가능하게 하는 접속들, 통신들, 또는 신호 경로들을 커버할 수 있다. 예를 들어, 디바이스 A가 액션을 수행하도록 디바이스 B를 제어하기 위한 신호를 생성한다면, 제1 예에서 디바이스 A는 디바이스 B에 결합되거나, 또는 제2 예에서 디바이스 A는, 개재 컴포넌트 C가 디바이스 A에 의해 생성된 제어 신호를 통해 디바이스 A에 의해 디바이스 B가 제어되도록 디바이스 A와 디바이스 B 사이의 기능적 관계를 실질적으로 변경하지 않는다면, 개재 컴포넌트 C를 통해 디바이스 B에 결합된다.
작업 또는 기능을 수행하도록 "구성되는" 디바이스는 기능을 수행하도록 제조자에 의해 제조 시에 구성(예를 들어, 프로그래밍 및/또는 하드와이어링)될 수 있고/있거나 기능 및/또는 다른 추가적인 또는 대안적인 기능들을 수행하도록 제조 후에 사용자에 의해 구성가능(또는 재구성가능)할 수 있다. 구성하는 것은 디바이스의 펌웨어 및/또는 소프트웨어 프로그래밍을 통해, 디바이스의 하드웨어 컴포넌트들 및 상호접속들의 구성 및/또는 레이아웃을 통해, 또는 이들의 조합을 통해 이루어질 수 있다.
본 명세서에서는 특정 컴포넌트들이 특정 프로세스 기술의 것으로서 설명될 수 있지만, 이러한 컴포넌트들은 다른 프로세스 기술들의 컴포넌트들과 교환될 수 있다.
설명된 예들에서 수정들이 가능하고, 청구항들의 범위 내에서 다른 예들이 가능하다.

Claims (20)

  1. 제1 블루투스 디바이스로서,
    상기 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속의 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하도록 구성된 송수신기; 및
    상기 송수신기에 결합되고, 상기 제1 블루투스 디바이스가 상기 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 상기 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(MD) 비트를 제1 값으로 설정하도록 구성된 제어기 - 상기 제1 값은 상기 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응함 -
    를 포함하고,
    상기 송수신기는 상기 블루투스 접속 이벤트 동안 상기 응답 패킷을 상기 제2 블루투스 디바이스에 전송하도록 추가로 구성되는, 제1 블루투스 디바이스.
  2. 제1항에 있어서,
    상기 응답 패킷의 데이터 필드는 비어 있는, 제1 블루투스 디바이스.
  3. 제2항에 있어서,
    상기 제어 절차 패킷의 MD 비트는 상기 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정되는, 제1 블루투스 디바이스.
  4. 제3항에 있어서,
    상기 송수신기는 상기 응답 패킷의 MD 비트가 상기 제1 값으로 설정되어 있는 것에 기초하여 상기 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제2 패킷을 수신하도록 추가로 구성되는, 제1 블루투스 디바이스.
  5. 제1항에 있어서,
    상기 제어기는 상기 블루투스 접속 이벤트 동안 및 상기 응답 패킷에 후속하여 상기 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하도록 구성되고, 상기 제2 패킷은 상기 제어 절차 패킷에 응답하는 제어 정보를 포함하는, 제1 블루투스 디바이스.
  6. 제1항에 있어서,
    상기 제1 블루투스 디바이스가 상기 제2 블루투스 디바이스에 전송할 데이터를 저장하는 송신 데이터 큐를 더 포함하고, 상기 제어기는 상기 송신 데이터 큐가 비어 있을 때 상기 응답 패킷의 MD 비트를 상기 제1 값으로 설정하도록 구성되는, 제1 블루투스 디바이스.
  7. 제1항에 있어서,
    상기 제1 값은 1인, 제1 블루투스 디바이스.
  8. 컴퓨터 판독가능 명령어들을 포함하는 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 판독가능 명령어들은 제1 블루투스 디바이스의 프로세서에 의해 실행될 때, 상기 제1 블루투스 디바이스로 하여금,
    상기 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속의 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하게 하고;
    상기 제1 블루투스 디바이스가 상기 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 상기 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(MD) 비트를 제1 값으로 설정하게 하고 - 상기 제1 값은 상기 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응함 -;
    상기 블루투스 접속 이벤트 동안 상기 응답 패킷을 상기 제2 블루투스 디바이스에 전송하게 하는, 컴퓨터 프로그램 제품.
  9. 제8항에 있어서,
    상기 응답 패킷의 데이터 필드는 비어 있는, 컴퓨터 프로그램 제품.
  10. 제9항에 있어서,
    상기 제어 절차 패킷의 MD 비트는 상기 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정되는, 컴퓨터 프로그램 제품.
  11. 제10항에 있어서,
    상기 컴퓨터 판독가능 명령어들은 상기 제1 블루투스 디바이스로 하여금, 상기 응답 패킷의 MD 비트가 상기 제1 값으로 설정되는 것에 기초하여 상기 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제2 패킷을 수신하게 하도록 추가로 구성되는, 컴퓨터 프로그램 제품.
  12. 제8항에 있어서,
    상기 컴퓨터 판독가능 명령어들은 상기 제1 블루투스 디바이스로 하여금, 상기 블루투스 접속 이벤트 동안 및 상기 응답 패킷에 후속하여 상기 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하게 하도록 추가로 구성되고, 상기 제2 패킷은 상기 제어 절차 패킷에 응답하는 제어 정보를 포함하는, 컴퓨터 프로그램 제품.
  13. 제8항에 있어서,
    상기 컴퓨터 판독가능 명령어들은 상기 제1 블루투스 디바이스로 하여금, 상기 제1 블루투스 디바이스의 송신 데이터 큐가 비어 있을 때 상기 응답 패킷의 MD 비트를 상기 제1 값으로 설정하게 하도록 추가로 구성되는, 컴퓨터 프로그램 제품.
  14. 제8항에 있어서,
    제1 값은 1인, 컴퓨터 프로그램 제품.
  15. 제1 블루투스 디바이스에 의해 수행되는 방법으로서,
    상기 제1 블루투스 디바이스와 제2 블루투스 디바이스 사이의 블루투스 접속의 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제어 절차 패킷을 수신하는 단계;
    상기 제1 블루투스 디바이스가 상기 제2 블루투스 디바이스에 전송할 더 많은 데이터를 갖는지의 여부와는 독립적으로 상기 제어 절차 패킷에 대한 응답 패킷의 더 많은 데이터(MD) 비트를 제1 값으로 설정하는 단계 - 상기 제1 값은 상기 블루투스 접속 이벤트를 개방으로 유지하는 것에 대응함 -; 및
    상기 블루투스 접속 이벤트 동안 상기 응답 패킷을 상기 제2 블루투스 디바이스에 전송하는 단계
    를 포함하는, 방법.
  16. 제15항에 있어서,
    상기 응답 패킷의 데이터 필드는 비어 있는, 방법.
  17. 제16항에 있어서,
    상기 제어 절차 패킷의 MD 비트는 상기 제2 블루투스 디바이스가 전송할 더 많은 데이터를 갖지 않음을 표시하는 제2 값으로 설정되는, 방법.
  18. 제17항에 있어서,
    상기 응답 패킷의 MD 비트가 상기 제1 값으로 설정되어 있는 것에 기초하여 상기 블루투스 접속 이벤트 동안 상기 제2 블루투스 디바이스로부터 제2 패킷을 수신하는 단계를 더 포함하는, 방법.
  19. 제15항에 있어서,
    상기 블루투스 접속 이벤트 동안 및 상기 응답 패킷에 후속하여 상기 제2 블루투스 디바이스에 전송될 제2 패킷을 생성하는 단계를 더 포함하고, 상기 제2 패킷은 상기 제어 절차 패킷에 응답하는 제어 정보를 포함하는, 방법.
  20. 제15항에 있어서,
    상기 제1 블루투스 디바이스의 송신 데이터 큐가 비어 있을 때 상기 응답 패킷의 MD 비트를 상기 제1 값으로 설정하는 단계를 더 포함하는, 방법.
KR1020237005211A 2020-08-18 2021-08-09 Ble 접속 지향 서비스들에 대한 제어 절차 가속화 KR20230051501A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063067185P 2020-08-18 2020-08-18
US63/067,185 2020-08-18
US17/370,896 2021-07-08
US17/370,896 US11582827B2 (en) 2020-08-18 2021-07-08 Accelerating control procedures over BLE connection oriented services
PCT/US2021/045201 WO2022039956A1 (en) 2020-08-18 2021-08-09 Accelerating control procedures over ble connection oriented services

Publications (1)

Publication Number Publication Date
KR20230051501A true KR20230051501A (ko) 2023-04-18

Family

ID=80270090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237005211A KR20230051501A (ko) 2020-08-18 2021-08-09 Ble 접속 지향 서비스들에 대한 제어 절차 가속화

Country Status (6)

Country Link
US (2) US11582827B2 (ko)
EP (1) EP4201152A4 (ko)
JP (1) JP2023539829A (ko)
KR (1) KR20230051501A (ko)
CN (1) CN115868184A (ko)
WO (1) WO2022039956A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582827B2 (en) * 2020-08-18 2023-02-14 Texas Instruments Incorporated Accelerating control procedures over BLE connection oriented services
US11696104B1 (en) * 2022-02-10 2023-07-04 Texas Instruments Incorporated BLE link-cluster architecture
WO2024045010A1 (en) * 2022-08-31 2024-03-07 Qualcomm Incorporated Event-based initiation of a more data mode for a wireless personal area network low energy connection

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425108B1 (en) * 1999-05-07 2002-07-23 Qak Technology, Inc. Replacement of bad data bit or bad error control bit
US8238287B1 (en) * 2004-10-06 2012-08-07 Marvell International Ltd. Method and apparatus for providing quality of service (QoS) in a wireless local area network
US20060098580A1 (en) * 2004-11-08 2006-05-11 Qinghua Li Apparatus and method capable of beam forming adjustments
JP2008187289A (ja) * 2007-01-26 2008-08-14 Canon Inc 通信システム、子局端末及びその制御方法、制御局端末及びその制御方法、プログラム、記憶媒体
US8203985B2 (en) * 2008-12-31 2012-06-19 Intel Corporation Power saving in peer-to-peer communication devices
AU2010242206B2 (en) * 2009-04-29 2014-01-16 Samsung Electronics Co., Ltd. Terminal apparatus, coordinator, and method for managing emergency events
JP5691600B2 (ja) 2011-02-14 2015-04-01 セイコーエプソン株式会社 通信回路装置及び電子機器
DK3327969T3 (da) 2014-05-20 2021-09-20 Gn Hearing As Ny fremgangsmåde til trådløs overførsel af digital lyd
US9813815B2 (en) * 2014-05-20 2017-11-07 Gn Hearing A/S Method of wireless transmission of digital audio
US10111258B2 (en) * 2015-02-13 2018-10-23 Qualcomm Incorporated Methods and systems for receiver initiated protection of a wireless communication exchange
US10397871B2 (en) * 2015-05-01 2019-08-27 Sony Corporation Information processing device, information processing method, and program
US11457809B1 (en) * 2015-12-08 2022-10-04 Verily Life Sciences Llc NFC beacons for bidirectional communication between an electrochemical sensor and a reader device
US11317347B2 (en) * 2017-06-19 2022-04-26 Lg Electronics Inc. Method and apparatus for providing service by using Bluetooth low energy technology
US10681615B2 (en) * 2017-06-23 2020-06-09 Schlage Lock Company Llc Predictive rate limiting for reliable bluetooth low energy connections
TWI666889B (zh) * 2018-05-18 2019-07-21 瑞昱半導體股份有限公司 藍牙通信系統及相關的傳送端藍牙裝置與接收端藍牙裝置
JP7222195B2 (ja) * 2018-07-30 2023-02-15 カシオ計算機株式会社 通信装置、スキャナ端末、通信システム、通信方法、及びプログラム
US11917540B2 (en) * 2018-08-03 2024-02-27 Apple Inc. Target wake time scheme for multicast communication
US11178261B1 (en) * 2019-08-23 2021-11-16 Fitbit, Inc. Device communication techniques
US11582827B2 (en) * 2020-08-18 2023-02-14 Texas Instruments Incorporated Accelerating control procedures over BLE connection oriented services

Also Published As

Publication number Publication date
CN115868184A (zh) 2023-03-28
US20220061119A1 (en) 2022-02-24
US11582827B2 (en) 2023-02-14
JP2023539829A (ja) 2023-09-20
EP4201152A4 (en) 2024-02-21
EP4201152A1 (en) 2023-06-28
US20230199897A1 (en) 2023-06-22
WO2022039956A1 (en) 2022-02-24

Similar Documents

Publication Publication Date Title
KR20230051501A (ko) Ble 접속 지향 서비스들에 대한 제어 절차 가속화
JP5175358B2 (ja) Canバスを備える通信システム、およびこのような通信システムを駆動する方法
US20080049617A1 (en) System for fine grained flow-control concurrency to prevent excessive packet loss
US7979686B1 (en) System and method for isochronous task switching via hardware scheduling
US20230208825A1 (en) Method and Apparatus for Managing Reception of Secure Data Packets
JP2006067590A5 (ko)
US20080069026A1 (en) Repeater for WUSB applications
US7130271B1 (en) Relaying apparatus
JP2003018152A (ja) Ppp終端装置、ネットワーク装置及びlcpエコー要求応答方法
US10313040B2 (en) Communication device, communication system, and method for synchronized transmission of telegrams
US20210288945A1 (en) Low-Latency MACsec Authentication
US10708279B2 (en) Method and apparatus for transmitting data
CN113645283B (zh) 一种多链路通信方法、装置、存储介质及电子设备
US20220210809A1 (en) System and method for providing an enhanced acknowledgement frame
US11599649B2 (en) Method and apparatus for managing transmission of secure data packets
TWI813482B (zh) 測速方法及測速系統
Grunberger et al. Analysis and test results of tunneling IP over NFCIP-1
CN113364816B (zh) 基于多通道交换协议的数据传输系统
JP2003198624A (ja) 装置間導通試験方法および装置
TW202414214A (zh) 測速方法及測速系統
KR100460087B1 (ko) 데이터 송수신 시 각 태스크 사이의 데이터 트래픽 제어방법
CN117321977A (zh) 数据交换方法和系统
SILVA JÚNIOR Low-cost experimental validation of cryptographic protocols for safety-critical automotive communication
KR20010089015A (ko) 패킷 스위치 시스템에서 데이터 패킷 전송 장치 및 방법
CN108141357A (zh) 用于在网络中生成秘密的电路装置