CN108307355B - Multicast implementation method of L PWAN Internet of things - Google Patents

Multicast implementation method of L PWAN Internet of things Download PDF

Info

Publication number
CN108307355B
CN108307355B CN201711393610.2A CN201711393610A CN108307355B CN 108307355 B CN108307355 B CN 108307355B CN 201711393610 A CN201711393610 A CN 201711393610A CN 108307355 B CN108307355 B CN 108307355B
Authority
CN
China
Prior art keywords
multicast
multicast group
application
terminal
group
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201711393610.2A
Other languages
Chinese (zh)
Other versions
CN108307355A (en
Inventor
周宇翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zteclaa Technology Suzhou Co ltd
Original Assignee
Zteclaa Technology Suzhou Co ltd
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 Zteclaa Technology Suzhou Co ltd filed Critical Zteclaa Technology Suzhou Co ltd
Priority to CN201711393610.2A priority Critical patent/CN108307355B/en
Publication of CN108307355A publication Critical patent/CN108307355A/en
Application granted granted Critical
Publication of CN108307355B publication Critical patent/CN108307355B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/065Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention provides a multicast implementation method of a L PWAN network, which solves the problems of management of multicast groups, distribution of multicast addresses and session keys and maintenance of multicast routes, and comprises a L oRa terminal, a plurality of L oRa base stations, a network server and multicast application, wherein the L oRa terminal is used for receiving multicast information, the L oRa base station is used for transmitting multicast frames to all L oRa terminals in the coverage range of the base station, the network server is used for distributing the multicast addresses and maintaining the multicast group routes, and the multicast application is used for being responsible for establishment and maintenance of a plurality of multicast groups.

Description

Multicast implementation method of L PWAN Internet of things
Technical Field
The invention relates to the field of low-power-consumption wide area Internet of things communication, in particular to a multicast implementation method of L PWAN (L ong Range Wireless Network) Internet of things.
Background
In the field of communications, there are two modes of point-to-point communications and point-to-multipoint communications. Both modes have their application scenarios, usually most applications are point-to-point scenarios, but for some applications, point-to-multipoint scenarios.
Compared with point-to-point communication, point-to-multipoint communication has the main advantages that communication efficiency and information diffusion speed can be greatly improved, and a message can be transmitted to a plurality of information sinks by an information source side.
Point-to-multipoint communication is called multicast communication.
In the current data communication Network and P L MN (Public L and Mobile Network: Public land Mobile Network) Network, the application range of multicast communication is very wide.
In the L PWAN internet of things, Multicast communication also has a great application prospect, but at present, each L PWAN specification does not define a Multicast implementation method, for example, 11.2 sections of Unicast and Multicast MAC messages and 17.2 sections of Class C Multicast downlinks of L ° ra wan V1.0.2 specification established in L oRa alliance:
“Messages can be “unicast” or “multicast”. Unicast messages are sentto a single end-device and multicast messages are sent to multiple end-devices. All devices of a multicast group must share the same multicastaddress and associated encryption keys. The LoRaWAN Class B specificationdoes not specify means to remotely setup such a multicast group or securelydistribute the required multicast key material. This must either be performedduring the node personalization or through the application layer.”
the L oRaWAN ClassB specification does not define a method for remotely establishing such a multicast group and securely distributing the multicast key, which must be performed at a node personalization or through an application layer.
“Similarly to Class B, Class C devices may receive multicast downlinkframes. The multicast address and associated network session key andapplication session key must come from the application layer. The samelimitations apply for Class C multicast downlink frames:”
The translation is as follows: similar to Class B, Class C terminals may receive multicast downlink frames. The multicast address and associated network session key and application session key must come from the application layer. "
Therefore, the L oRaWAN specification does not define a distribution method of multicast addresses and session keys, so that deployment cannot be performed in practical use, multicast services are developed, management of multicast groups and maintenance of multicast routes are also included, and a solution is not provided by the L oRaWAN specification.
Disclosure of Invention
The invention provides a multicast implementation method of L PWAN network, which solves the problems of multicast group management, multicast address and session key distribution and multicast route maintenance.
In order to solve the technical problems, the invention adopts the following technical scheme:
an L multicast realization method of a PWAN Internet of things comprises a L oRa terminal, a plurality of L oRa base stations, a network server and multicast application;
the L oRa terminal is used for receiving multicast information;
the L oRa base station is used for transmitting multicast frames to all L oRa terminals in the coverage area of the base station;
the network server is used for distributing multicast addresses and maintaining multicast group routing;
the multicast application is used for being responsible for establishing and maintaining a plurality of multicast groups;
the method is characterized in that the multicast application configures a multicast root key MulticastKey, the L oRa terminal burns the multicast root key MulticastKey, the multicast application generates a 32-bit random number MulticastGroupRand for each multicast group, and then generates a multicast authentication key MulticastGroupAuthKey and a multicast encryption key multicastgroupseccey of the multicast group according to the multicast root key MulticastKey and MulticastGroupRand and a multicast authentication key calculation method;
the multicast authentication key calculation method comprises the following steps:
MulticastGroupAuthKey = aes128_encrypt(MulticastKey, 0x01 |MulticastGroupRand | NetID | pad16)
MulticastGroupSecKey = aes128_encrypt(MulticastKey, 0x02 |MulticastGroupRand | NetID | pad16)
the MulticastGroupAuthKey is used for verifying the data frame, and the MulticastGroupSecKey is used for encrypting the data frame;
the step of the multicast application establishing and maintaining the multicast group comprises the following steps:
firstly, the multicast application completes account opening work of all application L oRa terminals;
secondly, the multicast application establishes a multicast group, allocates a multicast group identifier and generates a multicast group context;
thirdly, the multicast application generates a random number MulticastGroupRand for the multicast group and generates a MulticastGroupAuthKey and a multicastgroupseccokey, and the information is stored in the context of the multicast group;
fourthly, applying multicast resources for a multicast group in the network server by the multicast application, simultaneously transmitting MulticastGroupAuthKey to the network server, after the network server receives the request, allocating the multicast resources, and if the allocation is successful, returning multicast resource information including a multicast group address, a multicast group channel, a multicast group spreading code, a multicast group paging cycle and the like to the multicast application, and simultaneously establishing a multicast group context, storing a multicast identifier and multicast resource information by the network server;
fifthly, selecting a specific L oRa terminal to join in the multicast group;
l oRa terminal receives the message and generates multicastgroupAuthKey and multicastgroupSecKey locally by using multicastKey and multicastgroupRandy, establishes a multicast context, and stores the multicast resource information and the key, when all terminals L oRa finish the notification, the multicast group is established;
in order to establish multicast group routing, the network server may establish a plurality of multicast groups, and establish an L oRa gateway linked list for each multicast group, where the linked list establishment method is as follows:
the first step is as follows: after receiving a multicast resource request of multicast application, the network server establishes a multicast context, and stores a multicast group ID, a multicast group address, a multicast group channel, a multicast group spreading code and a multicast group paging cycle;
secondly, the multicast application sends a multicast information notification message to each L oRa terminal joining the multicast group, the multicast information notification message needs to be sent through a network server, and when the network server sends the message, the network server can obtain the ID of the multicast group and the address information of L oRa terminals to find the context of the multicast group and the context of L oRa terminals;
thirdly, in L oRa terminal context, taking out the L oRa gateway identification of L oRa terminal current connection, and updating to the L oRa gateway linked list of multicast group context;
when the multicast application completes the multicast information notification messages of all L oRa terminals of the multicast group, the multicast application completes the establishment of the multicast route of the multicast group.
Preferably, the step of the multicast application sending the multicast message is as follows:
the first step is as follows: the multicast application sends a multicast packet to the network server, and the packet format comprises a multicast group address and Payload;
the second step is that: the network server finds out the context of the multicast group according to the address of the multicast group, constructs an MAC packet by using the MAC layer information of the multicast group, and constructs an authentication code MIC of the MAC by using a multicastGroupAuthKey;
thirdly, the network server sends an MAC packet to each L oRaGW according to an L oRaGW list associated with the multicast context, and a channel and a spreading code are set as a multicast group broadcast channel and a multicast spreading code;
fourthly, when each gateway downlink packet is sent, an idle time slice is searched for sending according to the gateway downlink resource, wherein L oRaWAN ClassC can randomly send, and L oRaWAN ClassB needs to schedule a specific downlink window to send according to a multicast group address;
the fifth step is that L oRaGW receives the downlink MAC packet and then sends the downlink MAC packet in the corresponding time slice;
sixthly, the multicast group L oRa terminals are divided into two types, the ClassC terminals are always protected on a multicast channel, the ClassB terminals calculate multicast downlink windows according to multicast addresses, a receiver is activated on each downlink window, the multicast channel is protected, demodulation codes are set as multicast group spreading codes, after L oRaWAN broadcast frames are received, the L oRa terminals use a multicastGroupAuthKey to check, whether the MIC generated by the terminals is consistent with the MIC carried by the frames is judged, if not, discarding is carried out, and if so, the multicastGroupSecKey is used to decode Payload content to obtain downlink commands of multicast application.
Preferably, L oRa the implementation flow of the multicast function inside the terminal is as follows:
1. l oRa burning multicast root key before opening account, and generating multicast session key subsequently;
2. the terminal unicast service flow comprises a terminal registration control module, and after the L oRa terminal is started, the terminal registration control module initiates a terminal registration flow;
3. after the registration is finished, the terminal registration control module establishes a unicast context for subsequent MAC processing and use;
4. after the terminal finishes registering, the multicast application establishes a multicast group through unicast, and then a multicast group joining command is sent;
5. after MAC processing receives the multicast group joining command, the unicast address is found, and then the unicast address is transmitted to a unicast application processing module after decryption;
6. the unicast application processing module analyzes the application layer data, finds that the application layer data is a multicast group joining command, and forwards the multicast group joining command to the multicast application control module for processing;
7. the multicast application control module processes a multicast group adding command, locally generates a multicast session authentication key MulticastGroupAuthKey and an encryption key multicastgroupsecckey by using a multicast root key and a multicast group random number MulticastGroupRand, and simultaneously constructs a multicast context by using multicast group address information, a multicast group channel, a multicast group spreading code, a multicast group paging cycle and other information carried by the multicast group adding command for subsequent MAC layer processing;
8. subsequent MAC layer processing can determine a guard channel and an adopted spreading code according to unicast context and multicast context, and for a ClassC mode, unicast and multicast downlink channels are required to be consistent with the spreading code; for the ClassB mode, only the terminal needs to open a receiver in the paging time windows of multicast and unicast to receive a network downlink command;
9. when a multicast command sent by a network is received, the MAC layer process firstly determines which multicast context is selected for decryption according to a frame address, selects a unicast address during unicast and selects a multicast address during multicast;
10. after decryption is completed, the MAC processing selects an application layer processing module according to the frame address, selects a unicast processing application module during unicast and selects a multicast processing application module during multicast.
Preferably, the multicast application internal multicast function implementation flow is as follows:
1. the protocol interface module of the multicast application is responsible for carrying out interface protocol forwarding with the network server, and comprises terminal reported data and application issued commands;
2. the subscription information of all terminals needs to be stored in a terminal database and is imported through an application configuration module;
3. for each terminal, after registration is completed, a terminal application context is provided, terminal related information is stored, and a unicast service flow of the terminal is responsible for a unicast application module;
4. the multicast application module is responsible for the whole multicast service flow, including the creation and maintenance of multicast groups, the issuing of multicast commands and the like;
5. an operator creates a multicast group through an operator interaction module and an application configuration module, and multicast group related information needs to be stored in a multicast group database and a multicast group application context and comprises the address and the secret key of the multicast group;
6. the multicast application needs to store a multicast root key which is completely consistent with a multicast root key burnt by a terminal, and one multicast root key is applied;
7. meanwhile, the multicast application needs to have a random number generation module which is responsible for generating multicast group random numbers MulticastGroupRand for each multicast group, then locally generating multicast group authentication keys MulticastGroupAuthKey and multicastgroupseccokey, and storing the keys into a multicast group database and context;
8. for each newly-built multicast group, the multicast application module needs to apply for multicast resources from the network server, and the multicast resources are stored in a multicast group database and a context after being obtained;
9. after the application of the multicast resources is completed, an operator can add multicast terminals to the newly-built multicast group, and the information of the multicast terminals needs to be stored in a multicast group database, so that later maintenance is facilitated;
10. for each terminal of the multicast group, the multicast application module needs to send a multicast group join command to the terminal through the unicast application module and inform the terminal of the context information of the multicast group;
11. the operator can also move out the terminal of the multicast group, so that the multicast application needs to send a multicast group deleting command to inform the terminal to delete the context of the multicast group locally, and the subsequent terminal does not need to pay attention to the multicast group command;
12. after the multicast group is established, an operator can send a multicast command to the whole multicast group through the multicast application;
13. when the multicast group needs to be released, the operator must delete all the terminals of the multicast group first, and then send a multicast group resource release message to the network server.
Preferably, the interface between the multicast application server and the network server and between the multicast application server and the multicast terminals is defined as follows:
1. multicast group resource application message: multicast application server 204 > web server 203:
the following information is carried: a multicast group identifier, a multicast application identifier and a multicast group authentication key MulticastGroupAuthKey 303;
2. multicast group resource authorization message: web server 203 > multicast application server 204:
the following information is carried: multicast group address, multicast group channel, multicast group spreading factor and multicast group paging cycle;
3. multicast group resource release message: multicast application server 204 > web server 203:
the following information is carried: multicast group identification, multicast application identification;
4. multicast group join command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, terminal address, multicast group address, and multicast group joining command content;
5. multicast group delete command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, terminal address, multicast group address, and delete multicast group command content;
6. multicast group command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, multicast group address and multicast group command content.
Preferably, the network server multicast function implementation flow is as follows:
1. the protocol stack interface module is responsible for communication between the network server and the multicast application and processes a receiving and sending packet between the network server and the multicast application;
2. l oRa the gateway interface module is responsible for the interface between the network server and L oRa gateway;
3. for an L oRa terminal, the terminal registration process is initiated after the terminal is started, the L oRa gateway interface module receives the terminal registration message and forwards the terminal registration message to the terminal registration module for processing, the terminal registration module applies for a unicast address to the address management module after the terminal registration module finishes terminal authentication, then a terminal context is established, and terminal MAC layer related information such as a terminal unicast address, a transmission gateway, a terminal identifier, a registration application identifier, a terminal authentication session key and the like are stored;
4. when a new multicast group is established by multicast application, a multicast resource application message is sent to a network server, after being received by a protocol stack interface module, the message is forwarded to a multicast sending module for processing, the multicast sending module processes the message, an address management module applies for a multicast group address, a new multicast group context is established, and multicast group related information is stored: the method comprises the steps of a multicast group address, a multicast application identifier, a multicast group broadcast channel, a multicast group spreading factor, a multicast group paging cycle and a multicast group authentication key; then generating a multicast group resource authorization message and returning the multicast group resource authorization message to the multicast application through a protocol stack interface module;
5. when a multicast terminal is added/deleted for a multicast group by multicast application, a multicast group adding/deleting command is sent, after the message network server receives the command, a protocol stack interface module forwards the message to a unicast transceiving module for processing, the unicast transceiving module obtains terminal context information through a terminal context module, a downlink packet is constructed and forwarded to an L oRa gateway interface module for processing, meanwhile, a unicast context is updated, a multicast group identifier is stored/deleted, and then a multicast group terminal adding/deleting message is forwarded to a multicast sending module, and the multicast group adding/deleting message carries a multicast group address and a base station identifier;
6. after receiving the multicast group terminal adding/deleting message, the multicast sending module finds the context of the multicast group through the multicast group address, adds the base station identifier into the multicast group base station list when increasing, and adds 1 to the use times of the base station if the base station identifier exists; when deleting, the using times of the base station in the multicast group base station list is reduced by 1, if 0, the base station is deleted;
7. for each multicast terminal, once the attached base station changes, the unicast forwarding module needs to forward a multicast group terminal change message to the multicast sending module, wherein the multicast group terminal change message carries a multicast group address, an old base station identifier and a new base station identifier; after receiving, the old base station identification is processed according to the multicast group terminal deletion process, the new base station identification is processed according to the multicast group addition process, and the new base station identification is stored to be consistent with the multicast terminal;
8. the multicast application sends a multicast group command, the protocol stack interface module forwards the message to the multicast sending module for processing after receiving the message, the multicast sending module finds the context of the multicast group through the multicast group address, constructs a downlink packet, obtains all L oRaGW sent by the downlink packet through the multicast group base station list, and sends the downlink multicast packet to each L oRaGW;
9. when the multicast application releases a multicast group, a multicast group resource release message is sent to the network server, the protocol stack interface module forwards the message to the multicast sending module for processing after receiving the message, and the multicast sending module firstly releases the multicast group address to the address management module and then releases the multicast group context.
The method has the advantages that the multicast function of L oRaWAN ClassB and ClassC terminals is realized, and the problem that the batch terminals issue commands simultaneously is solved.
Drawings
The invention is further described with reference to the accompanying drawings and the detailed description below:
FIG. 1 is a schematic representation of an L oRaWAN exemplary network;
FIG. 2 is a schematic diagram of a multicast network;
FIG. 3 is a multicast key generation schematic;
fig. 4 is a multicast address notification flow;
FIG. 5 is a multicast frame delivery process;
FIG. 6 is an L oRa end multicast implementation schematic;
FIG. 7 is a multicast application implementation schematic;
fig. 8 is a network server multicast implementation.
Detailed Description
The invention is further described below with reference to the accompanying drawings:
fig. 2 is a schematic diagram of the structure of an L oRaWAN multicast group:
l oRa terminal 201, receiving multicast information, which is ClassB or ClassC terminal;
l oRa base station 202, responsible for transmitting multicast frame to all L oRa terminals in the coverage of the base station;
the network server 203 is responsible for distributing multicast addresses and maintaining multicast group routing, and one multicast group consists of a plurality of L oRa base stations 202;
the multicast application 204: the multicast source is responsible for establishing and maintaining a multicast group; a multicast application will have multiple multicast groups, each with a different multicast address and security key.
FIG. 3 is a method for calculating a multicast group key
Each multicast application 204 needs to configure a multicast root key MulticastKey 301, and for all L oRa terminals 201 of the application, the multicast root key MulticastKey 301 needs to be burned before shipping.
For each multicast group, the multicast application generates a 32-bit random number MulticastGroupRand 302 for the multicast group, and then generates a multicast authentication key MulticastGroupAuthKey303 and a multicast encryption key multicastgroupseccokey 304 of the multicast group according to a certain algorithm according to MulticastKey 301 and MulticastGroupRand 302.
The generation algorithm is as follows:
the multicast authentication key calculation method comprises the following steps:
MulticastGroupAuthKey 303 = aes128_encrypt(MulticastKey 301, 0x01 |MulticastGroupRand 302 | NetID | pad16)
MulticastGroupSecKey 304 = aes128_encrypt(MulticastKey 301, 0x02 |MulticastGroupRand 302 | NetID | pad16)
the NetID (network identification) is configured by the web server 203, and is transmitted to the L oRa terminal 201 in a terminal registration acceptance command by the web server 203 at L oRa registration of the terminal 201, and is transmitted to the multicast application 204 for registration at registration of the multicast application 204.
The MulticastGroupAuthKey303 and the multicastgroupseccey 304 are independently calculated by the L oRa terminal 201 and the Multicast application 204, share a preconfigured multicastkey, and only need to transmit 32-bit MulticastGroupRand 301.
According to the L oRaWAN specification, multicastGroupAuthKey303 is used for checking data frames, and multicastGroupSecKey 304 is used for encrypting data frames.
A multicast group is a group of L oRa terminals that need to act simultaneously, and may be temporary or permanent.
For a multicast group, a multicast channel is needed, which must be a broadcast channel, so that a point transmits and all terminals in the channel can receive data.
Meanwhile, in order to distinguish multicast signals, different multicast groups are required to be allocated with different multicast addresses, and different multicast keys are allocated at the same time, so that reliable transmission of the multicast signals can be ensured.
The multicast group establishment and maintenance is performed by the multicast application 204, as shown in fig. 4, and the steps are as follows:
firstly, the multicast application 204 completes account opening work of all the application L oRa terminals 201;
secondly, the multicast application 204 establishes a multicast group, allocates a multicast group identifier, and generates a multicast group context;
thirdly, the multicast application 204 generates a random number MulticastGroupRand301 for the multicast group, and generates a MulticastGroupAuthKey303 and a multicastgroupseccokey 304, which are stored in the context of the multicast group;
fourthly, the multicast application 204 applies for multicast resources for the multicast group in the network server 203, and simultaneously transmits MulticastGroupAuthKey303 to the network server 203, after the network server 203 receives the request, the multicast resources are distributed, if the distribution is successful, multicast resource information including multicast group address, multicast group channel, multicast group spreading code, multicast group paging cycle (ClassB multicast group) and the like is returned to the multicast application 204, and simultaneously the network server 203 also establishes a multicast group context, and stores multicast identification and multicast resource information;
fifthly, selecting L oRa the terminal 201 to join in the multicast group;
sixthly, for each L oRa terminal 201, after the terminal is registered, notifying the multicast resource information and MulticastGroupRand301 information in a unicast mode;
when the notification is completed, the multicast group is established.
After the multicast group is established, the terminals 201 may be added L oRa at any time, or the terminals 201 may be deleted L oRa, and at this time, the multicast application will notify the newly added L oRa terminals 201 of the multicast group resource information and MulticastGroupRand301 information in a unicast manner, and send a command to the original terminals to delete the multicast group resource information and MulticastGroupRand301 information.
Meanwhile, for the temporary multicast group, a release action may be performed, and when releasing, the multicast application 204 needs to delete L oRa the terminal 201 first, then delete the multicast resource information to the network server 203, and finally locally release the multicast context information.
For the web server 203, it is necessary to maintain a multicast route for each multicast group, i.e. through which L oRa gateways 202 the multicast information needs to be sent.
Therefore, the network server 203 needs to establish L oRa a linked list of the gateways 202, and the linked list establishment method is as follows:
the first step is as follows: after receiving the multicast resource request of the multicast application 204, the network server 203 establishes a multicast context, and stores a multicast group ID, a multicast group address, a multicast group channel, a multicast group spreading code, and a multicast group paging cycle (during ClassB paging);
secondly, the multicast application 204 sends a multicast information notification message 406 to each L oRa terminal 201 joining the multicast group, the message needs to be sent through the network server 203, and when the network server sends the message, the network server can obtain the multicast group ID and the address information of L oRa terminals 201 to find the multicast group context and the terminal context of L oRa terminals 201;
thirdly, in the L oRa terminal context, the L oRa gateway 202 identifier currently connected with the terminal L oRa is taken out and updated to the L oRa gateway linked list of the multicast group context;
in this way, when the multicast application 204 completes the multicast information notification messages 406 of all L oRa terminals 201 of the multicast group, the network server 203 establishes a complete multicast route for it.
Subsequently, when the L oRa gateway 202 to which the terminal 201 is connected is changed in L oRa, the L oRa gateway link list of the multicast group context to which the terminal belongs is updated again.
After the multicast group is established, the multicast information can be sent, and the packet sending step is as shown in fig. 5:
the first step is as follows: 501: the multicast application 204 sends a multicast packet to the network server 203, where the packet format includes a multicast group address, Payload (ciphertext);
the second step is that: 502: the network server 203 finds the context of the multicast group according to the address of the multicast group, constructs an MAC packet by using the MAC layer information of the multicast group, and constructs an authentication Code MIC (message integrity Code) of the MAC by using a multicastGroupAuthKey 303;
in the third step 503, the network server 303 sends MAC packets to each L oRaGW202 according to the L oRaGW list associated with the multicast context.
The fourth step: 504: when each gateway downlink packet is sent, an idle time slice needs to be searched for sending according to the gateway downlink resource;
the fifth step is that 505: L oRaGW202 receives the downlink MAC packet and then sends the downlink MAC packet in the corresponding time slice;
and a sixth step 506, the multicast group L oRa opens a receiving time window at the corresponding time slice, checks by using a MulticastGroupAuthKey303 after receiving the L oRaWAN broadcast frame, judges whether the MIC generated by the terminal is consistent with the MIC carried by the frame, discards the MIC if the MIC is inconsistent with the MIC carried by the frame, and decodes the Payload content by using a multicastgroupSeckey 304 if the MIC is consistent to obtain a downlink command of the multicast application 204.
Fig. 6 illustrates a block diagram for implementing the multicast function in the terminal, which illustrates the following:
1, for a terminal to support multicast, a multicast root key 602 must be burned in before opening an account, and then used for generating a multicast session key;
2, the terminal unicast service flow is similar to that of a common terminal, and a terminal registration control 607 module is also needed, and after the terminal is started, the terminal registration control 607 module initiates a terminal registration flow;
3, after the registration is completed, the terminal registration control 607 module establishes a unicast context for subsequent MAC processing 604 to use;
4, after the terminal finishes the registration, the multicast application establishes a multicast group through unicast, and then sends a multicast group joining command;
5, after receiving the multicast group join command, the MAC process 604 finds that the multicast group join command is a unicast address, and then transmits the multicast group join command to the unicast application process 609 module after decryption;
6, the unicast application processing 609 module analyzes the application layer data, finds that the command is a multicast group joining command, and then forwards the command to the multicast application control 608 module for processing;
7, the multicast application control 608 module processes the multicast group join command, locally generates a multicast session authentication key MulticastGroupAuthKey303 and an encryption key multicastgroupsecckey 304 by using the multicast root key + multicast group random number MulticastGroupRand 302, and simultaneously constructs a multicast context by using multicast group address information, multicast group channel, multicast group spreading code, multicast group paging cycle (during ClassB), and other information carried by the multicast group join command, for use in subsequent MAC layer processing 604;
and 8, subsequent MAC layer processing determines a guard channel and an adopted spreading code according to the unicast context and the multicast context, and for the ClassC mode, the unicast and multicast downlink channels are required to be consistent with the spreading code. For the ClassB method, there is no requirement, but the terminal only needs to open the receiver in both the multicast and unicast paging time windows to receive the network downlink command.
9, when receiving a multicast command sent by a network, the MAC layer process 604 first determines which multicast context to select for decryption according to a frame address, selects a unicast address during unicast, and selects a multicast address during multicast;
10, after the decryption is completed, the MAC process 604 selects an application layer processing module according to the frame address, selects a unicast processing application 609 module during unicast, and selects a multicast processing application 610 module during multicast.
In this way, the terminal can implement the multicast processing function.
Fig. 7 illustrates a block diagram of implementing an internal multicast function in a multicast application, which illustrates the following:
1, a protocol interface module 701 of multicast application is responsible for interface protocol forwarding with a network server, including terminal reporting data and application issuing commands;
2, the subscription information of all terminals needs to be stored in the terminal database 704 and imported through the application configuration module 710;
3, for each terminal, after the registration is completed, there is a terminal application context 702, the terminal related information is stored, and the unicast service flow of the terminal is responsible for by the unicast application module 705;
4, the multicast application module 706 is responsible for the whole multicast service flow, including the creation and maintenance of multicast groups, the issuing of multicast commands, and the like;
5, an operator creates a multicast group through the operator interaction module 709 and the application configuration module 710, and multicast group related information needs to be stored in the multicast group database 707 and the multicast group application context 703, including an address and a key of the multicast group;
6, the multicast application needs to store a multicast root key 712 (which must be completely consistent with the multicast root key 602 burned by the terminal, one multicast root key is used for each application);
7, meanwhile, the multicast application needs to have a random number generation module 708, which is responsible for generating multicast group random numbers MulticastGroupRand 302 for each multicast group, and then locally generates multicast group authentication keys MulticastGroupAuthKey303 and multicastgroupsececececececekey 304, and stores them in the multicast group database 707 and context 703;
8, for each newly-built multicast group, the multicast application module 706 needs to apply for multicast resources from the network server, obtain the multicast resources, and store the multicast resources in the multicast group database 707 and the context 703;
9, after the application of the multicast resources is completed, an operator can add multicast terminals to the newly-built multicast group, and the information of the multicast terminals needs to be stored in the multicast group database 707, so that later maintenance is facilitated;
10, for each terminal of the multicast group, the multicast application module 706 needs to send a multicast group join command to the terminal through the unicast application module 705, and notifies the context information of the multicast group;
11, the operator can also move out the terminals of the multicast group, so that the multicast application needs to send a multicast group deleting command to inform the terminals of locally deleting the context of the multicast group, and the subsequent terminals do not need to pay attention to the multicast group command;
12, after the multicast group is established, the operator can send a multicast command to the whole multicast group through the multicast application 709;
13, when the multicast group needs to be released, the operator must delete all the terminals of the multicast group first, and then send a multicast group resource release message to the network server.
The interface between the multicast application server 204 and the network server 203 and the multicast terminal 201 is defined as follows:
1, multicast group resource application message: multicast application server 204 > web server 203:
the following information is carried: a multicast group identifier, a multicast application identifier and a multicast group authentication key MulticastGroupAuthKey 303;
multicast group resource authorization message: web server 203 > multicast application server 204:
the following information is carried: multicast group address, multicast group channel, multicast group spreading factor, multicast group paging cycle (required by the ClassB type);
3, multicast group resource release message: multicast application server 204 > web server 203:
the following information is carried: multicast group identification, multicast application identification;
4, multicast group join command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, terminal address, multicast group address, and join multicast group command content (transmitted to the terminal, encrypted, including multicast group address, multicast group channel, multicast group spreading factor, and multicast group paging cycle (required by ClassB type));
5, multicast group deletion command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, terminal address, multicast group address, and delete multicast group command content (transmitted to the terminal, encrypted, and containing the multicast group address);
6, multicast group command: multicast application server 204, web server 203, multicast terminal 201:
the following information is carried: multicast application identification, multicast group address, multicast group command content (transmitted to the terminal and encrypted);
fig. 8 illustrates a block diagram of implementing a multicast function of a network server, which illustrates the following:
1, a protocol stack interface module 808 is responsible for communication between a network server and multicast applications and processes a transceiving packet between the multicast applications;
2, L oRa gateway interface module is in charge of interface between network server and L oRa gateway;
3, for an L oRa terminal, the terminal registration process is initiated after the terminal is turned on, the L oRa gateway interface module 809 forwards the terminal registration message to the terminal registration module 801 for processing, after the terminal authentication is completed by the 801, the terminal applies for a unicast address by the address management module 807, then a terminal context is established, and terminal MAC layer related information such as a terminal unicast address, a transmission gateway, a terminal identifier, a registration application identifier, a terminal authentication session key and the like are stored;
4, when a new multicast group is established by the multicast application, a multicast resource application message is sent to the network server, and after receiving the message, the protocol stack interface module 808 forwards the message to the multicast sending module 804 for processing, and the message is processed by the multicast sending module 804, and then the address management module 807 applies for a multicast group address, establishes a new multicast group context, and stores the multicast group related information: multicast group address, multicast application identifier, multicast group broadcast channel, multicast group spreading factor, multicast group paging cycle (in ClassB), multicast group authentication key; then generating a multicast group resource authorization message and returning the multicast group resource authorization message to the multicast application through 808;
5, when a multicast terminal is added/deleted for the multicast group by the multicast application, a multicast group adding/deleting command is sent, after the message network server receives the message, 808 the message is forwarded to the unicast transceiving module 803 for processing, 803 obtains the terminal context information through 802, constructs a downlink packet, forwards the downlink packet to the L oRa gateway interface module 809 for processing, updates the unicast context, saves/deletes the multicast group identifier, and forwards a multicast group terminal adding/deleting message to the multicast sending module 804, wherein the multicast group adding/deleting message carries the multicast group address and the base station identifier;
6, after receiving the multicast group terminal join/delete message, the multicast sending module 804 finds the context of the multicast group through the multicast group address, adds the base station identifier to the multicast group base station list when increasing, and adds 1 to the use frequency of the base station if the base station identifier already exists; when deleting, the using times of the base station in the multicast group base station list is reduced by 1, if 0, the base station is deleted;
7, once the attached base station changes for each multicast terminal, the unicast forwarding module 803 needs to forward a multicast group terminal change message to the multicast sending module 804, where the multicast group terminal change message carries a multicast group address, an old base station identifier, and a new base station identifier; after receiving 804, the old base station identification is processed according to the multicast group terminal deletion process, the new base station identification is processed according to the multicast group addition process, and the new base station identification is stored to be consistent with the multicast terminal;
8, the multicast application sends a multicast group command, the 808 module receives the message and then forwards the message to the multicast sending module 804 for processing, the 804 finds the context of the multicast group through the multicast group address, constructs a downlink packet, obtains all L oRaGWs sent by the downlink packet through the multicast group base station list, and sends the downlink multicast packet to each L oRaGW;
9, when the multicast application releases a multicast group, it sends a multicast group resource release message to the network server, 808 forwards the message to the multicast sending module 804 for processing after receiving the message, 804 first releases the multicast group address to the address management module 807, and then releases the multicast group context.
In this way, the multicast service flow based on L oRaWAN can be completed.
The above description is only of the preferred embodiments of the present invention, and it should be noted that: it will be apparent to those skilled in the art that various modifications and adaptations can be made without departing from the principles of the invention and these are intended to be within the scope of the invention.

Claims (6)

1. An L multicast realization method of a PWAN Internet of things comprises a L oRa terminal, a plurality of L oRa base stations, a network server and multicast application;
the L oRa terminal is used for receiving multicast information;
the L oRa base station is used for transmitting multicast frames to all L oRa terminals in the coverage area of the base station;
the network server is used for distributing multicast addresses and maintaining multicast group routing;
the multicast application is used for being responsible for establishing and maintaining a plurality of multicast groups;
the method is characterized in that the multicast application configures a multicast root key MulticastKey, the L oRa terminal burns the multicast root key MulticastKey, the multicast application generates a 32-bit random number MulticastGroupRand for each multicast group, and then generates a multicast authentication key MulticastGroupAuthKey and a multicast encryption key multicastgroupseccey of the multicast group according to the multicast root key MulticastKey and MulticastGroupRand and a multicast authentication key calculation method;
the multicast authentication key calculation method comprises the following steps:
MulticastGroupAuthKey = aes128_encrypt(MulticastKey, 0x01 |MulticastGroupRand | NetID | pad16)
MulticastGroupSecKey = aes128_encrypt(MulticastKey, 0x02 |MulticastGroupRand | NetID | pad16)
the MulticastGroupAuthKey is used for verifying the data frame, and the MulticastGroupSecKey is used for encrypting the data frame;
the step of the multicast application establishing and maintaining the multicast group comprises the following steps:
firstly, the multicast application completes account opening work of all application L oRa terminals;
secondly, the multicast application establishes a multicast group, allocates a multicast group identifier and generates a multicast group context;
thirdly, the multicast application generates a random number MulticastGroupRand for the multicast group and generates a MulticastGroupAuthKey and a multicastgroupseccokey, and the information is stored in the context of the multicast group;
fourthly, applying multicast resources for a multicast group in the network server by the multicast application, simultaneously transmitting MulticastGroupAuthKey to the network server, after the network server receives the request, allocating the multicast resources, and if the allocation is successful, returning multicast resource information including a multicast group address, a multicast group channel, a multicast group spreading code, a multicast group paging cycle and the like to the multicast application, and simultaneously establishing a multicast group context, storing a multicast identifier and multicast resource information by the network server;
fifthly, selecting L oRa terminals to join in the multicast group;
l oRa terminal receives the message and generates multicastgroupAuthKey and multicastgroupSecKey locally by using multicastKey and multicastgroupRandy, establishes a multicast context, and stores the multicast resource information and the key, when all terminals L oRa finish the notification, the multicast group is established;
in order to establish multicast group routing, the network server may establish a plurality of multicast groups, and establish an L oRa gateway linked list for each multicast group, where the linked list establishment method is as follows:
the first step is as follows: after receiving a multicast resource request of multicast application, the network server establishes a multicast context, and stores a multicast group ID, a multicast group address, a multicast group channel, a multicast group spreading code and a multicast group paging cycle;
secondly, the multicast application sends a multicast information notification message to each L oRa terminal joining the multicast group, the message needs to be sent through a network server, and when the network server sends the message, the network server can obtain the multicast group ID and the address information of L oRa terminals to find the multicast group context and the terminal context of L oRa terminals;
thirdly, in L oRa terminal context, taking out the L oRa gateway identification of L oRa terminal current connection, and updating to the L oRa gateway linked list of multicast group context;
when the multicast application completes the multicast information notification messages of all L oRa terminals of the multicast group, the multicast application completes the establishment of the multicast route of the multicast group.
2. The method for realizing multicast of L PWAN Internet of things according to claim 1, wherein the step of sending multicast message by multicast application is as follows:
the first step is as follows: the multicast application sends a multicast packet to the network server, and the packet format comprises a multicast group address and Payload;
the second step is that: the network server finds out the context of the multicast group according to the address of the multicast group, constructs an MAC packet by using the MAC layer information of the multicast group, and constructs an authentication code MIC of the MAC by using a multicastGroupAuthKey;
thirdly, the network server sends an MAC packet to each L oRaGW according to an L oRaGW list associated with the multicast context, and a channel and a spreading code are set as a multicast group broadcast channel and a multicast spreading code;
fourthly, when each gateway downlink packet is sent, an idle time slice is searched for sending according to the gateway downlink resource, wherein L oRaWAN ClassC can randomly send, and L oRaWAN ClassB needs to schedule a specific downlink window to send according to a multicast group address;
the fifth step is that L oRaGW receives the downlink MAC packet and then sends the downlink MAC packet in the corresponding time slice;
sixthly, the multicast group L oRa terminals are divided into two types, the ClassC terminals are always protected on a multicast channel, the ClassB terminals calculate multicast downlink windows according to multicast addresses, a receiver is activated on each downlink window, the multicast channel is protected, demodulation codes are set as multicast group spreading codes, after L oRaWAN broadcast frames are received, the L oRa terminals use a multicastGroupAuthKey to check, whether the MIC generated by the terminals is consistent with the MIC carried by the frames is judged, if not, discarding is carried out, and if so, the multicastGroupSecKey is used to decode Payload content to obtain downlink commands of multicast application.
3. The multicast implementation method of L PWAN Internet of things of claim 1, wherein the implementation flow of the multicast function inside L oRa terminals is as follows:
1. l oRa burning multicast root key before opening account, and generating multicast session key subsequently;
2. the terminal unicast service flow comprises a terminal registration control module, and after the L oRa terminal is started, the terminal registration control module initiates a terminal registration flow;
3. after the registration is finished, the terminal registration control module establishes a unicast context for subsequent MAC processing and use;
4. after the terminal finishes registering, the multicast application establishes a multicast group through unicast, and then a multicast group joining command is sent;
5. after MAC processing receives the multicast group joining command, the unicast address is found, and then the unicast address is transmitted to a unicast application processing module after decryption;
6. the unicast application processing module analyzes the application layer data, finds that the application layer data is a multicast group joining command, and forwards the multicast group joining command to the multicast application control module for processing;
7. the multicast application control module processes a multicast group adding command, locally generates a multicast session authentication key MulticastGroupAuthKey and an encryption key multicastgroupsecckey by using a multicast root key and a multicast group random number MulticastGroupRand, and simultaneously constructs a multicast context by using multicast group address information, a multicast group channel, a multicast group spreading code, a multicast group paging cycle and other information carried by the multicast group adding command for subsequent MAC layer processing;
8. subsequent MAC layer processing can determine a guard channel and an adopted spreading code according to unicast context and multicast context, and for a ClassC mode, unicast and multicast downlink channels are required to be consistent with the spreading code; for the ClassB mode, only the terminal needs to open a receiver in the paging time windows of multicast and unicast to receive a network downlink command;
9. when a multicast command sent by a network is received, the MAC layer process firstly determines which multicast context is selected for decryption according to a frame address, selects a unicast address during unicast and selects a multicast address during multicast;
10. after decryption is completed, the MAC processing selects an application layer processing module according to the frame address, selects a unicast processing application module during unicast and selects a multicast processing application module during multicast.
4. The method of claim 1, wherein an implementation flow of an L PWAN internet of things multicast application internal multicast function is as follows:
1. the protocol interface module of the multicast application is responsible for carrying out interface protocol forwarding with the network server, and comprises terminal reported data and application issued commands;
2. the subscription information of all terminals needs to be stored in a terminal database and is imported through an application configuration module;
3. for each terminal, after registration is completed, a terminal application context is provided, terminal related information is stored, and a unicast service flow of the terminal is responsible for a unicast application module;
4. the multicast application module is responsible for the whole multicast service flow, including the creation and maintenance of multicast groups, the issuing of multicast commands and the like;
5. an operator creates a multicast group through an operator interaction module and an application configuration module, and multicast group related information needs to be stored in a multicast group database and a multicast group application context and comprises the address and the secret key of the multicast group;
6. the multicast application needs to store a multicast root key which is completely consistent with a multicast root key burnt by a terminal, and one multicast root key is applied;
7. meanwhile, the multicast application needs to have a random number generation module which is responsible for generating multicast group random numbers MulticastGroupRand for each multicast group, then locally generating multicast group authentication keys MulticastGroupAuthKey and multicastgroupseccokey, and storing the keys into a multicast group database and context;
8. for each newly-built multicast group, the multicast application module needs to apply for multicast resources from the network server, and the multicast resources are stored in a multicast group database and a context after being obtained;
9. after the application of the multicast resources is completed, an operator can add multicast terminals to the newly-built multicast group, and the information of the multicast terminals needs to be stored in a multicast group database, so that later maintenance is facilitated;
10. for each terminal of the multicast group, the multicast application module needs to send a multicast group join command to the terminal through the unicast application module and inform the terminal of the context information of the multicast group;
11. the operator can also move out the terminal of the multicast group, so that the multicast application needs to send a multicast group deleting command to inform the terminal to delete the context of the multicast group locally, and the subsequent terminal does not need to pay attention to the multicast group command;
12. after the multicast group is established, an operator can send a multicast command to the whole multicast group through the multicast application;
13. when the multicast group needs to be released, the operator must delete all the terminals of the multicast group first, and then send a multicast group resource release message to the network server.
5. The method for realizing multicast of L PWAN Internet of things according to claim 1, wherein the interface between the multicast application server and the network server and the multicast terminal is defined as follows:
1. multicast group resource application message: multicast application server (204) - - > web server (203):
the following information is carried: a multicast group identifier, a multicast application identifier and a multicast group authentication key (303);
2. multicast group resource authorization message: web server (203) - - > multicast application server (204):
the following information is carried: multicast group address, multicast group channel, multicast group spreading factor and multicast group paging cycle;
3. multicast group resource release message: multicast application server (204) - - > web server (203):
the following information is carried: multicast group identification, multicast application identification;
4. multicast group join command: multicast application server (204) - - > web server (203) - - > multicast terminal (201):
the following information is carried: multicast application identification, terminal address, multicast group address, and multicast group joining command content;
5. multicast group delete command: multicast application server (204) - - > web server (203) - - > multicast terminal (201):
the following information is carried: multicast application identification, terminal address, multicast group address, and delete multicast group command content;
6. multicast group command: multicast application server (204) - - > web server (203) - - > multicast terminal (201):
the following information is carried: multicast application identification, multicast group address and multicast group command content.
6. The multicast implementation method of L PWAN Internet of things according to claim 1, wherein the network server multicast function implementation flow is as follows:
1. the protocol stack interface module is responsible for communication between the network server and the multicast application and processes a receiving and sending packet between the network server and the multicast application;
2. l oRa the gateway interface module is responsible for the interface between the network server and L oRa gateway;
3. for an L oRa terminal, the terminal registration process is initiated after the terminal is started, the L oRa gateway interface module receives the terminal registration message and forwards the terminal registration message to the terminal registration module for processing, the terminal registration module applies for a unicast address to the address management module after the terminal registration module finishes terminal authentication, then a terminal context is established, and terminal MAC layer related information such as a terminal unicast address, a transmission gateway, a terminal identifier, a registration application identifier, a terminal authentication session key and the like are stored;
4. when a new multicast group is established by multicast application, a multicast resource application message is sent to a network server, after being received by a protocol stack interface module, the message is forwarded to a multicast sending module for processing, the multicast sending module processes the message, an address management module applies for a multicast group address, a new multicast group context is established, and multicast group related information is stored: the method comprises the steps of a multicast group address, a multicast application identifier, a multicast group broadcast channel, a multicast group spreading factor, a multicast group paging cycle and a multicast group authentication key; then generating a multicast group resource authorization message and returning the multicast group resource authorization message to the multicast application through a protocol stack interface module;
5. when a multicast terminal is added/deleted for a multicast group by multicast application, a multicast group adding/deleting command is sent, after the message network server receives the command, a protocol stack interface module forwards the message to a unicast transceiving module for processing, the unicast transceiving module obtains terminal context information through a terminal context module, a downlink packet is constructed and forwarded to an L oRa gateway interface module for processing, meanwhile, a unicast context is updated, a multicast group identifier is stored/deleted, and then a multicast group terminal adding/deleting message is forwarded to a multicast sending module, and the multicast group adding/deleting message carries a multicast group address and a base station identifier;
6. after receiving the multicast group terminal adding/deleting message, the multicast sending module finds the context of the multicast group through the multicast group address, adds the base station identifier into the multicast group base station list when increasing, and adds 1 to the use times of the base station if the base station identifier exists; when deleting, the using times of the base station in the multicast group base station list is reduced by 1, if 0, the base station is deleted;
7. for each multicast terminal, once the attached base station changes, the unicast forwarding module needs to forward a multicast group terminal change message to the multicast sending module, wherein the multicast group terminal change message carries a multicast group address, an old base station identifier and a new base station identifier; after receiving, the old base station identification is processed according to the multicast group terminal deletion process, the new base station identification is processed according to the multicast group addition process, and the new base station identification is stored to be consistent with the multicast terminal;
8. the multicast application sends a multicast group command, the protocol stack interface module forwards the message to the multicast sending module for processing after receiving the message, the multicast sending module finds the context of the multicast group through the multicast group address, constructs a downlink packet, obtains all L oRaGW sent by the downlink packet through the multicast group base station list, and sends the downlink multicast packet to each L oRaGW;
9. when the multicast application releases a multicast group, a multicast group resource release message is sent to the network server, the protocol stack interface module forwards the message to the multicast sending module for processing after receiving the message, and the multicast sending module firstly releases the multicast group address to the address management module and then releases the multicast group context.
CN201711393610.2A 2017-12-21 2017-12-21 Multicast implementation method of L PWAN Internet of things Active CN108307355B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711393610.2A CN108307355B (en) 2017-12-21 2017-12-21 Multicast implementation method of L PWAN Internet of things

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711393610.2A CN108307355B (en) 2017-12-21 2017-12-21 Multicast implementation method of L PWAN Internet of things

Publications (2)

Publication Number Publication Date
CN108307355A CN108307355A (en) 2018-07-20
CN108307355B true CN108307355B (en) 2020-07-31

Family

ID=62870521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711393610.2A Active CN108307355B (en) 2017-12-21 2017-12-21 Multicast implementation method of L PWAN Internet of things

Country Status (1)

Country Link
CN (1) CN108307355B (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109195115B (en) * 2018-07-25 2021-03-02 山东精诚电子科技有限公司 System and method for implementing voice paging and broadcasting by using narrow-band network
CN109195116B (en) * 2018-08-09 2022-04-19 中兴克拉科技(苏州)有限公司 Application layer multicast method of LPWAN Internet of things
CN109257829B (en) * 2018-09-05 2021-08-24 深圳市艾森智能技术有限公司 Synchronous service implementing method for LPWA network
CN111050357B (en) * 2018-10-14 2023-08-29 阿里巴巴集团控股有限公司 Communication method and device for terminal and base station
RU2703673C1 (en) * 2018-12-21 2019-10-21 Общество с ограниченной ответственностью "СОВРЕМЕННЫЕ РАДИО ТЕХНОЛОГИИ" Computer-implemented method for transmitting data in lpwan network between a subscriber station and a base station
CN111435950B (en) * 2019-01-15 2022-05-27 阿里巴巴集团控股有限公司 Address configuration method and device for terminal
CN110049562B (en) * 2019-03-13 2023-06-16 中兴克拉科技(苏州)有限公司 LoRaWAN (local area network) Internet of things supporting TDMA (time division multiple Access) access
CN110035428B (en) * 2019-03-13 2022-08-19 中兴克拉科技(苏州)有限公司 LoRaWAN Internet of things with relays inside
CN110035399B (en) * 2019-04-18 2021-09-03 Oppo广东移动通信有限公司 Message transmission method and related equipment
CN110337071B (en) * 2019-05-29 2021-08-20 厦门锐骐物联技术股份有限公司 Method and system for realizing packet broadcasting based on LoRaWAN
CN113132913A (en) * 2019-12-30 2021-07-16 北京九天微星科技发展有限公司 Method for realizing multicast based on LoRaWan
CN111479229A (en) * 2020-04-10 2020-07-31 全景智联(武汉)科技有限公司 Multicast communication method, device and system based on lorawan standard
CN112218247A (en) * 2020-09-24 2021-01-12 武汉慧联无限科技有限公司 Internet of things message issuing method and device, electronic equipment and storage medium
CN112511994B (en) * 2021-02-04 2021-04-27 杭州字节信息技术有限公司 Multicast implementation method based on LoRaWan and supporting ACK mechanism
CN115515004B (en) * 2022-11-04 2023-05-26 之江实验室 Multi-screen control system based on Android

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106162844A (en) * 2016-06-03 2016-11-23 西安电子科技大学 Implementation method based on the MAC protocol for wireless sensor networks of LoRa
CN107071003A (en) * 2017-03-23 2017-08-18 南京富岛信息工程有限公司 A kind of intelligent anti-running system and its communication means based on Lora communications
CN107147415A (en) * 2017-04-05 2017-09-08 深圳市亿兆互联技术有限公司 A kind of voice intercom device and method based on LORA technologies
CN107241744A (en) * 2017-06-28 2017-10-10 厦门纵行信息科技有限公司 A kind of wide area management system
CN107249211A (en) * 2017-07-28 2017-10-13 优艾特仪表科技成都有限公司 A kind of intelligent gateway and operational process based on LoRa and NB IoT

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106162844A (en) * 2016-06-03 2016-11-23 西安电子科技大学 Implementation method based on the MAC protocol for wireless sensor networks of LoRa
CN107071003A (en) * 2017-03-23 2017-08-18 南京富岛信息工程有限公司 A kind of intelligent anti-running system and its communication means based on Lora communications
CN107147415A (en) * 2017-04-05 2017-09-08 深圳市亿兆互联技术有限公司 A kind of voice intercom device and method based on LORA technologies
CN107241744A (en) * 2017-06-28 2017-10-10 厦门纵行信息科技有限公司 A kind of wide area management system
CN107249211A (en) * 2017-07-28 2017-10-13 优艾特仪表科技成都有限公司 A kind of intelligent gateway and operational process based on LoRa and NB IoT

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LoRaWAN 1.1 Specification;N.SORNIN;《2017 LoRa Allience》;20171011;全文 *

Also Published As

Publication number Publication date
CN108307355A (en) 2018-07-20

Similar Documents

Publication Publication Date Title
CN108307355B (en) Multicast implementation method of L PWAN Internet of things
CN101155343B (en) Method and system for adding multicast broadcasting service to terminal in wireless network
KR100836028B1 (en) Method for multicast broadcast service
US7944925B2 (en) System and method for grouping multiple VLANs into a single 802.11 IP multicast domain
CN109195116B (en) Application layer multicast method of LPWAN Internet of things
JP5288210B2 (en) Unicast key management method and multicast key management method in network
CN101416176B (en) DynamicHost configuration and network access authentication
US20020097732A1 (en) Virtual private network protocol
CN101247549B (en) Multicast method, multicast system and multicast equipment
CN101682830A (en) WIMAX multicast broadcast network system architecture
US20080130547A1 (en) Delegated Authentication Method for Secure Mobile Multicasting
EP2014044A2 (en) Communications in relay networks
CN101150396B (en) Method, network and terminal device for obtaining multicast and broadcast service secret key
JP2024507208A (en) How to make a cellular network work
CN101515858B (en) Method, system and terminal for adding multicast-broadcast services into terminal in wireless network
CN101170730B (en) Multicast and broadcast service system and multicast and broadcast service domain classification method
CN102857918A (en) Vehicle-mounted communication system
US20050013268A1 (en) Method for registering broadcast/multicast service in a high-rate packet data system
JP4158972B2 (en) Multi-hop communication method
CN101150467A (en) Method for adding multicast and broadcast service into communication system and terminal
KR100684306B1 (en) Method for requesting, generating and distributing traffic encryption key according to services in wireless portable internet system and apparatus thereof, and protocol configuration method in the same
KR101036710B1 (en) System and method for supporting multicast and broadcast service in a wireless network
CN116918300A (en) Method for operating a cellular network
KR100934708B1 (en) System and method for supporting multicast broadcasting service in communication system
Kabudvand ODMRP with Quality of Service and local recovery with security Support

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant