Full Transcript

INTERNET OF THINGS TYBSC IT- SEM V UNIT I Ms. Arti Gavas Assistant Professor, Anna Leela College of Commerce & Eco., Shobha Jayaram Shetty College for BMS, Kurla CHAPTER 1: THE INTERNET OF THINGS: AN OVERVIEW THE FLAVOUR OF...

INTERNET OF THINGS TYBSC IT- SEM V UNIT I Ms. Arti Gavas Assistant Professor, Anna Leela College of Commerce & Eco., Shobha Jayaram Shetty College for BMS, Kurla CHAPTER 1: THE INTERNET OF THINGS: AN OVERVIEW THE FLAVOUR OF THE INTERNET OF THINGS THE “INTERNET” OF “THINGS” THE TECHNOLOGY OF THE INTERNET OF THINGS ENCHANTED OBJECTS WHO IS MAKING THE INTERNET OF THINGS? THE FLAVOUR OF THE INTERNET OF THINGS THE “INTERNET” OF “THINGS” All the cases we saw used the Internet to send, receive, or communicate information. And in each case, the gadget that was connected to the Internet wasn’t a computer, tablet, or mobile phone but an object, a Thing. So the idea of the Internet of Things suggests that rather than having a small number of very powerful computing devices in your life (laptop, tablet, phone) you might have a large number of devices which are perhaps less powerful (umbrella, bracelet, mirror, fridge, shoes). That is to say, such a device is an intelligently programmed computer processor, driven by sensors in the real world, and driving output in the real world, all embedded into an everyday object. The Thing is present, physically in the real world, in your home, your work, your car, or worn around your body. This means that it can receive inputs from your world and transform those into data which is sent onto the Internet for collection and processing. THE “INTERNET” OF “THINGS” THE TECHNOLOGY OF THE INTERNET OF THINGS As technology has progressed, new categories of objects have been created In the electronic age, they were telephones, radios, televisions, computers, and smartphones. As with most new technology, these devices tended to start out very expensive and gradually come down in price. Ultimately, it becomes not just possible but also feasible to include functionality that would previously have required its own dedicated device inside another one. Mere computing power isn’t a sufficient precondition for the Internet of Things. Rather, we are looking at computing power linked on the one hand to electronic sensors and actuators which interact with the real world and on the other to the Internet. ENCHANTED OBJECTS various objects drawn from fairy tales and fantasy literature in ways that apply as much to technological objects. Human Connection Effortless Mobility Location Tracking So, technology has always been associated with magic, and so this will be true almost by default for the Internet of Things. A key element of many enchanted objects is that above and beyond their practical enchantment they are given a name and a personality—implying an intelligence greater than strictly necessary to carry out the task for which they are designed. So our connected devices, or Things, have processing and communicating capabilities well beyond the needs of the average lamp or umbrella. WHO IS MAKING THE INTERNET OF THINGS? There are many crossover points between all the disciplines listed. Artists may collaborate with designers on installations or with traditional craftspeople on printmaking. Designers and engineers work closely to make industrial products, and hobbyist “hackers” (in the sense of tinkerers (unskilled person). A software developer might write the online component; A designer might turn the ugly prototype into a thing of beauty, possibly invoking the skills of a craftsperson And an engineer might be required to solve difficult technical challenges, especially in scaling up to production. CHAPTER 2: DESIGN PRINCIPLES FOR CONNECTED DEVICES CALM AND AMBIENT TECHNOLOGY MAGIC AS METAPHOR PRIVACY KEEPING SECRETS WHOSE DATA IS IT ANYWAY? WEB THINKING FOR CONNECTED DEVICES SMALL PIECES, LOOSELY JOINED FIRST-CLASS CITIZENS ON THE INTERNET GRACEFUL DEGRADATION AFFORDANCES CALM AND AMBIENT TECHNOLOGY The term “ambient” is not something to which we actively pay attention and in some cases as something which we seek to remove (e.g., ambient noise in a sound recording). The term calm technology—systems which don’t compete for attention yet are ready to provide utility or useful information when we decide to give them some attention. Proliferation of computing devices into the world comes with all manner of new challenges. Issues include configuration, how to provide power to all these items, how they talk to each other, and how they communicate with us. The networking challenges. Configuration and user interaction, however, obviously involve people and so are difficult problems to solve with just technical solutions. This is where good design can aid in adoption and usability. Always design a thing by considering it in its next larger context. CALM AND AMBIENT TECHNOLOGY For connected devices which are just sensing their world, (or acting as inputs), as long as their activity doesn’t require them to query the people around them, there shouldn’t be any issues. They will collect information and deposit it into some repository online for processing or analysis. When the devices start interacting with people, things get more complicated. Already we’re seeing the number of notifications, pop-ups, and indicator noises on our computers and mobile phones proliferate. When we scale up this number to include hundreds of new services and applications and then spread that across the rest of the objects in our world, it will become an attention-seeking cacophony (an unpleasant mixture of loud sounds). Calm technology engages both the center and the periphery of our attention, and in fact moves back and forth between the two. A great example of this approach is Live Wire, one of the first Internet of Things devices. CALM AND AMBIENT TECHNOLOGY: LIVE WIRE CASE STUDY Live Wire (also sometimes called Dangling String) is a simple device. An electric motor connected to an eight-foot long piece of plastic string. The power for the motor is provided by the data transmissions on the Ethernet network to which it is connected, so it twitches whenever a packet of information is sent across the network. Under normal, light network load, the string twitches (sudden jerk) occasionally. If the network is overloaded, the string whirls madly, accompanied by a distinctive noise from the motor’s activity. Conversely, if no network activity is occurring, an unusual stillness comes over the string. Both extremes of activity therefore alert the nearby human. The mention of the distinctive sound from the motor when the Live Wire is under heavy load brings up another interesting point. Moving the means of conveying information away from screens and into the real world often MAGIC AS METAPHOR In addition to the technology becoming capable of a particular action, we often need society, to be ready to accept it. There are many examples when the main difference between a failed technology and a wildly successful one is that the successful one arrived a few years later, when people were more receptive to what was offered. For a technology to be adopted, it has to make its way inside the manufactured normalcy field((situation in which everything is normal). As a result, the successful user-experience designer is the one who presents users with an experience which doesn’t stretch the boundaries of their particular normalcy field too far, even if the underlying technology being employed is a huge leap ahead of the norm. Technology blogger Venkatesh Rao came up with a good term to help explain how new technology becomes adopted. He explained a basic fact that we don’t see the present, the world that we live in now, as something that is changing. If we step back for a second, we do know that it has changed. Rao called this concept the manufactured normalcy (situation in which everything is normal ) field. WHEREDIAL: A CASE STUDY Some Internet of Things projects draw their inspiration directly from magic. For example, John McKerrell’s WhereDial takes its lead from the clock in Harry Potter which tracked the location of the members of the Weasley family. The WhereDial, by comparison, has to rely on mere technology for its capabilities; However, with the GPS chipsets in smartphones and location check-in services like FourSquare, it isn’t much of a leap to also own an ornament which updates to show when you are at work, or travelling, or at a restaurant. PRIVACY With more sensors and devices watching us and reporting data to the Internet, the privacy of third parties who cross our sensors’ paths is an important consideration. Designers of an Internet of Things service will need to balance these concerns carefully. PRIVACY: KEEPING SECRETS: CAR PRKING CASE STUDY An example from an early instrumented car park in a Westfield shopping mall in Australia. Each parking bay is overlooked by a small sensor from Park Assist, which uses a cheap camera to tell whether the space is occupied. The sensors are all networked and presumably can provide analytics to the owner of the car park as to its usage. A light on the sensor can help guide drivers to a free space. The shopping mall provided a smartphone app for visitors to download so that they could find out more information about the facilities. One of the features of the app was a Find My Car option, Choosing that, you were prompted to enter the first few characters of your license plate, and the app would then return four small photos of potential matches—from optical character recognition software processing the sensor data on the mall’s server. security professional found that app was requesting data from the server was a simple unencrypted PRIVACY: KEEPING SECRETS Don’t share more than you need to provide the service. “The best way to keep a secret is to never have it”. If you can avoid gathering and/or storing the data in the first place, you need not worry about disclosing it accidentally. In this day and age, it is standard practice to never store passwords as clear-text. You could also consider applying the standard mechanisms for password encryption, such as the one-way hash, to other pieces of data. One-way hashing is a cryptographic technique used to condense an arbitrarily sized chunk of data into a fixed-sized piece, called the hash. It’s called one-way hashing because there isn’t an easy way, given the resultant hash, to work out what the original data was. Hashing algorithms are so designed such that even a small difference in the input data leads to a huge difference in the output hash. RELATED CONCEPTS WHOSE DATA IS IT ANYWAY?: Consider the case of a camera deployed in an advertising hoarding which can check to see whether people are looking at the different adverts. Does the data belong to the company that installed the camera or to the members of the public who are looking at the adverts? WEB THINKING FOR CONNECTED DEVICES: You should aim to get into the mindset of the web and create devices which are of the web rather than those which just exist on the web. SMALL PIECES, LOOSELY JOINED: Even if you are building all the components of your service, it makes sense not to couple them too tightly together. FIRST-CLASS CITIZENS ON THE INTERNET: In the few cases where the existing protocols don’t work, such as in extremely low-powered sensors, a better solution is to create new open standards which address the issue. GRACEFUL DEGRADATION: This technique involves aiming to provide a fully featured experience if the client is capable of it but then falling back—potentially in a number of levels—to a less feature-rich experience on less capable clients. AFFORDANCES: Affordances provide strong clues to the operations of things. When affordances are taken advantage of, the user knows what to do just by looking: no picture, label, or instruction is required. Complex things may require explanation, but simple things should not. CHAPTER 3: INTERNET PRINCIPLES INTERNET COMMUNICATIONS:AN OVERVIEW IP TCP UDP IP ADDRESSES IPV4 IPV6 STATIC IP ADDRESS ASSIGNMENT DYNAMIC IP ADDRESS ASSIGNMENT (DHCP) MAC ADDRESS PORT ADDRESS DNS APPLICATION LAYER PROTOCOLS: HTTP, HTTPS INTERNET COMMUNICATIONS:AN OVERVIEW Data is sent from one machine to another in a packet, with a destination address and a source address in a standardized format (a “protocol”). Most of the time, the packets of data have to go through a number of intermediary machines, called routers, to reach their destination. The underlying networks aren’t always the same. Like a postcard was placed in an envelope before getting passed onwards. This happens with Internet packets, too. So, an IP packet is a block of data along with the same kind of information you would write on a physical envelope: the name and address of the server, and so on. There is no guarantee, and you can send only what will fit in a single packet. TCP & THE IP PROTOCOL SUITE (TCP/IP) What if you wanted to send longer messages than fit on a postcard? Or wanted to make sure your messages got through? TCP is built on top of the basic IP protocol and adds sequence numbers, acknowledgements, and retransmissions. This means that a message sent with TCP can be arbitrarily long and give the sender some assurance that it actually arrived at the destination intact. whole suite or stack of protocols layered on top of each other, each layer building on the capabilities of the one below. The low-level protocols at the link layer manage the transfer of bits of information across a network link. The Internet layer uses IP address. Then TCP, which lives in the transport layer, sits on top of IP and extends it with more sophisticated UDP It is protocol in the transport layer. In UDP each message may or may not arrive. No handshake or retransmission occurs, nor is there any delay to wait for messages in sequence. These limitations make TCP preferable for many of the tasks that Internet of Things devices will be used for. The lack of overhead, however, makes UDP useful for applications such as streaming data, which can cope with minor errors but doesn’t like delays. Voice over IP (VoIP)—computer-based telephony, such as Skype—is an example of this. IP ADDRESSES In the world of low-level computer networking, however, numbers are much easier to deal with. So, IP addresses are numbers. In Internet Protocol version 4 (IPv4), 2^32 addresses are possible. Usually written as four 8-bit numbers separated by dots (from 0.0.0.0 to 255.255.255.255). This “dotted quad” is still exactly equivalent to the 32-bit number. Every machine on the Internet has at least one IP address. Your home or office network might have only one publicly visible IP address. DNS Although computers can easily handle 32-bit numbers, even formatted as dotted quads they are easy for most humans to forget. The Domain Name System (DNS) helps our brains navigate the Internet. Domain names such as the following: google.com, bbc.co.uk Each domain name has a top-level domain (TLD), like.com or.uk, which further subdivides into.co.uk and.gov.uk, and so on. This top-level domain knows where to find more information about the domains within it; for example,.com knows where to find google.com and wiley.com. The domains then have information about where to direct calls to individual machines or services. For example, the DNS records for.google.com know where to point you for the following: www.google.com, mail.google.com, calendar.google.com STATIC IP ADDRESS ASSIGNMENT How do you get assigned an IP address? If you have bought a server-hosting package from an Internet service provider (ISP), you might typically be given a single IP address. But the company itself has been given a block of addresses to assign. Historically, these were ranges of different sizes, typically separated into “classes” of 8 bits, 16 bits, or 24 bits: Class A — From 0.x.x.x Class B — From 128.0.x.x Class C — From 192.0.0.x The class C ranges had a mere 8 bits (256 addresses) assigned to them, while the class A ranges had many more addresses and would therefore be given only to the very largest of Internet organizations. We call this kind of address static because once assigned it won’t change again without human intervention. DYNAMIC IP ADDRESS ASSIGNMENT Thankfully, we don’t typically have to choose an IP address for every device we connect to a network. Instead, when you connect a laptop, a printer, it can request an IP address from the network itself using the Dynamic Host Configuration Protocol (DHCP). When the device tries to connect, instead of checking its internal configuration for its address, it sends a message to the router asking for an address. The router assigns it an address. This is not a static IP address which belongs to the device indefinitely; rather, it is a temporary “lease” which is selected dynamically according to which addresses are currently available. If the router is rebooted, the lease expires, or the device is switched off, some other device may end up with that IP address. Using a static address may be fine for development (if you are the only person connected to it with that address), but for working in groups or preparing a device to be distributed to other people on arbitrary networks, you almost certainly want a dynamic IP address. IPV6 If your mobile phone, watch, MP3 player, telehealth or sports-monitoring devices are all connected to the Internet, then you personally are carrying half a dozen IP addresses already. At home you would start with all your electronic devices being connected. But beyond that, you might also have sensors at every door and window for security. More sensitive sound sensors to detect the presence of mice or beetles. Other sensors to check temperature, moisture, and airflow levels for efficiency. It is hard to predict what order of number of Internet connected devices a household might have in the near future. Tens? Hundreds? Thousands? Enter IPv6, which uses 128-bit addresses, usually displayed to users as eight groups of four hexadecimal digits—for example, 001:0db8:85a3:0042 :0000:8a2e:0370:7334. The address space (2^128). You can find many ways to work around the lack of public IP addresses using subnets. IPV6 AND POWERING DEVICES We know that we can regularly charge and maintain a small handful of devices. The requirements for large numbers of devices, however, are very different. The devices should be low power and very reliable, while still being capable of connecting to the Internet. Perhaps to accomplish this, these devices will team together in a mesh network. MAC ADDRESSES Every network-connected device also has a MAC address, which is like the final address on a physical envelope in our analogy. It is used to differentiate different machines on the same physical network so that they can exchange packets. This relates to the lowest-level “link layer” of the TCP/IP stack. Though MAC addresses are globally unique, they don’t typically get used outside of one Ethernet network (for example, beyond your home router). So, when an IP message is routed, it hops from node to node, and when it finally reaches a node which knows where the physical machine is, that node passes the message to the device associated with that MAC address. MAC stands for Media Access Control. It is a 48-bit number, usually written as six groups of hexadecimal digits, separated by colons—for example: 01:23:45:67:89:AB Most devices, such as your laptop, come with the MAC address burned into their Ethernet chips. Some chips, such as the Arduino Ethernet’s WizNet, don’t have a hardcoded MAC address. This is for production reasons: if the chips are mass produced, they are, of course, identical. So they can’t, physically, contain a distinctive address. TCP AND UDP PORTS when you send a TCP/IP message over the Internet, you have to send it to the right port. TCP ports are referred to by numbers (from 0 to 65535). AN EXAMPLE: HTTP PORTS: If your browser requests an HTTP page, it usually sends that request to port 80. The web server is “listening” to that port and therefore replies to it. If you send an HTTP message to a different port, one of several things will happen: Nothing is listening to that port, and the machine replies with an “RST” packet (a control sequence resetting the TCP/IP connection) to complain about this. Nothing is listening to that port, but the firewall lets the request simply hang instead of replying. The client has decided that trying to send a message to that port is a bad idea and refuses to do it. (list of “restricted ports”.) The message arrives at a port that is expecting something other than an HTTP message. The server reads the client’s response, decides that it is garbage, and then terminates the connection. Ports 0–1023 are “well-known ports”, and only a system process or an administrator can connect to them. Ports 1024–49151 are “registered”, so that common applications can have a usual port number. APPLICATION LAYER PROTOCOLS This is the layer you are most likely to interact with while prototyping an Internet of Things project. A protocol is a set of rules for communication between computers. It includes rules about how to initiate the conversation and what format the messages should be in. It determines what inputs are understood and what output is transmitted. It also specifies how the messages are sent and authenticated and how to handle errors caused by transmission. APPLICATION LAYER PROTOCOLS: HTTP The client requests a resource by sending a command to a URL, with some headers. Ex: try to get a simple document at http://book.roomofthings.com/hello.txt. The basic structure of the request would look like this: GET /hello.txt HTTP/1.1 Host: book.roomofthings.com We specified the GET method because we’re simply getting the page. We then tell the server which resource we want (/hello.txt) and what version of the protocol we’re using. We write the headers, which give additional information about the request. The Host header is the only required header in HTTP 1.1. Accept: text/html,application/xhtml+xml, application/ xml; Accept-Charset: UTF-8 Accept-Encoding: gzip Accept-Language :en-US The Accept- headers tell the server what kind of content the client is willing to receive and are part of “Content negotiation”. Finally, the server sends back its response. APPLICATION LAYER PROTOCOLS: HTTPS(ENCRYPTED HTTP) If someone eavesdropped your connection (easy to do with tools such as Wireshark if you have access to the network at either end), that person can easily read the conversation. The HTTPS protocol is actually just a mix-up of plain old HTTP over the Secure Socket Layer (SSL) protocol. An HTTPS server listens to a different port (usually 443) and on connection sets up a secure, encrypted connection with the client. When that’s established, both sides just speak HTTP to each other as before! Diffie–Hellman (D-H) key exchange is a way for two people to exchange cryptographic keys in public. without an eavesdropper being able to decode their subsequent conversation. This is done by each side performing mathematical calculations which are simple to do THANK YOU! Ms. Arti Gavas Assistant Professor, Anna Leela College of Commerce & Eco., Shobha Jayaram Shetty College for BMS, Kurla

Use Quizgecko on...
Browser
Browser