에디 스톤 URL, SSDP 및 mDNS 지원 물리적 웹

에디 스톤 URL, SSDP 및 mDNS 지원 물리적 웹

피지컬 웹 소개

비콘 일상적인 개체와 환경 간의 통신이 필요한 모든 종류의 응용 프로그램 시나리오에 적합합니다.. 실제 웹은 사용자가 결과 기회를 최적으로 사용할 수 있도록 도와줍니다.. 이 기사에서, 실제 웹이 어떻게 작동하는지 소개하겠습니다., Eddystone URL이 Eddystone 작업 중에 중요한 역할을한다는 것은 의심의 여지가 없습니다..

에 2014, Google은 가상 세계를 실제 세계와 더욱 밀접하게 연결하기 위해 오픈 소스 프로젝트 Physical Web을 발표했습니다.. 버스 정류장, 관광 명소, 일상 용품 또는 슈퍼마켓 품목 – 원칙적으로, 이제 그들 모두는 비콘을 통해 독립적으로 스마트 폰에 메시지를 보낼 수 있습니다.. 이러한 통신의 기반은 Bluetooth Low Energy입니다. (BECAME) 무선 기술. 항목에 비콘이 장착 된 경우, BLE를 지원하는 스마트 폰으로 메시지를 보낼 수 있습니다., 예를 들어 지연에 대한 알림, 특별 제안 또는 캠페인 날짜.

이런 맥락에서, 물리적 웹은, 다른 것들 사이, 사용자가 모든 곳에 새 앱을 설치할 필요가 없습니다., 하지만 통일 된 인터페이스에서 뉴스를 볼 수 있습니다.. 사용자가 자신의 환경에 대한 정보에 관심이 있거나 그들과 스마트 오브젝트 간의 상호 작용이 필요한 거의 모든 경우에 사용할 수 있습니다.. 이러한 시나리오에 대한 더 나은 아이디어를 얻으려면, 다음과 같은 세 가지 간단한 적용 사례.

지능형 버스 정류장: 근처의 버스 정류장은 다음 버스가 언제 올지 스마트 폰을 통해 기다리는 사람들을 알 수 있습니다.. 이 경우, 물리적 웹 BLE 센서가 버스 정류장의 웹 사이트로 연결되는 URL을 보냅니다.. 다른 사람과 구별하기 위해, URL에는 정류장의 식별 코드가 포함됩니다..

자판기와의 상호 작용: 인터넷에 연결된 자동 판매기는 고객이 현금이없는 경우 자동 판매기의 결제 기능을 사용하여 웹 사이트에 액세스하는 데 사용할 수있는 URL을 보냅니다.. URL에는 구매 후 동적으로 변경되는 토큰이 포함됩니다.. 스마트 폰에서 열린 컴퓨터와 웹 사이트는 동일한 토큰을 사용하여 공급자의 백엔드 서버에 연결됩니다.. 구매가 처리 된 후, 서버는 구매 한 제품을 발행하기 위해 자판기에 요청을 보냅니다.. 실제 웹은 URL을 스마트 폰으로 전송하는 데 사용됩니다.. 다른 모든 단계는 평소와 같이 인터넷에서 수행됩니다.. 예를 들어, 소위 웹 소켓은 기계 또는 웹 사이트와 서버 간의 양방향 통신에 사용될 수 있습니다..

모니터링 가전: 물리적 웹을 사용하여 세탁기와 같은 가전 제품을 제어하고 모니터링 할 수도 있습니다.. 각 장치는 IP 주소를 참조하는 URL을 전송하며 로컬 네트워크에 연결된 경우에만 연결할 수 있습니다.. BLE 대신 mDNS 및 SSDP와 같은 네트워크 검색 기술을 사용하는 경우 URL의 가시성은 네트워크의 장치로 제한 될 수 있습니다..

실제 웹 또는 단일 앱

다른 정보 제공과 달리 (예 :. 시간표 정보 또는 관광 협회), 사용자가 각 공급자에 대해 자신의 앱을 설치해야하는 곳, 실제 웹은 비콘이 전송하는 Eddystone URL을 페이지의 검색어처럼 통합합니다.. 따라서 사용자는 하나의 앱으로 환경에서 스마트 개체를 찾고 직접 상호 작용할 수 있습니다.. 또 다른 장점: 사전 알림이 전송되지 않습니다.. 사용자는 원하는 경우에만 자신의 영역에있는 개체 목록을 볼 수 있습니다..

BLE 외에, MOKOSmart, 저자가 일하는 곳, Simple Service Discovery Protocol을 기반으로하는 로컬 네트워크에서 URL을 송수신하는 방법을 제안합니다. (SSDP). SSDP의 도움으로, 로컬 네트워크에서 전송 된 Eddystone URL의 가시성을 제한하여 연결 보안을 높일 수 있습니다..

피지컬 웹은 MOKOSmart의 Apache 라이선스에 따라 프로젝트로 제공되며 Android와 같은 플랫폼에 대한 구현을 포함합니다., iOS, 및 Node.js. Android 및 iOS 용 실제 웹 애플리케이션은 Apple App Store 및 Google Play Store에서 사용할 수 있습니다.. 모든 애플리케이션은 프로토 타입으로 이해되어야합니다., 개발자가 초기 단계에서 실제 웹을 실험 할 수 있도록합니다.. 앞으로, 스마트 폰 외에도 다른 모바일 장치에서 사용할 수 있어야합니다..

eddystone URL

실제 웹은 어떻게 작동합니까??

물리적 웹은 인터넷의 확장이라고합니다.. 모든 웹 기술과 마찬가지로, 모든 사람에게 개방되어 있으며 누구나 더 발전시킬 수 있습니다.. 시스템은 URL 표시를 기반으로하기 때문에, 분산되어 있으며 누구도 제어하지 않습니다.. Eddystone URL은 간단한 정보 페이지로 이어질 수 있습니다., 더 복잡하게, 대화 형 웹 앱 또는 기본 애플리케이션까지. 실제 웹은 웹 검색과 비슷합니다.:

사용자는 근처에서 개체 목록을 호출합니다..
URL 목록이 표시됩니다..
사용자가 하나를 선택.
URL이 브라우저 창에 나타납니다..
기술적 관점에서 다음과 같은 측면을 고려해야합니다.:
1. 의견 보내기
2. 역사
3. 저장되었습니다
4. 커뮤니티

• URL 보내기 및 받기: URL을 보내는 방법에는 여러 가지가 있습니다.. 실제 웹은 현재 BLE를 통한 전송을 지원합니다., mDNS, 및 SSDP (자세한 내용은 다음 섹션에서).
웹 사이트에서 기본 정보 검색: 실제 웹 클라이언트는 찾은 URL을 수집하여 모든 관련 정보와 함께 보냅니다. (예 :. 신호 강도) 웹 서비스에. 이, 차례로, 제목과 같은 기본 정보를 불러옵니다., 기술, 웹 사이트의 아이콘과 검색 결과를 클라이언트에 반환합니다.. 웹 서비스의 프로토 타입 구현은 프로젝트의 GitHub 저장소에서 사용할 수 있습니다..

• 결과 표시: 해당 지역의 많은 URL 전송 장치를 표시 할 때 순위가 중요합니다.. 물리적 웹 클라이언트는 신호 강도에 따라 정렬 할 수 있습니다., 개인적 선호도 및 기타 기준. 시스템은 미리 스팸을 분류해야합니다.. 검색 엔진에도 같은 문제가 있기 때문에, 그들의 접근 방식은 실제 웹에 사용될 수 있습니다.. 결과 디스플레이에서, 사용자가 목록 개체를 클릭하면 브라우저가 관련 웹 사이트를 엽니 다..

• 말한 바와 같이, 실제 웹은 현재 URL을주고받는 세 가지 방법을 알고 있습니다.. 두 가지 다른 프로세스를 기반으로합니다.: Bluetooth 저에너지 및 네트워크 서비스 검색. 이론적으로, 향후 추가 방법이 추가 될 수 있습니다.. 예를 들어, 개발자는 오디오 워터 마킹 기술을 사용하여 오디오 신호에 URL을 삽입 할 수 있습니다.. 이 경우, 물리적 웹 클라이언트는 오디오 신호를 수신하고 거기에 포함 된 URL을 디코딩 할 수 있도록 확장되어야합니다..

Ble Bluetooth 및 Eddystone

실제 웹의 첫 번째 초안은 BLE를 사용하여 URL을 적절한 패키지로 보냅니다.. 이 기술은 매우 에너지 효율적입니다., 특히 그것을 사용하는 제품이 전송 모드에서 작동하는 경우 (연결 불가능한 BLE 모드), 물리적 웹의 경우처럼. 소형 BLE 장치는 거의 2 년 동안 단일 버튼 셀로 Eddystone URL을 보낼 수 있습니다..

피지컬 웹의 기본 구성 요소 중 하나는 Eddystone URL입니다.. 프로토콜 사양, Eddystone은 Bluetooth 핵심 사양을 기반으로 근접 비콘에 대한 Bluetooth 저전력 메시지 형식을 정의합니다.. 비콘이 개별적으로 또는 조합하여 사용할 수있는 다양한 프레임 유형을 설명합니다.: 에디 스톤 UID, 에디 스톤 -TLM, 그리고 앞서 언급 한 Eddystone URL, 물리적 웹과 관련된 유일한.

Eddystone 메시지는 광고 데이터 블록에서 두 가지 기본 데이터 유형으로 구성됩니다. (기원 후): UUID 및 데이터 서비스. 두 유형 모두 16 비트 범용 고유 식별자를 사용합니다. (UUID) Bluetooth 표준을 준수하는. Eddystone 용으로 예약 된 UUID 서비스는 0xFEAA입니다.. 효율적인 메커니즘을 제공합니다., Android 및 iOS 모두에서 허용하는 교차 플랫폼 백그라운드 스캔. AD 블록의 후속 바이트에는 프레임과 관련된 데이터가 포함됩니다.. 첫 번째 바이트는 프레임 유형을 정의합니다.. 현재 4 개의 최상위 비트 만 사용됩니다.. 하위 4 개는 나중에 사용하기 위해 예약되어 있으며 값이 있어야합니다. 0000.

Eddystone UID 프레임은 10 바이트 네임 스페이스 ID와 6 바이트 인스턴스 ID로 구성된 고유 한 16 바이트 비콘 ID를 보냅니다.. 네임 스페이스 ID를 사용하여 특정 비콘 집합을 그룹화 할 수 있지만, 인스턴스 ID는 그룹의 기기를 식별하는 데 유용합니다..

Eddystone UID의 개념을 보면, Apple에서 소개 한 iBeacon과 유사한 방식으로 작동합니다. 2013. iBeacon 패킷에는 16 UUID에 가까운 바이트, 2 바이트 기본 도메인, 및 2 바이트 보조 도메인. iBeacon 패킷은 16 바이트 근접 UUID를 포함합니다., 2-바이트 메이저 및 2 바이트 마이너 필드. 근접 UUID는 비즈니스와 같은 조직 또는 애플리케이션을 식별하는 데 사용할 수 있습니다.. 주 및 부 필드를 사용하면 UUID에 의해 결정된 ID를보다 자세히 할당 할 수 있습니다, 지점의 경우처럼. Eddystone-TLM은 이제 배터리 상태와 같은 원격 측정 정보를 전송합니다., 장치 온도 및 비콘에서 보낸 패킷 수.

Eddystone URL 프레임은 코딩으로 생성 된 URL의 축소 된 버전을 보냅니다.. 압축을 통해 제한된 광고 패키지로 더 많은 데이터를 전송할 수 있습니다.. 첫 번째 형식 11 바이트 (바이트 0 ...을 통하여 10) 모든 프레임 유형에 대해 동일한 Eddystone 메시지. 다음 바이트 설정 방법 (바이트에서 시작 11), 하나, 프레임 유형에 따라 다름:

• 바이트 11 프레임 유형을 정의. Eddystone URL 프레임의 값은 0x10입니다..
• 바이트 12 TX의 힘을 정의. TX Power Level Bluetooth 특성에 설명 된대로 부호있는 8 비트 정수 값입니다.

네트워크 서비스 검색

BLE 비콘 및 Eddystone URL 외에도, SSDP 및 mDNS와 같은 네트워크 검색 방법은 URL 전송 옵션을 제공합니다.. 로컬 네트워크의 장치에 URL을 보낼 수도 있습니다.. 이 방법은 BLE에 비해 두 가지 장점이 있습니다.: 먼저, 로컬 네트워크에 로그인 한 사용자 만 URL을 볼 수 있습니다., 그리고 두 번째, BLE와 마찬가지로 URL 길이 제한이 없습니다..

물리적 웹에 네트워크 검색을 사용하는 것은 보안과 개인 정보가 중요한 역할을하는 상황에서 의미가 있습니다.. 기기에 대한 액세스를 같은 가정의 사람으로 만 제한해야하는 경우 스마트 홈 영역이 예입니다..

단순 서비스 검색 프로토콜 (SSDP) 로컬 네트워크에서 서비스 및 장치의 광고 및 검색을위한 네트워크 프로토콜입니다.. 범용 플러그 앤 플레이 프로토콜의 검색 계층을 형성합니다. (UPnP) 제어점으로 정의 된 새로 추가 된 장치를 홍보하는 데 도움이됩니다.. 또한 장치 및 특정 서비스를 검색 할 수 있습니다..

이러한 기능은 두 가지 유형의 SSDP 메시지를 기반으로합니다.. 먼저, 장치가 네트워크에 추가되는 즉시 보내는 광고 메시지가 있습니다.. 표준 멀티 캐스트 주소 및 포트에 대한 메시지 239.255.255.250:1900 ssdp입니다: 살아 있는. 제어점은 포트를 수신하여 SSDP 메시지를 수신하므로 새 장치 및 서비스를 감지 할 수 있습니다.. UPnP 장치가 네트워크에서 사라지거나 더 이상 사용할 수 없게되기 전, 그들은 메시지 ssdp를 보내야합니다: 동일한 멀티 캐스트 주소 및 해당 포트에 바이 바이.

반면에, SSDP를 통해 제어 지점이 네트워크에서도 관심있는 장치 및 서비스를 찾을 수있는 검색 기능이 있습니다.. 이 경우, 제어 지점은 멀티 캐스트 주소 및 포트에 검색 요청을 보냅니다. 239.255.255.250:1900. 요청 된 서비스를 지원하는 UPnP 장치는 요청을 보낸 체크 포인트의 주소로 유니 캐스트 응답을 보냅니다.. 응답 형식은 ssdp 유형의 SSDP 메시지와 유사합니다.: 살아 있는.

피지컬 웹은 로컬 네트워크에서 URL을 보내고 받기 위해 SSDP를 지원합니다.. Fraunhofer FOKUS는 해당 메커니즘의 개념과 구현을 개발했습니다.. 구현에는 프로토콜을 통해 URL을 수신하기 위해 Android 및 iOS 용 물리적 웹 앱에 SSDP 통합이 포함됩니다.. 게다가, Node.js를 기반으로 한 교차 플랫폼 도구를 사용하여 동일한 방식으로 URL을 보낼 수 있습니다..

SSDP를 사용하는 경우, 로컬 네트워크에 연결된 물리적 웹 장치는 다음 ssdp를 보냅니다.: 네트워크에서 사용할 수있는 즉시 메시지:

알림 * HTTP / 1.1 주최자: 239.255.255.250:1900
캐시 제어: max-age = 광고가 만료 될 때까지의 초
위치: 광고 할 웹 페이지의 URL
NT: 항아리: 물리적 웹 조직: 장치: 기본: 1
NTS: ssdp: 살아 있는
섬기는 사람: 그만큼 / 버전 UPnP / 1.0 생성물 / 버전
USN: 광고 UUID
첫 번째 줄의 NOTIFY 메소드는 광고 메시지임을 나타냅니다.. LOCATION 헤더가 전송되는 실제 웹 URL을 정의하는 동안, NT 헤더는 장치 유형을 정의합니다., 물리적 웹의 경우 항아리입니다: 물리적 웹 조직: 장치: 기본: 1. ssdp: NTS 헤더의 활성 값은 실제 웹 장치를 사용할 수 있음을 나타냅니다.. 드디어, USN 헤더는 장치를 식별하는 데 사용할 수있는 고유 한 이름을 제공합니다.. 스마트 폰 또는 태블릿에서 실행되는 물리적 웹 클라이언트는 멀티 캐스트 주소 및 포트를 수신합니다. 239.255.255.250:1900 NT 헤더의 값을 확인하여 물리적 웹 SSDP 메시지를 필터링합니다.. 그런 다음 SSDP 메시지를 분석하고 보낸 URL을 전달하는 LOCATION 헤더의 값을 읽을 수 있습니다..

실제 웹 장치는 다음 ssdp를 전송해야합니다.: 네트워크에서 사라지기 전에 바이 바이 메시지:

알림 * HTTP / 1.1 주최자: 239.255.255.250: 1900
NT: 항아리: 물리적 웹 조직: 장치: 기본: 1
NTS: ssdp: 안녕
USN: 광고 UUID
ssdp: bye-bye는 이제부터 물리적 웹 장치를 더 이상 사용할 수 없음을 분명히합니다.. USN 헤더의 값은 ssdp에서와 동일하게 유지됩니다.: 살아있는 메시지. 이러한 메시지를 수신하는 실제 웹 클라이언트는 USN과 연관된 URL을 찾은 다음 목록에서 제거합니다..

 

전문가와 상담