Abstract:
An end device in a network is designed to operate consistent with multiple versions of the internet protocol. The end device determines which version of the internet protocol, according to which the network is operative, by monitoring a set of packets on the network. Based on the determination of the version of internet protocol, the end device loads in an internal volatile memory only those instructions and data required for operation according to the determined version. Instructions and data required for operation according to other version(s) are not loaded into the volatile memory. Size requirements of the volatile memory are thereby reduced.
Abstract:
An end device in a network is designed to operate consistent with multiple versions of the internet protocol. The end device determines which version of the internet protocol, according to which the network is operative, by monitoring a set of packets on the network. Based on the determination of the version of internet protocol, the end device loads in an internal volatile memory only those instructions and data required for operation according to the determined version. Instructions and data required for operation according to other version(s) are not loaded into the volatile memory. Size requirements of the volatile memory are thereby reduced.
Abstract:
A wireless network includes a border router, multiple router nodes and end devices. All nodes of the wireless network use a same group key for encryption and decryption of payloads of multicast layer-2 packets. A router node of the wireless network receives a group key from its parent node, and forwards the group key to its child nodes. The router node receives a layer-2 multicast packet with a payload specifying a multicast layer-3 address. The router node decrypts the payload using the group key. If at least one child node of the router node belongs to a group corresponding to the multicast layer-3 address, the router node forwards the encrypted payload as a layer-2 multicast packet to corresponding child nodes. Use of a same group key across all nodes of the wireless network reduces storage space in a node for storing group keys, and also simplifies group key handling.
Abstract:
An aspect of the present invention populates data structures of a software application with input data provided according to XML. In one embodiment, the input data and a schema is received, with the schema containing another set of data structures according to the programming language in which the software application is written. The input data is parsed according to the schema to identify elements and corresponding values. The identified values are then stored in the fields of the data structures of the application. According to another aspect, the schema received with the input data specifies a mapping of each of the elements in the input data to corresponding fields of data structures of a software application. Accordingly, the specified fields of the data structures are set to the values associated with the corresponding mapped elements in the input data.
Abstract:
A wireless station (A) is operated in a power-save mode, in which the station is alternately in power-ON and power-OFF states to reduce power consumption. Wireless station (A) computes at least some future time instances at which another wireless station (B) is expected to start transmitting control messages. Wireless station (A) is ensured to be in the power-ON state in corresponding time intervals encompassing durations of at least some of such future transmissions of control messages by wireless station (B), and is thereby enabled to receive the control messages. In an embodiment, the control messages correspond to group key message updates in which values of a decryption key are transmitted, wireless station (A) being a wireless client, wireless station (B) being an access point, with wireless stations (A) and (B) operating in a wireless network consistent with IEEE 802.11 specifications, and communication between wireless stations (A) and (B) being encrypted.
Abstract:
According to an aspect, the values corresponding to each group of parameters are stored in successive memory locations of a set of blocks, and pointer locations are maintained to point to the area where the groups of values are stored. When a new value is received for a parameter of a group, the values of parameters (with the new value substituted for the corresponding old value) of the group are replicated to a new set of locations in the same set of blocks if sufficient number of successive unwritten memory locations are available. A pointer data from the prior set of locations to the new set of locations is also maintained. According to another aspect, when there is insufficient space for the replication, all the present valid values of all groups are first written to a new set of blocks, and then only the earlier set of blocks are erased.
Abstract:
A wireless network includes a border router, multiple router nodes and end devices. All nodes of the wireless network use a same group key for encryption and decryption of payloads of multicast layer-2 packets. A router node of the wireless network receives a group key from its parent node, and forwards the group key to its child nodes. The router node receives a layer-2 multicast packet with a payload specifying a multicast layer-3 address. The router node decrypts the payload using the group key. If at least one child node of the router node belongs to a group corresponding to the multicast layer-3 address, the router node forwards the encrypted payload as a layer-2 multicast packet to corresponding child nodes. Use of a same group key across all nodes of the wireless network reduces storage space in a node for storing group keys, and also simplifies group key handling.
Abstract:
An aspect of the present invention populates data structures of a software application with input data provided according to XML. In one embodiment, the input data and a schema is received, with the schema containing another set of data structures according to the programming language in which the software application is written. The input data is parsed according to the schema to identify elements and corresponding values. The identified values are then stored in the fields of the data structures of the application. According to another aspect, the schema received with the input data specifies a mapping of each of the elements in the input data to corresponding fields of data structures of a software application. Accordingly, the specified fields of the data structures are set to the values associated with the corresponding mapped elements in the input data.
Abstract:
A wireless station (A) is operated in a power-save mode, in which the station is alternately in power-ON and power-OFF states to reduce power consumption. Wireless station (A) computes at least some future time instances at which another wireless station (B) is expected to start transmitting control messages. Wireless station (A) is ensured to be in the power-ON state in corresponding time intervals encompassing durations of at least some of such future transmissions of control messages by wireless station (B), and is thereby enabled to receive the control messages. In an embodiment, the control messages correspond to group key message updates in which values of a decryption key are transmitted, wireless station (A) being a wireless client, wireless station (B) being an access point, with wireless stations (A) and (B) operating in a wireless network consistent with IEEE 802.11 specifications, and communication between wireless stations (A) and (B) being encrypted.
Abstract:
According to an aspect, the values corresponding to each group of parameters are stored in successive memory locations of a set of blocks, and pointer locations are maintained to point to the area where the groups of values are stored. When a new value is received for a parameter of a group, the values of parameters (with the new value substituted for the corresponding old value) of the group are replicated to a new set of locations in the same set of blocks if sufficient number of successive unwritten memory locations are available. A pointer data from the prior set of locations to the new set of locations is also maintained. According to another aspect, when there is insufficient space for the replication, all the present valid values of all groups are first written to a new set of blocks, and then only the earlier set of blocks are erased.