Title: RealWorld Web Services
1Real-World Web Services
- IBM-Citris Meeting
- David E. Culler
- University of California, Berkeley
2Technology Transformation Bottom Line
Network
Microcontroller
Flash Storage
Radio
- Sensors have become physical information
servers - Service Oriented Architecture is the key to
integrating diverse sources of information. - Opportunity to revolutionize industrial and all
other forms of instrumentation
3Integrating a World of Sensors
Existing Sensors
Trending Monitoring
Data Analytics
Management
Ethernet
WiFi
RS232 RS485
GPRS
Controllers
Operations
Wireless!
Field Units
New Sensor
4Long road toward integration
- 1950 4-20 mA current loop
- Common signal wiring, ADC, and calibration
- Vast diversity in excitation, configuration,
interpretation - 1980 HART (Highway Addressable Remote
Transducer) - 1200 baud, half-duplex digital communication over
4-20 wiring - Rosemount proprietary protocol gt open gt
Fieldbus - Fixed packet format for command / response
- Process Variable, Host-gtDevice Commands, Status
Diagnostic Alerts, Device Id, Calibration and
Limits - 1987 BACnet (Building Automation and Control
Network) - RS232, RS485, ARCnet, ethernet, LONTalk,
BACnet/IP - Device Collection of Objects 23 object types
- Data types, packet formats, and object defined in
Abstract Syntax (ASN.1) - Protocol services, Data Sharing, Alarm and
Events, Trending, Scheduling, Remote Device and
Network Management - 1994 CIP (Common Industrial Protocol)
- Device Net (CAN), ControlNet, EtherNet/IP
- Devices as physical instances of classes.
- Communication between objects is independent of
physical links providing transport - Fixed binary encodings of data types, object
types, classes - 200x Zigbee, ZWave, Wireless HART, SP100.11a,
5The Challenge - Diversity
- So many different kinds of sensors
- Different physical phenomenon
- Different electrical connections
- Different means of communication
- Different Logical connections
- Control operations, configuration, calibration
- Translation to engineering units
- Wide range of autonomy and intelligence
- Different data representations, encodings,
- Different operations, capabilities,
- Different limitations and constraints
- Different vendors, standards, interconnects,
6Industrial Interconnects
- BACnet
- RS-232 RS-485 gt IEEE 802.3 via BACnet/IP
- LONworks
- Twisted Pair Power Line gt LonTalk/IP
- Common Industrial Protocol (CIP)
- CAN ControlNet gt EtherNet/IP
- SCADA
- Prop. RS-485 Leased Line Prop. Radios gt
ModBUS gt Ethernet gt TCP/IP - FieldBus
- Modbus, Profibus, Ind. Ethernet, Foundation HSE,
H1, SP100.11a?
In 2000, ODVA and CI introduced another member of
the CIP family EtherNet/IP, where IP stands
for Industrial Protocol. In this network
adaptation, CIP runs over TCP/IP and therefore
can be deployed over any TCP/IP supported data
link and physical layers, the most popular of
which is IEEE 802.311, commonly known as
Ethernet. The universal principles of CIP easily
lend themselves to possible future
implementations on new physical/ data link
layers. The Common Industrial Protocol (CIP) and
the Family of CIP Networks (Pub 123 )
7The Web
Integrates diverse Human Generated Information
8Lesson 1 Internet Standards
- The Internet Engineering Task Force (IETF),
formed in 1986, is a large open international
community of network designers, operators,
vendors, and researchers concerned with the
evolution of the Internet architecture and the
smooth operation of the Internet - Layered architecture provides interoperability
for diverse applications across broad and
evolving communications technology - Today Half a billion to a billion IP hosts ?
demonstrated scale
Internet Protocol (IP) Routing
Network - Internet Protocol (IP) Addressing,
Routing
X3T9.5 FDDI
Serial Modem
802.3 Ethernet
802.15.4 LoWPAN
802.5 Token Ring
802.11 WiFi
GPRS
802.11a WiFi
802.3a Ethernet 10b2
802.11b WiFi
802.3i Ethernet 10bT
Sonet
802.11g WiFi
ISDN
802.3y Ethernet 100bT
802.11n WiFi
802.3ab Ethernet 1000bT
DSL
802.3an Ethernet 1G bT
9But,
- isnt IP too heavyweight for low-power, wireless,
microcontroller based devices? - No!
- 6lowpan compression with high quality multihop
routing - Reliability and lifetime of the best mesh
- Interoperability of IP
106LoWPAN IPv6 over IEEE 802.15.4
IEEE 802.15.4 Frame Format
S pan
D pan
Dst EUID 64
Src EUID 64
preamble
Dst16
Src16
DSN
Network Header
Application Data
dsp
IETF 6LoWPAN Format
01
1
Uncompressed IPv6 address RFC2460
0
40 bytes
0
0
0
0
01
0
1
0
0
0
0
HC1
Fully compressed 1 byte
Source address derived from link
address Destination address derived from link
address Traffic Class Flow Label zero Next
header UDP, TCP, or ICMP
- Deep compression by breaking the layering
abstraction and putting it all back together
again.
11Connecting IP Networks to Wireless Embedded
Devices
IP/6LoWPAN Border Router
IPv6/6LoWPAN Sensor Router
RFC 4944 6LoWPAN (IPv6 for Low Power Wireless
Personal Area Networks) Adapts full-fledged IPv6
to run over embedded wireless networks
12Lesson 2 Service Architecture
Clients
HTTP request
Internet
WSDL
WSDL
Web servers
ltxml gt ltprice2.31gt
13Sensor Service Architecture
lt?xml version"1.0" ?gt - ltdefinitions name"GW"
targetNamespace"urngw" xmlns"http//schemas.xml
soap.org/wsdl/" xmlnsgw"urngw"
xmlnssoap"http//schemas.xmlsoap.org/wsdl/soap/"
xmlnssoapenc"http//schemas.xmlsoap.org/soap/en
coding/" xmlnswsdl"http//schemas.xmlsoap.org/ws
dl/" xmlnsxsd"http//www.w3.org/2001/XMLSchema"gt
- lttypesgt - ltxsdschema xmlns"http//www.w3.org/
2001/XMLSchema" targetNamespace"urngw"gt -
ltxsdcomplexType name"GW__attributesList_Result"gt
- ltxsdallgt - ltxsdcomplexType
name"GW__eventsRead_Result"gt - ltxsdallgt
ltxsdelement name"offset" type"xsdunsignedInt"
/gt ltxsdelement name"total"
type"xsdunsignedInt" /gt ltxsdelement
name"results" type"gwGW__Event_Results" /gt
lt/xsdallgt
WSDL
Clients
Corporate Network or Internet
6LoWPAN IP Network
Gateway Server
Router Firewall
Sensors
Field Unit
Other information Sources
servers
Controllers
14Sensor Service Architecture
ltResultsgt ltResult addr"00173b000fed211a"
timestamp"1181622351.345968" seqNo"27"
name"TemperatureReadEvent"gt ltValue
typeName"nx_uint16_t"gt4240lt/Valuegt
lt/Resultgt lt/Resultsgt
response
Clients
Corporate Network or Internet
6LoWPAN IP Network
Gateway Server
Router Firewall
Sensors
Field Unit
request
WSDL
Other information Sources
servers
Controllers
15Lesson 3 WSDL
- Machine readable description of all aspects of
the services - Operations it performs
- Data representation
- XML just like any other document
- XML schema
- Programming tools do all the details
16Lesson 4 - Compression
- Describe sensor networks in terms of generic XML
- Use similar automated tools to compress into
compact binary representations - Like the formats we spend months hammering out in
the standards meeting
17Embedded Web Services
lt get temp set sample_rate set alarm gt
www.weather.com
Web Services
ltvaluegt sourcelibrary time1253
temp26.7 lt\valuegt
ltvaluegt sourcelibrary time1231
temp25.1 lt\valuegt
XML information
Wireless Packets
802.15.4
18A new world of WSN
client
tier1
server
AquaLogic
tier2
Perl
Python
C
Embedded Services
NetWeaver
Excel
19Example - live
20Lessons from the Web applied to the real world
- To integrate diverse information sources
- IP separate communication from physical links
- 6LoWPAN enables efficient low-power, reliable
mesh with IP - HTML, HTTP, XML simple self-describing text
- electronic data sheets that programs understand
- WSDL descriptions of services in XML and XML
schema - Describe what you do so programs can understand
it - Simple Executable specifications!
- Compress the common case compact instrumentation
and control - Simple subset of XML. Automatic translation.
21Sensor Web Services - Roles
- Server
- Manages embedded network and devices
- Collects and processes readings and events
- Presents embedded services
- Services requests
- Wireless Sensor Device
- Takes measurements / actions
- Appln-specific local processing
- Communicates over LoWPAN
- Routes (for others)
- Processes commands
- Client
- Issues requests
- Consumes/Presents responses
- Receives alerts
XML HTML / HTTP
UDP/IP TCP/IP
WiFi
GPRS
Ethernet
LoWPAN
IT Networks
Wireless Embedded Network
- Router
- Maintains IP routes
- Forwards packets
- IPv6-v4 translation
22Whats the energy Cost?
Local Mesh Scope Overhead lt Zigbee
Energy ? for fixed payload
Max Payload
Global Internet Scope Overhead lt 20 Pay when
needed!
fully compressed header
additional 16-byte IPv6 address