Title: Computer Science and Engineering
1Intelligent Environments
- Computer Science and Engineering
- University of Texas at Arlington
2Networking for Intelligent Environments
- Requirements
- Technologies
- Networking
- Service Discovery
- Network Architecture
3Intelligent Environments
4Sensor 1
Sensor 5
Sensor 2
Sensor 6
Sensor 3
Sensor 7
Sensor 4
Sensor 8
5Network Requirements Sensors
- Camera (15) 320x240, 8-bit color
- Motion (15) distance, direction, velocity
- Temperature (12)
- Humidity (12)
- Light (12) frequency, intensity
- Microphone (12) 8000 Hz
- Gas (4)
- Pressure (100)
6Network Requirements Sensors
7Other Network Requirements
- Audio
- Phones (16 kHz, 8 bit)
- Radios (44 kHz, 16 bit)
- TVs (44 kHz, 16 bit)
- Media players (44 kHz, 16 bit)
- Monitoring (16 kHz, 8 bit)
- 2.4 Mbits/sec (one each)
- Internet, control,
- Video
- Phones (30fps, 320x240, 8-bit color)
- TVs (60 fps, 1024x768, 24-bit color)
- Video players (60 fps, 1024x768, 24-bit color)
- Monitoring (30 fps, 320x240, 8-bit color)
- 6.9 Gbits/sec (one each)
8Other Network Requirements
9Network Requirements
- Worst-case throughput 10 Gbits/sec
- Maximum throughput 5 Gbits/sec
- Quality of Service (QoS)
- Audio, video
- Plug and play (service discovery)
10Intelligent Environments
11Wired Network Technologies
- Phone line
- Home Phoneline Networking Alliance (HomePNA)
- Power line
- X10
- Consumer Electronics Bus (CEBus)
- HomePlug
- LonWorks
- New wire
- Ethernet (coax, twisted pair, optical fiber)
- Universal Serial Bus (USB)
- IEEE 1394 Firewire
- Home Audio Video Interoperability (HAVi)
- Specialty audio, video
12Wireless Network Technologies
- Digital Enhanced Cordless Telecommunications
(DECT) - HomeRF
- Bluetooth
- IEEE 802.11
- HiperLAN2
- Infrared
13Phoneline Networking
- Home Phoneline Networking Alliance (HomePNA)
- www.homepna.org
- IEEE 802.3 (Ethernet)
- Carrier Sense Multiple Access with Collision
Detect (CSMA/CD) - 10 Mbps (HPNA 2.0)
- Length 500 feet
14HomePNA Packet
15HomePNA Frequencies
- Standard voice (POTS) 20Hz - 3.4kHz
- UADSL 25kHz - 1.1MHz
- Home network 5.5MHz - 9.5MHz
16Phoneline Network Issues
- Random wiring topologies signal attenuation
- Home phoneline wiring system is a random tree
topology - Simply plugging in the phone or disconnecting the
fax changes the tree - This topology can cause signal attenuation
- Signal noise
- Appliances, heaters, air conditioners, consumer
appliances telephones can introduce signal
noise onto the phone wires
17Powerline Networking
- Ubiquity of power lines
- 10 Mbps
- Technologies
- X10
- Consumer Electronics Bus (CEBus)
- HomePlug
- LonWorks
18X10
- X10 controllers send signals over existing AC
wiring to receiver modules - X10 technology transmits binary data using the
Amplitude Modulation (AM) technique - www.x10.com
19X10
- To differentiate the data symbols, the carrier
uses the zero-voltage crossing point of the 60Hz
AC sine wave on the cycles positive or negative
transition - Synchronized receivers accept the carrier at each
zero-crossing point - X10 uses two zero crossings to transmit a binary
digit so as to reduce errors
20X10
- Every bit requires a full 60 Hertz cycle and thus
the X10 transmission rate is limited to only 60
bps - Usually a complete X10 command consists of two
packets with a 3 cycle gap between each packet - Each packet contains two identical messages of 11
bits (or 11 cycles) each - A complete X-10 command consumes 47 cycles that
yields a transmission time of about 0.8s
21Consumer Electronics Bus (CEBus)
- Open standard providing separate physical layer
specification for communication on power lines
and other media - Electronic Industries Association (EIA-600)
- www.cebus.org
- Data packets are transmitted by the transceiver
at about 10 Kbps - Carrier Sense Multiple Access/Collision Detect
(CSMA/CD) - Employing spread spectrum technology (100Hz-400
Hz)
22OSI and CEBus (EIA-600)
23Spread Spectrum Modulation
- Frequency spectrum of a data-signal is spread
using a code uncorrelated with that signal - Sacrifices bandwidth to gain signal-to-noise
performance
24HomePlug
- HomePlug Powerline Alliance
- www.homeplug.org
- Spread-spectrum technology
25HomePlug
- Speed
- Support file transfers at 10BaseT-like rates
- Either node-to-node file transfer or scenarios
with multiple nodes performing simultaneous file
transfers - HomePlug 1.0 (14 Mbps)
- Voice over IP (VoIP)
- Maintain adequate QoS while supporting multiple,
simultaneous VoIP calls while other nodes are
transferring files and during multiple media
streams
26HomePlug
- Interoperability
- Interoperate with other networking technologies
- Co-exist with existing powerline networking
technologies such as X-10, CEBus and LonWorks - Security
- Contain strong privacy features
- Support multiple logical networks on a single
physical medium - Be applicable to markets in North America, Europe
and Asia
27LonWorks
- Local Operation Networks (LonWorks)
- Developed by Echelon Corporation
- www.echelon.com
- Provides a peer-to-peer communication protocol,
implementing Carrier Sense Multiple Access (CSMA)
techniques - 1.25 Mbps
- Works for other wired and wireless media
28LonWorks
- A common message-based communications protocol
- LonTalk protocol implements all seven layers of
the OSI model using a mixture of hardware and
firmware on a silicon chip - Protocol can be run as fast as 20 MHz
29Powerline Network Issues
- Noise
- Switching power supplies
- Wound motors
- Vacuum cleaners, kitchen appliances, drills
- Dimmers
- Security
- Signal attenuation
30New Wire Networking
- Ethernet (coax, twisted pair, optical fiber)
- Universal Serial Bus (USB)
- IEEE 1394 Firewire
- Home Audio Video Interoperability (HAVi)
- Specialty audio, video
31Ethernet
- IEEE 802.3
- CSMA/CD
- Up to 1 Gbps
- IEEE 802.3ae
- 10GBase-X, 10 Gps
- Lengths up to 40 km
- www.ethermanage.com/ethernet
32IEEE 802.3
33Universal Serial Bus (USB)
- www.usb.org
- 480 Mbps
- Plug and Play
- Hot pluggable
- Up to 127 devices simultaneously
- Powered bus
- 5m maximum cable length
34IEEE 1394 Firewire (i.LINK)
- Digital interface
- No need to convert digital data into analog and
tolerate a loss of data integrity - Transferring data _at_ 100, 200, 400 Mbps
- Physically small
- The thin serial cable can replace larger and more
expensive interfaces
35IEEE 1394 Firewire
- No need for terminators or device IDs
- Hot pluggable
- Users can add or remove 1394 devices with the bus
active - Scaleable architecture
- May mix 100, 200, and 400 Mbps devices on a bus
36IEEE 1394 Firewire
- It can connect up to 63 devices _at_ transfer rate
of 400Mbps - Up to 16 nodes can be daisy- chained through the
connectors - Standard cables up to 4.5 m in length for a total
standard cable length of 72 m
37IEEE 1394 Firewire
- Flexible topology
- Support of daisy chaining and branching for true
peer-to-peer communication - Non-proprietary
38IEEE 1394b
- 1394b is a significant enhancement to the basic
1394 specification that enables - Speed increases to 3.2 Gbps
- Distances of 100 meters on UTP-5, plastic optical
fiber and glass optical fiber - Significantly reduces latency times by using
arbitration - Fully backwards compatible with the current 1394
and 1394a specifications
39Home Audio Video Interoperability (HAVi)
- HAVi is a digital Audio Video networking
initiative that provides a home networking
software specification - Seamless interoperability among home
entertainment products - Designed to meet the particular demands of
digital audio and video - www.havi.org
40HAVi
- Defines operating-system-neutral middleware that
manages - Multi-directional AV streams
- Event schedule
- Registries
- Takes advantage of chips built into modern audio
and video appliances - Provides the management function of a dedicated
audio-video networking system - IEEE 1394 (i. LINK or FireWire) has been chosen
as the interconnection medium
41Specialty Wiring
- Audio
- Coax
- RCA
- Speaker wire
- Video
- Coax
- RCA
- VGA
- 100m maximum cable lengths
42Intelligent Environments
- Wireless Networking Technologies
43Wireless Network Technologies
- Digital Enhanced Cordless Telecommunications
(DECT) - HomeRF
- Bluetooth
- IEEE 802.11
- HiperLAN2
- Infrared
44General Wireless
- Narrow band
- Spread spectrum
- Direct Sequence (DSSS)
- Frequency Hopping (FHSS)
- Orthogonal Frequency Division Multiplexing (OFDM)
45DECT
- Digital Enhanced Cordless Telecommunications
(DECT) - www.dectweb.com
- Digital radio technology
- Dynamic channel selection
- Encryption, authentication, identification
- 500 Kbps 2 Mbps
- Cordless phones
46HomeRF
- www.homerf.org
- Shared Wireless Access Protocol (SWAP)
- IEEE 802.11 for data
- DECT for voice
47HomeRF
- Specifications
- 2.4 GHz band
- FHSS
- 1.6 Mbps (10 Mbps with SWAP 2.0)
- 50m range
- 127 nodes
48Bluetooth
- www.bluetooth.com
- Ericsson, the principal inventor, borrowed the
name from Harald Bluetooth (son of Gorm) - The King of Denmark circa 900AD
- United Denmark and Norway
49Bluetooth
- Specifications
- 2.4 GHz
- FHSS (79 channels)
- 1600 hops per second
- Error correction
- 1 Mbps capacity, 780 Kbps throughput
- 10m distance
- Low power (1 mW)
50Bluetooth
- Personal Area Networks (PANs)
- Piconet
- Collection of up to 8 devices using same hopping
sequence - Scatternet
- Collection of piconets, each with different
hopping sequence
51IEEE 802.11
Data rate degrades with distance.
52HiperLAN2
- www.hiperlan2.com
- 5 GHz
- 54 Mbps
- OFDM
- Automatic frequency allocation
- TDMA/TDD (Time Division)
- QoS support
53Infrared
- www.irda.org
- Directed line of sight
- 1m range
- Diffuse reflective
- Limited to room size
- Speed
- 4 Mbps available
- 16 Mbps coming
- 50 Mbps possible
54Wireless Networking
55Wireless Issues
- Distance
- 2.4 GHz interference
- Microwave ovens
- Cordless phones
- Security
- Not a backbone solution
56Intelligent Environments
57Service Discovery
- Self-configuring devices
- Device becomes aware of network, network services
and other devices - Automatic, as opposed to manual (e.g., DHCP, DNS,
LDAP) - Several incompatible protocols
58Service Discovery Protocols
- Salutation
- Service Location Protocol (SLP)
- Jini
- Universal Plug and Play
- Zero-Configuration Networking
59Salutation
- www.salutation.org
- Architecture for looking up, discovering and
accessing services and information
60Salutation
- Abstractions for devices, applications, and
services - Current definitions
- Printers
- Fax machines
- Document storage devices
- Address book
- Schedule
- Voice message answer, send, storage
- More coming (e.g., display, OS)
61Salutation
- Capabilities exchange protocol
- Service request protocol
- Personalities (standardized protocols for
common services) - APIs for information access and session management
62Service Location Protocol (SLP)
- Developed by Internet Engineering Task Force
(IETF) - Applies existing Internet standards to service
discovery problem - www.srvloc.org
- www.openslp.org
63SLP Agents
- User Agent (UA)
- The SLP User Agent is a software entity that is
looking for the location of one or more services.
- Service Agent (SA)
- The SLP Service Agent is a software entity that
provides the location of one or more services. - Directory Agent(DA)
- The SLP Directory Agent is a software entity that
acts as a centralized repository for service
location information.
64SLP Messages
- Service Request (SrvRqst)
- Message sent by UAs to SAs and DAs to request the
location of a service. - Service Reply (SrvRply)
- Message sent by SAs and DAs in reply to a
SrvRqst. The SrvRply contains the URL of the
requested service.
65SLP Messages (cont.)
- Service Registration (SrvReg)
- Message sent by SAs to DAs containing information
about a service that is available. - Service Deregister (SrvDeReg)
- Message sent by SAs to inform DAs that a service
is no longer available. - Service Acknowledge (SrvAck)
- A generic acknowledgment that is sent by DAs to
SAs as a reply to SrvReg and SrcDeReg messages.
66SLP Messages (cont.)
- Attribute Request (AttrRqst)
- Message sent by UAs to request the attributes of
a service. - Attribute Reply (AttrRply)
- Message sent by SAs and DAs in reply to a
AttrRqst. The AttrRply contains the list of
attributes that were requested.
67SLP Messages (cont.)
- Service Type Request (SrvTypeRqst)
- Message sent by UAs to SAs and DAs requesting the
types of services that are available. - Service Type Reply (SrvTypeRply)
- Message by SAs and DAs in reply to a
SrvTypeRqst. The SrvTypeRply contains a list of
requested service types.
68SLP Messages (cont.)
- DA Advertisement (DAAdvert)
- Message sent by DAs to let SAs and UAs know where
they are. - SA Advertisement (SAAdvert)
- Message sent by SAs to let UAs know where they
are. - Unicast or multicast messaging
69SLP Template Example
template-typeNet-Transducer
template-version0.0 template-description
This is an abstract service type. The purpose of
the Net- Transducer service type is to
organize into a single category all network
enabled Transducers which have certain
properties. template-url-syntax url-path
Depends on the concrete service type.
See these templates. sample-units
string L The units of sample that the
Transducer provides, for instance C (degrees
Celsius), V (Volts), kg (Kilograms), etc.
sample-resolution string L The resolution of
the Transducer. For instance, 10-3 means
that the Transducer has resolution to 0.001
unit. sample-rate integer L The speed at
which samples are obtained per second. For
instance 1000 means that one sample is obtained
every millisecond.
70SLP Template Example
template-typeserviceNet-TransducerThermometer
template-version0.0 template-description
The Thermometer is a Net-Transducer capable
of reading temperature. The data is read by
opening a TCP connection to one of the ports
in the service URL and reading an ASCII string
until an NULL character is encountered. The
client may continue reading data at no faster
than the sample-rate, or close the connection.
template-url-syntax url-path "ports"
ports-list port-list port / port ","
ports port 1DIGIT
See the Service URL ltportgt production rule.
These are the ports
connections can be made on. location-descriptio
nstring The location where the Thermometer
is located. operatorstring O The operator
to contact to have the Thermometer serviced.
71Jini
- Service discovery for networks of Java-enabled
devices - www.sun.com/jini
- www.jini.org
72Jini
73Jini
- Services
- Lookup
- Communications
- Java-RMI, CORBA,
- Security
- Leasing
- Events
74Universal Plug and Play
- Microsofts service discovery approach
- IP-based discovery protocols
- XML
- www.upnp.org
- Examples
75Universal Plug and Play
- Devices
- Containers for services
- XML description
- Services
- Actions (i.e., methods)
- Control server
- Event server
- State (i.e., variables)
- XML description
76Universal Plug and Play
- Control points
- Retrieve the device description and get a list of
associated services. - Retrieve service descriptions for interesting
services. - Invoke actions to control the service.
- Subscribe to the services event source. Anytime
the state of the service changes, the event
server will send an event to the control point.
77(No Transcript)
78UPnP Interoperability
79UPnP Protocols
- Protocols
- UDP, TCP/IP, HTTP, XML
- Simple Service Discovery Protocol (SSDP)
- Generic Event Notification Architecture (GENA)
- Send/receive event notifications using HTTP over
TCP/IP and multicast UDP - Simple Object Access Protocol (SOAP)
- XML and HTTP for remote procedure calls
80UPnP Protocol Stack
81Zero-Configuration Networking
- Zeroconf (www.zeroconf.org)
- IETF standard
- Objectives
- Allocate addresses without a DHCP server
- Translate between names and IP addresses without
a DNS server - Find services, like printers, without a directory
server - Allocate IP Multicast addresses without a MADCAP
server - Multicast Address Dynamic Client Allocation
Protocol
82Zeroconf Protocols
- Address autoconfiguration
- Configure interfaces with unique addresses
- Determine which subnet mask to use
- Detect duplicate address assignment
- Cope with collisions
- Name-to-address translation
- Multicast DNS
- Decentralized
83Zeroconf Protocols
- Service discovery
- Service Location Protocol (SLP)
- DNS Service Resource Record
- Use expanded DNS for service requests
- Multicast address allocation
- Zeroconf Multicast Address Allocation Protocol
(ZMAAP) - Allocate unique addresses and maintain them over
time - Prevent reallocation of assigned addresses
- Be notified of multicast allocation collision
84Intelligent Environments
85Network Architecture
- Networking
- Phoneline, powerline
- New wire
- Wireless
- Service discovery
- SLP, Jini, UPnP, Salutation, zeroconf
- Communication
- CORBA, Java-RMI, DCOM
86Network Architecture