View full-text article in PMC Sensors (Basel). 2019 Mar 17;19(6):1339. doi: 10.3390/s19061339 Search in PMC Search in PubMed View in NLM Catalog Add to search Copyright and License information © 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/). PMC Copyright notice Algorithm 2 CoAP Request in sNAP request_pkt←[ICN_message] ICN_ID←[ICN_message] SToken←ICN_ID_To_SToken[ICN_ID] ifSToken = = NULL then SToken←generateNewToken() ICN_ID_To_SToken[ICN_ID]←SToken request_pkt←SToken else request_pkt←SToken end if SToken_To_ICN_ID_list[SToken]←ICN_ID resourceURI←[request_pkt] coap_server_list←lookup(resourceURI) /∗groupcommunicationiflist>1∗/ for coap_server_list do coap_server←enque(coap_server_list) /∗suppresssimilarrequestfromdifferentcNAP∗/ if pending_res_list(res_ICN_ID,coap_server).size == 1 then sendrequest_pkttocoap_server end if end for