Performance Comaprison
University of Waterloo[pic 1]Li-Fi Technology:A Review ReportECE-710 Topic-2 [pic 2][pic 3]Analysis of a New IPv6 Header Compression Technique for IoTParamveer Singh Sandhu and Noura LimamUniversity Of WaterlooAbstract: This paper theoretically purposes a new way to compress the IP header in IPv6 targeting mainly IoT. The purposed way to compress an IP header can be more efficient and robust than the existing compression techniques. It does not require a lookup table for compression and decompression operations thus enable the decompressor to work faster. Moreover, the new IP header compression technique present in this study does not require synchronization between compressors and de-compressor. Various merits and demerits of the proposed compression technique are discussed in this paper along with the possible solutions.MotivationIn 1999, Kevin Ashton, minted a new term ‘Internet of Things’, at Auto-ID [1]. It is actually an interconnection of various objects such as devices, cars, buildings and other items like sensors, electronics and software that empower such things to trade and accumulate information by communicating with each other [2]. These Iterations could not make their public or private demonstration or prototype real until 1990’s because database storage was too expensive [1]. It is Cloud storage that Enables Internet of Things [1]. IoT allows the object to be controlled and managed distantly across the existing global network framework, constructing opportunities for more explicit integration of physical world into computer based world and rise in better efficiency, accuracy and economic benefit[1].However, with efforts to develop different concepts of IoT, which includes the convergence of a number of heterogeneous disciplines and which covers a large number of topics from technical issues (routing protocols, semantic queries), to a mix of technical, social and business issues (security, privacy, usability) [3]; other internet terminologies also emerged and out these, IPv6 was one of such protocol which would help in realizing IoT. It is actually a successor to most popular internet protocol ‘IPv4’; a communication protocol which provides unique identification to the devices which are connected to the internet and also act as a location system for the devices connected to the internet [4]. Internet Protocol version 6 was developed by Internet Engineering Task Force (IETF) in order to counter the long-anticipated problem of IPv4 address exhaustion [4]. IPv6 address is a 128 bit in length which means it can provide 7.9X1028 more address than the IPv4 which can only accommodate 4.3X109 addresses [4]. As of Feb 2011, the last unassigned top-level address blocks of 16 million IPv4 addresses were allocated by the Internet Assigned Numbers Authority (IANA) to the five regional Internet registries (RIRs) [4]. After the exhaustion of IPv4 address space, IPv6 has been seen by various internet experts as its worthy replacer not only because of its much larger address space, however for its other technical aspects also like expanded multicast addressing. Apart from that, device mobility, security, and configuration aspects have been considered in the design of the protocol [4]. Initially, IPv6 was not proposed with the idea in the mind of realizing Internet of Things at first. The primary function of IPv6 is to allow for more unique IP address identifiers to be created, because more and more devices are connecting to internet each year and we already ran out of the 4.3 billion addresses created by IPv4[5]. This is one of the main reasons why IPv6 is such an important innovation for the Internet of Things (IoT). Internet-connected products are becoming increasingly popular, and while IPv4 addresses couldn’t meet the demand for IoT products, IPv6 gives IoT products a platform to operate on for a very long time [5]. IPv6 is considered the most suitable technology for the Internet of Things, since it offers scalability, flexibility, tested, extended ubiquitous, open, and end-to-end connectivity [6]. For these reasons, efforts are being made to provide mechanisms/tools for enabling an IPv6 address for each one of the things; ranging from identification tags and legacy technologies to the mentioned emerging technologies to build smart objects [6]. Thereby, the integration of multi-technology networks in a common all-IP network is reached.
Common Issues with IoT using IPv6Large Header Size of IPv6 Header size of Internet Protocol version 6 is 40 Bytes in length which is twice the header size of IPv4 which is only of 20 bytes [4]. Although, the header of IPv6 contains fewer fields in comparison to IPv4 header which contains large number of fields, but this large header size is due to IPv6 Address which is 128 bits long, which provide way larger address space as compared to 32-bit long IPv4 address. The format of the IPv6 Header is shown in the fig below.[pic 4]Figure 1: IPv6 Header FormatSource Address and Destination Address in IPv6 header in combine are 32 byte long and rest of the 8 bytes are given to rest of the fields like Version, Traffic Class, Flow Label, Payload Length, Next Header and Hop Limit. The main motivation in keeping the header of IPv6 so simple is because it helps speed processing and forwarding. However, Larger IP header size results in carrying smaller size data. For e.g. MTU for Ethernet is 1500 bytes long and if we are using IPv6 then 60 bytes will be header size including IPv6 and TCP header (40 and 20 bytes respectively) and the rest will be the data which will of 1440 bytes. A bigger overhead is with sending Acknowledgements using IPv6 because we need 40 bytes of IPv6 header to carry just 20 bytes of TCP acknowledgements. No Direct Compatibility with IPv4 Another issue with IPv6 while using with IoT, is that it is not backward compatible with currently deployed Internet Protocol IPv4. Originally IPv6 makers envisioned a world where end systems on the edge network and network devices at the access layer and backbone would operate IPv4 and IPv6 side by side in a dual stack mode [7]. However, they didn’t know, at that time, some of IPv4 devices would never be modernized to IPv6. In 2009, leaders of the Internet Engineering Task Force (IETF) admitted that they haven’t done a good job making sure IPv6 devices and networks would be able to communicate with their IPv4-only counterparts when they designed the industry standard 13 years ago[7]. The lack of real backwards compatibility for IPv4 was the single critical failure. IPv6 advocates say the lack of tools for bridging between two Internet Protocol is the single reason that ISPs and enterprises haven’t deployed IPv6 [7]. However, in response to this problem between IPv4 and IPv6, IETF developed some transition tools like tunneling and dual stacking [7]. Solutions provided by these tools are temporary and if we want to implement them in IoT, they may not be that effect and second, tools like tunneling introduce some delay in packet journey from sender to receiver. Moreover they will be implemented by putting IPv6 packet as payload of IPv4 datagram. So, this will only increase processing and header overhead in IoT. After 17 years of proposed of IPv6 and given the transition tools that were developed to provide indirect compatibility between IPv6 and IPv4, IPv6 adoption crossed only 10% mark across the world as of March2016, and it is very uneven among the countries [8].Security Vulnerabilities Security device bypass via unfiltered IPv6 and tunneled traffic. Conceptually it’s simple, security products need to do two things – recognize suspicious IPv6 packets and apply controls when they do [9]. However in practice this is hardly possible in v4 let alone an environment that may have rogue or unknown tunnel traffic [9]. There are 16 different tunnels and transition methods not to mention upper layer tunnels like: SSH, IPv4-IPSec, SSL/TLS and even DNS [9]. Another feature of IPv6 such as Neighbor discovery and solicitation can expose networks to problems. Neighbor discovery (ND) in IPv6 uses 5 different types of ICMPv6 messages for various purposes, such as, to discover the link layer addresses of neighbors on the attached links, to clear cached values that become invalid, and to discover neighbors willing to forward packets on their behalf[10]. Threat and vulnerabilities on Neighbor discovery protocol are specified in RFC 3756[11]. Firstly, threats related to non-router/routing that exploits the NDP messages includes/NA spoofing, Neighbor Unreachability Detection (NUD) failure and Duplicate Address Detection (DAD) DoS attack [11]. Secondly, threats related to router/routing such as malicious last hop router, default router is ‘killed’, good router goes bad, redirect message spoofing, bogus on link prefix and parameter spoofing [11]. The third is remotely exploitable attacks that consist of replay attack and NDP DoS attack. All the attack types caused a denial of service on the IPv6 network [11].