IoT-begrepp och Azure IoT Hub
Sakernas Internet (IoT) är ett nätverk av fysiska enheter som ansluter till och utbyter data med andra enheter och tjänster via Internet eller andra nä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.
Azure 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 serverdelslösningar på ett tillförlitligt och säkert sätt. Nästan vilken enhet som helst kan anslutas till en IoT-hubb.
Flera meddelandemönster stöds, inklusive enhet-till-moln-telemetri, uppladdning av filer från enheter och begäran-svar-metoder för att styra dina enheter från molnet. IoT Hub har 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 tjänstnivåerna som erbjuds av IoT Hub 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 Central-program använder flera IoT-hubbar som en del av sin skalbara och motståndskraftiga infrastruktur.
Varje Azure-prenumeration har standardkvotgränser för att förhindra missbruk av tjänster. Dessa begränsningar kan påverka omfånget för din IoT-lösning. 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 kvoter 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ärrplatser där fysisk åtkomst är dyr.
- Kan bara nås via lösningens serverdel.
- Kan ha begränsade resurser för ström och bearbetning.
- Kan ha tillfälliga, långsamma eller dyra nätverksanslutningar.
- Kan behöva använda patentskyddade, anpassade eller branschspecifika programprotokoll.
Enhetsidentitet och autentisering
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 autentiserar med IoT-hubben baserat på autentiseringsuppgifter som lagras i identitetsregistret.
Vi stöder två autentiseringsmetoder mellan enheten och IoT-hubben. Du kan använda SAS-tokenbaserad autentisering eller X.509-certifikatautentisering.
SAS-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-autentisering tillåter autentisering av en IoT-enhet på det fysiska lagret som en del av TLS-standardanslutningsetableringen (Transport Layer Security). Valet mellan de två metoderna styrs främst av hur säker enhetsautentiseringen 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 din 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 tillhandahålls endast för bakåtkompatibilitet. Kontrollera TLS-stöd i IoT Hub för att se hur du konfigurerar hubben så att den använder TLS 1.2, vilket ger mest säkerhet.
Vanligtvis skickar IoT-enheter telemetri från sensorerna till serverdelstjänster i molnet. Andra typer av kommunikation är dock möjliga, till exempel en serverdelstjänst som skickar kommandon till dina enheter. Några exempel på olika typer av kommunikation är följande:
- En kylbil skickar temperatur var 5:e minut till en IoT-hubb.
- En serverdelstjänst som skickar ett kommando till en enhet för att ändra hur ofta den skickar telemetri för att diagnostisera ett problem.
- En enhet som övervakar en batchreaktor i en kemisk anläggning och skickar en avisering när temperaturen överskrider ett visst värde.
Enhetstelemetri
Exempel på telemetri som tas emot från en enhet kan vara sensordata som hastighet eller temperatur, ett felmeddelande som missad händelse eller ett informationsmeddelande som anger att enheten är vid god hälsa. 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 vid olika slutpunkter.
Enhetsegenskaper
Egenskaper kan läsas eller anges från IoT-hubben 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. Temperatur 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 enhetstvillingar eller Plug and Play.
Mer information om skillnaderna mellan enhetstvillingar 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 låta dig anropa direktmetoder på enheter. Direktmetoder representerar en interaktion mellan begäran och svar med en enhet som liknar ett HTTP-anrop eftersom de lyckas eller misslyckas omedelbart (efter en användardefinerad 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 för dina enhetsdata med andra Azure-tjänster så att du kan övergå till förutsägande problemlösning i stället för reaktiv hantering. Anslut din IoT-hubb till andra Azure-tjänster för att utföra maskininlärning, analys och AI för att agera på realtidsdata, optimera bearbetningen och få djupare insikter.
Anteckning
Azure IoT Hub lagrar eller bearbetar inte kunddata utanför den geografiska plats där du distribuerar tjänstinstansen. Mer information finns i Replikering mellan regioner i Azure.
Inbyggd slutpunkt samlar in enhetsdata som standard
En inbyggd slutpunkt samlar in data från din enhet som standard. Data samlas in med hjälp av ett mönster för begäran-svar över dedikerade IoT-enhetsslutpunkter, är tillgängliga under en maximal varaktighet på sju dagar och kan användas för att vidta åtgärder på en enhet. Här är de data som accepteras av enhetens slutpunkt:
- Skicka meddelanden från enheten till molnet.
- Ta emot meddelanden från moln till enhet.
- Initiera filuppladdningar.
- Hämta och uppdatera egenskaper för enhetstvillingar.
- Ta emot direktmetodbegäranden.
Mer information om IoT Hub slutpunkter finns i slutpunkter för IoT Hub Dev Guide
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, händelsevolymer, olika händelser och olika tjänster. En flexibel, skalbar, konsekvent och tillförlitlig metod för att dirigera händelser krävs för att hantera det här mönstret. När en meddelandeväg har skapats slutar data flöda till den inbyggda slutpunkten om inte en återställningsväg har konfigurerats. En självstudie som visar flera användningsområden för meddelanderoutning finns i Självstudie om routning.
IoT Hub stöder konfiguration av anpassade slutpunkter för olika befintliga Azure-tjänster som Lagringscontainrar, Event Hubs, Service Bus-köer, Service Bus-ämnen och Cosmos DB. När slutpunkten har konfigurerats kan du dirigera dina IoT-data till någon av dessa slutpunkter för att utföra underordnade dataåtgärder.
IoT Hub integreras också med Event Grid, vilket gör att du kan samla in 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 gjord för prestanda och skalning och förenklar skapandet av händelsedrivna program och serverlösa arkitekturer. Skillnaderna mellan meddelanderoutning och användning av Event Grid förklaras i jämförelsen för meddelanderoutning och Event Grid
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:
- Skicka telemetri från en enhet till IoT Hub
- Skicka telemetri från en IoT-Plug and Play-enhet till IoT Hub
- Snabbstart: Kontrollera en enhet ansluten till en IoT-hubb
Mer information om hur du kan skapa och distribuera IoT-lösningar med Azure IoT finns i: