The Internet of Things (IoT) is a vision of the future Internet. Due to limited resources of IoT devices, a new generation of protocols and algorithms are being developed and standardized. The Constrained Application Protocol (CoAP) has been designed by the Internet Engineering Task Force (IETF) for application layer communication. CoAP is based on User Datagram Protocol (UDP), a simple transport layer protocol that does not handle congestion within the network. However, the phenomenon of congestion in IoT networks is also a major problem. Thus, the core CoAP specification offers a basic CoAP congestion control (CC) mechanism based on retransmission timeout (RTO) with binary exponential backoff (BEB). Default CoAP CC is insensitive to network conditions. Thus, to improve the default CoAP CC, CoAP Simple Congestion Control/Advanced (CoCoA), defined in a draft specification, is being standardized by the IETF CoRE working group. Nevertheless, comparison of default CoAP CC and CoCoA has not been sufficiently investigated in the literature. In this paper, we investigate and present comparison of default CoAP CC and CoCoA in terms of throughput (i.e. number of requests/second) by varying number of concurrent clients where each client continuously sends back-to-back traffic to servers residing in 1x6, 3x6 and 5x6 grid network topology. Our results show that CoCoA is not always better than default CoAP CC in terms of throughput in some scenarios. As a result, design and development of new CoAP CC mechanisms are open to research.
Nesnelerin İnterneti (IoT) geleceğin İnternet’inin bir vizyonudur. IoT cihazlarının sınırlı kaynakları nedeniyle yeni nesil protokoller ve algoritmalar geliştirilmekte ve standartlaştırılmaktadır. Kısıtlı Uygulama Protokolü (CoAP), uygulama katmanı iletişimi için Internet Mühendisliği Görev Gurubu (IETF) tarafından tasarlanmıştır. CoAP, ağ içinde tıkanıklığı karşılamayan basit bir taşıma katmanı protokolü olan Kullanıcı Datagram Protokolü (UDP) üzerine kurulmuştur. Bununla birlikte, IoT ağlarında tıkanıklık olayı da büyük bir sorundur. Bu nedenle, çekirdek CoAP spesifikasyonu, ikili üstel geri çekilme (BEB) ile yeniden iletim zaman aşımına (RTO) dayalı temel bir CoAP tıkanıklık kontrolü (CC) mekanizması sunar. Mevcut CoAP CC, ağ koşullarına duyarsızdır. Bu nedenle, mevcut CoAP CC'yi geliştirmek için IETF CoRE çalışma grubu tarafından taslak bir spesifikasyonda tanımlanan CoAP Simple Congestion Control/Advanced (CoCoA) mekanizması standartlaştırılmaktadır. Ancak mevcut CoAP CC ve CoCoA'nın karşılaştırılması literatürde yeterince araştırılmamıştır. Bu çalışmada, eşzamanlı istemcilerin sayısının değiştirilmesiyle her istemcinin sürekli olarak 1x6, 3x6 ve 5x6 grid ağ topolojilerinde yer alan sunuculara arka arkaya trafik gönderilerek mevcut CoAP CC ve CoCoA'nın performansları iş/zaman oranı (yani istek sayısı/saniye) açısından karşılaştırılmış ve sunulmuştur. Elde edilen sonuçlar, CoCoA'nın bazı senaryolarda mevcut CoAP CC'den iş/zaman oranı açısından her zaman daha iyi olmadığını göstermektedir. Sonuç olarak, yeni CoAP CC mekanizmalarının tasarımı ve geliştirilmesi araştırmaya açıktır.