IoT-begrepp och Azure IoT Hub
I den här artikeln beskrivs Sakernas Internet (IoT), Azure IoT Hub och IoT-enheter.
IoT-koncept
Den Sakernas Internet (IoT) definieras vanligtvis som ett nätverk med fysiska enheter som ansluter till och utbyter data med andra enheter och tjänster via Internet eller andra kommunikationsnätverk. Det finns för närvarande över tio miljarder anslutna enheter i världen och fler läggs till varje år. Allt som kan bäddas in med nödvändiga sensorer och programvara kan anslutas via Internet. Följande tekniker har gjort IoT möjligt:
- Åtkomst till lågkostnadssensorer med låg ström.
- Olika protokoll som möjliggör Internetanslutning.
- Plattformar för molnbaserad databehandling som Azure.
- Stordata.
- Maskininlärning.
- Artificiell intelligens.
Azure IoT Hub
IoT Hub är en hanterad tjänst i molnet som fungerar som en central meddelandehubb för kommunikation mellan ett IoT-program och dess anslutna enheter. Du kan ansluta miljontals enheter och deras backend-lösningar på ett tillförlitligt och säkert sätt. Nästan alla enheter kan anslutas till en IoT Hub.
Flera meddelandemönster stöds, inklusive enhet-till-moln-telemetri, uppladdning av filer från enheter och begäran/svar-metoder för att kontrollera dina enheter från molnet. IoT Hub också stöd för övervakning som hjälper dig att spåra enhetsskapande, enhetsanslutningar och enhetsfel.
IoT Hub kan skalas till flera miljoner samtidiga anslutna enheter och flera miljoner händelser per sekund och därigenom stödja dina IoT-arbetsbelastningar. Mer information om hur du skalar IoT Hub finns i IoT Hub skalning. Mer information om de olika tjänstnivåer som erbjuds av IoT Hub och hur du bäst passar dina skalbarhetsbehov finns på prissättningssidan.
Du kan integrera IoT Hub med andra Azure-tjänster att skapa kompletta slutpunkt-till-slutpunkt-lösningar. Du kan t.ex. använda:
Azure Event Grid för att få din verksamhet att snabbt reagera på kritiska händelser på ett tillförlitligt, skalbart och säkert sätt.
Azure Logic Apps för att automatisera verksamhetsprocesser.
Azure Machine Learning för att lägga till maskininlärning och AI-modeller i din lösning.
Azure Stream Analytics för att göra analytiska beräkningar i realtid för dataströmmar från dina enheter.
IoT Hub har en 99,9 % Serviceavtal för IoT Hub. I det fullständigaAzure-serviceavtalet förklaras den garanterade tillgängligheten för Azure som helhet.
Varje Azure-prenumeration har standardkvotgränser för att förhindra missbruk av tjänster. Dessa begränsningar kan påverka IoT-lösningens omfång. Den aktuella gränsen per prenumeration är 50 IoT-hubbar per prenumeration. Du kan begära att kvoten ska ökas genom att kontakta supporten. Mer information finns i IoT Hub och begränsning. Mer information om kvotgränser finns i någon av följande artiklar:
IoT-enheter
IoT-enheter skiljer sig från andra klienter, till exempel webbläsare och mobilappar. IoT-enheter är mer specifikt:
- Är ofta inbyggda system utan mänsklig operatör.
- Kan distribueras på fjärranslutna platser där fysisk åtkomst är dyr.
- Kan bara nås via lösningens backend-lösning.
- Kan ha begränsade ström- och bearbetningsresurser.
- Kan ha tillfällig, långsam eller dyr nätverksanslutning.
- Kan behöva använda patentskyddade, anpassade eller branschspecifika programprotokoll.
Enhetsidentitet
Varje IoT-hubb har ett identitetsregister som lagrar information om de enheter och moduler som tillåts ansluta till den. Innan en enhet eller modul kan ansluta måste det finnas en post för enheten eller modulen i IoT-hubbens identitetsregister. En enhet eller modul måste också autentiseras med IoT-hubben baserat på autentiseringsuppgifter som lagras i identitetsregistret.
Vi stöder två autentiseringsmetoder mellan enheten och IoT Hub. Du kan använda en SAS-tokenbaserad autentisering eller X.509-certifikatautentisering.
Den SAS-baserade tokenmetoden tillhandahåller autentisering för varje anrop som görs av enheten för att IoT Hub genom att associera den symmetriska nyckeln till varje anrop. X.509-baserad autentisering tillåter autentisering av en IoT-enhet på det fysiska lagret som en del av TLS-standardanslutningens etablering (Transport Layer Security). Den säkerhetstokenbaserade metoden kan användas utan X.509-autentisering, vilket är ett mindre säkert mönster. Valet mellan de två metoderna beror främst på hur säker enhetsautentisering måste vara och tillgängligheten för säker lagring på enheten (för att lagra den privata nyckeln på ett säkert sätt).
Du kan konfigurera och etablera många enheter åt gången med hjälp av IoT Hub Device Provisioning Service.
Enhetskommunikation
När du har valt autentiseringsmetod skyddas Internetanslutningen mellan IoT-enheten och IoT Hub med hjälp av TLS-standarden (Transport Layer Security). Azure IoT stöder TLS 1.2, TLS 1.1 och TLS 1.0 i den ordningen. Stöd för TLS 1.0 är endast för bakåtkompatibilitet. Kontrollera TLS-stöd i IoT Hub för att se hur du konfigurerar din hubb för att använda TLS 1.2, vilket ger mest säkerhet.
Kommunikationsmönster för enhet
Normalt skickar IoT-enheter telemetri från sensorerna till backend-tjänster i molnet. Andra typer av kommunikation är dock möjliga, till exempel en backend-tjänst som skickar kommandon till dina enheter. Här är några exempel på olika typer av kommunikation:
- En kylbil som skickar temperatur var 5:e minut till en IoT Hub
- En backend-tjänst som skickar ett kommando till en enhet för att ändra med vilken frekvens den skickar telemetri för att diagnostisera ett problem
- En enhet som övervakar en batchfabrik på en kemisk anläggning och skickar en avisering när temperaturen överskrider ett visst värde
Enhettelemetri
Exempel på telemetri som tas emot från en enhet kan vara sensordata som hastighet eller temperatur, ett felmeddelande, till exempel utebliven händelse eller ett informationsmeddelande som anger att enheten är i gott hälsotillstånd. IoT-enheter skickar händelser till ett program för att få insikter. Program kan kräva specifika delmängder av händelser för bearbetning eller lagring på olika slutpunkter.
Enhetsegenskaper
Egenskaper kan läsas eller anges från IoT Hub och kan användas för att skicka meddelanden när en åtgärd har slutförts. Ett exempel på en specifik egenskap på en enhet är temperatur. Detta kan vara en skrivbar egenskap som kan uppdateras på enheten eller läsas från en temperatursensor som är ansluten till enheten.
Du kan aktivera egenskaper i IoT Hub med enhetstvillingarna eller Plug and Play.
Mer information om skillnaderna mellan enhetstvillingarna och Plug and Play finns i Plug and Play.
Enhetskommandon
Ett exempel på ett kommando är att starta om en enhet. IoT Hub implementerar kommandon genom att du kan anropa direktmetoder på enheter. Direktmetoder representerar en interaktion med begäran/svar med en enhet som liknar ett HTTP-anrop på så sätt att de lyckas eller misslyckas omedelbart (efter en användar angiven tidsgräns). Den här metoden passar bra i scenarier där vad som ska utföras beror på om enheten svarar eller inte.
Agera på enhetsdata
IoT Hub ger dig möjlighet att låsa upp värdet av dina enhetsdata med andra Azure-tjänster så att du kan övergå till förutsägelseproblemlösning i stället för reaktiv hantering. Anslut din IoT Hub med andra Azure-tjänster för maskininlärning, analys och AI för att agera på realtidsdata, optimera bearbetning och få djupare insikter.
Den inbyggda slutpunkten samlar in enhetsdata som standard
En inbyggd slutpunkt samlar in data från enheten som standard. Data samlas in med ett svarsmönster för begäran över dedikerade IoT-enhetsslutpunkter, är tillgängliga under högst sju dagar och kan användas för att vidta åtgärder på en enhet. Här är de data som accepteras av enhetsslutpunkten:
- Skicka meddelanden från enhet till moln.
- Ta emot meddelanden från moln till enhet.
- Initiera filuppladdningar.
- Hämta och uppdatera egenskaper för enhetstvillingarna.
- Ta emot begäranden om direktmetod.
Mer information om IoT Hub slutpunkter finns i IoT Hub slutpunkter för utvecklingsguiden
Meddelanderoutning skickar data till andra slutpunkter
Data kan också dirigeras till olika tjänster för vidare bearbetning. När IoT-lösningen skalas ut varierar även antalet enheter, mängden händelser, olika händelser och olika tjänster. En flexibel, skalbar, konsekvent och tillförlitlig metod för att dirigera händelser är nödvändig för att fungera med det här mönstret. När en meddelandeväg har skapats slutar data att flöda till den inbyggda slutpunkten om inte en reservväg har konfigurerats. En självstudiekurs som visar flera användningsområden för meddelanderoutning finns i Självstudie om routning.
IoT Hub integreras också med Event Grid vilket gör att du kan för fan ut data till flera prenumeranter. Event Grid är en fullständigt hanterad händelsetjänst som gör att du enkelt kan hantera händelser i många olika Azure-tjänster och -program. Den är skapad för prestanda och skalning och gör det enklare att skapa händelsedrivna program och serverlösa arkitekturer. Skillnaderna mellan meddelanderoutning och användning Event Grid beskrivs i jämförelsen av Event Grid och meddelanden
Nästa steg
Om du vill testa en IoT-lösning för slutpunkt-till-slutpunkt så ta en titt på snabbstarterna för IoT Hub:
Mer information om hur du kan skapa och distribuera IoT-lösningar med Azure IoT finns här: