A process for communicating utility-related data over at least one network is described. the process includes: collecting utility-related data at a hub device during a first predetermined period of time; securing the utility-related data at the hub device using digital envelopes during the first predetermined period of time; initiating by the hub device an autonomous wake up process during a second predetermined period of time; sending the secure utility-related data over a first network to a designated server via at least one user datagram protocol (“UDP”) message during the second predetermined period of time; and receiving an acknowledgement of receipt message of the at least one UDP message from the designated server; wherein the first and second predetermined periods of time typically do not overlap, but may overlap.
|
35. A system for communicating utility data over a wide area network (wan) comprising:
means for collecting utility data;
means for securing the utility data using digital envelopes;
means for sending the secure utility data over a wan via at least one UDP message;
means for receiving the secure utility data;
means for receiving an acknowledgement of receipt of the at least one UDP message from the means for receiving the secure utility data; means for receiving clock synchronization information; and
means for retransmitting secure utility data that is not acknowledged,
wherein the means for sending the secure utility data over a wan via at least one UDP message, sends multiple UDP messages in a single bulk push to the designated server during the second predetermined period of time and wherein each of the multiple UDP messages includes a header having a code therein for facilitating sorting of each of the multiple UDP messages into predetermined storage buckets by the designated server during the second predetermined time period.
1. A process for communicating utility-related data over at least one network comprising:
collecting utility-related data at a hub device during a first predetermined period of time;
securing the utility-related data at the hub device using digital envelopes during the first predetermined period of time;
initiating by the hub device an autonomous wake up process during a second predetermined period of time; sending the secure utility-related data over a first network to a designated server via at least one user datagram protocol (UDP) message during the second predetermined period of time; and
receiving an acknowledgement of receipt message of the at least one UDP message from the designated server, wherein the hub device sends multiple UDP messages in a single bulk push to the designated server during the second predetermined period of time and wherein each of the multiple UDP messages includes a header having a code therein for facilitating sorting of each of the multiple UDP messages into predetermined storage buckets by the designated server during the second predetermined time period.
21. A process for communicating utility-related data over at least one network comprising:
collecting utility-related data from a first network at a hub device during a first predetermined period of time;
securing the utility-related data at the hub device using digital envelopes during the first predetermined period of time;
initiating by the hub device an autonomous wake up process during a second predetermined period of time;
sending the secure utility-related data from the hub device over a second network to a designated server via at least one user datagram protocol (UDP) message during the second predetermined period of time; and
receiving an acknowledgement of receipt message of the at least one UDP message from the designated server, wherein the hub device sends multiple UDP messages in a single bulk push to the designated server during the second predetermined period of time and wherein each of the multiple UDP messages includes a header having a code therein for facilitating sorting of each of the multiple UDP messages into predetermined storage buckets by the designated server during the second predetermined time period.
2. The process according to
3. The process to
5. The process according to
6. The process according to
7. The process according to
8. The process according to
9. The process according to
10. The process according to
11. The process according to
14. The process according to
15. The process to
16. The process according to
17. The process according to
18. The process according to
19. The process according to
20. The process according to
22. The process according to
23. The process according to
25. The process according to
26. The process according to
27. The process according to
29. The process according to
30. The process according to
31. The process according to
32. The process according to
33. The process according to
34. The process according to
|
This application claims benefit of priority to U.S. Provisional Patent Application No. 61/441,375 filed Feb. 10, 2011 entitled DEVICE AND METHOD FOR FACILITATING SECURE COMMUNICATIONS OVER A CELLULAR NETWORK, which is incorporated herein by reference in its entirety.
1. Field of Embodiments
The embodiments described herein are generally directed to improved communications between HAN devices and head-end systems utilizing a communications hub function over a WAN such as a cellular network.
2. Summary of Related Art
In order to track utility use data and provide such data or information related thereto to the service provider and/or the subscriber, there must be communications from the Reporting Devices. Traditionally, such information had to be taken directly from the meter, i.e., a person had to walk up to the meter(s) at the subscriber premise and literally read the meter. Technology progressed, and the process was arguably improved through the use of stand-off or drive by meter reading, whereby a person could take readings using, e.g., RF communications, from a truck driving by and/or walking by a premise. Currently, technology has advanced to the point where meter readings can be communicated remotely using WANs, e.g., cellular networks, without the need for a person to physically view or approach the individual meters or the subscriber premises. While this system and process is promising, there are some implementation hurdles due to the need to scale to millions, potentially billions, of subscriber premises and reporting devices. WAN bandwidth is not unlimited and it is clearly susceptible to overload. This degree of scaling presents challenges to the communication and processing processes as described further herein.
Referring back to
By way of specific example, current processes for using system 10 of
Accordingly, under the prior art messaging process, the HES must send an SMS message every time it wants to wake up a Comms Hub and wait for a reply to request information. Since the HES's request for meter read info from thousands and even millions of Comms Hubs, there are equally as many SMS messages to be sent each day. SMS messages are traditionally tariffed individually or tariffed with enough restrictions as to make their use precious. The SMS wakeup and response step takes time because SMS delivery can be slow and it takes time to set up the GPRS data network connection. This slows down the HES process and waists HES processing resources. As such, this wake up step is an expensive step in the prior art process. Further, the handshake-based IP protocols, e.g., TCP/TLS, of the prior art process requires multiple messages within a single thread and real-time securitization which contributes to latency including decreased throughput, increased time on network, and increased processing time. There is a need in the art to utilize the existing infrastructure of
In accordance with an embodiment described herein, a process for communicating utility-related data over at least one network includes: collecting utility-related data at a hub device during a first predetermined period of time; securing the utility-related data at the hub device using digital envelopes during the first predetermined period of time; initiating by the hub device an autonomous wake up process during a second predetermined period of time; sending the secure utility-related data over a first network to a designated server via at least one User Datagram protocol (“UDP”) message during the second predetermined period of time; and receiving an acknowledgement of receipt message of the at least one UDP message from the designated server.
In accordance with an embodiment described herein, a process for communicating utility-related data over at least one network includes: collecting utility-related data from a first network at a hub device during a first predetermined period of time; securing the utility-related data at the hub device using digital envelopes during the first predetermined period of time; initiating by the hub device an autonomous wake up process during a second predetermined period of time; sending the secure utility-related data from the hub device over a second network to a designated server via at least one User Datagram protocol (“UDP”) message during the second predetermined period of time; and receiving an acknowledgement of receipt message of the at least one UDP message from the designated server.
This document includes the following acronyms and terms as defined in the tables set forth below:
Acronym
Description
ACSE
Association Control Service Element (DLMS UA)
APDU
Application Protocol Data Unit
API
Application Programming Interface
APS
Application Protocol Sub-layer (ZigBee)
ASE
Application Service Element (DLMS UA)
CBKE
Certificate Based Key Establishment (ZigBee)
COSEM
Companion Specification for Energy Meters
(DLMS UA)
DE
Digital Envelope
DLMS
Device Language Message Specification
(DLMS UA)
DLMS UA
DLMS Users Association
DNS
Domain Name Server (IETF)
DST
Daylight Savings Time (local time)
EUI
Extended Unique Identifier
GPRS
General Packet Radio Service (DLMS UA)
GSM
Global System for Mobile Communications (IEC)
HAN
Home Area Network
HES
Head End System
HHT
Hand Held Terminal
IC
Interface Class (DLMS UA) (standards group)
IEEE
Institute of Electrical and Electronics Engineers
(standards group)
IETF
Internet Engineering Task Force (standards group)
IHD
In-Home Device
IP
Internet Protocol (IETF)
IPv4
Internet Protocol Version 4 (IETF)
ISMI
International Mobile Subscriber Identity
MAC
Medium Access Control (IEEE)
MLD
Management Logical Device (DLMS UA)
MSE
Manufacturer Specified Extension (additional
ZigBee clusters)
MSIN
Mobile Subscriber Identification Number
(part of IMSI)
OTA
Over The Air
PAN
Personal Area Network (IEEE)
PPP
Point to Point Protocol (IETF)
RPC
Remote Procedure Call
SMS
Short Message Service (IETF)
TCP
Transmission Communication Protocol (IETF)
TLS
Transport Layer Security (IETF)
TOU
Time Of Use
UDP
User Datagram Protocol (IETF)
UTC
Coordinated Universal Time
WAN
Wide Area Network
WPDU
Wrapper Protocol Data Unit (DLMS UA)
xDLMS
Extended Device Language Message Specification
(DLMS UA)
ZCL
ZigBee Cluster Library
ZGD
ZigBee Gateway Device
Term
Description
Application Service
DLMS/COSEM Application Service Elements:
Element
ACSE and xDLMS
Association Control
DLMS/COSEM application layer service that
Service Element
controls the association of client application
processes
channel mask
Channels available for use by the HAN devices
cluster
A related set of attributes and methods
Comms Hub
Communications hub that connects to the
WAN and the HAN networks. It reports
metering information and manages the
metering and in-home devices.
E-meter
Electricity meter
EUI-64
The 64 bit, IEEE administered EUI used to
identify devices and as the MAC address
G-meter
Gas meter
Interface Class
(COSEM) an Interface Class (IC) is a generic
format of a COSEM object specifying
attributes, their data types, and the method for
the server and client
Inter-PAN
Limited functionality connection established
without forming a network
MAC address
The 64 bit globally unique address assigned to
each IEEE802 device, which includes the HAN
devices. The address is structured, and it
identifies the manufacturer
Management
DLMS/COSEM element that reveals the
Logical Device
internal protocol structure of a physical device
mobile operator
WAN GSM/GPRS system operator (e.g.,
Vodafone)
PAN coordinator
(IEEE802.15.4) the controller of the
IEEE802.15.4 network
push
A Comms Hub initiated message to the Head
End System
short address
The 16 bit IEEE802.15.4 address assigned to a
device on joining the HAN network
smart meter network
The WAN and HAN networks and Comms
Hub that provides communication services to
the Head End System and HAN devices
The following documents are incorporated herein by reference in their entirety: “UCAIug Home Area Network System Requirements Specification: A Work Product of the OpenHAN Task Force formed by the SG Systems Working Group under the Open Smart Grid (OpenSG) Technical Committee of the UCA International Users Group,” Version 2.0—Aug. 30, 2010; “ZigBee Smart Energy Profile Specification,” ZigBee Profile: 0x0109; Revision 16, version 1.1, Mar. 23, 2011, Document 075356r16; ZigBee Smart Energy Test Specification, May 2008 ZigBee Document 075384r17; ZigBee Cluster Library Specification, ZigBee Document 075123r02ZB; and Institute of Electrical and Electronics Engineers, Inc., IEEE Std. 802.15.4-2003 & 2006, IEEE Standard for Information Technology—Telecommunications and Information Exchange between Systems—Local and Metropolitan Area Networks—Specific Requirements—Part 15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low Rate Wireless Personal Area Networks (WPANs); “Network Specification” Version 1.00, ZigBee Document 02130r10; “Draft Smart Energy Profile Specification” ZigBee Document 105638r08ZB Rev. 16 Ver. 0.9 Jul. 20, 2010; “ZigBee SE 1.x Extensions for UK” Revision 1.0, filename: Zigbee_SE1.x_Extensions_UK_rep1.doc, Date: 23-Nov.-2010; “ZigBee Over-The_Air Upgrading Cluster” ZigBee Document 095264r18, Rev. 18, Version 1.0, Mar. 14, 2010; and “Network Device: Gateway Specification” Version 1.0, ZigBee Document 075468r35, Rev 35, Mar. 23, 2011. Further, many of these documents and the subject matter therein is updated periodically and those updates are appreciated by one skilled in the art and considered to be included herein.
As shown in the figures and discussed further herein, the Comms Hub acts as a coordinator and gateway between the WAN and HAN. Accordingly, the Comms Hub processor or processors are configured with necessary programming, e.g., firmware, in order to interface with the separate networks.
A more particular exemplary implementation of the general network component architecture 10′ is illustrated in
As is understood by those skilled in the art, the ZigBee Gateway specification implements remote interactions with ZigBee devices. The ZigBee Gateway protocol accesses both DLMS and ZCL objects on the Comms Hub and any of the devices on the ZigBee network.
The GPRS protocol is used to gain access to the mobile data network and to frame the data transmissions over the WAN. It is a connection-oriented protocol, and the connection is initiated by the Comms Hub. The data transmitted over the GPRS connection uses the IPv4 Network Layer and an IETF Transport Layer protocol. The IP transport port numbers are used to direct messages to different devices. The DLMS/COSEM TCP and UDP port 4059 is used for the Comms Hub's DLMS physical device client application process. The ZigBee Gateway Device's (ZG) IP port assignment, 17756, allows the HES to communicate directly with the ZigBee clusters in the Comms Flub. These clusters include the control clusters for the E-meter(s), the IHD(s), and G-meter(s).
TCP/TLS is used at the IP transport layer for HES initiated communications and UDP/DE for push messages from the Comms Hub.
WAN messages use TLS security protocol for TCP and digital envelope security for UDP. The digital envelop layer is above the transport layer and below the xDLMS layer and the ZigBee APS layer.
TCP/TLS DLMS messages use the DLMS/COSEM transport layer wrapper. This wrapper identifies the source and destination client application processes within the device.
The DLMS/COSEM application sub-layer Association Control Service Element provides services for the client application processes. These services include setting up the association of the client application processes between devices. The xDLMS services include get, set, action, event notification, and trigger event notification.
The ZigBee ZCL and Grip layer is used by the ZigBee Gateway described further below. The ZigBee Gateway allows the HES to communicate with the DLMS and ZigBee objects in the HAN devices and Comms Hub.
The following paragraphs summarize various examples of the paths that messages may take either up or down through the stacks illustrated in
In a first use case, a HES to Comms Hub stack sequence flow for a TCP DLMS get message sent to an E-meter by the HES through the Comms Hub communication layers includes the following flows (the WAN registration is already established): GPRS; IPv4 (destination address=the Comms Hub IP address); IP transport destination port (set to the ZigBee gateway, 17756); TCP (session established with the Comms Hub); TLS (decrypted at the Comms Hub using the TLS session key); ZigBee Gateway Grip header procedure call, sendDLMScommand, addressed to the E-meter's MAC address and ZigBee DLMS Tunnel cluster: (the Comms Hub places DLMS message in a ZigBee tunnel payload); ZigBee APS (set to the cluster source and destination IDs=Tunnel cluster); ZigBee Network (tunnel end point's short address=target E-meter address); Data Link Layer (destination address short address=target E-meter address); and PHY (IEEE802.15.4 radio).
In a second use case, a Comms Hub to HES stack sequence for a push using UDP/DE for a DLMS message sent to the HES by the Comms Hub includes the following flows: DLMS physical device application process constructs a message (the Comms Hub push aggregator message); xDLMS (send a set.request to the Head End System); DLMS/COSEM Push format: source application process tag, DLMS attributes (class ID, instance ID, attribute ID, value); Digital Envelope (encrypt and sign using certificates); UDP protocol; IP transport layer destination port (set to HES's IP transport port for the push messages, 54059); IPv4 (set to the HES's IP address); PPP; and GPRS.
In a third use case, a HES to Comms Hub stack sequence flow for a TCP ZigBee PutPrice cluster message sent to the Comms Hub Price cluster by the HES includes the following flows: GPRS; PPP; IPv4 (set to the Comms Hub's IP address); IP transport destination port (set to the gateway 17756 port); TCP (session established with the Comms Hub); TLS (decrypted at the Comms Hub using the TLS session key); ZigBee Gateway Grip header procedure call, PutPrice (addressed to Price cluster ID); and Price cluster payload.
More specifically, communications with the WAN may require registration with a GSM circuit switched network using either the 900 MHz or 1800 MHz band utilizing one or both of an external and internal antenna. This registration with the GSM circuit switched network does not create a connection to the HES.
The Head End System interface to the SMS service uses GDSP call (e.g., Vodafone API call: submitSMS( )). This call has the payload: UserName, Password, Head End System IP Address, source trusted number and token ID. Message flows are described further below.
The GPRS interface allows the Comms Hub to identify the mobile operator networks that are available, to connect to the selected network, and to disconnect from the network. Connections are established either by scheduled or ad hoc activities in the Comms Hub or as a result of an SMS wakeup from the Head End System. GPRS connections are not kept open by the Comms Hub. Referring generally to
The payload of the SMS Wakeup Message sent from the HES has the comma separated, text based, order sensitive payload fields: <control>, <TokenId>, <ip_address>, <domain_name>. Additional details are found in Table 0 below.
TABLE 0
Name
Type
Range
Description
<Control>
Text hex
two characters
Control flags for
string
SMS fields
<TokenId>
Hex integer
00000000 to
SMS token ID
string
FFFFFFFF
assigned by the
Head End System.
Present if selected
by the control flag
<IpAddress>
IP address
000.000.000.000
IP address of the
(format: four
to
Head End System
bytes, each
255.255.255.255
processor requesting
byte an IPV4
the response.
subaddress =
Present if selected
w.x.y.z)
by the control flag
<DomainName>
Character
Up to 139
Fully qualified
string
characters
domain name of the
Head End System
processor requesting
the response. Present
if selected by the
control flag
<PortNum>
16 bit
The destination port
integer
full
number to be used by
the SMS Wakeup
Response, (This port
payload option is only
used in the
development phase
and is not supported
by customer firewalls)
Control is a Text hex byte that encodes the test control flag bits to be used after selecting the network as follows: bit 0 set to 1 if the token ID is present (This value will always be present if the test is requested); bit 1 set to 1 if the destination IP Address of a particular Head End System processor is present; bit 2 set to 1 if the fully qualified domain name of a particular HES process is present (Note that if both the IP address and the domain name are both present, then only the domain name is used. If neither is provided, the Comms Hub uses the configured domain name); bit 3 set to 1 if the port number of the Head End System process is included; bits 4-7 reserved and set to 0 (Example: “05” text string sets the flag bits for the token ID, and domain name).
TokenId is the Token ID of the command assigned by the Head End System for inclusion with the push SMS wakeup response message sent by the Comms Hub. ip_address is destination IP address of the target Head End System to be used by the Comms Hub for the SMS wakeup response message. DomainName is the destination fully qualified domain name of the target Head End System to be used by the Comms Hub for the SMS wakeup response message. The limit on the size of the domain name is based on the maximum SMS size of 160 characters and the characters needed to transmit the comma delimitated control, TokenId, and request_time fields. PortNum is the HES port number to be used as the destination port in the IP transport layer of the SMS Response message. Used during development only.
The message flow diagram for the SMS wakeup is shown in
The Comms Hub may not be able to always connect to the preferred mobile operator. When this happens the mobile operator sends the SMS message to the alternate mobile system the Comms Hub is registered on.
In accordance with a preferred process, SMS messages are minimized by programming the Comms Hubs to wake up at random times within a predetermined window of time to initiate data pushes to the HES. The Comms Hub messages are secured in advance of wake up and are pushed in bulk. More specifically, the messages can be secured by the CommsHub using Digital Envelopes (DE) before sending (discussed further below). DE uses RSA PKCS7 and IETF number as is known in the art. The securing step need not be performed on the fly, i.e., in real time. Accordingly, securitization at the Comms Hub does not contribute to the latency budget of the push process and utilizes the Comms Hub's limited processing power during an off-peak use time. After random, autonomous wake up during the predetermined window, the Comms Hub pushes multiple previously DE secured messages in bulk to the HES using UDP (User Datagram Protocol). UDP does not use handshakes or other negotiations like those of TCP and other IP protocols. Accordingly, the number of messages required to communicate between the HES and the Comms Hub is reduced. Further, UDP is a stateless protocol, treating each request independently, and not as a string, thus reducing latency, etc. that necessarily comes with allocating processing and memory capacity to tracking and completing related requests.
Referring to
The UDP messages include header information that optimizes the HES processing. During the time in which the HES is receiving an acknowledging the Comms Hub UDP#1 push messages, the HES is dedicating all processing resources to receipt, ACK and storage of the UDP#1 push messages. The processing of the UDP#1 push messages by the HES occurs later in most cases. Accordingly, in order to determine at the time of receipt what is in the UDP#1 push messages for storage and acknowledgement purposes, the UDP#1 headers include a reason code. In operation, after stripping of IP headers, the HES comes to a header section that allows the HES to determine where to store for future processing, e.g., this is an electric meter push, store in bucket A; this is a gas meter push, store in bucket B, this is an alarm, store in bucket C and add to UDP_ACK#2 instructions for Comms Hub to call the HES during next off-peak processing window of time. The DE security offers threes types of security encryption/privacy, authentication, is the sending device's identity confirmed, and integrity, has the message been changed. Accordingly using DE, different parts of the UDP can have various levels of security. For example, the reason code does not need (and likely would not want) privacy encryption, but integrity protection would likely be used. Whereas the primary message data would require privacy encryption and integrity protection.
Additionally, every UDP_ACK#2 sends current clock configuration of the HES which is synchronized with outside world. Accordingly, this facilitates Comms hub clock synchronization which in turn synchronizes Reporting Devices using other existing protocols.
The presently described embodiment still allows for the HES to use SMS wake up messages and TCP/TLS sessions for longer conversation between the HES and the Comms Hub, which is reserved for non-standard/single thread messages. This may be required when there is an issue and the HES needs to speak with Comms Hub. Additional description found herein with reference to
IPv4 is used as the network layer for the WAN. One skilled in the art recognizes that this does not preclude migrating to IPv6 or other related upgrades in the future. The Comms Hub receives a dynamic IPv4 address and DNS addresses when PDP context is activated. The Head End System uses TCP/TLS and UDP/DE protocols to communicate with the Comms Hub.
Similarly, communications with HAN devices follow recognized standards such as IEEE802.15.4 for the radio and MAC interface and ZigBee specifications, e.g., ZigBee Network, ZigBee APS and ZigBee application clusters, the current specifications of which are known to those skilled in the art and incorporated herein by reference. By way of example, HAN devices may use the Direct Sequence Spread Spectrum (DSSS) radio operating in the 2.4 GHz band. Additionally, the Comms Hub and the Hand Held Terminal (HHT) may form a temporary point-to-point connection for commissioning and service activities. See further description herein and U.S. patent application Ser. No. 13/296,552 filed on Nov. 15, 2011, entitled “METHOD FOR SECURELY COMMUNICATING ACROSS MULTIPLE NETWORKS USING A SINGLE RADIO,” which is incorporated herein by reference in its entirety
In a particular embodiment, in order to address individual devices on the HAN (including the Comms Hub), the devices must be identified. Accordingly, each HAN device has an identifier, e.g., EUI-64 identifier, assigned to it by the manufacturer. This identifier is used as the HAN long device address. ZigBee devices select a short, 16 bit HAN short device address.
The Comms Hub selects a random 16 bit PAN-ID. The PAN-ID differentiates one Comms Hub network from another Comms Hub network in the neighborhood. The PAN ID can be read by the HES.
Similarly, for WAN Addressing the Comms Hub has a 15 digit IMSI that contains the Mobile Country Code, the Mobile Network Code and the MSIN. The MSIN is the individual subscriber identifier of the Comms Hub. The IMSI is used to authenticate the Comms Hub to the mobile operator. The IMSI is used by the HES to address SMS messages to a Comms Hub. The Comms Hub has an IP address, e.g., IPv4 address, which is used by the IP Network layer of the WAN protocol stack to communicate with the HES. The HES has one or more IP addresses, e.g., IPv4 addresses, and one or more fully qualified domain names. The multiple addresses and the domain name are used to load balance the network traffic and to differentiate energy service providers. The Comms Hub can be configured with the fully qualified domain name. It uses the domain name to call the DNS to resolve it into an IP address. When the HES sends a SMS message to the mobile operator's API, the operator sends the message from a trusted number. The trusted number is used by the Comms Hub to identify that the SMS message is from a qualified source. The Comms Hub is configured with up to three trusted numbers.
Referring to
The ZigBee Gateway specification used by the HES implements Gateway Remote Interface Protocol (GRIP) Remote Procedure Calls (RPC) and the ZCL function category. The ZigBee Gateway components implemented by the Comms Hub are the GRIP Remote Procedure Calls and the ZigBee Cluster Library (ZCL) functions. The ZCL interface of the ZigBee Gateway allows interaction with any: ZigBee device including the Comms Hub itself through the use of EUI-64; ZigBee End Point supported on each device through the use of the End Point ID; Clusters implemented on each End Point through the use of the Cluster ID. This includes the ZigBee DLMS tunneling cluster to access DLMS objects on a remote ZigBee device; Classes within these Clusters through the use of the Class ID; and Attributes or Methods within these Classes through the use of the Attribute or Method ID.
The Gateway Remote Interface Protocol (GRIP) is a lightweight Remote Procedure Call (RPC) protocol used for calling a remote function and retrieving the results between a Comms Hub and a Host Application. Each GRIP frame consists of the following components: a GRIP Header which comprises frame controls and RPC controls and a GRIP Payload which contains information specific to the frame type. The GRIP Frame Format is shown in Table 1.
TABLE 1
Octet: 1
1
2
1
1
0/2
2
0/2
Variable
Version
Frame
Transaction
Function
Function
Manufacturer
Function
RPC
RCP payload
control
identifier
domain
category
code
identifier
status
General header
RPC function identification fields
RPC function
payload
GRIP Header
GRIP Payload
The GRIP Header is sub-divided into a general header and a RPC function identification fields. The fields of the GRIP header appear in a fixed order as listed below: the Version field is 8-bits in length and specifies the version of the GRIP used by the sender of the frame (value of the version shall be set to 0x00); the Frame control field is 8-bits in length, set to 0x01 if the frame is a request to a GRIP entity, set to 0x02 if the frame is a response to a prior request; the Transaction identifier which is used to match a frame of type response with a frame of type request on the same communication channel between the same entities and is selected by the originator of the request and shall be unique for this request until the response is received or the transaction failed; the Function domain which specifies the scope of the API used to identify the function (field shall be set to 0x01); the Function category field is 8-bits in length and specifies the category of an RPC function (this field may have the values shown in Table 2); the Manufacturer code field is 16-bits in length and specifies the assigned manufacturer code for proprietary extensions to GRIP (field shall only be included in the frame if the function category field of the frame is set to 0x00); the Function identifier field is 16-bits in length and specifies a unique identifier for a function; the RPC status field specifies the status of the function which has been called in a prior request (The success value is unique and indicates that the prior request associated with this response was successfully received and well formatted, that the function in this request has been successfully performed and that the payload of the response contains the result of the function. It does not have any relation with the content of the function itself. This field is present only in frames of type response. The RPC status field may have the values shown in Table 3); and the payload field is of a variable number of octets in length and contains information specific to individual frame types.
TABLE 2
Function category
Value
Description
Manufacturer
0x00
Manufacturer extensions
ZCL
0x03
Zigbee ZCL application layer
TABLE 3
RPC status
Value
Description
SUCCESS
0x0000
An RPC operation has been
executed successfully
CONNECTION_CLOSED
0x0100
The connection with a remote
entity has been closed during
an RPC operation
RPC_TIMEOUT
0x0101
The maximum duration
allowed for an RPC operation
elapsed without returning the
results of the function that was
called
TRANSACTION_ERROR
0x0200
A GRIP request is received
with a “Transaction identifier”
which already matches a
function being performed by
the Next Higher Layer Entity
on this entity
FUNCTION_TIMEOUT
0x0201
The maximum duration
allowed to wait for the
execution of a function on
the local entity where the
function is performed elapsed
UNSUPPORTED_FUNCTION
0x0300
The RPC header of a GRIP
request which has been
received refers to a function
that is not supported by this
entity
BAD_PARAM_FORMAT
0x0301
The parameters received to
execute the function have a
bad format
FUNCTION_ERROR
0x0302
Any error occurring in the
Next Higher Layer Entity
when attempting to perform
the function and retrieve its
results which differs from the
UNSUPPORTED_FUNCTION
and the
BAD_PARAM_FORMAT
error status.
The SendDLMSCommand procedure is used to send and receive DLMS APDU in a generic manner. Table 4 shows the value assigned to the different fields of the GRIP protocol for the SendDLMSCommand request and response.
TABLE 4
GRIP frame field
Request
Response
Version
0x00
0x00
Transaction identifier
Present
Present
Frame control
0x01
0x02
Function domain
0x01
0x01
Function category
0x00
0x00
Manufacturer code
0x10C7
0x10C7
Function identifier
0x0000
0x0000
RPC status
Not present
Present
RCP payload
DlmsCommandParams
DlmsCommandResults
The SendDLMSCommand request and response is defined by the ASN.1 definitions as shown in
The DlmsCommandParams ASN.1 definition describes the structure of the RCP payload of a SendDLMSCommand request. The different fields supported by this structure are listed in Table 5.
TABLE 5
Name
Status
Type
Valid Range
Description
timeout
M
32-bit
0x00000000-
Maximum period, in
unsigned
0xffffffff
milliseconds, this procedure
integer
will block before returning a
response. Set to 0xffffffff to
disable this timeout, to wait
for an infinite amount of time.
address
M
64-bit
Any 64-bit,
The extended address of the
IEEE
IEEE
target device.
address
address
data
M
Octet
DLMS
This field contains the DLMS
String
APDU
wrapper follow by the DLMS
payload.
The DlmsCommandResults ASN.1 definition describes the structure of the RCP payload of a SendDLMSCommand response. The different fields supported by this structure are in Table 6.
TABLE 6
Name
Status
Type
Valid Range
Description
status
M
8-bit unsigned
0 to 255
0x00
SUCCESS, Indicates that a
Integer
function successfully completed.
0x01
TIMEOUT, Indicates that the
amount of time to complete the
processing task was longer than
the amount of time limited by the
timeout parameter
0x02
GENERAL ERROR, Indicates
that a general error occurred and
the function did not complete
successfully.
0x03
PARAMETER_MISSING,
Indicates that one or more
required parameters were
missing from the request.
0x04
PARAMETER_INVALID_VALUE,
Indicates that one or more
supplied parameters had an
invalid value.
0x05
NETWORK_NOT_READY,
Indicates that the ZigBee
interface is not in a state to
process the request.
0x06
EMPTY, Indicates that there are
no results to be retrieved.
0x07
NOT_ALLOWED, Indicates that
the action requested by the
function is not allowed
0x08
MEMORY_ERROR, Indicates
that the function has not been
successfully completed due to a
memory error
0x09
APS_FAILURE, Indicates a
specific APS error
0x0A
NETWORK_FAILURE,
Indicates a network error.
data
M
Octet String
DLMS APDU
This field contains the DLMS wrapper
follow by the DLMS payload.
The SendZCLCommand procedure is invoked by a Host Application to send an arbitrary DLMS APDU to or through the Comms Hub. Upon invocation of the SendZCLCommand procedure, the Comms Hub shall ignore supplied parameters that are neither mandatory nor optional. Next the Comms Hub shall validate that all mandatory parameters are supplied. If one or more mandatory parameters are not supplied then it shall return a Status result of PARAMETER_MISSING. Next the Comms Hub shall validate that all supplied parameters have a valid value. If one or more parameters have an invalid value then it shall return a Status result of PARAMETER_INVALID_VALUE. The Comms Hub shall then assemble the DLMS request and forward it to the specified destination. On reception of the corresponding DLMS response, the Comms Hub assembles the SendZCLCommand response and forwards it to the Host Application. The Host Application operates in a synchronized mode. This means that the Host Application, after the transmission of it request, block until the reception of a response. A TIMEOUT status shall be returned by the Comms Hub if the total time of the processing task exceeds the timeout value specified in the SendZCLCommand request.
The byte streams set forth in
The SendZCLCommand procedure is used to send and receive ZCL commands in a generic manner. Table 7 shows the value assigned to the different fields of the GRIP protocol for the SendZCLCommand request and response.
TABLE 7
GRIP frame field
Request
Response
Version
0x00
0x00
Transaction identifier
Present
Present
Frame control
0x01
0x02
Function domain
0x01
0x01
Function category
0x03
0x03
Manufacturer code
Not present
Not present
Function identifier
0x0300
0x0300
RPC status
Not present
Present
RCP payload
ZCLCommandParams
ZCLCommandResults
The SendZCLCommand procedure request and response is defined by the ASN.1 definitions shown in
The ZCLCommandParams ASN.1 definition describes the structure of the RCP payload of a SendZCLCommand request. The different fields supported by this structure are in Table 8.
TABLE 8
Name
Status
Type
Valid Range
Description
timeout
M
32-bit
0x00000000-
Maximum period, in
unsigned
0xffffffff
milliseconds, this
integer
procedure will block
before returning a
response. Set to
0xffffffff to disable
this timeout, to wait
for an infinite amount
of time.
dstAddress-
O
Integer
0x00-0xff
The addressing mode
mode
used for the
DestinationAddress
parameter.
0x02 = 16-bit address
0x03 = 64-bit extended
address
If this parameter is
omitted then it is
assumed that a binding
table entry exists in the
Comms Hub that
determines the
destination.
dst-address
O
Address
As specified
If this parameter is
by the
omitted then it is
DstAddrMode
assumed that a binding
parameter
table entry exists in the
Comms Hub that
determines the
destination.
dst-
O
Endpoint
Any valid
The identifier for the
endpoint
ID
endpoint ID
endpoint on the
destination device to
which the ZCL
command is directed.
If this parameter is
omitted then it is
assumed that a binding
table entry exists in the
Comms Hub that
determines the
destination endpoint.
profileID
O
16-bit
Any valid
The ZigBee
Integer
profile ID
application profile
under which the
contents of this ZCL
command are to be
interpreted.
clusterID
M
16-bit
Any cluster
The cluster identifier
Integer
ID
associated to the ZCL
command to send.
src-
O
Endpoint
Any valid
The source endpoint
endpoint
ID
endpoint ID
on the ZigBee
Gateway for ZCL
command.
txoption
M
Bitmap
0000 xxxx
The transmission
(Where x can
options for the ASDU
be 0 or 1)
to be transferred.
These are a bitwise
OR of one or more of
the following:
0x01 = Security
enabled transmission
0x02 = Use NWK key
0x04 = Acknowledged
transmission
0x08 = Fragmentation
permitted
radius
O
Integer
Any number
The distance, in hops,
up to the
that a transmitted frame
maximum
will be allowed to travel
radius of the
through the network.
network.
zcl-header
M
Octet
ZCLHeader
General ZCL Frame
String
Format as defined in
Zigbee Cluster Library
Specification
incorporated herein by
reference
zcl-
M
Octet
Any valid ZCL
Frame payload as
payload
string
command
defined in Zigbee
Cluster Library
Specification
incorporated herein
by reference
The ZCLCommandResults ASN.1 definition describes the structure of the RCP payload of a SendZCLCommand response. The different fields supported are in Table 9.
TABLE 9
Name
Status
Type
Valid Range
Description
status
M
8-bit
0x00
SUCCESS, Indicates that a
unsigned
function successfully
Integer
completed.
0x01
TIMEOUT, Indicates that the
amount of time to complete
the processing task was longer
than the amount of time
limited by the Timeout
parameter
0x02
GENERAL ERROR,
Indicates that a general error
occurred and the function did
not complete successfully.
0x03
PARAMETER_MISSING,
Indicates that one or more
required parameters were
missing from the request.
0x04
PARAMETER_INVALID_VALUE,
Indicates that one or
more supplied parameters had
an invalid value.
0x05
NETWORK_NOT_READY ,
Indicates that the ZigBee
interface is not in a state to
process the request.
0x06
EMPTY, Indicates that there
are no results to be retrieved.
0x07
NOT_ ALLOWED, Indicates
that the action requested by
the function is not allowed
0x08
MEMORY_ERROR,
Indicates that the function has
not been successfully
completed due to a memory
error
0x09
APS_FAILURE, Indicates a
specific APS error
0x0A
NETWORK_FAILURE ,
Indicates a network error
aps-status
M
Status
Any valid status
The Status reported by APSDE-
Enumeration
DATA.indication that delivered the
ZCL command.
Note that if this parameter has any
other value than SUCCESS then
none of the optional parameters
below are delivered.
rxtime
O
Integer
Implementation
A time indication for the received
specific
packet based on the local clock.
dst-endpoint
O
Endpoint ID
Any valid
The endpoint on the Comms Hub to
endpoint
which the ZCL command was
directed.
srcAddress-
O
Integer
0x00-0xff
The addressing mode for the source
mode
address used.
0x02 = 16-bit short address
0x03 = 64-bit extended address
src-address
O
Address
As specified by
The ZCL response command frame
the Source-
was sent from this address.
AddressMode
src-
O
64-bit
Any 64-bit,
The extended address of the source
ieeeAddress
IEEE
IEEE
device if it is known in the Comms
address
address
Hub address manager tables.
src-
O
Octet String
This field is not supported.
aliasAddress
src-endpoint
O
Endpoint ID
Any valid
An identifier for the endpoint on the
endpoint ID
sending device that issued the
command.
profileID
O
16-bit Integer
Any valid
An identifier for the profile under
ZigBee profile
which this command is to be
ID
interpreted.
clusterID
O
16-bit Integer
Any valid
An identifier for the cluster under
cluster ID.
which this command is to be
interpreted.
zcl-header
O
Octet String
General ZCL Frame Format as
defined in Zigbee Cluster Library
Specification, ZigBee Document
075123r03ZB section 2.3.1.
zcl-payload
O
Octet string
Any valid ZCL
Frame payload as defined in Zigbee
command
Cluster Library Specification,
ZigBee Document 075123r03ZB
section 2.3.1.
The SendZCLCommand procedure is invoked by a host application to send an arbitrary ZCL frame to or through the Comms Hub. Upon invocation of the SendZCLCommand procedure, the Comms Hub shall ignore supplied parameters that are neither mandatory nor optional. Next the Comms Hub shall validate that all mandatory parameters are supplied. If one or more mandatory parameters are not supplied then it shall return a Status result of PARAMETER_MISSING. Next the Comms Hub shall validate that all supplied parameters have a valid value. If one or more parameters have an invalid value then it shall return a Status result of PARAMETER_INVALID_VALUE. The Comms Hub shall then assemble the ZCL request and forward it to the specified destination. On reception of the corresponding ZCL response, the Comms Hub assembles the ZCLCommandResults and forwards it to the Host Application. The Host Application operates in a synchronized mode. This means that the Host Application, after the transmission of it request block until the reception of a response. A TIMEOUT status shall be returned by the Comms Hub if the total time of the processing task exceeds the timeout value specified in the SendZCLCommand request.
The byte streams set forth in
Digital Envelopes are used to transfer information between the HES and the Comms Hub without establishing a TLS session. Digital Envelopes are transferred using UDP datagram. Each Digital Envelope consists of: A mandatory header as defined by the DigitalEnvelopHeader ASN.1 definition; An optional DigitalEnvelopPayload encoded as a CMS Data content type if not encrypted or as a CMS EnvelopedData content type if encrypted; and A mandatory signature encoded as a CMS SignedData.
The Digital Envelope Header is defined by this ASN.1 syntax shown in
The Digital Envelop Header supports the following fields: Digital Envelope version number (0x01: Current version as defined in this section); reasonCode which identifies the purpose and type of message sent (see Table 10 below); commsHubMacAddress including MAC address of the sending Comms Hub; sequenceNumber including Unique number assigned to each Digital Envelope sent by the Comms Hub (For Acknowledgements Digital envelope sends by the Head End System, this field is set to the sequence number of the Digital Envelope acknowledged); deviceMacAddress including MAC address of the device that supplied the data included in the Digital Envelope (For example, a daily meter report by the Comms Hub uses the meter's MAC address in the deviceMacAddress field as does an alarm report associated with this meter. This field is not present for information directly reported by the Comms Hub); tokenId present in a “SMS wakeup response” or a “Callback response” Digital Envelope if a taken ID has been provided in the corresponding SMS wakeup or with a callback previously setup in an “Acknowledgment” Digital Envelope; pushCertificateSN including Serial number of the Push certificate currently available in the Comms Hub (This information is required by the HES to sign the acknowledgment with the appropriate key); currentTime including Current UTC time of the HES; timezoneID including Identifier of the timezone where this Comms Hub is installed (This information is required by the HES to return the appropriate DST information; field is available in the Digital Envelop only if previously configured); callbackTime which is an Optional field set if a callback to a service is required (This option is used by the Head End system to postpone the processing of a transaction with the Comms Hub outside to data acquisition period); callbackTokenId which is an Optional field used in conjunction with the callbackTime (When set, this identifier is included in the “Callback Response” Digital Envelop; field can be used by the service processing a callback to retrieve the initial reason of this scheduled call; callbackIpAddress which is an Optional field used in conjunction with the callbackTime (The requestor of a callback may use this field to specify the IP address of the service waiting for the callback or the requestor may set the domainName field or rely on the default address setting of the Comms Hub); callbackDomainName which is an Optional field used in conjunction with the callbackTime (The requestor of a callback may use this field to specify the fully qualified domain name of the service waiting for the callback or the requestor may set the IPAddress field or rely on the default address setting of the Comms Hub); callbackPortNum which is an Optional field used in conjunction with the callbackTime (The requestor of a callback may use this field to specify the IP port of the service waiting for the callback); dstStart including Start date and time of the current or next Daylight Saving Time period; and dstEnd including End date and time of the current or next Daylight Saving Time period (The dstStart and dstEnd are updated once a year prior to the Daylight Saving Time period).
TABLE 10
0x06:
SMS Wakeup Response
0x07:
Switch GSM Network Test
0x08:
Callback Response
0x09:
Commission Request
0x0A:
OTA Status Report
0x0B:
OTA Image Request Alert
0x0C:
Decommission Request
0x11:
E-Meter Report
0x12:
G-Meter Report
0x13:
IHU Report
0x14:
Comms Hub Report
0x21:
E-Meter High Priority Report
0x22:
G-Meter High Priority Report
0x23:
IHU High Priority Report
0x24:
Comms Hub High Priority Report
0x31:
E-Meter Alarm
0x32:
G-Meter Alarm
0x33:
IHU Alarm
0x34:
Comms Hub Alarm
0xFF:
Acknowledgement
The Digital Envelop Header is encoded using the Distinguished Encoding Rules (DER). An exemplary byte stream is shown in
Digital Envelop Payload is defined by the ASN.1 syntax shown in
The dlmsContent data structure is used to include in a Digital Envelop a list of DLMS attributes. Each dlmsContent contains: sourceAP which is Application Process at the origin of this information; destinationAP which is Application Process within the Head End System responsible of processing this information (This field is optional, when not included this information is processed by the default Head End System Application Process); dlmsAttributes which is Sequence of one or more DLMS attributes, each one encoded as shown in Table 11 below.
TABLE 11
class-id:
DLMS Interface Class identifier
instance-id:
DLMS OBIS code
attribute-id:
DLMS attribute identifier
value:
DLMS attribute value encoded in A-XER
The dlmsContent is encoded using the Distinguished Encoding Rules (DER) as shown in
The zclContent data structure is used to send ZCL commands or ZCL attributes in a Digital Envelope. ZCL attributes are encoded using the standard ZCL “Report attributes” command, carrying one or multiple attributes. Attributes reported by the “Report attributes” command shall all originate from the same End Point, Cluster and all been either standard or manufacturer. When attributes from different End Points and/or Clusters need to be transferred, multiple ZclContent are included in the same Digital Envelope. Each zclContent contains: clusterIdentifier which is ZigBee Cluster ID at the origin of this information; sourceEndpoint which is Endpoint at the origin of this information; destinationEndpoint which is Endpoint within the Head End System responsible of processing this information (This field is optional, when not included this information is processed by the default process); zclCommands including one or more ZCL commands as defined in the ZigBee Cluster Library each ZCL command has the format as shown in Table 12.
TABLE 12
frameControl:
ZigBee ZCL “Frame Control” field.
manufactureCode:
ZigBee “Manufacture Code” field,
present only if the “Manufacturer Specific”
flag within the “Frame Control” field is set.
transactionSeqNum:
ZigBee ZCL “Transaction Sequence
Number” field. This field is not
processed and can be set to any value.
commandId:
ZigBee ZCL Command ID.
commandContent:
ZCL command payload.
Each zclContent is encoded using the Distinguished Encoding Rules (DER) as shown in
The CMS Data content type is used to carry a DigitalEnvelopePayload when not encrypted. The structure of the CMS Data is defined in RFC 5652 using the ASN.1 syntax as shown in
The CMS EncryptedData content type is used to carry an encrypted DigitalEnvelopePayload. The structure of the CMS EncryptedData is defined in RFC 5652 and relies on data types and Object Identifiers (OID) defined in a variety of other standards. The equivalent ANS.1 definition describes EncryptedData content type options used and is shown in
The EnvelopeData encryption structure is shown in
The DigitalEnvelopePayload included in an EncryptedData content type is decrypted as shown in
The CMS SignedData content type is used to sign Digital Envelopes. This digital signature is used to verify the integrity of a Digital Envelope and authenticate the source of this information. The structure of the CMS SignedData is defined in RFC 5652 and relies on data types and Object Identifiers (OID) defined in a variety of other standards. The ASN.1 definition shown in
The SignedData structure is constructed as follows and shown in
The signature of each Digital Envelope received is verified in accordance with the following process and shown in
Digital Envelopes are used to implement different interactions between the Comms Hub and the HES. The reasonCode field included in the header identifies both the purpose of the envelope and the type of information carried. The different reason codes supported are summarized in Table 13 below which identifies digital envelope types and contents (y=mandatory and o=conditional). For each type there is information for: The optional header fields included; The presence of a payload and its format (DLMS or ZCL); The presence of certificates and/or certificate revocation list (CRL) in the signedData element of the digital envelops; The public key used in conjunction with the Comms Hub private key to derive a share secret used for encrypting the payload. On reception, the HES use its corresponding private key and the Comms Hub public key to obtain the same share secret; and The Comms Hub private key used for key derivation and signing.
TABLE 13
DigitalEnvelopHeader.
DigitalEnvelopHeader.
DigitalEnvelopHeader.
DigitalEnvelopHeader.
DigitalEnvelopHeader.
Description
reasonCode
sequenceNum
deviceMacAd
tokenId
pushCertificat
SMS Wakeup
0x06
y
y
Response
Switch GSM
0x07
y
y
Network Test
Call-back
0x08
y
y
Response
Commission
0x09
y
o
Request
OTA Status
0x0A
y
y
Report
OTA Image
0x0B
y
y
Request Alert
Decommission
0x0C
y
y
Request
E-Meter Report
0x11
y
y
y
G-Meter Report
0x12
y
y
y
IHU Report
0x13
y
y
y
Comms Hub
0x14
y
y
Report
E-Meter High
0x21
y
y
y
Priority Report
G-Meter High
0x22
y
y
y
Priority Report
IHU High
0x23
y
y
y
Priority Report
Comms Hub High
0x24
y
y
Priority Report
E-Meter Alarm
0x31
y
y
y
G-Meter Alarm
0x32
y
y
y
IHU Alarm
0x33
y
y
y
Comms Hub
0x34
y
y
Alarm
Ac-
0xFF
y
knowledgement
(Commission
request)
Ac-
0xFF
y
knowledgement
DigitalEnvelopHeader.
DigitalEnvelopHeader.
DigitalEnvelopHeader.
DigitalEnvelopPayload.
DigitalEnvelopPayload.
Description
timezoneID
currentTime
callback . . .
dlmsContent(
zclContent (s)
SMS Wakeup
y
Response
Switch GSM
y
y
Network Test
Call-back
y
Response
Commission
o
o
Request
OTA Status
y
y
Report
OTA Image
y
y
Request Alert
Decommission
y
Request
E-Meter Report
y
y
o
G-Meter Report
y
y
IHU Report
y
y
Comms Hub
y
y
Report
E-Meter High
y
y
o
Priority Report
G-Meter High
y
y
Priority Report
IHU High
y
y
Priority Report
Comms Hub High
y
y
Priority Report
E-Meter Alarm
y
y
o
G-Meter Alarm
y
y
IHU Alarm
y
y
Comms Hub
y
y
Alarm
Ac-
y
knowledgement
(Commission
request)
Ac-
y
o
knowledgement
Private
key use
Public
for key
key use
derivation
SignedData.
SignedData.
EncryptedData
for key
and
Description
certificates
crls
content type
Payload
derivation
signing
SMS Wakeup
Operator
Response
Device
Switch GSM
y
y
Push
Operator
Network Test
Device
Call-back
Operator
Response
Device
Commission
y
Manufacturer
Request
Device
OTA Status
Operator
Report
Device
OTA Image
Operator
Request Alert
Device
Decommission
y
Operator
Request
Device
E-Meter Report
y
y
Push
Operator
Device
G-Meter Report
y
y
Push
Operator
Device
IHU Report
y
y
Push
Operator
Device
Comms Hub
y
y
Push
Operator
Report
Device
E-Meter High
Y
y
Push
Operator
Priority Report
Device
G-Meter High
Y
y
Push
Operator
Priority Report
Device
IHU High
Y
y
Push
Operator
Priority Report
Device
Comms Hub High
y
y
Push
Operator
Priority Report
Device
E-Meter Alarm
y
y
Push
Operator
Device
G-Meter Alarm
y
y
Push
Operator
Device
IHU Alarm
y
y
Push
Operator
Device
Comms Hub
y
y
Push
Operator
Alarm
Device
Ac-
y
o
Commissioning
knowledgement
(Commission
request)
Ac-
o
Push
knowledgement
The “SMS Wakeup Response” Digital Envelope is sent by the Comms Hub each time a SMS Wakeup Message is received. This envelope is sent just after the successful establishment of a GPRS connection to advertise the availability of the Comms Hub on the IP network to the HES. The byte stream of the “SMS Wakeup Response” Digital Envelope is represented in
The “Switch GSM Network Test” Digital Envelope is sent by the Comms Hub in response to a successful SelectGsmNework command. The payload of this Digital Envelope contains a SwitchGsmNetworkTest command. The byte stream of the “Switch GSM Network Test” Digital Envelope is represented in
The HES has the option to include in any of its Digital Envelope Acknowledgment a callback time. At this configured time, the Comms Hub establishment of a GPRS connection and sends a “Call-back Response” Digital Envelope to advertise the availability of the Comms Hub on the IP network. The byte stream of the “Call-back response” Digital Envelope is represented in
The “Commission Request” Digital Envelope is sent by the Comms Hub to initiate its commissioning or the commissioning of a ZigBee Device. The payload of this Digital Envelope contains a “CommissionRequest” command. The byte stream of the “CommissionRequest” Digital Envelope is represented in
The “OTA Status Report” Digital Envelope is sent by the Comms Hub each time the status of the OTA process of one of its associated ZigBee Device change. The payload of this Digital Envelope contains an “OTAStatusReport” command. The byte stream of the “OTA Status Report” Digital Envelope is represented in
The “OTA Image Request Alert” Digital Envelope is sent by the Comms Hub to alter the Head End System when there is either a new image transfer required or all the image transfers are complete. The Head End System initiates a TCP/TLS session in response to this alert. The byte stream of the “OTA Image Request Alert” Digital Envelope is represented in
The “Decommission Request” Digital Envelope is sent by the Comms Hub to initiate its decommissioning or the decommissioning of an associated Zigbee Device. The payload of this Digital Envelope contains a “DecommissionRequest” command. The byte stream of the “Decommission Request” Digital Envelope is represented in
Daily reports and real time alarms are transferred using a Digital Envelope with a reason code in the 0x10 to 0x3F range. The payload of these Digital Envelopes is specific to the type of device, the configuration of this device and the type of alarm reported. The octet stream of a report or alarm Digital Envelope is represented in
The “Acknowledgment” Digital Envelope is sent by the Head End System each time it receives a Digital Envelope form the Comms Hub. The byte stream of the “Acknowledgment” Digital Envelope is represented in
The Digital Envelope (DE) handshake in
The handshake in
The sequence in
The certificate management security infrastructure of the dual protocol WAN specification is based on two PKIs, the Manufacturing PKI and the Operational PKI.
A Manufacturer PKI is created by each Comms Hub manufacturer and used to implement the following security services: Authentication of Comms Hubs during their initial deployment or redeployment and Authentication of the HES during the commissioning process.
During the deployment process, the Head End System takes ownership of the Comms Hubs by configuring in them operator certificates. The Operational PKI is managed by the operator of the Comms Hubs and is used to implement the following security services: Mutual authentication of Comms Hubs and the HES during a TLS handshake, Authentication of Digital Envelops sent by the Comms Hubs or the HES and Granting access rights.
The Manufacturing PKI consists of four certificates as shown in
Manufacturing certificates are unmanaged, their lifetimes are indefinite and they never get replaced. However, the uses of these certificates are strictly controlled by the system responsible for the Comms Hubs commissioning. This system maintains a list of the serial numbers of the Comms Hub expected to be installed and shall reject any Comms Hub with a certificate serial number not on this list or a serial number already used.
The Manufacturer Root certificate is the root of trust for the manufacturing PKI. It is used to issue Manufacturer and Commissioning certificates. The Manufacturer Root certificate has an indefinite lifetime; nevertheless this certificate may be replaced periodically. The replacement of the Manufacturer Root certificate has no impact on already issued Manufacturer Device certificates. When replaced, new Manufacturer certificates and the associated Commissioning certificate need to be reissued. The Manufacturer Root certificate is stored in the following locations: Manufacturer's Commercial CA (private Key); Manufacturing system (public key); HES (public key) and Comms Hub (public key). The Manufacturer Root certificate is a self-signed X.509 certificate with the following content. The subject field is composed of: The commonName field set to “Manufacturers Root”; The organizationName field set to the commercial name of the manufacturer; and The countryName field set to the country code where this manufacturer is located. The issuer field set to the same values as the subject field. The validity field is composed of: the notBefore field set to the issuing date of this certificate and the notAfter field set to notBefore plus 99 years. The basicConstraints extension {2 5 29 19}, with the cA field set to TRUE. The keyUsage extension {2 5 29 15}, with the keyCertSign and cRLSign fields set to TRUE.
The Manufacturer certificate is issued by the Manufacturer Root for each manufacturing site. This certificate is used to issue a Manufacturer Device certificate for each Comms Hub manufactured at this site. The Manufacturer certificate has an indefinite lifetime; nevertheless this certificate may be replaced periodically. The replacement of the Manufacturer certificate has no impact on already issued Manufacturer Device certificates. When replaced, the associated private key may be deleted to reduce the risk of compromise. The Manufacturer certificate is stored in the following locations: Manufacturing system (private key); HES (public key) and Comms Hub (public key). The Manufacturer Root certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to a unique name assigned to this manufacturing site; The organizationUnitName field set to “Manufacturer”; The organizationName field set to the commercial name of the manufacturer; and The countryName field set to the country code where this manufacturer is located. The issuer field is set to the subject field of the Manufacturers Root certificate. The validity field is composed of: the notBefore field set to the issuing date of this certificate and the notAfter field set to notBefore plus 99 years. The basicConstraints extension {2 5 29 19}, with the cA field set to TRUE. The keyUsage extension {2 5 29 15}, with the keyCertSign field set to TRUE.
The Manufacturer Device certificate is issued by the Manufacturer located on each site of manufacturing. This certificate is used to authenticate the Comms Hub during TLS handshakes and any Digital Envelop transmitted by the Comms Hub prior to its commissioning. The Manufacturer Device certificate has an indefinite lifetime and is not expected to be replaced during the lifetime of a Comms Hub. The Manufacturer Device certificate is stored in the following locations: Comms Hub (private Key); Manufacturing system (public key); and HES (public key). The Manufacturer Device certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to serial number assigned to this Comms Hub; The organizationUnitName field set “Manufacturer Device”; The organizationName field set to the commercial name of the manufacturer; and The countryName field set to the country code where this manufacturer is located. The issuer field is set to the subject field of the Manufacturer certificate. The validity field composed of: the notBefore field set to the issuing date of this certificate and the notAfter field set to notBefore plus 99 years. The keyUsage extension {2 5 29 15}, with the digitalSignature and the keyAgreement fields set to TRUE.
The Commissioning certificate is issued by the Manufacturer Root to the operator. The manufacturer is also responsible for providing the list of the serial numbers of the Comms Hubs manufactured for this operator. This list should be used by the operator to limit which Comms Hubs is accepted in its system. The Commissioning certificate may have a limited or unlimited lifetime. If the lifetime is limited, the manufacturer should support issuing of new Commissioning certificates for each Manufacturer Root created for the Comms Hubs lifetime to allow their re-deployment. The Commissioning certificate is stored in the HES (private Key). The Commissioning certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to name of this operator; The organizationUnitName field set to “Commissioning”; The organizationName field set to the commercial name of the manufacturer; The countryName field set to the country code where this manufacturer is located. The issuer field is set to the subject field of the Manufacturer Root certificate. The validity field composed of: the notBefore field set to the issuing date of this certificate and the notAfter field set to notBefore plus 99 years. The keyUsage extension {2 5 29 15}, with the digitalSignature and the keyAgreement fields set to TRUE.
The Operational PKI consists of the eight certificates as shown in
Operational certificates are managed because they are intended to be used continuously over a potentially long period of time, during which there is a need to renew their security.
The Operator's Root certificate is the root of trust for the operational PKI. It is used to issue Enterprise and Operator certificates. The lifetime of the Operator's Root certificate might be, e.g., 10 years. When the Operator's Root certificate is updated, all the Comms Hubs need to be configured with a new chain of certificates issued for that new Operator Root. During the update process, the Head End System shall be able to establish a TLS session with either set of certificates. The set of certificates used by the Head End System depends of the certificates returned by the Comms Hub during the TLS handshake. The Operator's Root certificate is stored in the following locations: Operator's Commercial CA (private Key); HES (public key); Comms Hub (public key). The Operator's Root certificate is a self-signed X.509 certificate with the following content. The subject field composed of: The commonName field set to “Operator's Root”; The organizationName field set to the operator name and The countryName field set to the country code where this operator is located. The issuer field set to the same values as the subject field. The validity field is composed of: the notBefore field set to the issuing date of this certificate and the notAfter field set to notBefore plus the Operator's Root certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to TRUE. The keyUsage extension {2 5 29 15}, with the keyCertSign and cRLSign fields set to TRUE.
The Operator certificate is issued by the Operator's Root. This certificate is used to issue an Operator Device certificate for each Comms Hub and the Authorization Signing certificate. The lifetime of the Operator's certificate might be, e.g., five years. When the Operator certificate is updated, all the Comms Hubs need to be configured with a new Operator certificate and an Operator Device certificate issued from it. The Operator certificate is stored in the following locations: Operator's Commercial CA (private Key); Head End System (public key); and Comms Hub (public key). The Operator certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to “Operator”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Operator's Root certificate. The validity field composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Operator certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to TRUE. The keyUsage extension {2 5 29 15}, with the keyCertSign field set to TRUE.
The Operator Device certificate is issued for each Comms Hub by the Operator. This certificate is used to authenticate the Comms Hub during the TLS handshake and to sign Digital Envelopes sent by the Comms Hub. The lifetime of the Operator Device certificate might be, e.g., 2 years. The update of the Operator Root, Operator and Operator Device certificate should be coordinated to avoid a discrepancy in there expiration dates. To avoid a higher layer certificate with an expiration prior to a lower layer certificate, the Operator certificate should be updated 2 years prior of its expiration and the Operator Root should be updated 5 years prior of its expiration. The Operator certificate is stored in the following locations: Comms Hub (private key); Operator's Commercial CA (public Key); and Head End System (public key). The Operator Device certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to the serial number assigned to this Comms Hub; The organizationUnitName field set to “Operator Device”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Operator's certificate. The validity field composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Operator Device certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to FALSE. The keyUsage extension {2 5 29 15}, with the digitalSignature and keyAgreement fields set to TRUE. The extKeyUsage extension {2 5 29 37}, with the KeyPurposeId field set to serverAuth {1 3 6 1 5 5 7 3 1}.
An Enterprise certificate is issued by the Operator's Root. This certificate is used to issue a Server certificate used during the TLS handshake with the Head End System and the Push certificate used to encrypt Digital Envelops and sign Digital Envelop acknowledgments. The lifetime of the Enterprise certificate might be 5 years. When the Enterprise certificate is updated, new Server and the Push certificates need to be issued for the Head End System. The new Push certificate also needs to be distributed to all the Comms Hubs. During the distribution process, the Head End System should continue using the old Push certificate for Comms Hub not yet updated. The Enterprise certificate is stored in the following locations: Operator's Commercial CA (private Key); Head End System (public key); and Comms Hub (public key). The Enterprise certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to “Enterprise”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Operator's Root certificate. The validity field is composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Enterprise certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to TRUE. The keyUsage extension {2 5 29 15}, with the keyCertSign field set to TRUE.
The Server certificate is issued by the Operator. This certificate is used to authenticate the Head End System during TLS handshakes. The lifetime of the Server certificate might be 5 years. The update of the Server certificate should be coordinated with the Enterprise and Operator Root certificates to avoid a certificate higher in the PKI hierarchy with an expiration date prior to a certificate lower in this hierarchy. The update of the Server certificate has no impact on the configuration of the Comms Hub since the trust anchor uses during the TLS handshake is the Operator Root. The Server certificate is stored in the following locations: Head End System (Private key) and Operator's Commercial CA (public Key). The Server certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to the name assigned to the HES; The organizationUnitName field set to “Server”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Enterprise certificate. The validity field composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Server certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to FALSE. The keyUsage extension {2 5 29 15}, with the keyAgreement field set to TRUE. The extKeyUsage extension {2 5 29 37}, with the KeyPurposeId field set to clientAuth {1 3 6 1 5 5 7 3 2}.
The Push certificate is issued by the Operator. This certificate is used to sign digital Envelops sent by the Head End System and for key derivation (ECDH) during the encryption and decryption process. The lifetime of the Push certificate might be 5 years. The update of the Push certificate should be coordinated with the Enterprise and Operator Root certificates to avoid a certificate higher in the PKI hierarchy with an expiration date prior to a certificate lower in this hierarchy. When updated, the Push certificate needs to be distributed to all the Comms Hubs to enable the encryption of Digital Envelops using this new public key. During the upgrade process, the Head End System shall be able to transfer Digital Envelops with Comms Hubs still using the old Push certificate and Comms Hubs configured with the new Push certificate. The Push certificate is stored in the following locations: Head End System (Private key); Operator's Commercial CA (public Key) and the Comms Hub (public key). The Server certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to the name assigned to the HES; The organizationUnitName field set to “Push”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Enterprise certificate. The validity field is composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Push certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to FALSE. The keyUsage extension {2 5 29 15}, with the digitalSignature and keyAgreement fields set to TRUE.
An Authorization Signing certificate is issued by the Operator. This certificate is used to either sign commands or to sign the Authorization certificate. Authorization certificates are transferred during an already establish TLS session to acquired access rights. The lifetime of the Authorization Signing certificate might be 5 years. When updated, the Authorization Signing certificate needs to be distributed to all the Comms Hubs to enable the authentication of commands or Authorization certificates. Comms Hubs shall store and use at least two Authorization certificates. This allows the distribution of a new Authorization certificate while still using the old one on all the Comms hubs. The Authorization Signing certificate is stored in the following locations: Head End System (Private key) and Operator's Commercial CA (public Key). The Authorization Signing certificate is a X.509 certificate with the following content. The subject field composed of: The commonName field set to the name assigned to the HES; The organizationUnitName field set to “Authorization Signing”; The organizationName field set to the operator name; and The countryName field set to the country code where this operator is located. The issuer field is set to the subject field of the Operator certificate. The validity field is composed of: The notBefore field set to the issuing date of this certificate and The notAfter field set to notBefore plus the Authorization Signing certificate lifetime. The basicConstraints extension {2 5 29 19}, with the cA field set to FALSE. The keyUsage extension {2 5 29 15}, with the keyCertSign field set to TRUE.
The Authorization certificate is issued by the Operator. This certificate is used to grant privileges on an already establish TLS session. It is recommended that lifetime of the Authorization certificate is very limited, a day or a week. It is also recommended that it target a specific device or group of devices. The Authorization certificate is a X.509 Attribute Certificate as defined by RFC5755. The exact content of this certificate needs to be defined to align with the DLMS authorization levels.
All certificates used by the Dual Protocol WAN specification comply with the X.509 standard. The X.509 standard supports multiple options and extensions and
The IETF Transport Layer Security (TLS) protocol is used to secure TCP sessions. The TLS protocol supports a number of cipher suite. The Comms Hub, as a minimum, shall support the cipher suite TLS_ECDHE_ECDSA_WITH_AES—128_GCM_SHA256. The different components of this cipher suite are listed in Table 14.
TABLE 14
Asymmetric key generation
ECC curve secp256r1
Symmetric key agreement
ECDHE
Symmetric cipher
AES-128
Symmetric cipher mode
GCM
Hash function
SHA-256
Signature
ECDSA/SHA-256
Each TLS session start by a handshake during which authentication and share symmetrical key derivation are performed. The logic implemented during this handshake depends of the value of the ChCommissioningState attribute of the Comms Hub Control cluster.
When the ChCommissioningState attribute is set to NOT_COMMISSIONED or DECOMMISSIONED, the Comms Hub shall perform the TLS handshake shown in
When the ChCommissioningState attribute is set to COMMISSIONED, the Comms Hub shall perform the Normal TLS handshake shown in
The Comms Hub initiates communications to the Head End System when it has a scheduled message to send or when there is an event to report in real-time. The first step in initiating any communication to the Head End System is to connect to the WAN. The actual implementation of the flows is specific to the interfaces provided by the GSM modem vendor and is a design issue. Some aspects of the interaction with the mobile operator may also be specific to that operator.
The Comms Hub initiates communications with the Head End System when it has information to send. A Comms Hub initiated communication is called a Push. A Push can be triggered by a scheduled operation such as a meter usage report or by an alarm/event that has to be reported in real-time. Reported events include the installation of firmware upgrades. A push schedule can be either one-time or reoccurring. Schedules are either set by the Comms Hub or by ZigBee commands and attributes or by COSEM scheduling ICs from the Head End System. Daily meter usage reports shall be scheduled by the Comms Hub to occur at a random time in a transmission window. The push operation uses the UDP/DE protocols in the WAN stack.
A simple UDP/DE push message flow example is shown in
There are cases where the Head End System receives a Push message and wants to continue communicating to the Comms Hub. This may occur when the Push message is an alarm, and the Head End System needs to react to it by getting or setting parameters. This case may also occur when the Head End System has information to send like a firmware image. In these cases, the Head End System either wants the Comms Hub to keep the data connection up, or it wants the Comms Hub to callback at a scheduled time. The Head End System communicates what it wants in the Push ACK message. This acknowledgement message's callback time field can have a time value or the stay-awake value, “now”.
The example shown in
The Comms Hub's Push messages and the Head End System's Push ACK messages use the Digital Envelope header formats described above. The Push messages contain all the protocol specific parameters necessary to identify the sender and the destination application processes. The Push payload is used to send the value(s) of attribute(s) that make up the upstream report. The Push ACK has no payload.
The Comms Hub keeps the GPRS connection closed for most of the time. The Comms Hub only opens it for short periods when data is pushed upstream. Therefore, when the Head End System needs to initiate communications with the Comms Hub, it has to send a message using SMS to tell the Comms Hub to establish a GPRS connection. This is the SMS wakeup message. The SMS wakeup message is a short message that tells the Comms Hub to wake up. It is a Class 0 message with no storage in the SIM. No information or acknowledgement is sent back to the Head System by the Comms Hub using SMS.
The Head End System propagates its clock to the entire smart meter network. The Head End System periodically distributes clock information to each Comms Hub using one of the DLMS Clock setting methods such as preset_adjustment_time. The Head End System also keeps the Comms Hub daylight savings configuration current with the local time by setting the enable, disable, start, end, and deviation parameters using the DLMS Clock setting methods. The clock synchronization can be incorporated as needed in the scheduled push operation in either the TCP message exchange or the UDP/DE acknowledgement message.
The Comms Hub and HAN devices receive firmware image upgrades from the Head End System. For the HAN devices the image is transferred via the Comms Hub. The Head End System downloads firmware via the WAN to all the HAN devices. The firmware image is first transferred to the Comms Hub and from there the image is transferred to the targeted devices. The WAN transfer to the Comms Hub uses the OTA image transfer process flow in
The firmware activation time can be controlled by the Comms Hub using the ZigBee OTA Upgrade cluster's Upgrade End Response message. The activation time sent by this message can immediately activate the firmware or set a time for its activation. The Comms Hub maintains a log of the progress of each firmware image upgrade that can be read by the Head End System. The security of the firmware updates is protected by digital certificates signed by the manufacturer.
The OTA process is divided in two parts to simplify its description, the OTA image transfer is described in this section and the OTA activation is described below. The first part of the OTA Upgrade process consists of the downloading images from the Head End System and distributing them to each ZigBee device. This process consists of the following steps per
When the distribution of the Image files to the target devices is completed the OTA Upgrade sever downloads a second batch of Image files from the Head End System. This Comms Hub initiated service consist of: The transmission of the push “OTAStatusReport” message; The establishment of a TLS session by the Head End System and the transmission of an “NextImageTransferResponse” command by the OTA Upgrade server; and On reception of the “NextImageTransferResponse” command, the Head End System's OTA Upgrade client downloads the requested image file.
The transmission by the Head End System of an Image Set using the WriteImageSet command and the OTA Upgrade server selection and update to its Image Transfer Status are repeated until all the image files are downloaded or the Set ID is aborted by the Head End System.
The OTA activation represents the second and final part of the OTA upgrade process and is shown in
The OTA Abort Process flow is shown in
The “ZigBee Device OTA download” process shown in
Commissioning is the process by which a HAN device registers with the Comms Hub and Head End System and the Comms Hub and device are configured. At the end of the commissioning process the device has joined the network, gotten its operational parameters and commenced operating. The commission process does not specify how the installer starts the commissioning and talks to the Comms Hub.
The commissioning message flow between the Comms Hub and the Head End System is shown in
The exception processing for invalid IMSI, MAC address, Serial Number all cause the Head End System to send a Commission message that aborts the commission processes in the Comms Hub. The commissioning process is also aborted if the Comms Hub report it is not successful in steps 4.1 or 10.1 above.
The commissioning message flow between the Comms Hub and the Head End System for commissioning an E-meter is shown in
The exception processing for invalid MPAN, MAC address, Serial Number all cause the Head End System to send a Commission message that aborts the commission processes in the Comms Hub. The commissioning process is also aborted if the Comms Hub reports it is not successful in step 6.0 or if the E-meter fails to join the network and get its keys in steps 8.x. The installer can abort the process in step 7.1 if the Head End System sends information to the installer that is not correct.
The commissioning message flow between the Comms Hub and the Head End System for commissioning a G-meter is shown in
The exception processing for invalid MPRN, MAC address, Serial Number all cause the Head End System to send a Commission message that aborts the commission processes in the Comms Hub. The commissioning process is also aborted if the Comms Hub reports it is not successful in step 6.0 or if the E-meter fails to join the network and get its keys in steps 8.x. The installer can abort the process in step 7.1 if the Head End System sends information to the installer that is not correct.
The commissioning message flow between the Comms Hub and the Head End System for commissioning an IHD is shown in
The exception processing for invalid MAC address and Serial Number all cause the Head End System to send a Commission message that aborts the commission processes in the Comms Hub. The commissioning process is also aborted if the Comms Hub reports it is not successful in step 6.0 or if the IHD fails to join the network and get its keys in steps 7.x.
The decommissioning process removes sensitive data from the target device and the Comms Hub and then takes the device off the HAN network. The target device may or may not be in the factory default state after decommissioning. the decommission process may be initiated by either the Head End System or a service technician referred to as an installer in this section. The WAN specification does not specify how the installer starts the decommissioning and talks to the Comms Hub. The installer's interface and messaging protocol is outside of the scope of this WAN interface specification.
The flow diagrams in
The Comms Hub decommissioning message flow between the Comms Hub and the Head End System is shown in
The E-meter decommissioning message flow between the Comms Hub and the Head End System is shown in
The exception processing for invalid MAC address, and Serial Number cause the Head End System to send a Decommission message that aborts the decommission processes in the Comms Hub.
The G-meter decommissioning message flow between the Comms Hub and the Head End System is shown in
The IHD decommissioning message flow between the Comms Hub and the Head End System is shown in
The client application processes for the Comms Hub are organized as processes in ZigBee clusters. Each device in the HAN has a control cluster with the virtual devices attributes and the associated methods. The control clusters are defined by the cluster ID and endpoint ID. Meters of the same type have a common cluster ID. The Comms Hub has one control cluster that the HES uses to manage and monitor it. The Comms Hub clusters provide: control and monitoring for each HAN device: G-meter(s), E-meter(s), IHD(s) and the Comms Hub; OTA updates using the extensions to the OTA Upgrade cluster set up image sets for Comms Hub to download for each HAN device and provide firmware updates for all the HAN devices; scheduling of the Comms Hub activities, such as pushing meter reports to the HES and getting E-meter data; Push message processing which is the process that collects meter information that is pushed at the scheduled time, e.g., includes events that are reported but don't have to be pushed to the HES in real-time; Communication stack management which configures the communication stack layers using the Comms Hub Control cluster attributes for TCP-UDP, IPv4, PPP setup, and GPRS modem setup; Security via the Security Control cluster that controls the WAN and HAN security, setting up certificates, updating keys and controlling white lists and black lists; Log maintenance via the Log Control cluster is used to configure events for logging and reporting and to manage the logs maintained for each of the HAN devices and the Comms Hub; Time management via the ZigBee Time Control cluster manages the Comms Hub clock synchronization process with the HES and sets the parameters used by the ZigBee Time cluster used by the HAN devices; Device commissioning and decommissioning via the Commissioning Control cluster which defines the processes used by the Comms Hub to commission HAN devices (these processes are used by the HHT to initiate and monitor the commissioning and decommissioning actions and by the HES to control the commissioning of devices); Storage and forwarding of ZigBee Smart Energy information via extensions to the Smart Energy clusters which allow the HES to send tariff and price calculation information to the ZigBee meter and display devices.
In the preferred embodiments described herein, the Comms Hub communicates with the HAN devices using the ZigBee network stack. These communications' application payloads can be either DLMS/COSEM payloads or ZigBee application payloads. There are two ZigBee network stacks: one stack with a full APS for HAN device communications, and one with Inter-PAN and a stub APS that is used only by the HHT. The HHT forms a simple point-to-point connection with the Comms Hub. The messages sent use the IEEE 802.15.4 physical layer, the data link layer, and the ZigBee network layer. At the network layer the HHT messages are diverted to a stub Application Protocol Sub-layer that provides an application interface, which allows transmission of messages without the formation of a HAN network.
The HAN network architecture is based on the IEEE 802.15.4 physical layer using the 2.4 GHz DSSS radio, the IEEE 802.15.4-2006 MAC, the ZigBee network layer, the ZigBee Smart Energy Profile Specification, ELS cluster extensions, and relevant ZigBee application clusters. Detailed descriptions of these specifications are known to those skilled in the art and are thus considered part of this application. The application data flows between the clusters of the Comms Hub, E-meter, G-meter and IHD are shown in
Most clusters communicate directly with their corresponding cluster in other devices. However, the G-meter is a battery operated device that keeps its radio turned off most of the time. It is configured to generate periodic metering messages to the Comms Hub. To support regular access to the G-meter data by the IHD, the Comms Hub provides a mirror cluster, the Gas Mirror. The Gas Mirror is based on the ZigBee Metering client. It presents the G-meter data to other HAN devices. The mirror allows battery devices to store data in the Comms Hub for other devices to retrieve. To accomplish this, the G-meter's Gas Metering server cluster is bound to the Gas Metering client cluster in the Comms Hub. The IHD then binds its Metering client cluster to the Comms Hub's Gas Metering Mirror server cluster that has the stored mirror information. Occasionally the G-meter is also required to get information stored in the Comms Hub. The Comms Hub indicates what information should be retrieved using the Notification status bits that are periodically read by the G-meter.
The IHD may also bind its Meter client cluster to the E-meter's Electric Meter server cluster so that it can collect electrical usage data. The E-meter may implement ZigBee Clusters to support its communications on the ZigBee network and its DLMS communication to the HES using a ZigBee DLMS Tunnel to the Comms Hub.
Various additional communication flows between the HES, Comms Hub and HAN devices are described below.
Referring to
The Gas Mirror cluster in the Comms Hub acts like a proxy for the G-meter's Gas Meter cluster. The G-meter is a battery operated device that only turns its radio on when it needs to communicate with the Comms Hub. The Comms Hub cannot initiate communications with the G-meter. As shown in
The Comms Hub communicates with the E-meter using DLMS/COSEM. The COSEM messages are sent using the ZigBee DLMS Tunnel cluster. These communications are initiated by the Comms Hub to get meter usage data and management information for the E-meter. This process is shown in
The Comms Hub communicates with the E-meter using the ZigBee application layer clusters associated with joining, binding, and commissioning. The ZigBee cluster connections between the Comms Hub and the E-meter are shown in
The Comms Hub polls each E-meter for alai ms and events at a configurable rate that can be as fast as once per 7.5 seconds. The Comms Hub also polls each E-meter for meter metrics at a configurable rate that is typically set to be once a day just after midnight. All the scheduled polls by the Comms are randomized in a small window to prevent data flooding in a neighborhood containing many Comms Hubs.
Both the Head End System's COSEM applications and the Comms Hub's COSEM applications can communicate over the HAN network with the E-meter using the ZigBee DLMS Tunnel cluster.
The DLMS defined WPDU contains the DLMS Wrapper Header and the DLMS APDU. The ZigBee OTA Tunnel TransferData command carries the WPDU as shown in Table 15 below.
TABLE 15
ZigBee
DLMS WPDU
Size
2 bytes
2 bytes
2 bytes
2 bytes
2 bytes
—
Field
TunnelID
version
Source
Destination
Length
APDU
Name
wPort
wPort
(payload)
The Head End System sends various sets of information to the HAN devices using the ZigBee Message, Price, TOU Calendar, and Password cluster put commands. The Head End System accomplishes this by setting the appropriate information in the appropriate Comms Hub cluster. The HAN devices either poll the Comms Hub clusters for the information, or are sent it use the ZigBee Publish commands. The modes are shown in Table 16.
TABLE 16
Cluster
E-meter, IHD
G-meter
HHT
Message
Pushed by the Comms
Notification is sent
Publish
Hub to the IHD. DLMS is
following a G-meter
used to send messages to
communication.
the E-meter
G-meter then polls
Price
Pushed by the Comms
Notification is sent
N/A
Hub to the IHD. DLMS is
following a G-meter
used to send price
communication.
information to the E-meter
G-meter then polls
TOU
Pushed by the Comms
Notification is sent
N/A
Calendar
Hub to the IHD. DLMS is
following a G-meter
used to send TOU
communication.
information to the E-meter
G-meter then polls
Password
Pushed by the Comms
Notification is sent to
N/A
Hub to the IHD. DLMS is
the G-meter to stay
used to send password
awake and then the
information to the E-meter
password is published.
In the example shown in
A point-to-point connection between a hand-held terminal (“HHT”) and the Comms Hub is established and used for commissioning the Comms Hub. The authority given the HHT depends on a certificate it is issued by the manufacturer or operator. The connection may be established as described in U.S. patent application Ser. No. 13/296,552 filed on Nov. 15, 2011, entitled “METHOD FOR SECURELY COMMUNICATING ACROSS MULTIPLE NETWORKS USING A SINGLE RADIO,” wherein the HHT is able to find the Comms Hub and to communicate with it, without having to join the HAN network. The '552 Application is incorporated herein by reference in its entirety.
An exemplary HHT Inter-PAN flow is shown in
The HHT then contacts the Comms Hub to initiate the ZigBee CBKE protocol. This message exchange generates a private, symmetric key shared between the two devices. With the symmetric key in place, both devices can now send secure ZigBee messages. The Comms Hub receives messages from many sources in the HAN network. It knows to apply the Inter-PAN key to the messages received with the APS Frame Type field set to 0b11. The first message received by the Comms Hub is the HHT's certificate. This certificate identifies the activities the HHT is authorized to perform.
The HHT is now authorized to send commands to the Comms Hub and receive responses. The HHT operates an inactivity timer t2 that alerts it when to renew the symmetric key and a certificate. When the HHT decides that it is finished it does not renew the key. The Comms Hub's inactivity timer is set to t1. When the t1 timer expires the Comms Hub revokes the key and the certificate. The value of t2 is set to be less than the value of t1.
Veillette, Michel, Enns, Frederick, Frei, Randy
Patent | Priority | Assignee | Title |
10015720, | Mar 14 2014 | goTenna, Inc.; GOTENNA INC | System and method for digital communication between computing devices |
10101987, | Mar 11 2015 | Echelon Corporation | Method and system of processing an image upgrade |
10602424, | Mar 14 2014 | goTenna Inc. | System and method for digital communication between computing devices |
10749731, | Jul 06 2015 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Facilitating secure communication between a client device and an application server |
10944669, | Feb 09 2018 | goTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
11082344, | Mar 08 2019 | goTenna, Inc.; GOTENNA,INC | Method for utilization-based traffic throttling in a wireless mesh network |
11558299, | Mar 08 2019 | goTenna, Inc. | Method for utilization-based traffic throttling in a wireless mesh network |
11750505, | Feb 09 2018 | goTenna Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
11811642, | Jul 27 2018 | goTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
9037709, | Feb 10 2011 | Trilliant Holdings Inc. | Device and method for facilitating secure communications over a cellular network |
9305454, | Oct 08 2010 | LANDIS+GYR TECHNOLOGY, INC | Apparatus and method for controlling communications to and from fixed position communication devices over a fixed bandwidth communication link |
9565513, | Mar 02 2015 | THIRDWAYV, INC. | Systems and methods for providing long-range network services to short-range wireless devices |
9756549, | Mar 14 2014 | goTenna Inc.; GOTENNA INC | System and method for digital communication between computing devices |
9826387, | Nov 04 2015 | ABB Schweiz AG | Indicating a drive status in communications |
9881259, | Feb 02 2011 | LANDIS+GYR TECHNOLOGY, INC | System and method for estimating and providing dispatchable operating reserve energy capacity through use of active load management |
Patent | Priority | Assignee | Title |
4132981, | Oct 21 1976 | SCHLUMBERGER RESOURCE MANAGEMENT SERVICES, INC ; SCHLUMBERGER RESOURCE MANAGEMENT SYSTEMS, INC | Self-powered system for measuring and storing consumption of utility meter |
4190800, | Nov 22 1976 | Scientific-Atlanta, Inc. | Electrical load management system |
4204195, | May 23 1977 | General Electric Company | Meter terminal unit for use in automatic remote meter reading and control system |
4254472, | Aug 14 1978 | GTE Valeron Corporation | Remote metering system |
4322842, | Oct 23 1979 | COOPER INDUSTRIES, INC , 1001 FANNIN, HOUSTON, TEXAS,,77002, A CORP OF OHIO | Broadcast system for distribution automation and remote metering |
4396915, | Mar 31 1980 | General Electric Company | Automatic meter reading and control system |
4425628, | May 26 1981 | General Electric Company | Control module for engergy management system |
4638314, | Jan 12 1984 | AMERICAN SCIENCE AND ENGINEERING, INC | Meter transponder hybrid |
4644320, | Sep 14 1984 | OREGON GRADUATE INSTITUTE OF SCIENCE & TECHNOLOGY, BEAVERTON, OR, A CORP OF OR | Home energy monitoring and control system |
4749992, | Jul 03 1986 | Total Energy Management Consultants Corp. (TEMCO); TOTAL ENERGY MANAGEMENT CONSULTANTS CORP , TEMCO , A CORP OF MA ; TOTAL ENERGY MANAGEMENT CONSULTANTS CORP TEMCO , 265 FRANKLIN STREET, A CORP OF MA ; TOTAL ENERGY MANEGEMENT CONSULTANTS CORP TEMCO , 265 FRANKLIN STREET, A CORP OF MA | Utility monitoring and control system |
4792946, | Apr 07 1987 | Spectrum Electronics, Inc. | Wireless local area network for use in neighborhoods |
4939726, | Dec 16 1987 | Proxim Wireless Corporation | Method for routing packets in a packet communication network |
5007052, | Apr 11 1989 | RICOCHET NETWORKS, INC | Method for routing packets by squelched flooding |
5056107, | Feb 15 1990 | Itron, Inc | Radio communication network for remote data generating stations |
5077753, | Apr 09 1990 | Acacia Research Group LLC | Radio communication system using spread spectrum techniques |
5079768, | Mar 23 1990 | Proxim Wireless Corporation | Method for frequency sharing in frequency hopping communications network |
5115433, | Dec 16 1987 | Proxim Wireless Corporation | Method and system for routing packets in a packet communication network |
5117422, | Jul 09 1990 | ITT Corporation | Method for providing an efficient and adaptive management of message routing in a multi-platform and apparatus communication system |
5130987, | Mar 23 1990 | Proxim Wireless Corporation | Method for synchronizing a wide area network without global synchronizing |
5138615, | Jun 22 1989 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Reconfiguration system and method for high-speed mesh connected local area network |
5159592, | Oct 29 1990 | International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION, A CORP OF NEW YORK | Network address management for a wired network supporting wireless communication to a plurality of mobile users |
5216623, | Jun 06 1990 | M T MCBRIAN INC | System and method for monitoring and analyzing energy characteristics |
5276680, | May 01 1991 | Cisco Technology, Inc | Wireless coupling of devices to wired network |
5311581, | Apr 04 1989 | Sparton Corporation | Remote meter reading method and apparatus |
5400338, | Feb 08 1994 | LG Electronics Inc | Parasitic adoption of coordinate-based addressing by roaming node |
5430729, | Apr 04 1994 | CDC PROPRIETE INTELLECTUELLE | Method and apparatus for adaptive directed route randomization and distribution in a richly connected communication network |
5432507, | Oct 27 1992 | SOCIETA ITALIANA PER LO SVILUPPO DELL ELETTRONICA SISVEL S P A | Method and network for operating a distribution network |
5453977, | Feb 08 1994 | Google Inc | Method for network configuration via third party query |
5459727, | Feb 28 1991 | AT&T IPM Corp | Wireless telecommunication system |
5463777, | Jul 02 1992 | Rockstar Consortium US LP | System for segmenting data packets to form binary decision trees which determine filter masks combined to filter the packets for forwarding |
5465398, | Oct 07 1993 | Google Inc | Automatic power level control of a packet communication link |
5467345, | May 31 1994 | Motorola, Inc. | Packet routing system and method therefor |
5471469, | Feb 08 1994 | GOOGLE LLC | Method of resolving media contention in radio communication links |
5479400, | Jun 06 1994 | Google Inc | Transceiver sharing between access and backhaul in a wireless digital communication system |
5488608, | Apr 14 1994 | Google Inc | Method and system for routing packets in a packet communication network using locally constructed routing tables |
5515369, | Jun 24 1994 | QUARTERHILL INC ; WI-LAN INC | Method for frequency sharing and frequency punchout in frequency hopping communications network |
5515509, | Jul 17 1992 | Sun Microsystems, Inc. | Method and apparatus for implementing self-organization in a wireless local area network |
5528507, | Aug 11 1993 | TECHNOLOGIES FUTURES, INC D B A ORION TECHNOLOGY | System for utility demand monitoring and control using a distribution network |
5544036, | Mar 25 1992 | ASSOCIATED DATA CONSULTANTS, INC | Energy management and home automation system |
5553094, | Feb 15 1990 | Itron, Inc | Radio communication network for remote data generating stations |
5570084, | Jun 28 1994 | Google Inc | Method of loose source routing over disparate network types in a packet communication network |
5572438, | Jan 05 1995 | ELUTIONS, INC | Engery management and building automation system |
5572528, | Mar 20 1995 | RPX Corporation | Mobile networking method and apparatus |
5596722, | Apr 03 1995 | CDC PROPRIETE INTELLECTUELLE | Packet routing system and method for achieving uniform link usage and minimizing link load |
5608721, | Apr 03 1995 | CDC PROPRIETE INTELLECTUELLE | Communications network and method which implement diversified routing |
5608780, | Nov 24 1993 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Wireless communication system having base units which extracts channel and setup information from nearby base units |
5623495, | Jun 15 1995 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Portable base station architecture for an AD-HOC ATM lan |
5659300, | Jan 30 1995 | SILVER SPRING NETWORKS, INC | Meter for measuring volumetric consumption of a commodity |
5673252, | Jul 19 1991 | Itron, Inc | Communications protocol for remote data generating stations |
5684710, | Jan 05 1995 | ELUTIONS, INC | System for measuring electrical power interruptions |
5696501, | Aug 02 1994 | General Electric Company | Method and apparatus for performing the register functions for a plurality of metering devices at a common node |
5696695, | Jan 05 1995 | ELUTIONS, INC | System for rate-related control of electrical loads |
5717718, | Jun 22 1993 | SCHLUMBERGER RESOURCE MANAGEMENT SERVICES, INC | Multipoint to point radiocommunications network |
5719564, | May 10 1996 | ACLARA TECHNOLOGIES LLC | Utility meter reading system |
5726644, | Jun 30 1995 | Philips Electronics North America Corporation | Lighting control system with packet hopping communication |
5727057, | Dec 27 1994 | AG Communication Systems Corporation | Storage, transmission, communication and access to geographical positioning data linked with standard telephony numbering and encoded for use in telecommunications and related services |
5737318, | Dec 27 1995 | PHLLIPS ELECTRONICS NORTH AMERICA CORPORATION | Method for initializing a wireless, packet-hopping network |
5740366, | Oct 01 1991 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Communication network having a plurality of bridging nodes which transmit a beacon to terminal nodes in power saving state that it has messages awaiting delivery |
5748104, | Jul 11 1996 | Qualcomm Incorporated | Wireless remote telemetry system |
5757783, | Jun 15 1995 | Alcatel Lucent | Method and apparatus for routing ATM cells in an AD-ATM LAN |
5758331, | Aug 15 1994 | FRANCE BREVETS SAS | Computer-assisted sales system for utilities |
5761083, | Mar 25 1992 | Energy management and home automation system | |
5767790, | Mar 07 1996 | Automatic utility meter monitor | |
5774660, | Aug 05 1996 | RESONATE INC | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
5812531, | Jul 29 1994 | NETGEAR INC | Method and apparatus for bridging wireless LAN to a wired LAN |
5822309, | Jun 15 1995 | Alcatel Lucent | Signaling and control architecture for an ad-hoc ATM LAN |
5844893, | May 14 1991 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | System for coupling host computer meanswith base transceiver units on a local area network |
5874903, | Jun 06 1997 | Elster Electricity, LLC | RF repeater for automatic meter reading system |
5880677, | Oct 15 1996 | POWERWEB, INC | System for monitoring and controlling electrical consumption, including transceiver communicator control apparatus and alternating current control apparatus |
5892758, | Jul 11 1996 | QUALCOMM INCORPORATED, A DELAWARE CORPORATION | Concentrated subscriber wireless remote telemetry system |
5894422, | Jan 27 1997 | System and methods that facilitate the introduction of market based economic models for electric power | |
5896097, | Mar 06 1996 | CELLNET INNOVATIONS, INC | System for utility meter communications using a single RF frequency |
5896566, | Jul 28 1995 | Motorola, Inc. | Method for indicating availability of updated software to portable wireless communication units |
5898387, | Mar 26 1997 | Itron, Inc | Modular meter based utility gateway enclosure |
5898826, | Nov 22 1995 | Intel Corporation; Intel Corp | Method and apparatus for deadlock-free routing around an unusable routing component in an N-dimensional network |
5901067, | Nov 15 1996 | LogicLink Corporation | System for interactively selecting and activating groups of electrically powered devices |
5903566, | Jun 24 1994 | Google Inc | Method for distributing program code to intelligent nodes in a wireless mesh data communication network |
5914672, | Jun 13 1997 | PCT INC ; PTC INC | System for field installation of a remote meter interface |
5914673, | Mar 06 1996 | CELLNET INNOVATIONS, INC | System for utility meter communications using a single RF frequency |
5919247, | Jul 24 1996 | BMC SOFTWARE, INC | Method for the distribution of code and data updates |
5920697, | Jul 11 1996 | Microsoft Technology Licensing, LLC | Method of automatic updating and use of routing information by programmable and manual routing information configuration based on least lost routing |
5926531, | Feb 14 1997 | StatSignal IPC, LLC | Transmitter for accessing pay-type telephones |
5933092, | Aug 02 1994 | General Electric Company | Method and apparatus for performing the register functions for a plurality of metering devices at a common node |
5953371, | Jun 22 1993 | Schlumberger Industries Limited | Multipoint to point radiocommunications network |
5963146, | Feb 15 1990 | Itron, Inc. | Wide area communications network for remote data generating stations |
5963457, | Mar 18 1994 | Hitachi, Ltd. | Electrical power distribution monitoring system and method |
5974236, | Mar 25 1992 | AES Corporation | Dynamically reconfigurable communications network and method |
5986574, | Oct 16 1997 | ACOUSTIC TECHNOLOGY, INC | System and method for communication between remote locations |
5987011, | Aug 30 1996 | Chai-Keong, Toh; King's College | Routing method for Ad-Hoc mobile networks |
5991806, | Jun 09 1997 | Dell USA, L.P. | Dynamic system control via messaging in a network management system |
6014089, | Oct 28 1996 | FIRST-CLASS MONITORING, LLC | Method for transmitting data using a digital control channel of a wireless network |
6018659, | Oct 17 1996 | The Boeing Company | Airborne broadband communication network |
6026133, | Jul 11 1996 | Nokia Siemens Networks Oy | Method and apparatus for system clock adjustment |
6028522, | Oct 14 1998 | StatSignal IPC, LLC | System for monitoring the light level around an ATM |
6044062, | Dec 06 1996 | IPCO, LLC | Wireless network system and method for providing same |
6058355, | Jun 30 1997 | Ericsson Inc | Automatic power outage notification via CEBus interface |
6061609, | Mar 18 1994 | Hitachi, Ltd. | Electrical power distribution monitoring system and method |
6073169, | Apr 08 1997 | Elster Electricity, LLC | Automatic meter reading system employing common broadcast command channel |
6075777, | Aug 21 1996 | GOOGLE LLC | Network flow framework for online dynamic channel allocation |
6078785, | Oct 16 1995 | Demand reporting of electricity consumption by radio in relays to a base station, and demand relays wattmeters so reporting over a wide area | |
6084867, | Oct 01 1991 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Apparatus and method of routing data in a radio frequency local area network |
6088659, | Sep 11 1997 | Elster Electricity, LLC | Automated meter reading system |
6097703, | Dec 19 1994 | IWICS INC | Multi-hop packet radio networks |
6108699, | Jun 27 1997 | Oracle America, Inc | System and method for modifying membership in a clustered distributed computer system and updating system configuration |
6118269, | Mar 26 1997 | Itron, Inc | Electric meter tamper detection circuit for sensing electric meter removal |
6122603, | May 29 1998 | Powerweb, Inc. | Multi-utility energy control system with dashboard |
6124806, | Sep 12 1997 | INTERNET TELEMETRY CORP | Wide area remote telemetry |
6134587, | Dec 27 1996 | RAKUTEN, INC | Method of setting up ad hoc local area network, method of communicating using said network, and terminal for use with said network |
6137423, | Jun 13 1997 | Whisper Communications, Inc. | System for communication with a remote meter interface |
6150955, | Oct 28 1996 | FIRST-CLASS MONITORING, LLC | Apparatus and method for transmitting data via a digital control channel of a digital wireless network |
6169979, | Aug 15 1994 | FRANCE BREVETS SAS | Computer-assisted sales system for utilities |
6172616, | Feb 15 1990 | Itron, Inc. | Wide area communications network for remote data generating stations |
6195018, | Feb 07 1996 | LANDIS+GYR INNOVATIONS, INC | Metering system |
6218953, | Oct 14 1998 | StatSignal IPC, LLC | System and method for monitoring the light level around an ATM |
6233327, | Feb 14 1997 | StatSignal IPC, LLC | Multi-function general purpose transceiver |
6239722, | Oct 16 1997 | ACOUSTIC TECHNOLOGY, INC | System and method for communication between remote locations |
6240080, | Aug 05 1997 | NEC Corporation | Mobile terminal and method of controlling the same |
6246677, | Sep 06 1996 | SILVER SPRING NETWORKS, INC | Automatic meter reading data communication system |
6246689, | Sep 21 1998 | Lucent Technologies Inc | Method and apparatus for efficient topology aggregation for networks with hierarchical structure |
6249516, | Dec 06 1996 | IPCO, LLC | Wireless network gateway and method for providing same |
6298053, | Jan 14 2000 | GOOGLE LLC | Method and apparatus for connection handoff between connected radios |
6300881, | Jun 09 1999 | Motorola, Inc. | Data transfer system and method for communicating utility consumption data over power line carriers |
6304556, | Aug 24 1998 | Cornell Research Foundation, Inc. | Routing and mobility management protocols for ad-hoc networks |
6311105, | May 29 1998 | Powerweb, Inc. | Multi-utility energy control system |
6333975, | Mar 03 1998 | Itron, Inc | Method and system for reading intelligent utility meters |
6338087, | Dec 27 1996 | NEC Corporation | Method of setting up ad hoc local network, method of communicating using said network, and terminal for use with said network |
6362745, | Mar 26 1997 | Itron, Inc | Method of detecting tamper of an electric meter |
6363057, | Feb 12 1997 | Elster Electricity, LLC | Remote access to electronic meters using a TCP/IP protocol suite |
6366217, | Sep 12 1997 | INTERNET TELEMETRY CORP | Wide area remote telemetry |
6369719, | Oct 28 1996 | FIRST-CLASS MONITORING, LLC | Apparatus and method for collecting and transmitting utility meter data and other information via a wireless network |
6369769, | Feb 25 2000 | SILVER SPRING NETWORKS, INC | Flush mounted pit lid antenna |
6373399, | Feb 15 1990 | Itron, Inc. | Wide area communications network for remote data generating stations |
6396839, | Feb 12 1997 | Elster Electricity, LLC | Remote access to electronic meters using a TCP/IP protocol suite |
6400949, | Aug 09 1996 | Siemens Aktiengesellschaft | Process for establishing telecommunication connections between telecommunication apparatuses in wireless telecommunication systems, in particular between DECT-apparatuses of a DECT-system |
6407991, | May 06 1993 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Communication network providing wireless and hard-wired dynamic routing |
6415330, | Dec 27 1996 | NEC Corporation | Method of setting up AD HOC local area network, method of communicating using said network, and terminal for use with said network |
6430268, | Sep 20 1997 | StatSignal IPC, LLC | Systems for requesting service of a vending machine |
6437692, | Jun 22 1998 | SIPCO, LLC | System and method for monitoring and controlling remote devices |
6457054, | May 15 1997 | Intel Corporation | System for reducing user-visibility latency in network transactions |
6480497, | Nov 23 1998 | LG Electronics Inc | Method and apparatus for maximizing data throughput in a packet radio mesh network |
6480505, | Dec 06 1999 | Telefonaktiebolaget LM Ericsson | Batched fair exhaustive polling scheduler |
6492910, | Feb 07 1996 | LANDIS+GYR TECHNOLOGIES, INC ; LANDIS+GYR INNOVATIONS, INC | Metering system |
6509841, | Oct 16 1997 | ACOUSTIC TECHNOLOGY, INC | System and method for communication between remote locations |
6522974, | Mar 01 2000 | WESTERNGECO L L C | Method for vibrator sweep analysis and synthesis |
6535498, | Dec 06 1999 | Telefonaktiebolaget LM Ericsson | Route updating in ad-hoc networks |
6538577, | Sep 05 1997 | SILVER SPRING NETWORKS, INC | Electronic electric meter for networked meter reading |
6553355, | May 29 1998 | Indranet Technologies Limited | AUTOPOIETIC NETWORK SYSTEM ENDOWED WITH DISTRIBUTED ARTIFICIAL INTELLIGENCE FOR THE SUPPLY OF HIGH VOLUME HIGH-SPEED MULTIMEDIA TELESTHESIA TELEMETRY, TELEKINESIS, TELEPRESENCE, TELEMANAGEMENT, TELECOMMUNICATIONS, AND DATA PROCESSING SERVICES |
6556830, | Feb 02 1998 | Ericsson Inc | Coverage area sectorization in time division multiple access/frequency-time division duplex communications systems |
6577671, | Dec 29 1999 | Nokia Mobile Phones Limited | Enhanced code allocation method for CDMA systems |
6606708, | Sep 26 1997 | Verizon Patent and Licensing Inc | Secure server architecture for Web based data management |
6618578, | Feb 14 1997 | StatSignal IPC, LLC | System and method for communicating with a remote communication unit via the public switched telephone network (PSTN) |
6618772, | Nov 15 1996 | LogicLink Corporation | Method and apparatus for selecting, monitoring, and controlling electrically powered devices |
6628764, | Feb 14 1997 | StatSignal IPC, LLC | System for requesting service of a vending machine |
6633823, | Jul 13 2000 | NXEGEN , INC | System and method for monitoring and controlling energy usage |
6636894, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for redirecting users having transparent computer access to a network using a gateway device having redirection capability |
6650249, | May 01 1998 | Elster Electricity, LLC | Wireless area network communications module for utility meters |
6653945, | Feb 15 1990 | Itron, Inc. | Radio communication network for collecting data from utility meters |
6657552, | May 04 2001 | SENSUS USA INC | System and method for communicating and control of automated meter reading |
6665620, | Aug 26 1998 | Landis+Gyr LLC | Utility meter having primary and secondary communication circuits |
6671635, | Feb 23 2001 | POWER MEASUREMENT LTD | Systems for improved monitoring accuracy of intelligent electronic devices |
6681110, | Jul 02 1999 | Musco Corporation | Means and apparatus for control of remote electrical devices |
6681154, | Jun 22 2000 | STONEWATER CONTROL SYSTEMS | System and method for monitoring and controlling energy distribution |
6684245, | Apr 08 1997 | Elster Electricity, LLC | Automatic meter reading system employing common broadcast command channel |
6687901, | Sep 06 1999 | Fujitsu Limited | Method and apparatus for updating software in radio terminal device |
6691173, | Jul 06 1999 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Distributed management of an extended network containing short-range wireless links |
6697331, | Nov 17 1999 | Telefonaktiebolaget LM Ericsson | Link layer acknowledgement and retransmission for cellular telecommunications |
6710721, | Oct 16 1999 | PINE TREE HOLDINGS, INC | Radio frequency automated meter reading device |
6711166, | Dec 10 1997 | RPX Corporation | System and method for packet network trunking |
6711409, | Dec 15 1999 | NODAL TECHNOLOGIES LLC | Node belonging to multiple clusters in an ad hoc wireless network |
6711512, | Aug 07 2001 | Korea Electric Power Data Network Co. Ltd. | Pole transformer load monitoring system using wireless internet network |
6714787, | Jan 17 2002 | MOTOROLA SOLUTIONS, INC | Method and apparatus for adapting a routing map for a wireless communications network |
6718137, | Jan 05 1999 | Ciena Corporation | Method and apparatus for configuration by a first network element based on operating parameters of a second network element |
6725281, | Jun 11 1999 | Rovi Technologies Corporation | Synchronization of controlled device state using state table and eventing in data-driven remote device control model |
6728514, | Sep 08 2000 | QUARTERHILL INC ; WI-LAN INC | Scalable wireless network topology systems and methods |
6747557, | Mar 18 1999 | HUNT TECHNOLOGIES, INC | System and method for signaling a weather alert condition to a residential environment |
6747981, | Feb 12 1997 | Elster Electricity, LLC | Remote access to electronic meters using a TCP/IP protocol suite |
6751445, | Mar 18 1997 | Koninklijke Philips Electronics N V | Receiver tuning system |
6751455, | Sep 17 1997 | The Regents of the University of California | Power- and bandwidth-adaptive in-home wireless communications system with power-grid-powered agents and battery-powered clients |
6751672, | Jun 02 1999 | Apple Inc | Efficient dynamic home agent discovery algorithm and system |
6772052, | Apr 07 1998 | IT & Process AS | System for controlling power consumption at a user of electric power |
6775258, | Mar 17 2000 | UNWIRED BROADBAND, INC | Apparatus, and associated method, for routing packet data in an ad hoc, wireless communication system |
6778099, | May 01 1998 | Elster Electricity, LLC | Wireless area network communications module for utility meters |
6785592, | Jul 16 1999 | NTT DATA SERVICES CORPORATION | System and method for energy management |
6798352, | Oct 16 1999 | PINE TREE HOLDINGS, INC | Optical sensor for utility meter |
6801865, | Mar 21 2002 | ENGAGE NETWORKS, INC | Meter monitoring and tamper protection system and method |
6826620, | Aug 26 1998 | INTELLECTUAL PROPERTIES I KFT | Network congestion control system and method |
6829216, | Aug 18 2000 | Hitachi America, Ltd | Method and system for designing a network |
6829347, | Dec 14 2001 | RPX CLEARINGHOUSE LLC | Constraint based routing |
6831921, | Mar 27 2002 | East West Bank | Wireless internet access system |
6836737, | Aug 09 2000 | SIPCO, LLC | Systems and methods for providing remote monitoring of consumption for a utility meter |
6839775, | Nov 15 1996 | LogicLink Corporation | Method and apparatus for vending machine controller configured to monitor and analyze power profiles for plurality of motor coils to determine condition of vending machine |
6842706, | Jan 17 2001 | SEISMOTECH SAFETY SYSTEMS INC ; SEISMOTECH IP HOLDINGS INC | Methods, apparatus, media, and signals for managing utility usage |
6845091, | Mar 16 2000 | SRI International | Mobile ad hoc extensions for the internet |
6859186, | Feb 03 2003 | SILVER SPRING NETWORKS, INC | Flush-mounted antenna and transmission system |
6865185, | Feb 25 2000 | Cisco Technology, Inc; Cisco Systems, Inc | Method and system for queuing traffic in a wireless communications network |
6882635, | Feb 05 2002 | Qualcomm Incorporated | Coexistence between interfering communication systems |
6885309, | Jun 01 2000 | LANDIS+GYR INNOVATIONS, INC | Meter to internet pathway |
6891838, | Jun 22 1998 | HUNT TECHNOLOGIES, INC | System and method for monitoring and controlling residential devices |
6900738, | Jun 21 2000 | Method and apparatus for reading a meter and providing customer service via the internet | |
6904025, | Oct 12 1999 | Telefonaktiebolaget LM Ericsson | Wide area network mobility for IP based networks |
6904385, | May 29 1998 | Powerweb, Inc. | Multi-utility energy control system with internet energy platform having diverse energy-related engines |
6909705, | Nov 02 1999 | Cellco Partnership | Integrating wireless local loop networks with cellular networks |
6914533, | Jun 22 1998 | HUNT TECHNOLOGIES, INC | System and method for accessing residential monitoring devices |
6914893, | Jun 22 1998 | HUNT TECHNOLOGIES, INC | System and method for monitoring and controlling remote devices |
6946972, | Jan 25 2001 | Itron, Inc | Systems and methods for wirelessly transmitting data from a utility meter |
6954814, | Jun 10 1999 | HANGER SOLUTIONS, LLC | Method and system for monitoring and transmitting utility status via universal communications interface |
6963285, | Sep 30 2002 | TXU Energy Retail Company LLC | Outage notification device and method |
6967452, | Nov 28 2002 | Yamaha Corporation | Operation apparatus with auto correction of position data of electric faders |
6970434, | Jun 07 1995 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Hierarchical communication system providing intelligent data, program and processing migration |
6970771, | Nov 01 1999 | ABB Research LTD | Integration of a field device in an installation control system |
6975613, | Dec 06 1999 | Telefonaktiebolaget LM Ericsson | System and method for scheduling communication sessions in an ad-hoc network |
6980973, | Sep 07 1999 | Visa International Service Association | Self-paying smart utility meter and payment service |
6982651, | May 02 2001 | Sensus Spectrum LLC | Automatic meter reading module |
6985087, | Mar 15 2002 | Qualcomm Inc. | Method and apparatus for wireless remote telemetry using ad-hoc networks |
6995666, | Oct 16 2002 | CARINA TECHNOLOGY, INC | Cellemetry-operated railroad switch heater |
6999441, | Jun 27 2001 | GOOGLE LLC | Method and apparatus for contention management in a radio-based packet network |
7009379, | Sep 12 2002 | Landis+Gyr LLC | Electricity meter with power supply load management |
7009493, | Jun 22 2001 | PANASONIC ELECTRIC WORKS CO , LTD | Electronic device with paging for energy curtailment and code generation for manual verification of curtailment |
7010363, | Jun 13 2003 | Battelle Memorial Institute | Electrical appliance energy consumption control methods and electrical energy consumption systems |
7016336, | Nov 22 2000 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Administrative domains for personal area networks |
7020701, | Oct 06 1999 | Intellectual Ventures I LLC | Method for collecting and processing data using internetworked wireless integrated network sensors (WINS) |
7042368, | Oct 16 1999 | PINE TREE HOLDINGS, INC | Automated meter reader device having optical sensor with automatic gain control |
7046682, | Feb 12 1997 | Elster Electricity, LLC | Network-enabled, extensible metering system |
7053767, | Jun 22 1998 | SIPCO, LLC | System and method for monitoring and controlling remote devices |
7053853, | Jun 26 2003 | TRILLIANT NETWORKS, INC | Planar antenna for a wireless mesh network |
7054271, | Dec 06 1996 | IPCO, LLC | Wireless network system and method for providing same |
7062361, | May 02 2000 | RTP CONTROLS, INC | Method and apparatus for controlling power consumption |
7064679, | Sep 05 1997 | Silver Spring Networks, Inc. | Electronic electric meter for networked meter reading |
7072945, | Jun 30 2000 | Nokia Technologies Oy | Network and method for controlling appliances |
7079810, | Feb 14 1997 | StatSignal IPC, LLC | System and method for communicating with a remote communication unit via the public switched telephone network (PSTN) |
7089089, | Mar 31 2003 | POWER MEASUREMENT LTD | Methods and apparatus for retrieving energy readings from an energy monitoring device |
7102533, | Sep 25 2001 | LG Electronics Inc. | Automatic meter reading system and method using telephone line |
7103086, | Sep 29 2000 | DIGI INTERNATIONAL INC | Frequency hopping data radio |
7103511, | Oct 14 1998 | HUNT TECHNOLOGIES, INC | Wireless communication networks for providing remote monitoring of devices |
7106044, | Aug 02 2005 | General Electric Company | Systems, methods, and apparatuses for detecting residential electricity theft in firmware |
7119713, | Jun 27 2002 | Elster Electricity, LLC | Dynamic self-configuring metering network |
7126494, | Feb 12 1997 | Elster Electricity, LLC | Remote access to electronic meters using a TCP/IP protocol suite |
7135850, | Sep 12 2003 | Landis+Gyr LLC | Electricity meter with power supply load management |
7135956, | Jul 13 2000 | Nxegen, Inc. | System and method for monitoring and controlling energy usage |
7137550, | Feb 14 1997 | STAT SIGNAL IPC, LLC; StatSignal IPC, LLC | Transmitter for accessing automated financial transaction machines |
7143204, | Nov 15 1996 | LogicLink Corporation | Method and apparatus for suspending or adjusting billing charge for usage of electrically powered devices if abnormal or halt condition detected |
7145474, | Jun 27 2002 | Elster Electricity, LLC | Dynamic self-configuring metering network |
7170425, | Sep 24 2004 | Elster Electricity, LLC | System and method for creating multiple operating territories within a meter reading system |
7174260, | Apr 01 2004 | Blue Line Innovations Inc. | System and method for reading power meters |
7185131, | Jun 09 2000 | HANGER SOLUTIONS, LLC | Host-client utility meter systems and methods for communicating with the same |
7188003, | Dec 30 1994 | POWER MEASUREMENT LTD | System and method for securing energy management systems |
7197046, | Aug 07 2000 | HARIHARASUBRAHMANIAN, SHRIKUMAR | Systems and methods for combined protocol processing protocols |
7200633, | Aug 25 2000 | NTT DoCoMo, Inc | Information delivery system and information delivery method |
7209840, | Aug 09 2000 | Landis+Gyr Technologies, LLC | Systems and methods for providing remote monitoring of electricity consumption for an electric meter |
7215926, | Dec 05 2003 | Microsoft Technology Licensing, LLC | Enhanced mode technique for growing mesh networks |
7222111, | May 29 1998 | POWERWEB, INC | Multi-utility energy control and facility automation system with dashboard having a plurality of interface gateways |
7230544, | Apr 22 2002 | LANDIS+GYR INNOVATIONS, INC | Intelligent two-way telemetry |
7230931, | Jan 19 2001 | GENERAL ACCESS SOLUTIONS, LTD | Wireless access system using selectively adaptable beam forming in TDD frames and method of operation |
7231482, | Jun 09 2000 | HANGER SOLUTIONS, LLC | Method and system for monitoring and transmitting utility status via universal communications interface |
7245938, | Oct 17 2003 | CSS ANTENNA, LLC | Wireless antenna traffic matrix |
7248181, | Oct 16 1999 | PINE TREE HOLDINGS, INC ; ICH INTELLECTUAL CAPITAL HOLDINGS, INC | Automated meter reading system |
7248861, | Jul 23 2001 | Malikie Innovations Limited | System and method for pushing information to a mobile device |
7250874, | Jan 25 2001 | Itron, Inc | System and methods for wirelessly transmitting data from a utility meter |
7251570, | Jul 18 2003 | POWER MEASUREMENT LTD | Data integrity in a mesh network |
7263073, | Mar 18 1999 | HUNT TECHNOLOGIES, INC | Systems and methods for enabling a mobile user to notify an automated monitoring system of an emergency situation |
7271735, | Dec 20 2001 | GRIDSPERTISE S R L | System for the remote data acquisition and control of electric energy meters |
7274305, | Oct 16 2002 | CARINA TECHNOLOGY, INC | Electrical utility communications and control system |
7274975, | Jun 06 2005 | GRIDPOINT, INC | Optimized energy management system |
7277027, | Sep 05 1997 | ITRON NETWORKED SOLUTIONS, INC | Electronic electric meter for networked meter reading |
7277967, | Nov 15 1996 | LogicLink Corporation | Method and apparatus for suspending or adjusting billing charge for usage of electrically powered devices if abnormal or halt condition detected |
7289887, | Sep 08 2003 | Itron, Inc | Systems and methods for remote power management using IEEE 802 based wireless communication links |
7295128, | Jun 22 1998 | HUNT TECHNOLOGIES, INC | Smoke detection methods, devices, and systems |
7301476, | Jun 27 2002 | Elster Electricity, LLC | Dynamic self-configuring metering network |
7304587, | Feb 14 2003 | ENERGY TECHNOLOGY GROUP, INC | Automated meter reading system, communication and control network for automated meter reading, meter data collector program product, and associated methods |
7308370, | Mar 22 2005 | Elster Electricity, LLC | Using a fixed network wireless data collection system to improve utility responsiveness to power outages |
7312721, | Jun 27 2002 | Elster Electricity, LLC | Data collector for an automated meter reading system |
7315257, | Oct 16 1999 | ICH INTELLECTUAL CAPITAL HOLDINGS INC | Automated meter reader having high product delivery rate alert generator |
7317404, | Jan 14 2004 | Itron, Inc | Method and apparatus for collecting and displaying consumption data from a meter reading system |
7321316, | Jul 18 2003 | POWER MEASUREMENT LTD | Grouping mesh clusters |
7324453, | Aug 30 2002 | RPX Corporation | Constraint-based shortest path first method for dynamically switched optical transport networks |
7327998, | Dec 22 2004 | Elster Electricity, LLC | System and method of providing a geographic view of nodes in a wireless network |
7346463, | Aug 09 2001 | Landis+Gyr Technologies, LLC | System for controlling electrically-powered devices in an electrical network |
7348769, | Sep 12 2003 | Landis+Gyr LLC | Electricity meter with power supply load management |
7349766, | Sep 08 2003 | Itron, Inc | Systems and methods for remote power management using 802.11 wireless protocols |
7362709, | Nov 02 2001 | Arizona Board of Regents | Agile digital communication network with rapid rerouting |
7366113, | Dec 27 2002 | AT & T Corp. | Adaptive topology discovery in communication networks |
7366191, | Dec 19 2002 | Anritsu Corporation | Mesh network bridges making operable spanning tree protocol and line fault backup protocol in optimized forwarding environment |
7379981, | Jan 02 2002 | F2VS TECHNOLOGIES, LLC | Wireless communication enabled meter and network |
7397907, | Feb 14 1997 | StatSignal IPC, LLC | Multi-function general purpose transceiver |
7406298, | Mar 25 2003 | ITRON NETWORKED SOLUTIONS, INC | Wireless communication system |
7411964, | Mar 14 2001 | NEC Corporation | Communication network, path setting method and recording medium having path setting program recorded thereon |
7427927, | Feb 16 2006 | Elster Electricity, LLC | In-home display communicates with a fixed network meter reading system |
7451019, | Sep 08 2003 | Itron, Inc | Systems and methods for remote power management using 802.11 wireless protocols |
7457273, | Nov 20 2002 | Fujitsu Limited | Radio terminal equipment |
7468661, | Jun 22 1998 | SIPCO, LLC | System and method for monitoring and controlling remote devices |
7487282, | Jun 09 2000 | HANGER SOLUTIONS, LLC | Host-client utility meter systems and methods for communicating with the same |
7495578, | Sep 02 2005 | Elster Electricity, LLC | Multipurpose interface for an automated meter reading device |
7498873, | Nov 02 2005 | SKYHOOK HOLDING, INC | Wide-lane pseudorange measurements using FM signals |
7505453, | Feb 12 1997 | Elster Electricity, LLC | Network-enabled, extensible metering system |
7512234, | Mar 25 2000 | Qualcomm Incorporated | Providing location data about a mobile entity |
7515571, | Nov 24 2003 | Samsung Electronics, Co., Ltd. | Frame structure for bridging operation in high-speed wireless personal area network and data transmitting method thereof |
7516106, | Jul 28 2003 | Invensys Systems, Inc | System and method for controlling usage of a commodity |
7522540, | Apr 15 2005 | Nvidia Corporation | Extended service set mesh topology discovery |
7522639, | Dec 26 2007 | MOBIT TELECOM LTD | Synchronization among distributed wireless devices beyond communications range |
7539151, | Jun 30 2005 | SKY ROYAL TRADING LIMITED | Channel selection for mesh networks having nodes with multiple radios |
7545285, | Feb 16 2006 | Elster Electricity, LLC | Load control unit in communication with a fixed network meter reading system |
7546595, | Oct 14 2004 | Microsoft Technology Licensing, LLC | System and method of installing software updates in a computer networking environment |
7548826, | Aug 24 2006 | GENERAC POWER SYSTEMS, INC | Power monitoring and testing |
7548907, | May 11 2006 | Square D Company | Partitioning electrical data within a database |
7554941, | Sep 10 2004 | Nivis, LLC | System and method for a wireless mesh network |
7562024, | Jun 18 2003 | Hewlett Packard Enterprise Development LP | Method and system for addressing client service outages |
7571865, | Oct 31 2006 | Tonerhead, Inc. | Wireless temperature control system |
7586420, | Sep 30 2002 | TXU Energy Retail Company LLC | Outage notification device and method |
7599665, | Dec 19 2003 | RPX Corporation | Selection of radio resources in a wireless communication device |
7602747, | Jul 29 2005 | Intel Corporation | Systems and methods increased mobility among mobile nodes in a wireless network |
7609673, | Feb 08 2002 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Packet-based conversational service for a multimedia session in a mobile communications system |
7613147, | Feb 08 2002 | Telefonaktiebolaget LM Ericsson (publ) | Packet-based conversational service for a multimedia session in a mobile communications system |
7623043, | Dec 19 2005 | General Electric Company | Method and system for metering consumption of energy |
7626967, | Jan 05 2005 | Intel Corporation | Methods and apparatus for providing a transparent bridge associated with a wireless mesh network |
7650425, | Mar 18 1999 | HUNT TECHNOLOGIES, INC | System and method for controlling communication between a host computer and communication devices associated with remote devices in an automated monitoring system |
7676231, | Apr 13 2005 | Intel Corporation | Methods and apparatus for selecting communication channels based on channel load information |
7680041, | Jan 31 2006 | Silicon Laboratories Inc | Node repair in a mesh network |
7729496, | Feb 28 2006 | TWITTER, INC | Efficient key updates in encrypted database systems |
7733224, | Jun 30 2006 | BT WEARABLES LLC | Mesh network personal emergency response appliance |
7743224, | Jan 06 2006 | Dot Hill Systems Corp.; DOT HILL SYSTEMS CORP | Method and apparatus for virtual load regions in storage system controllers |
7756538, | Nov 09 2005 | ARRIS ENTERPRISES LLC | Wide area network handset assisted content delivery system and method of using same |
7788491, | Oct 21 2005 | Sprint Spectrum LLC | Use of encryption for secure communication exchanges |
7802245, | Apr 27 2006 | Intel Corporation | Methods and apparatus for performing in-service upgrade of software in network processor |
7814322, | May 03 2005 | SRI INTERNATIONAL, A CALIFORNIA NONPROFIT, PUBLIC BENEFIT CORPORATION | Discovery and authentication scheme for wireless mesh networks |
7818758, | Jan 18 2002 | TIVO CORPORATION | Efficient multi-protocol software architecture with shared resources for different applications |
7847706, | Jun 23 2004 | Wireless Telematics LLC; WIRELSS TELMATICS LLC | Wireless electrical apparatus controller device and method of use |
7987279, | Nov 26 2008 | Fujitsu Limited | Control-relay apparatus |
8051415, | Feb 18 2008 | NEC Corporation | Disk array apparatus, method for exchanging firmware, program for exchanging firmware and storage medium for storing program thereof |
20010005368, | |||
20010010032, | |||
20010038342, | |||
20010046879, | |||
20020012358, | |||
20020013679, | |||
20020031101, | |||
20020051269, | |||
20020066095, | |||
20020110118, | |||
20020114303, | |||
20020120569, | |||
20020158774, | |||
20020174354, | |||
20020186619, | |||
20030001640, | |||
20030001754, | |||
20030014633, | |||
20030033394, | |||
20030037268, | |||
20030050737, | |||
20030112822, | |||
20030117966, | |||
20030122686, | |||
20030123481, | |||
20030156715, | |||
20030207697, | |||
20030229900, | |||
20030233201, | |||
20040008663, | |||
20040031030, | |||
20040034773, | |||
20040039817, | |||
20040054775, | |||
20040056775, | |||
20040066310, | |||
20040077341, | |||
20040081086, | |||
20040082203, | |||
20040100953, | |||
20040113810, | |||
20040117788, | |||
20040125776, | |||
20040138787, | |||
20040140908, | |||
20040157613, | |||
20040183687, | |||
20040185845, | |||
20040193329, | |||
20040210544, | |||
20040268142, | |||
20050026569, | |||
20050027859, | |||
20050030968, | |||
20050033967, | |||
20050055432, | |||
20050058144, | |||
20050065742, | |||
20050122944, | |||
20050136972, | |||
20050172024, | |||
20050187928, | |||
20050193390, | |||
20050195757, | |||
20050201397, | |||
20050228874, | |||
20050243867, | |||
20050249113, | |||
20050251403, | |||
20050257215, | |||
20050270173, | |||
20050276243, | |||
20050286440, | |||
20060028355, | |||
20060055432, | |||
20060056363, | |||
20060056368, | |||
20060077906, | |||
20060087993, | |||
20060098576, | |||
20060098604, | |||
20060111111, | |||
20060130053, | |||
20060140135, | |||
20060146717, | |||
20060158347, | |||
20060161310, | |||
20060167784, | |||
20060184288, | |||
20060215583, | |||
20060215673, | |||
20060217936, | |||
20060230276, | |||
20060271244, | |||
20060271678, | |||
20070001868, | |||
20070013547, | |||
20070019598, | |||
20070036353, | |||
20070057767, | |||
20070060147, | |||
20070063866, | |||
20070063868, | |||
20070085700, | |||
20070087756, | |||
20070089110, | |||
20070101442, | |||
20070103324, | |||
20070109121, | |||
20070110024, | |||
20070120705, | |||
20070136817, | |||
20070139220, | |||
20070143046, | |||
20070147268, | |||
20070169074, | |||
20070169075, | |||
20070169080, | |||
20070174467, | |||
20070177538, | |||
20070177576, | |||
20070177613, | |||
20070189249, | |||
20070200729, | |||
20070201504, | |||
20070204009, | |||
20070205915, | |||
20070206503, | |||
20070206521, | |||
20070207811, | |||
20070210933, | |||
20070211636, | |||
20070239477, | |||
20070248047, | |||
20070257813, | |||
20070258508, | |||
20070263647, | |||
20070265947, | |||
20070266429, | |||
20070271006, | |||
20070276547, | |||
20080011864, | |||
20080018492, | |||
20080024320, | |||
20080031145, | |||
20080032703, | |||
20080037569, | |||
20080042874, | |||
20080046388, | |||
20080048883, | |||
20080051036, | |||
20080063205, | |||
20080068217, | |||
20080068994, | |||
20080068996, | |||
20080086560, | |||
20080089314, | |||
20080095221, | |||
20080097782, | |||
20080107034, | |||
20080117110, | |||
20080129538, | |||
20080130535, | |||
20080130562, | |||
20080132185, | |||
20080136667, | |||
20080151795, | |||
20080151824, | |||
20080151825, | |||
20080151826, | |||
20080151827, | |||
20080154396, | |||
20080159213, | |||
20080165712, | |||
20080170511, | |||
20080177678, | |||
20080180274, | |||
20080181133, | |||
20080183339, | |||
20080186202, | |||
20080186203, | |||
20080187001, | |||
20080187116, | |||
20080189415, | |||
20080189436, | |||
20080204272, | |||
20080205355, | |||
20080219239, | |||
20080224891, | |||
20080225737, | |||
20080238714, | |||
20080238716, | |||
20080272934, | |||
20080283620, | |||
20080288577, | |||
20080310311, | |||
20080310377, | |||
20080317047, | |||
20080318547, | |||
20090003214, | |||
20090003232, | |||
20090003243, | |||
20090003356, | |||
20090010178, | |||
20090034418, | |||
20090034419, | |||
20090034432, | |||
20090043911, | |||
20090046732, | |||
20090055032, | |||
20090068947, | |||
20090077405, | |||
20090079584, | |||
20090082888, | |||
20090096605, | |||
20090102737, | |||
20090112630, | |||
20090115626, | |||
20090129575, | |||
20090132220, | |||
20090134969, | |||
20090135677, | |||
20090135716, | |||
20090135843, | |||
20090136042, | |||
20090138777, | |||
20090161594, | |||
20090167547, | |||
20090168846, | |||
20090175238, | |||
20090179771, | |||
20090201936, | |||
20090235246, | |||
20090243840, | |||
20090245270, | |||
20090262642, | |||
20090267792, | |||
20090285124, | |||
20090303972, | |||
20090310593, | |||
20090315699, | |||
20090319672, | |||
20090320073, | |||
20100017249, | |||
20100037069, | |||
20100037293, | |||
20100040042, | |||
20100060259, | |||
20100061272, | |||
20100061350, | |||
20100073193, | |||
20100074176, | |||
20100074304, | |||
20100138660, | |||
20100238917, | |||
20100256830, | |||
20110004358, | |||
20110035073, | |||
20110066297, | |||
EP578041, | |||
EP663746, | |||
EP740873, | |||
EP812502, | |||
JP10070774, | |||
JP10135965, | |||
WO54237, | |||
WO126334, | |||
WO155865, | |||
WO3015452, | |||
WO2005091303, | |||
WO2006059195, | |||
WO2007015822, | |||
WO2007132473, | |||
WO2008027457, | |||
WO2008033287, | |||
WO2008033514, | |||
WO2008038072, | |||
WO2008092268, | |||
WO2009067251, | |||
WO9512942, | |||
WO9610307, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Feb 09 2012 | Trilliant Holdings, Inc. | (assignment on the face of the patent) | / | |||
Feb 28 2012 | FREI, RANDY | TRILLIANT HOLDINGS, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027889 | /0427 | |
Mar 02 2012 | ENNS, FREDERICK | TRILLIANT HOLDINGS, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027889 | /0427 | |
Mar 02 2012 | VEILLETTE, MICHEL | TRILLIANT HOLDINGS, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027889 | /0427 | |
Nov 01 2019 | TRILLIANT NETWORKS, INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 | |
Nov 01 2019 | TRILLIANT HOLDINGS, INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 | |
Nov 01 2019 | TRILLIANT NETWORKS CANADA INC | THIRD EYE CAPITAL CORPORATION | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 050989 | /0361 |
Date | Maintenance Fee Events |
Apr 09 2018 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Mar 23 2022 | M2552: Payment of Maintenance Fee, 8th Yr, Small Entity. |
Date | Maintenance Schedule |
Oct 07 2017 | 4 years fee payment window open |
Apr 07 2018 | 6 months grace period start (w surcharge) |
Oct 07 2018 | patent expiry (for year 4) |
Oct 07 2020 | 2 years to revive unintentionally abandoned end. (for year 4) |
Oct 07 2021 | 8 years fee payment window open |
Apr 07 2022 | 6 months grace period start (w surcharge) |
Oct 07 2022 | patent expiry (for year 8) |
Oct 07 2024 | 2 years to revive unintentionally abandoned end. (for year 8) |
Oct 07 2025 | 12 years fee payment window open |
Apr 07 2026 | 6 months grace period start (w surcharge) |
Oct 07 2026 | patent expiry (for year 12) |
Oct 07 2028 | 2 years to revive unintentionally abandoned end. (for year 12) |