LLCP 1.0 – przewodnik po protokole sterowania łączem logicznym NFC

August 18, 2024 1120 komentarzy

LLCP – specyfikacja protokołu kontroli łącza logicznego (PDF)



Przewodnik po protokole kontroli łącza logicznego LLCP 1.0 — nacisk na: skanowanie bezstykowe — projekty: standardy i protokoły.



Przegląd LLCP 1.0 dla komunikacji równorzędnej NFC

LLCP 1.0, formalnie znany jako Logical Link Control Protocol w wersji 1.0, to specyfikacja techniczna NFC Forum opisująca budowę logicznego łącza danych między dwoma urządzeniami NFC Forum. Warstwa ta znajduje się powyżej warstwy sterowania dostępem do medium i zapewnia aplikacjom wyższych warstw jednolity sposób wymiany jednostek informacji, gdy dwa urządzenia NFC znajdują się wystarczająco blisko, aby się komunikować. W praktyce LLCP to warstwa, która pomaga urządzeniom równorzędnym rozpoznać zgodne implementacje, aktywować łącze, wymieniać jednostki danych protokołu, nadzorować łącze i zamykać komunikację w uporządkowany sposób.

Specyfikacja ta jest istotna, ponieważ sama komunikacja NFC jest zwykle krótkiego zasięgu, zależna od roli urządzenia i ściśle kontrolowana przez niższe warstwy protokołu. LLCP dodaje na tym fundamencie bardziej elastyczną strukturę usług logicznych. Obsługuje punkty dostępu do usług, multipleksowanie protokołów, transmisję bezpołączeniową, transmisję zorientowaną połączeniowo, negocjację parametrów, obsługę symetrii i nadzór nad łączem. Dzięki tym cechom różne protokoły wyższych warstw lub aplikacje mogą współdzielić to samo łącze NFC, nie będąc traktowanymi jako jeden nierozróżnialny strumień danych.

LLCP 1.0 ma szczególne znaczenie dla inżynierów pracujących w trybie komunikacji równorzędnej NFC, a nie tylko przy prostym odczycie tagów czy emulacji karty. System, który jedynie odczytuje statyczne dane z tagów NFC, może nie potrzebować LLCP bezpośrednio. Gdy jednak dwa urządzenia obsługujące NFC muszą dwukierunkowo wymieniać dane, negocjować usługę lub prowadzić kilka logicznych rozmów przez jedno łącze krótkiego zasięgu, LLCP staje się częścią podstawy technicznej. Na przykład zespół projektowy oceniający parowanie NFC, lokalne przekazywanie danych lub wymianę usług między urządzeniami musiałby zrozumieć, jak LLCP buduje łącze i jak wybór trybu transmisji wpływa na niezawodność i narzut.

Architektura protokołu i główne funkcje

Położenie warstwy łącza logicznego

LLCP określa część sterowania łączem logicznym w warstwie łącza danych NFC. Dolna połowa jest obsługiwana przez warstwę MAC, natomiast LLCP zapewnia nad nią zarządzanie łączem i usługi transmisyjne. W modelu NFC Forum odwzorowanie MAC wiąże LLCP z zewnętrznie zdefiniowanym protokołem radiowym, takim jak ISO/IEC 18092. Takie warstwowe podejście pozwala usługom wyższych warstw działać przez wspólną abstrakcję łącza, zamiast zależeć bezpośrednio od szczegółów wymiany radiowej.

Aktywacja i nadzór nad łączem

Przed rozpoczęciem normalnej komunikacji dwa urządzenia NFC Forum muszą ustalić, czy obie strony obsługują zgodne zachowania LLCP. LLCP definiuje procedury aktywacji łącza, uzgadniania wersji, negocjacji MIU i wymiany parametrów. Podczas pracy łącze jest nadzorowane, aby każdy z partnerów mógł wykryć, że komunikacja nie jest już możliwa. Wartości limitów czasu łącza i procedura symetrii pomagają zachować pozory zrównoważonej komunikacji, nawet gdy leżący poniżej protokół MAC działa w modelu inicjatora i celu.

Transmisja bezpołączeniowa i zorientowana połączeniowo

LLCP 1.0 definiuje dwa tryby transmisji. Transmisja bezpołączeniowa wykorzystuje PDU typu UI i nie wymaga ustanawiania połączenia przed wysłaniem danych. Sprawdza się, gdy wyższa warstwa toleruje dostarczanie bez potwierdzenia albo ma własną kontrolę przepływu. Transmisja zorientowana połączeniowo ustanawia połączenie łącza danych między dwoma punktami końcowymi usług, zanim nastąpi wymiana PDU przenoszących informacje. Zapewnia dostarczanie w kolejności i z potwierdzeniem dzięki numerowaniu PDU oraz mechanizmowi okna przesuwnego, co czyni ją lepiej dopasowaną do aplikacji wymagających kontrolowanej i niezawodnej wymiany w granicach komunikacji równorzędnej NFC.

Punkty dostępu do usług i multipleksowanie

Każda PDU protokołu LLCP zawiera pola docelowego i źródłowego punktu dostępu do usług, powszechnie znane jako DSAP i SSAP. Pola te wskazują, dokąd informacja ma trafić i skąd pochodzi w środowisku łącza logicznego. Ponieważ przez to samo fizyczne łącze zbliżeniowe można zaadresować kilka usług, LLCP pozwala multipleksować wiele usług wyższych warstw. Jest to cenne, gdy jedna sesja NFC obsługuje więcej niż jedną funkcję logiczną, taką jak wykrywanie usług, wymiana danych i komunikaty specyficzne dla aplikacji.

Praktyczne znaczenie dla projektowania produktów i systemów NFC

Z punktu widzenia inżynierii produktu LLCP 1.0 nie jest widoczną cechą, którą kupujący zwykle widzi nadrukowaną na etykiecie urządzenia. To warstwa protokołu wpływająca na interoperacyjność, integrację oprogramowania i obsługiwane tryby pracy aplikacji. Producent lub integrator może musieć zweryfikować zachowanie LLCP przy tworzeniu terminali z NFC, akcesoriów mobilnych, interakcji z plakatami inteligentnymi, procesów parowania urządzeń lub funkcji wymiany danych między urządzeniami. Kluczowe pytanie nie brzmi, czy produkt zawiera układ NFC, ale czy jego oprogramowanie układowe i stos programowy prawidłowo implementują odpowiednie funkcje komunikacji równorzędnej NFC Forum.

W planowaniu komercyjnej oferty produktów NFC i RFID znajomość LLCP pomaga również rozdzielić kategorie produktów. Tagi, karty, opaski na rękę i czytniki NFC mogą wykorzystywać technologie komunikacji bliskiego zasięgu, ale nie zawsze stosują ten sam stos protokołów lub tryb pracy. Produkty takie jak stojaki NFC są często wykorzystywane do interakcji opartych na zbliżeniu, w których telefon odczytuje lub zapisuje treści NFC. Produkty do noszenia lub akcesoria, takie jak pierścienie NFC mogą koncentrować się na identyfikacji, kontroli dostępu lub funkcjach wyzwalania. Produkty ekspozycyjne lub promocyjne, takie jak karta NFC z diodą LED mogą zależeć w większym stopniu od zachowania tagu, konstrukcji anteny i doświadczenia użytkownika niż od samego LLCP. Zrozumienie tej różnicy pozwala uniknąć nieścisłych twierdzeń technicznych i zwiększa przejrzystość strony produktu.

LLCP ma także wyraźne ograniczenia. Wersja 1.0 nie definiuje transmisji izochronicznej dla dźwięku lub obrazu o stałej przepływności, nie obsługuje adresowania docelowego grupowego ani rozgłoszeniowego i sama nie zapewnia bezpiecznego przesyłania danych. Zabezpieczenia można w razie potrzeby dodać w wyższych lub niższych warstwach, ale nie należy opisywać LLCP jako protokołu bezpieczeństwa. LLCP nie określa również interfejsu programowego między warstwą łącza logicznego a protokołami wyższymi, pozostawiając decyzje integracyjne wdrożeniowcom i stosom platformowym.

FAQ o LLCP 1.0

Czym jest LLCP 1.0 w technologii NFC?

LLCP 1.0 to pierwsza wersja protokołu Logical Link Control Protocol NFC Forum. Określa, w jaki sposób dwa urządzenia NFC Forum tworzą logiczne łącze danych do komunikacji równorzędnej i zarządzają nim. Znajduje się powyżej warstwy MAC i obsługuje adresowanie usług, aktywację łącza, nadzór nad łączem, transmisję bezpołączeniową oraz transmisję zorientowaną połączeniowo dla protokołów wyższych warstw.

Czy LLCP to to samo co NFCIP-1 lub ISO/IEC 18092?

Nie. ISO/IEC 18092, często utożsamiany z NFCIP-1, określa niższego poziomu interfejs i zachowanie protokołu komunikacji bliskiego zasięgu. LLCP to warstwa sterowania łączem logicznym, którą można odwzorować na takiej warstwie MAC. Mówiąc prosto, ISO/IEC 18092 pomaga ustanowić podstawę komunikacji radiowej, a LLCP organizuje nad nią usługi logiczne.

Kiedy programista powinien zwrócić uwagę na LLCP?

Programista powinien zwrócić uwagę na LLCP, gdy projekt NFC wymaga wymiany danych między dwoma aktywnymi urządzeniami w trybie równorzędnym. Jeśli system tylko odczytuje pasywne tagi NFC, LLCP może nie być bezpośrednio zaangażowany. Jeśli projekt wymaga dwukierunkowego wykrywania usług, wymiany komunikatów lub wielu usług logicznych podczas jednego zbliżenia NFC, LLCP staje się bardzo istotny.

Jaka jest różnica między transmisją bezpołączeniową a zorientowaną połączeniowo w LLCP?

Transmisja bezpołączeniowa wysyła PDU typu UI bez potwierdzenia i bez wcześniejszego ustanowienia połączenia, dzięki czemu ma mały narzut, ale ograniczoną kontrolę dostarczania. Transmisja zorientowana połączeniowo najpierw ustanawia połączenie łącza danych, a następnie prowadzi uporządkowany, potwierdzany transfer informacji. Drugie rozwiązanie jest bardziej uporządkowane i niezawodne, ale wymaga ustanowienia połączenia, obsługi stanów i zakończenia połączenia.

Czy LLCP 1.0 zapewnia bezpieczną komunikację?

LLCP 1.0 sam nie zapewnia bezpiecznego przesyłania danych. Specyfikacja koncentruje się na sterowaniu łączem, adresowaniu usług, trybach transmisji i nadzorze. Jeśli wymagana jest poufność, uwierzytelnianie lub ochrona przed ingerencją, funkcje te muszą zapewnić inne warstwy, projekt aplikacji albo późniejsze mechanizmy bezpieczeństwa spoza podstawowego zestawu funkcji LLCP 1.0.

Czym są DSAP i SSAP w LLCP?

DSAP oznacza docelowy punkt dostępu do usług, a SSAP – źródłowy punkt dostępu do usług. Pola te występują w PDU protokołu LLCP i identyfikują docelowe oraz źródłowe punkty końcowe usług. Pozwalają one kierować informacje do właściwej usługi logicznej i umożliwiają wielu usługom współdzielenie tego samego łącza równorzędnego NFC.

Czy LLCP jest przydatny w każdym produkcie NFC?

Nie. LLCP jest najbardziej przydatny w komunikacji równorzędnej NFC między dwoma aktywnymi urządzeniami NFC Forum. Wiele produktów NFC, w tym zwykłe tagi, karty, etykiety czy materiały marketingowe otwierane po zbliżeniu, może działać w kontekście czytnika/programatora lub emulacji karty. W takich przypadkach inne specyfikacje NFC Forum, formaty pamięci lub wymagania warstwy aplikacji mogą być ważniejsze niż LLCP.

Kod weryfikacyjny