Lecture (1) - Wireless Networks and the Internet PDF

Summary

This lecture provides an overview of wireless networks and the internet, touching on foundational concepts like what the internet is, protocols, network edge/core, performance, loss, delay and throughput. It's a general introduction and not a past paper.

Full Transcript

Chapter 1. WIRELESS NETWORKS AND THE INTERNET Chapter 1: Introduction Overview/roadmap:  What is the Internet?  What is a protocol?  Network edge: hosts, access network, physical media  Network core: packet/circuit switching, internet structure  Performance: loss, delay, throughput...

Chapter 1. WIRELESS NETWORKS AND THE INTERNET Chapter 1: Introduction Overview/roadmap:  What is the Internet?  What is a protocol?  Network edge: hosts, access network, physical media  Network core: packet/circuit switching, internet structure  Performance: loss, delay, throughput  Protocol layers, service models Introduction: 1-2 The Internet: a “nuts and bolts” view Billions of connected mobile network computing devices: national or global ISP  hosts = end systems  running network apps at Internet’s “edge” Packet switches: forward local or packets (chunks of data) Internet regional ISP  routers, switches home network content Communication links provider network  fiber, copper, radio, satellite datacenter network  transmission rate: bandwidth Networks enterprise  collection of devices, routers, links: network managed by an organization Introduction: 1-3 The Internet: a “nuts and bolts” view mobile network 4G  Internet: “network of networks” national or global ISP Interconnected ISPs  protocols are everywhere Skype IP Streaming video control sending, receiving of messages local or regional e.g., HTTP (Web), streaming video, ISP Skype, TCP, IP, WiFi, 4G, Ethernet home network content provider  Internet standards HTTP network datacenter network RFC: Request for Comments Ethernet IETF: Internet Engineering Task TCP enterprise Force network WiFi Introduction: 1-4 The Internet: a “nuts and bolts” view  Internet standards mobile network 4G RFC: Request for Comments : documents national or global ISP contain technical specifications and organizational notes for the Internet. RFCs produced by the IETF cover many aspects of IP Streaming computer networking, such as routing, Skype video addressing and transport technologies local or regional ISP IETF: Internet Engineering Task Force: home network content publishes RFCs authored by network provider operators, engineers, and computer HTTP network datacenter network scientists to document methods, behaviors, Ethernet research, or innovations applicable to develop infrastructure of the network and TCP enterprise optimize its performance. network WiFi Introduction: 1-5 Network Component End device Network Protocols Media (wires , (pc , printer , device (switch (HTTP , FTP , wireless , …) phone , …) , router ,...) IP ,…) The Internet: a “service” view  Infrastructure that provides mobile network services to applications: national or global ISP Web, streaming video, multimedia teleconferencing, email, games, e- Streaming commerce, social media, inter- Skype video connected appliances, … local or regional  provides programming interface ISP to distributed applications: home network content provider “hooks” allowing HTTP network datacenter network sending/receiving apps to “connect” to, use Internet transport service enterprise provides service options, network analogous to postal service Introduction: 1-7 Internet protocol It translates the address of a device that determines its location in the network It consists of 4 groups, each group is called octet and each octet consists of 8 bit. And the range of numbers from zero to 255. IP __. __. __. __ IPonV4 IPv4, consists of 8 * 4 = 32bit the other hand, stands for Internet Protocol version 4, which is a protocol for sending data across a network and includes addressing information to ensure data reaches the correct destination. specify the IP address of the secondary address to use with DNS over HTTPS. Protocol version 4, which is a protocol for sending data across a network and includes addressing information to ensure data reaches the correct destination. IP v4 a system of rules that allows two or more entities of a communications system to transmit information ,. Protocol may be implemented by hardware, software, or a combination of both. Internet Protocol define the format, order of messages sent and received among network entities by transmission protocols, and actions taken on msg transmission, receipt  What is name of wireless computing protocol? Does it similar to IP v4? 802.11 No, 802.11 and IPv4 are not the same in wireless computing. 802.11 refers to a set of IEEE standards that define wireless networking communications. The original version, released in 1997, is now obsolete and has been succeeded by various improvements like 802.11n (Wi-Fi 4), 802.11ac (Wi-Fi 5), and 802.11ax (Wi-Fi 6) 123. Introduction: 1-10 Wireless Computing  Wireless Sensor Networks are networks that consists of sensors which are distributed in an ad hoc manner  Ad hoc networks do not require an access point; instead, devices communicate directly with each other.  These sensors work with each other to sense some communication, physical phenomenon and then the information gathered is processed to get relevant results.  Wireless sensor networks consists of protocols and algorithms with self-organizing capabilities. 11 Introduction to Wireless Sensor Networks Wireless Computing Architecture  Wireless sensor networks (WSN)  Large number of distributed sensor nodes/devices  Nodes works in cooperation  Application: Communication, Surveillance, machine failure diagnosis, and environmental/ biological detection  Homogeneous sensor networks  Sensor nodes with identical characteristics  Most common characteristics: Power, Processing, Storage and Radio capabilities  Heterogeneous sensor networks  Sensor nodes with different level of common characteristics 2 Wireless Sensor Network  Wireless Sensor Network (WSN): monitor physical or environmental conditions, such as temperature, sound, vibration, pressure, motion at different locations. Sensor nodes: basic unit in sensor network o provide sensing measurements Sinks: A base station links the sensor network through internet network to disseminate the sensed data for further processing by End-user. Could be the same sensor node, or an external entity such mobile phone/PC Is part of an external network (e.g., internet). 3 Difference between Sensing and Sensors Sensing: technique to gather information about physical objects or areas Sensor (transducer): object performing a sensing task; converting one form of energy in the physical world into electrical energy Examples of sensors from biology: the human body  eyes: capture optical information (light)  ears: capture acoustic information (sound)  nose: captures olfactory information (smell)  skin: captures tactile information (shape, texture) Sensing (Data Acquisition) Sensors capture signal/phenomena in the physical world. Signal conditioning prepare captured signals for further use (amplification, attenuation, filtering of unwanted frequencies, etc.) Analog-to-digital conversion (ADC) translates analog signal into digital signal Digital signal is processed and output is often given (via digital-analog converter and signal conditioner) to an actuator (device able to control the physical world) Sensor Node  The architecture of the sensor node’s hardware consists of five components:  sensing device  Processor  memory  power supply  transceiver  These devices are easily deployed  no infrastructure and human control are needed Main Components of Sensor Node Location finding Mobilizer Power generator system Memory Transceiver Processing Unit Sensors | ADC Power supply Location finding Power Mobilizer generator system 4 Wireless Network Architecture Sink Cluster Internet Head & Satellite Task Manager Node (End user) Sensor Nodes Sensing Field 5 Wireless Computing  Sensor networks promise to revolutionize sensing in a wide range of application domains.  reliability  accuracy  flexibility  Cost-effectiveness  ease of deployment Wireless Computing (Benefits)  Sensor networks enable:  information gathering  information processing  reliable monitoring of a variety of environments for both civil and military applications. Wireless Computing- Defects  Each sensor node has  wireless communication capability  sufficient intelligence for signal processing and for disseminating the data  Communication in sensor networks is not typically end to end. 1. Energy is typically more limited in sensor networks.-difficulty in recharging Wireless Computing- Defects(cont’) 2. Bluetooth devices are unsuitable for sensor network applications 2. because of their energy requirements 3. and expected higher costs than sensor nodes  a denser infrastructure would lead to a more effective sensor network.  It can provide higher accuracy  and has a larger aggregate amount of energy available Wireless Computing - Defects(cont’) 3. if not properly managed, a denser network can intelligence for signal processing and also lead to a larger number of collisions and potentially to congestion in the network  increase latency  reduce energy efficiency A hierarchical sensor network Wireless Communication Platform Gateway Sink / BS Internet 6 WSN Communication  Characteristics of typical WSN:  low data rates (comparable to dial-up modems)  energy-constrained sensors  IEEE 802.11 family of standards  most widely used WLAN protocols for wireless communications in general  can be found in early sensor networks or sensors networks without stringent energy constraints  IEEE 802.15.4 is an example for a protocol that has been designed specifically for short-range communications in WSNs  low data rates  low power consumption  widely used in academic and commercial WSN solutions Wireless Sensor Network (WSN)  Multiple sensors (often hundreds or thousands) form a network to cooperatively monitor large or complex physical environments  Acquired information is wirelessly communicated to a base station (BS), which propagates the information to remote devices for storage, analysis, and processing Single-Hop versus Multi-Hop  Star topology:  every sensor communicates directly (single-hop) with the base station  may require large transmit powers and may be infeasible in large geographic areas  Mesh topology  sensors act as relays (forwarders) for other sensor nodes (multi-hop)  may reduce power consumption and allows for larger coverage  introduces the problem of routing Sensor Classifications  Physical property to be monitored determines type of required sensor TinyOS  most popular operating system for WSN  developed by UC Berkeley  features a component-based architecture  software is written in modular pieces called components  Each component denotes the interfaces that it provides  An interface declares a set of functions called commands that the interface provider implements and another set of functions called events that the interface user should be ready to handle  Easy to link components together by “wiring” their interfaces to form in applications’s larger networks TinyOS  provides a component library that includes network protocols, services, and sensor drivers  An application consists of  a component written by the application developer and  the library components that are used by the components in (1)  An application developer writes only the application component that describes the sensors used in the application, the middleware services configured with the appropriate parameters based on the needs of the application Benefits of using TinyOS  Separation of concerns  TinyOS provides a proper networking stack for wireless communication that abstracts away the underlying problems and complexity of message transfer from the application developer  E.g., MAC layer  Concurrency control  TinyOS provides a scheduler that achieves efficient concurrency control  An interrupt-driven execution model is needed to achieve a quick response time for the events and capture the data For example, a message transmission may take up to 100msec, and without an interrupt-driven approach the node would miss sensing and processing of interesting data in this period Scheduler takes care of the intricacies of interrupt-driven execution and provides concurrency in a safe manner by scheduling the execution in small threads. Lecture (2) A closer look at Internet structure mobile network Network edge: national or global ISP  hosts: clients and servers  servers often in data centers local or regional ISP home network content provider network datacenter network enterprise network Introduction: 1-2 A closer look at Internet structure mobile network Network edge: national or global ISP  hosts: clients and servers  servers often in data centers local or Access networks, physical regional ISP media: home network content provider wired, wireless communication network datacenter network links enterprise network Introduction: 1-3 A closer look at Internet structure mobile network Network edge: national or global ISP  hosts: clients and servers  servers often in data centers local or Access networks, physical media: regional ISP wired, wireless communication links home network content provider network Network core: datacenter network  interconnected routers  network of networks enterprise network Introduction: 1-4 Wireless networks VS ad hoc networks: The number of nodes in a sensor network can be several orders of magnitude higher than the nodes in an ad hoc network. Sensor nodes are densely deployed. Sensor nodes are limited in power, computational capacities and memory. Sensor nodes are prone to failures. The topology of a sensor network changes frequently. Sensor nodes mainly use broadcast, most ad hoc networks are based on p2p. Sensor nodes may not have global ID. Access networks and physical media Q: How to connect end systems to edge router? 4 steps mobile network national or global ISP  residential access nets  institutional access networks (school, company)  mobile access networks (WiFi, 4G/5G) local or What to look for: regional ISP  transmission rate (bits per second) of access network? home network content  shared or dedicated access among users? provider network datacenter network  Shared network as a business model in which two or more communications service providers (CSPs) share network resources through joint ownership or by third- party-enabled network sharing (open networks). enterprise  Dedicated network: Service delivered via Ethernet or network private-line circuits, that isn't shared with other customers. Introduction: 1-6 Access networks: cable-based access cable headend … cable splitter modem frequency division multiplexing (FDM): different channels C O transmitted in different frequency V I V I V I V I V I V I D D N T bands D E D E D E D E D E D E A T A T R O frequency-division O O O O O O A A L multiplexing (FDM) is a technique by 1 2 3 4 5 6 7 8 9 which the total bandwidth available in Channels a communication medium is divided into Time-division multiplexing (TDM) is a method of transmitting and receiving a series of non-overlapping frequency bands, each of which is used to carry a independent signals over a common signal path by means of synchronized separate signal. This allows a single switches at each end of the transmission line so that each signal appears on transmission medium such as a the line only a fraction of time in an alternating pattern microwave Such as radio link, cable or optical fiber to be shared by multiple independent signals. Introduction: 1-7 Access networks: cable-based access cable headend … cable splitter cable modem modem CMTS termination system data, TV transmitted at different frequencies over shared cable ISP distribution network  HFC: hybrid fiber coax asymmetric: up to 40 Mbps – 1.2 Gbs downstream transmission rate, 30-100 Mbps upstream transmission rate  network of cable, fiber attaches homes to ISP router homes share access network to cable headend Introduction: 1-8 Access networks: digital subscriber line (DSL) central office telephone network DSL splitter modem DSLAM voice, data transmitted ISP at different frequencies over DSL access dedicated line to central office multiplexer  use existing telephone line to central office DSLAM data over DSL phone line goes to Internet voice over DSL phone line goes to telephone net  24-52 Mbps dedicated downstream transmission rate  3.5-16 Mbps dedicated upstream transmission rate Introduction: 1-9 Access networks: home networks wireless devices to/from headend or central office often combined in single box cable or DSL modem WiFi wireless access router, firewall, NAT point (54, 450 Mbps) wired Ethernet (1 Gbps) Introduction: 1-10 Wireless access networks Shared wireless access network connects end system to router  via base station aka “access point” Wireless local area networks Wide-area cellular access networks (WLANs)  provided by mobile, cellular network  typically within or around operator (10’s km) building (~100 ft)  10’s Mbps  802.11b/g/n (WiFi): 11, 54, 450  4G cellular networks (5G coming) Mbps transmission rate to Internet to Internet Introduction: 1-11 Access networks: enterprise networks Enterprise link to ISP (Internet) institutional router Ethernet institutional mail, switch web servers  companies, universities, etc.  mix of wired, wireless link technologies, connecting a mix of switches and routers (we’ll cover differences shortly)  Ethernet: wired access at 100Mbps, 1Gbps, 10Gbps  WiFi: wireless access points at 11, 54, 450 Mbps Introduction: 1-12 Host: sends packets of data host sending function:  takes application message two packets,  breaks into smaller chunks, L bits each known as packets, of length L bits  transmits packet into access 2 1 network at transmission rate R link transmission rate, aka link host capacity, aka link bandwidth R: link transmission rate packet time needed to L (bits) transmission = transmit L-bit = delay packet into link R (bits/sec) Introduction: 1-13 Links: physical media Wireless radio Radio link types:  signal carried in  terrestrial microwave electromagnetic spectrum up to 45 Mbps channels  no physical “wire”  Wireless LAN (WiFi) Up to 100’s Mbps  broadcast and “half-duplex” (sender to receiver)  wide-area (e.g., cellular)  propagation environment 4G cellular: ~ 10’s Mbps effects:  satellite reflection up to 45 Mbps per channel obstruction by objects 270 msec end-end delay interference geosynchronous versus low- earth-orbit Introduction: 1-14 Difference between Wireless and ad hoc networks  Wireless networks mainly use broadcast communication while ad hoc networks use point-to-point communication.  Unlike ad hoc networks wireless sensor networks are limited by sensors limited power, energy and computational capability.  Sensor nodes may not have global ID because of the large amount of overhead and large number of sensors. 15 WSN Management  WSN deployment  many sensor networks are deployed “without design” sensors dropped from airplanes (battlefield assessment) sensors placed wherever currently needed (tracking patients in disaster zone) moving sensors (robot teams exploring unknown terrain)  sensor node must have some or all of the following abilities determine its location determine identity of neighboring nodes configure node parameters discover route(s) to base station initiate sensing responsibility WSN Management (cont.,)  Attended operation  once deployed, WSN must operate without human intervention  device adapts to changes in topology, density, and traffic load  device adapts in response to failures  Other terminology  self-organization is the ability to adapt configuration parameters based on system and environmental state  self-optimization is the ability to monitor and optimize the use of the limited system resources  self-protection is the ability recognize and protect from intrusions and attacks  self-healing is the ability to discover, identify, and react to network disruptions WSN Distribution  Centralized management (e.g., at the base station) of the network often not feasible to due large scale of network and energy constraints  Therefore, decentralized (or distributed) solutions often preferred, though they may perform worse than their centralized counterparts  Example: routing  Centralized:  BS collects information from all sensor nodes  BS establishes “optimal” routes (e.g., in terms of energy)  BS informs all sensor nodes of routes  can be expensive, especially when the topology changes frequently  Decentralized:  each sensors makes routing decisions based on limited local information  routes may be non optimal, but route establishment/management can be much cheaper Challenges in WSNs: Design Constraints  Low processing speeds (to save energy)  Low storage capacities (to allow for small form factor and to save energy)  Lack of I/O components such as GPS receivers (reduce cost, size, energy)  Lack of software features such as multi-threading (reduce software complexity)  Multi-hop communication:  increased latency  increased failure/error probability  complicated by use of duty cycles Operational Challenges of Wireless Sensor Networks  Energy Efficiency  Limited storage and computation  Low bandwidth and high error rates  Errors are common Wireless communication  Noisy measurements  Node failure are expected Although,…  Scalability to a large number of sensor nodes  Survivability in harsh environments  Experiments are time- and space-intensive 20 Introduction to Wireless Sensor Networks Example of WSN 21 Introduction to Wireless Sensor Networks Ref:http://esd.sci.univr.it/images/wsn-example.png Why use a WSN?  Ease of deployment  Wireless communication means no need for a communication infrastructure setup  Drop and play  Low-cost of deployment  Nodes are built using off-the-shelf cheap components  Fine grain monitoring  Feasible to deploy nodes densely for fine grain monitoring Applications of Wireless Sensor networks The applications can be divided in three categories: 1. Monitoring of objects. 2. Monitoring of an area. 3. Monitoring of both area and objects. Monitoring Area  Environmental and Habitat Monitoring  Precision Agriculture  Indoor Climate Control  Military Surveillance  Intelligent Alarms 24 Introduction to Wireless Sensor Networks Example: Precision Agriculture Precision agriculture aims at making cultural operations more efficient, while reducing environmental impact. The information collected from sensors is used to evaluate optimum sowing density, estimate fertilizers and other inputs needs, and to more accurately predict crop yields. 25 Introduction to Wireless Sensor Networks Military applications Monitoring friendly forces, equipment and ammunition Reconnaissance of opposing forces and terrain Battlefield surveillance Battle damage assessment Nuclear, biological and chemical attack detection Health applications Tele-monitoring of human physiological data Tracking and monitoring patients and doctors inside a hospital Drug administration in hospitals Vital sign monitoring Accident recognition Monitoring the elderly Intel deployed a 130-node network to monitor the activity of residents in an elder care facility. Patient data is acquired with wearable sensing nodes (the “watch”) Environmental applications Forest fire detection Biocomplexity mapping of the environment Flood detection Great Duck Precision agriculture Island 150 sensing nodes deployed throughout the island relay data temperature, pressure, and humidity to central device. Data was made available on the Internet through a satellite link. Detecting and monitoring car thefts Traffic Management & Monitoring  Future cars could use wireless sensors to:  Handle Accidents  Handle Thefts Sensors embedded in the roads to: –Monitor traffic flows –Provide real-time route updates 30 Introduction to Wireless Sensor Networks Smart Home / Smart Office  Sensors controlling appliances and electrical devices in the house.  Better lighting and heating in office buildings.  The Pentagon building has used sensors extensively. 31 Industrial & Commercial  Numerous industrial and commercial applications:  Agricultural Crop Conditions  Inventory Tracking  In-Process Parts Tracking  Automated Problem Reporting  RFID – Theft Deterrent and Customer Tracing  Plant Equipment Maintenance Monitoring 32 Enabling Technologies Embed numerous distributed Network devices to coordinate devices to monitor and interact and perform higher-level tasks with physical world Embedded Networked Control system w/ Small form factor Exploit Untethered nodes collaborative Sensing, action Sensing Tightly coupled to physical world Exploit spatially and temporally dense, in situ, sensing and actuation 33 Introduction to Wireless Sensor Networks Server Watersh Sensor ed field Gatew ay Internet Comparison Traditional Networks Wireless Networks General-purpose design; serving many applications Single-purpose design; serving one specific application Typical primary design concerns are network Energy is the main constraint in the design of all performance and latencies; energy is not a primary node and network components concern Networks are designed and engineered according to Deployment, network structure, and resource use plans are often ad-hoc (without planning) Devices and networks operate in controlled and Sensor networks often operate in environments with mild environments harsh conditions Maintenance and repair are common and networks Physical access to sensor nodes is often difficult or are typically easy to access even impossible Component failure is addressed through Component failure is expected and addressed in the maintenance and repair design of the network Obtaining global network knowledge is typically Most decisions are made localized without the feasible and centralized management is possible support of a central manager Lecture (3) The network core mesh of interconnected mobile network national or global ISP routers packet-switching: hosts break application-layer messages local or into packets regional ISP forward packets from one router home network content to the next, across links on path provider network datacenter from source to destination network each packet transmitted at full link capacity enterprise network Introduction: 1-2 Packet-switching: store-and-forward L bits per packet 3 2 1 source destination R bps R bps  Transmission delay: takes L/R seconds to transmit (push out) L-bit packet into link at R One-hop numerical bps example:  Store and forward: entire packet must arrive at  L = 10 Kbits router before it can be transmitted on next link  R = 100 Mbps  End-end delay: 2L/R (above), assuming zero  one-hop transmission delay = 0.1 msec propagation delay (more on delay shortly) Introduction: 1-3 Examples  You may now want to try to determine what the delay would be for P packets sent Now let’s calculate the amount of time that elapses from when the source begins to send the first packet until the destination has received all three packets. As before, at time L/R, the router begins to forward the first packet. But also at time L/R the source will begin to send the second packet, since it has just finished sending the entire first packet. Thus, at time 2L/R, the destination has received the first packet and the router has received the second packet. Similarly, at time 3L/R, the destination has received the first two packets and the router has received the third packet. Finally, at time 4L/R the destination has received all three packets!  Let’s now consider the general case of sending one packet from source to destination over a path consisting of N links each of rate R (thus, there are N-1 routers between source and destination). Applying the same logic as above, we see that the end-to-end delay is: d = N L/R Thus, this determines what the delay would be for P packets sent over a series of N links Introduction: 1-4 Packet-switching: queueing delay, loss R = 100 Mb/s A C D B R = 1.5 Mb/s E queue of packets waiting for output link Packet queuing and loss: if arrival rate (in bps) to link exceeds transmission rate (bps) of link for a period of time:  packets will queue, waiting to be transmitted on output link  packets can be dropped (lost) if memory (buffer) in router fills up Introduction: 1-5 Two key network-core functions routing Routing: algorithm Forwarding: local forwarding table  global action: header output determine source-  local action: value 0100 3 link destination paths 0101 2 move arriving 0111 2 packets from 1001 1 taken by packets router’s input link  routing algorithms to appropriate 1 router output link 3 2 destination address in arriving packet’s header Introduction: 1-6 Alternative to packet switching: circuit switching end-end resources allocated to, reserved for “call” between source and destination  in diagram, each link has four circuits. call gets 2nd circuit in top link and 1st circuit in right link.  dedicated resources: no sharing circuit-like (guaranteed) performance  commonly used in traditional telephone networks Introduction: 1-7 Circuit switching: FDM and TDM Frequency Division Multiplexing (FDM) (Communications) 4 users  optical, electromagnetic frequencies frequency divided into (narrow) frequency bands  each call allocated its own band, can transmit at max rate of that narrow band time Time Division Multiplexing (TDM) frequency (Telcommunications)  time divided into slots  each call allocated periodic slot(s), can transmit at maximum rate of (wider) frequency band, but only time during its time slot(s) Introduction: 1-8 Packet switching versus circuit switching packet switching allows more users to use network! Example:  1 Gb/s link  each user: N 100 kb/s when “active” users 1 Gbps link active 10% of time  circuit-switching: 10 users Q: how did we get value 0.0004?  packet switching: with 35 users, probability > 10 active at same time Q: what happens if > 35 users ? is less than.0004 * Introduction: 1-9 Wireless Mobile or Mobile Wireless? Wireless communications and mobile computing 🞅 Mobile computing devices need not be wireless. 🞅 Wireless communication systems are type of communication system 🞅 Four pieces to the mobile problem: 1. mobile user, 2. mobile device, 3. mobile application, 4. mobile network Characteristics of mobile computing environment 1. User mobility: user accesses the service while on move. 2. Network mobility User moves from one network to another accessing the service seamlessly. Network itself is mobile as in MANET (Mobile AD-hoc Networks). 3. Bearer Mobility: User uses the same service while switching the bearer. 4. Device Mobility:User use the same service while switching from one device to other. 5. Session Mobility:User session shold able to move from one user- agent environment to other. 6. Host Mobility: User device can be server or host. 7. Agent Mobility : User –agent (browser,crawlers)or the application move from node to other. Wireless Mobile 🞅 Recently, computer networks have evolved by leaps and bounds. These networks have begun to fundamentally change the way we live. 🞅 Networks and computing devices are becoming increasingly blended together. 🞅 Most mobile computing systems today, through wired or wireless connections, can connect to the network. 🞅 Because of the nature of mobile computing systems, network connectivity of mobile systems is increasingly through wireless communication systems rather than wired ones. 🞅 And this is quickly becoming somewhat of a no mandatory distinguishing element between mobile and stationary systems. Dimensions of Mobile Computing 🞅 Location awareness 🞅 Network connectivity quality of service (QOS) 🞅 Limited device capabilities 🞅 Limited power supply 🞅 Support for a wide variety of user interfaces 🞅 Platform proliferation 🞅 Active transactions Location 🞅 A mobile device is not always at the same place: Its location isconstantlychanging. 🞅 Location aware app and systems have Challenges. 🞅 localization and location sensitivity 🞅 Localization is ability of the architecture of the mobile application to accommodate logic that allows the selection of different business logic, level of work flow, and interfaces based on a given set of location information commonly referred to as locales. e.g., P.O.Sor e-commerce web application 🞅 Location (Con.) 🞅 Location sensitivity is the ability of the device and the software application to first obtain location information while being used and then to take advantage of this location information in offering features and functionality. 🞅 location-sensing technologies (triangulation, proximity, and scene analysis) Triangulation is calculation of the location of a point that lies in the middle of three other points whose exact locations are known. Location: Triangulation Quality of Service (QoS) 🞅 Whether wired or wireless connectivity is used, mobility means loss of network connectivity reliability. 🞅 Moving from one physical location to another creates physical barriers that nearly guarantee some disconnected time from the network. 🞅 If a mobile application is used on a wired mobile system, the mobile system must be disconnected between the times when it is connected to the wired docking ports to be moved. 🞅🞅 In the case of wireless network connectivity, physical conditions can significantly affect the quality of service (QOS). 🞅 For example, bad weather, solar flares, and a variety of other climate-related condition can negatively affect the (QOS). Quality of Service (Con.) 🞅 almost all mobile applications should know how to stop working when the application suddenly disconnects from the network and then resume working when it connects again. Often QOS data are measured and provided by the network operator. 🞅 the real-time bandwidth available may be part of the data provided and refreshed on some time interval. Such data can be utilized design applications that dynamically adapt their features and functionality to the available bandwidth. 21 Limited Device Storage and CPU 🞅 Limitations of storage and CPU of mobile devices put yet another constraint on how we develop mobile applications. For example, a mobile calendaring application may store some of its data on another node on the network (a PC, server, etc.). The contacts stored on the device may be available at any time. However, 🞅 the contact information that exists only on the network is not available while the device is disconnected from the network. But, because the amount of data that can be stored on each type of device varies depending on the device type, it isnot possible to allocate this storage space statically. 🞅 Also, some information may be used more frequently than others; for example, the two weeks surrounding the current time may be accessed more frequently 23 in the calendar application or there may be some contacts that are used more frequently. Limited Power Supply 🞅 We have already seen that the size constraints of the devices limit their storage capabilities and that their physical mobility affects network connectivity. 🞅 For the same set of reasons that wireless is the predominant method of network connectivity for mobile devices, batteries are the primary power source for mobile devices. 🞅 Batteries are improving every day and it is tough to find environments where suitable AC power is not available. Yet, often the user is constantly moving and devices are consuming more and more power with processors that have more and more transistors packed into them. 🞅 The desirability of using batteries instead of an AC power source combined with the size constraints creates yet another constraint, namely a limited power supply. This constraint must be balanced with the processing power, storage, and size. 24 🞅 constraints; the battery is typically the largest single source of weight in the mobile. The power supply has a direct or an indirect effect on everything in a mobile device. ARCHITECTURE OF MOBILE SOFTWARE APPLICATIONS 🞅 The first step in building a software application, after the process of gathering requirements, is to lay down a high-level plan of what the application will be like when it isfinished. 🞅 Mobile applications, like any other software application, require such a high- level plan. 🞅 We call this high-level plan of the mobile application a “mobile software architecture.” Our approach to architecture in this text will be bottom up: we will introduce a variety of design patterns, application architectures, and processes with each addressing some specific problem with mobile applications (next Figure). 26 27 Wireless Network Technology Lecture 4 Outlines  What is the Internet?  What is a protocol?  Network edge: hosts, access network, physical media  Network core: packet/circuit switching, internet structure  Performance: loss, delay, throughput Introduction: 1-2 How do packet loss and delay occur? packets queue in router buffers  packets queue, wait for turn  arrival rate to link (temporarily) exceeds output link capacity: packet loss packet being transmitted (transmission delay) A B packets in buffers (queueing delay) free (available) buffers: arriving packets dropped (loss) if no free buffers Introduction: 1-3 Packet delay: four sources transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dproc: nodal processing dqueue: queueing delay  check bit errors  time waiting at output link for transmission  determine output link  depends on congestion level of router  typically < msec Introduction: 1-4 Packet delay: four sources transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dprop: The propagation delay is the time it takes for one dtrans: transmission delay: is the time needed to bit to travel from one end of the link to the other. push all the packet bits on the transmission The bits travel in the form of electromagnetic signals. link. It mainly depends upon the size of the The speed at which electromagnetic signals data and channel bandwidth (in bps). propagate is determined by the medium through Following is the formula for transmission which they pass. Following is the formula for delay: propagation delay:: dtrans and dprop  L: packet length (bits)  d: the distance in wireless networking /length of very different physical link  R: link transmission rate (bps)  s: propagation speed (~2x108 m/sec)  dtrans = L/R  dprop = d/s Introduction: 1-5 Caravan analogy 100 km 100 km ten-car caravan toll booth toll booth (aka 10-bit (aka router) packet)  car ~ bit; caravan ~ packet  time to “push” entire caravan  cars “propagate” at 100 km/hr through toll booth onto highway = 12*10 = 120 sec  toll booth takes 12 sec to service car (bit transmission time)  time for last car to propagate from 1st to 2nd toll both:  Q: How long until caravan is lined 100km/(100km/hr) = 1 hr up before 2nd toll booth?  A: 62 minutes Introduction: 1-6 Caravan analogy 100 km 100 km ten-car caravan toll booth toll booth (aka 10-bit (aka router) packet)  suppose cars now “propagate” at 1000 km/hr  and suppose toll booth now takes one min to service a car  Q: Will first car arrive to 2nd booth before all cars serviced at first booth? A: Yes! after 7 min, first car arrives at second booth; three cars still at first booth Introduction: 1-7 Packet queueing delay (revisited) average queueing delay  R: link bandwidth (bps)  L: packet length (bits)  a: average packet arrival rate traffic intensity = La/R 1  La/R ~ 0: avg. queueing delay small  La/R -> 1: avg. queueing delay large La/R ~ 0  La/R > 1: more “work” arriving is more than can be serviced - average delay infinite! La/R -> 1 Introduction: 1-8 Packet loss  queue (aka buffer) preceding link in buffer has finite capacity  packet arriving to full queue dropped (aka lost)  lost packet may be retransmitted by previous node, by source end system, or not at all buffer (waiting area) packet being transmitted A B packet arriving to full buffer is lost * Check out the Java applet for an interactive animation on queuing and loss Introduction: 1-9 Throughput  throughput: rate (bits/time unit) at which bits are being sent from sender to receiver instantaneous: rate at given point in time average: rate over longer period of time link capacity pipe that can carry linkthat pipe capacity can carry Rsfluid bits/sec at rate Rfluid c bits/sec at rate serverserver, sendswith bits (fluid) (Rs bits/sec) (Rc bits/sec) fileinto of Fpipe bits to send to client Introduction: 1-10 “Real” Internet delays and routes  what do “real” Internet delay & loss look like?  traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: sends three packets that will reach router i on path towards destination (with time-to-live field value of i) router i will return packets to sender sender measures time interval between transmission and reply 3 probes 3 probes 3 probes Introduction: 1-11 Real Internet delays and routes traceroute: gaia.cs.umass.edu to www.eurecom.fr 3 delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 3 delay measurements 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms to border1-rt-fa5-1-0.gw.umass.edu 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms trans-oceanic link 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms looks like delays 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms decrease! Why? 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * 18 * * * * means no response (probe lost, router not replying) 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms * Do some traceroutes from exotic countries at www.traceroute.org Introduction: 1-12 The wireless/Mobile Computing Structure: Mobile Mobile Mobile software hardware communication ‫االستفادة من أصل التيني‬ ‫االستفادة من أصل التيني‬ ‫والمحتوى هراء‬ ‫والمحتوى هراء‬ Mobile communication Mobile communication refers to the infrastructure, including protocols, services, bandwidth, and portals, that enables seamless and reliable communication. Defining the data format at this stage helps prevent congestion/conflicts with other systems. Since the medium is unguided, the primary infrastructure uses radio waves, allowing signals to be transmitted wirelessly to compatible devices. Mobile Hardware Mobile hardware encompasses devices that access mobility services, including laptops, smartphones, tablets, and digital assistants. These devices can sense and receive signals simultaneously thanks to their full-duplex capability, allowing concurrent communication without delay. They typically rely on established wireless networks to operate. Mobile software Mobile software consists of programs that run on mobile devices, acting as their operating system. This vital component enables the device to function effectively. **Symbian:** Symbian is popular mainly for being an affordable smartphone operating system. While it has its advantages, other platforms generally provide a better experience, and it is starting to lose market share. **Windows Phone:** Better suited for business solutions, Windows Phone focuses on end consumers, especially in social networking. **BlackBerry:** Known for strong data security, BlackBerry may not compete with iOS or Android overall but offers unique hardware features. **Android:** The Android API is user-friendly and flexible, similar to iOS but with fewer restrictions. It is based on the Linux kernel, virus-free, and allows developers to write managed code in Java, supported by Google and the Open Handset Alliance. Mobile Linux Motorola was the first company to launch phones with Linux as their operating system in 2003.Linux is suitable for higher-end phones with powerful processors and ample memory. MXI (Motion Experience Interface) MXI is a universal mobile operating system that allows existing applications from Windows, Linux, Java, and Palm to run on mobile devices without redevelopment. It enables interoperability across various platforms and uses a stylus instead of a touchscreen. Android OS Android is a mobile OS based on the Linux kernel, developed by Google. It uses touch inputs—like swiping, tapping, and pinching—to interact with on-screen elements and features a virtual keyboard. iOS Originally iPhone OS, iOS is developed by Apple Inc. and is exclusive to its hardware, powering devices like the iPhone, iPad, and iPod touch. There are two Main Aspects of mobile computing: 1.User mobility: users communicate “anytime, anywhere, with anyone” (example: read/write email on web browser) It refers to a user who has access to the same or similar telecommunication services at different places, i.e., the user can be mobile, and the services will follow him or her.  Between different geographical locations  Between different networks  Between different communication devices  Between different applications 2. Device portability: devices can be connected anytime, anywhere to the network  Between different geographical locations  Between different networks Aspects of mobility User Mobility User should be able to move from one physical location to another location and use the same service. For Example, User moves from London to New York and uses the Internet in either place to access the corporate application. Network Mobility User should be able to move from one network to another network and use the same service. For Example, User moves from Bangalore to Chennai and uses the same GSM phone to access the corporate application. Bearer Mobility User should be able to move from one bearer to another while using the same service. For Example, User is unable to access the WAP bearer due to some problem in the GSM network then he should be able to use voice or SMS bearer to access that same corporate application. Device Mobility User should be able to move from one device to another and use the same service. For Example, User is using a PC to do his work. During the day, while he is on the street he would like to use his Palmtop to access the corporate application. Aspects of mobility Session Mobility A user session should be able to move from one user- agent environment to another. For Example, An unfinished session moving from a mobile device to a desktop computer is a good example. Service Mobility User should be able to move from one service to another. For Example, User is writing a mail. Suddenly, he needs to refer to something else. In a PC, user simply opens another service and moves between them. User should be able to do the same in small footprint wireless devices. Host Mobility User should be able to move while the device is a host computer. For Example, The laptop computer of a user is a host for grid computing network. It is connected to a LAN port. Suddenly, the user realizes that he needs to leave for an offsite meeting. He disconnects from the LAN and should get connected to wireless LAN while his laptop being the host for grid computing network. The following are the four different characteristics display by the communication devices Mobile and wired most of the portable computing devices fall within this category. Fixed and wired: We can easily carry these devices the fixed desktop computers in (ex: laptops) the office, which are connected through the wired network. Mobile and wireless the most recent technique, in which no Fixed and wireless cable restricts, the user, who can roam between different wireless networks. kind of technique is especially used for Ex: GSM –Global system for mobile installing networks in historical places such communications. as buildings to avoid damages by fixing cables and other equipment. This method can also be used for fastest network setup. Mobile Computing - Major Advantages Location Flexibility This has enabled users to work from anywhere as long as there is a connection established. A user can work without being in a fixed position. Their mobility ensures that they are able to carry out numerous tasks at the same time and perform their stated jobs. Saves Time The time consumed or wasted while travelling from different locations or to the office and back, has been slashed. One can now access all the important documents and files over a secure channel or portal and work as if they were on their computer. It has enhanced telecommuting in many companies. It has also reduced unnecessary incurred expenses. Enhanced Productivity Users can work efficiently and effectively from whichever location they find comfortable. This in turn enhances their productivity level. ‫الــــي‬ Ease of Research Research has been made easier, since users earlier were required to go to the field and search for facts and feed them back into the system. It has also made it easier for field officers and researchers to collect and feed data from wherever they are without making unnecessary trips to and from the office to the field. Entertainment Video and audio recordings can now be streamed on-the-go using mobile computing. It's easy to access a wide variety of movies, educational and informative material. With the improvement and availability of high speed data connections at considerable cost, one is able to get all the entertainment they want as they browse the internet for streamed data. One is able to watch news, movies, and documentaries among other entertainment offers over the internet. This was not possible before mobile computing dawned on the computing world. Streamlining of Business Processes Business processes are now easily available through secured connections. Looking into security issues, adequate measures have been put in place to ensure authentication and authorization of the user accessing the services. Some business functions can be run over secure links and sharing of information between business partners can also take place. Meetings, seminars and other informative services can be conducted using video and voice conferencing. Travel time and expenditure is also considerably reduced. Mobile Application Testing One thing is self-explanatory in case of mobile testing.To perform mobile testing, you need a mobile device. This is to access that how our product will work and look like on a given mobile set. ArabPPT.com :‫مصمم من قبل‬ Available Tools for Mobile UI Testing There are quite a few tools available in the market to make mobile UI testing smoother and simpler. For example − - Google chrome extension :You can add new features to Chrome by installing extensions. Extensions are software programs built on web technologies (such as HTML and JavaScript) that enable users to customize the Chrome browsing experience - Screenfly : Screenfly is a very cool new tool that allows you view how your website appears on many different devices and varying screen resolutions - Browser Stack: BrowserStack is a cloud web and mobile testing platform that provides developers with the ability to test their websites and mobile applications across on- demand browsers, operating systems and real mobile devices. There are many Android testing frameworks available in the market. Let’s take a look at the top 5 on the stack. ArabPPT.com :‫مصمم من قبل‬ Robotium Robotium is an open-source test framework for developing functional, system and acceptance test scenarios. It is very similar to Selenium. UIAutomator UIAutomator is a test framework by Google that provides advance UI testing of native Android apps and games. It has a Java library containing API to create functional UI tests and also an execution engine to run the tests. Appium Appium is an open-source test automation framework to test native and hybrid apps and mobile web apps. Appium library functions inside the framework make calls to the Appium server running in the background which operates the connected device. ArabPPT.com :‫مصمم من قبل‬ Calabash Calabash is a functional testing framework that can be used for both iOS and Android functional testing. On paper, it must be one of the easiest frameworks to use and even non-developers should be able to create functional tests using it. Selendroid Selendroid is a relatively new kid on the block and can be used to functionally test your Android applications. Apparently, if you are used to Selenium, Selendroid should be an easy way to use your knowledge to create your functional tests for Android. ArabPPT.com :‫مصمم من قبل‬ Like Android testing frameworks, there are many iOS testing frameworks available in the market. Here we will talk about a few popular ones. Appium Appium is an open-source test automation framework to test native and hybrid apps and mobile web apps. Appium library functions inside the framework make calls to the Appium server running in background which operates the connected device. Calabash Calabash is a functional testing framework that can be used for both iOS and Android functional testing. On paper, it must be one of the easiest frameworks to use and even non-developers should be able to create functional tests using it. Zucchini Zucchini is an open-source visual functional testing framework for iOS applications based on Apple UIAutomation. ArabPPT.com :‫مصمم من قبل‬ UI Automation For your more typical functional tests (or black-box tests), in which you’re going to write code that simulates an end-user navigating your app, there is UI Automation. UI Automation is provided by Apple and is the Apple-sanctioned way of performing iOS functional testing. FRANK – BDD for iOS If you want to do end-to-end testing in iOS and wish you could use BDD and Cucumber, no worries — there’s a tool called Frank that will allow you to create acceptance tests and requirements using Cucumber. ArabPPT.com :‫مصمم من قبل‬ Mobile Functional Applications -Mobile applications (also known as mobile apps) are software programs developed for mobile devices such as smartphones and tablets. - Compact software programs that performs specific tasks for the mobile user. - A Software application that runs in a handheld device such as a Smartphone or other portable device. Compared to desktop or notebook computers, mobile devices have relatively Low processing power Limited RAM Limited permanent storage capacity Small screens with low resolution Higher costs associated with data transfer Slower data transfer rates with higher latency (delay) Less reliable data connections Limited battery life

Use Quizgecko on...
Browser
Browser