IP Library Granted Patent US 9,960,933
Granted Patent B2
US 9,960,933 · App. 15/258,798 · Granted May 1, 2018

Methods and systems for adaptive and context aware inter-internet of things (IoT) communication

Inventors: Sudipta Ghosh (Kolkata, IN); Swaminathan Seetharaman (Chennai, IN)
Assignee: Wipro Limited
H04L12/66H04L67/12
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,960,933
App. No.
15/258,798
Granted
May 1, 2018
Kind
B2
Abstract

A method for managing communication in a plurality of Internet of Things (IoT) networks includes receiving a communication request initiated by an IoT device in one of the plurality of IoT networks for a destination IoT device located in one of the plurality of IoT networks. Suitability of an existing communication session between the IoT device and the destination IoT device is determined. Based on determining unsuitability of the existing communication session, a new communication session between the IoT device and the destination IoT device is selectively initiated. In response to determining suitability of the existing communication session, the existing communication session for the communication request is selectively reused. At least one initiating cause for a communication event and associated resolutions on occurrence of the communication event to maintain one of the new communication session and the existing communication session that is suitable is iteratively determined.

Claims (85)

1. A method for managing communication across a plurality of Internet of Things (IoT) networks, the method comprising:

receiving a communication request initiated by an IoT device in one of the plurality of IoT networks for a destination IoT device located in one of the plurality of IoT networks;

determining suitability of an existing communication session between the IoT device and the destination IoT device;

selectively initiating, based on determining unsuitability of the existing communication session, a new communication session between the IoT device and the destination IoT device, wherein initiating the new communication session comprises:

finalizing an IoT Gateway (IoTGW) for IoT network of the IoT device based on comparison of a set of gateway parameters with associated thresholds within a set of IoTGW thresholds in response to receiving a communication request;

determining priority, criticality, and resource requirement of the destination IoT device for the communication request based on a purpose of the communication request;

finalizing an Inter-Connect Gateway (ICGW) for the IoT network of the IoT device to communicate with the IoTGW based on comparison of a set of communication parameters with associated thresholds within a set of ICGW thresholds, wherein the ICGW communicates with a set of IoTGW's; and

establishing the new communication session between the ICGW and the destination IoT device on a communication channel based on the priority and the criticality determined for the communication request;

selectively reusing, in response to determining suitability of the existing communication session, the existing communication session for the communication request;

iteratively determining at least one initiating cause for a communication event and associated resolutions on occurrence of the communication event to maintain one of the new communication session and the existing communication session that is suitable; and

implementing a self-learning mechanism to improve the quality of future communication sessions.

2. The method of claim 1 , wherein the finalizing the IoTGW comprises:

selecting a current IoTGW when the set of gateway parameters for the current IoTGW satisfy associated thresholds; and

registering IoT network of the IoT device with the current IoTGW, when IoT network is not registered with the current IoTGW.

3. The method of claim 1 , wherein the finalizing the IoTGW comprises:

assigning suitability scores to each of a plurality of IoTGW's, when the set of gateway parameters for a current IoTGW fail to satisfy associated thresholds, wherein the suitability scores are assigned based on comparison of the set of gateway parameters with associated thresholds for each of a plurality of IoTGW's;

selecting an IoTGW from the plurality of IoTGW's having the highest suitability score; and

registering IoT network of the IoT device with the IoTGW.

4. The method of claim 1 , wherein the determining the priority comprises:

searching an internal mapping table to determine mapping of the purpose with the priority; and

determining existence of a preceding communication request between the IoT device and the destination IoT device, the communication request having dependency with purpose and state of the preceding communication request.

5. The method of claim 1 , wherein the criticality of the communication request is determined based on at least one of the purpose of the communication request, type of the communication request, function of the IoT device, time of initiation of the communication request, age of the communication request, or the destination IoT device.

6. The method of claim 1 , wherein the finalizing the ICGW comprises:

assigning suitability scores to each of a plurality of ICGW's, when the set of communication factors for a current ICGW fail to satisfy associated thresholds, wherein the suitability scores are assigned based on comparison of the set of communication factors with associated thresholds for each of a plurality of ICGW's;

selecting an ICGW from the plurality of ICGW's having the highest suitability score; and

registering the IOTGW and the IoT network of the IoT device with the ICGW.

7. The method of claim 1 , wherein the finalizing the ICGW comprises:

selecting a current ICGW when the set of communication factors for the current ICGW satisfy associated thresholds; and

registering the IoTGW and the IoT network of the IoT device with the current ICGW, when the IoTGW and the IoT network are not registered with the current ICGW.

8. The method of claim 1 , wherein the establishing the new communication session between the ICGW and the destination IoT device further comprises revising priority and criticality determined for the communication request based on pendency associated with completion of the communication request.

9. The method of claim 1 , wherein the implementing the self-learning mechanism comprises:

saving information associated with the new communication session in a historical database, the information comprising at least one of observed exceptions, communication delays, duration of the new communication session, or resource utilization; and

adapting the set of gateway parameters and the set of communication parameters using the information stored in the historical database.

10. The method of claim 1 further comprising:

determining presence of the existing communication session; and

initiating the new communication session in absence of the existing communication session.

11. The method of claim 1 , wherein the communication channel between the IoT device and the destination IoT device is routed through at least one of the IoT network of the IoT device, the IoTGW, the ICGW, the IoT network of the destination IoT device, an ICGW associated with the destination IoT device, or an IoTGW associated with the destination IoT device.

12. The method of claim 1 further comprising:

initiating monitoring parameters associated with an IoT network, the IoTGW, and the ICGW; and

detecting a communication event in response to initiating monitoring, the communication event comprising unavailability of an IoTGW interface, absence of an acknowledgment for a critical communication, unavailability of an IoT network, unavailability of an ICGW, resource unavailability, hardware/software fault in an IoTGW, or power lapse in an IoTGW.

13. The method of claim 1 , wherein the initiating cause comprises one of change in topology in an IoT network, change of location of an IoT network, interference, high traffic, weather condition, obstacles, low energy levels at an IoTGW, receipt of an unexpected packet, content adulteration, Man-in-the-middle (MITM) attack, priority or criticality NOK, poor signal strength, mobility of IoTGW, issues associated with a Macro Core Network (MCN), issues associated with interface of the MCN, or IoT network subscriber entitlement.

14. A system for managing communication across a plurality of Internet of Things (IoT) networks, the system comprising at least one network device comprising:

at least one processor; and

a memory storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising:

receiving a communication request initiated by an IoT device in one of the plurality of IoT networks for a destination IoT device located in one of the plurality of IoT networks;

determining suitability of an existing communication session between the IoT device and the destination IoT device;

selectively initiating, based on determining unsuitability of the existing communication session, a new communication session between the IoT device and the destination IoT device, wherein initiating the new communication session comprises:

finalizing an IoT Gateway (IoTGW) for IoT network of the IoT device based on comparison of a set of gateway parameters with associated thresholds within a set of IoTGW thresholds in response to receiving a communication request;

determining priority, criticality, and resource requirement of the destination IoT device for the communication request based on a purpose of the communication request;

finalizing an Inter-Connect Gateway (ICGW) for the IoT network of the IoT device to communicate with the IoTGW based on comparison of a set of communication parameters with associated thresholds within a set of ICGW thresholds, wherein the ICGW communicates with a set of IoTGW's; and

establishing the new communication session between the ICGW and the destination IoT device on a communication channel based on the priority and the criticality determined for the communication request;

selectively reusing, in response to determining suitability of the existing communication session, the existing communication session for the communication request;

iteratively determining at least one initiating cause for a communication event and associated resolutions on occurrence of the communication event to maintain one of the new communication session and the existing communication session that is suitable; and

implementing a self-learning mechanism to improve the quality of future communication sessions.

15. The system of claim 14 , wherein the finalizing the IoTGW further comprises:

selecting a current IoTGW when the set of gateway parameters for the current IoTGW satisfy associated thresholds; and

registering IoT network of the IoT device with the current IoTGW, when IoT network is not registered with the current IoTGW.

16. The system of claim 14 , wherein the finalizing the IoTGW further comprises:

assigning suitability scores to each of a plurality of IoTGW's, when the set of gateway parameters for a current IoTGW fail to satisfy associated thresholds, wherein the suitability scores are assigned based on comparison of the set of gateway parameters with associated thresholds for each of a plurality of IoTGW's;

selecting an IoTGW from the plurality of IoTGW's having the highest suitability score; and

registering IoT network of the IoT device with the IoTGW.

17. The system of claim 14 , wherein the determining the priority comprises:

searching an internal mapping table to determine mapping of the purpose with the priority; and

determining existence of a preceding communication request between the IoT device and the destination IoT device, the communication request having dependency with purpose and state of the preceding communication request.

18. The system of claim 14 , wherein the criticality of the communication request is determined based on at least one of the purpose of the communication request, type of the communication request, function of the IoT device, time of initiation of the communication request, age of the communication request, or the destination IoT device.

19. The system of claim 14 , wherein the selecting the ICGW further comprises the operation of dynamically adapting the set of ICGW thresholds based on network parameters.

20. The system of claim 14 , wherein the finalizing the ICGW further comprises:

assigning suitability scores to each of a plurality of ICGW's, when the set of communication factors for a current ICGW fail to satisfy associated thresholds, wherein the suitability scores are assigned based on comparison of the set of communication factors with associated thresholds for each of a plurality of ICGW's; and

selecting an ICGW from the plurality of ICGW's having the highest suitability score; and

registering the IOTGW and the IoT network of the IoT device with the ICGW.

21. The system of claim 14 , wherein the finalizing the ICGW further comprises:

selecting a current ICGW when the set of communication factors for the current ICGW satisfy associated thresholds; and

registering the IoTGW and the IoT network of the IoT device with the current ICGW, when the IoTGW and the IoT network are not registered with the current ICGW.

22. The system of claim 14 , wherein the establishing the new communication session between the ICGW and the destination IoT device further comprises revising priority and criticality determined for the communication request based on pendency associated with completion of the communication request.

23. The system of claim 14 , wherein the implementing the self-learning mechanism further comprises:

saving information associated with the new communication session in a historical database, the information comprising at least one of observed exceptions, communication delays, duration of the new communication session, or resource utilization; and

adapting the set of gateway parameters and the set of communication parameters using the information stored in the historical database.

24. The system of claim 14 , further comprising:

determining presence of the existing communication session; and

initiating the new communication session in absence of the existing communication session.

25. The system of claim 14 , wherein the communication channel between the IoT device and the destination IoT device is routed through at least one of the IoT network of the IoT device, the IoTGW, the ICGW, the IoT network of the destination IoT device, an ICGW associated with the destination IoT device, or an IoTGW associated with the destination IoT device.

26. The system of claim 14 , further comprising:

initiating monitoring parameters associated with an IoT network, the IoTGW, and the ICGW; and

detecting a communication event in response to initiating monitoring, a communication event is selected from a group comprising unavailability of an IoTGW interface, absence of an acknowledgment for a critical communication, unavailability of an IoT network, unavailability of an ICGW, resource unavailability, hardware/software fault in an IoTGW, power lapse in an IoTGW.

27. The system of claim 14 , wherein the at least one initiating cause comprises one of change in topology in an IoT network, change of location of an IoT network, interference, high traffic, weather condition, obstacles, low energy levels at an IoTGW, receipt of an unexpected packet, content adulteration, Man-in-the-middle (MITM) attack, priority or criticality NOK, poor signal strength, mobility of IoTGW, issues associated with a Macro Core Network (MCN), issues associated with interface of the MCN, or IoT network subscriber entitlement.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2016
From: GHOSH, SUDIPTA; SEETHARAMAN, SWAMINATHAN
To: WIPRO LIMITED
Reel/Frame 039698/0642 →
Priority Claims (1)
IN 7088/CHE/2015 · Dec 30, 2015 · national
Continuity (1)
Related Publication 20170195136A1 · Jul 6, 2017