NETWORKING AS A SERVICE
Networking as a Service (NaaS) delivers network services using remote appliances controlled by a hosted, multi-tenant management system. The system may include a heartbeating process for communication between a web-based server and appliances, in which the appliances periodically contact the management system on the server. The heartbeating process allows the appliances to maintain a completely up-to-date configuration. Furthermore, heartbeating allows for comprehensive monitoring of appliances and for software distribution. The system may also include means for authenticating appliances, without the need for pre-installed PSKs or certificates.
1 . A method comprising:
monitoring for one or more heartbeat packets from a network device of a network;
receiving from the network device a first heartbeat packet from the network device, the heartbeat packet including one or more logs of the network device, the logs comprising new log information since a last acknowledged heartbeat packet but not comprising old log information before the last acknowledged heartbeat packet.
response to the first heartbeat packet, sending a first response network packet to the network device, the first response network packet including a configuration identifier of a latest configuration for the network device, and the first response network packet further including a building identifier of a latest software image for the network device.
2 . The method of claim 1 , further comprising providing the latest configuration to the network device if the network device is not running the latest configuration.
3 . The method of claim 1 , where the providing the latest configuration to the network device comprises providing one or more new configuration files associated with the latest configuration.
4 . The method of claim 1 , further comprising providing the latest software image to the network device if the network device is not running the latest software image.
5 . The method of claim 1 , wherein the latest configuration is one that the network device should be running.
6 . The method of claim 1 , wherein the latest software image is one that the network device should be running.
7 . The method of claim 1 , wherein the first response network packet is an implicit acknowledgement to the network device that the logs included in the first response network packet have been accepted
8 . The method of claim 1 , wherein the network device is configured to purge log information upon receiving the first response network packet.
9 . The method of claim 1 , wherein the network device is customer premises equipment (CPE).
10 . The method of claim 1 , further comprising:
receiving an instruction to publish a modified configuration;
in response to the instruction, generating the latest configuration for the network device;
updating a monitoring database with the configuration identifier of the latest configuration, the monitoring database providing the configuration identifier of the latest configuration for use in the first response network packet.
11 . A system comprising:
means for monitoring for one or more heartbeat packets from a network device of a network;
means for receiving from the network device a first heartbeat packet from the network device, the heartbeat packet including one or more logs of the network device, the logs comprising new log information since a last acknowledged heartbeat packet but not comprising old log information before the last acknowledged heartbeat packet.
means for sending a first response network packet to the network device in response to the first heartbeat packet, the first response network packet including a configuration identifier of a latest configuration for the network device, and the first response network packet further including a building identifier of a latest software image for the network device.
12 . A system comprising:
a processor;
a computer readable medium including instructions configured to cause the processor to perform the operations of:
monitoring for one or more heartbeat packets from a network device of a network;
receiving from the network device a first heartbeat packet from the network device, the heartbeat packet including one or more logs of the network device, the logs comprising new log information since a last acknowledged heartbeat packet but not comprising old log information before the last acknowledged heartbeat packet;
in response to the first heartbeat packet, sending a first response network packet to the network device, the first response network packet including a configuration identifier of a latest configuration for the network device, and the first response network packet further including a building identifier of a latest software image for the network device.
13 . The system of claim 12 , further comprising providing the latest configuration to the network device if the network device is not running the latest configuration.
14 . The system of claim 12 , where the providing the latest configuration to the network device comprises providing one or more new configuration files associated with the latest configuration.
15 . The system of claim 12 , further comprising providing the latest software image to the network device if the network device is not running the latest software image.
16 . The system of claim 12 , wherein the latest configuration is one that the network device should be running.
17 . The system of claim 12 , wherein the latest software image is one that the network device should be running.
18 . The system of claim 12 , wherein the first response network packet is an implicit acknowledgement to the network device that the logs included in the first response network packet have been accepted
19 . The system of claim 12 , wherein the network device is configured to purge log information upon receiving the first response network packet.
20 . The system of claim 12 , wherein the network device is customer premises equipment (CPE).
21 . The system of claim 12 , further comprising:
receiving an instruction to publish a modified configuration;
in response to the instruction, generating the latest configuration for the network device;
updating a monitoring database with the configuration identifier of the latest configuration, the monitoring database providing the configuration identifier of the latest configuration for use in the first response network packet.