Concepts and examples of HATEOAS principles applied to M2M interface design, based on the proposed interaction model of the W3C Web of Things Interest Group.
Concepts and examples of HATEOAS principles applied to M2M interface design, based on the proposed interaction model of the W3C Web of Things Interest Group.
Presentation for the 12/12/12 Open Source Internet of Things Silicon Valley meetup.
http://www.meetup.com/The-Open-Source-Internet-Of-Things-Silicon-Valley/
Summary of the IoT TOolkit project and related concepts
http://iot-toolkit.com/
Michael Koster from ARM presented during the Open Mobile Alliance LwM2M Workshop event on January 28, 2015. This is a copy of the slides presented for his session titled, "IPSO Alliance Objects".
A Modular Open Source Platform for Web Scale IoT InteroperabilityMichael Koster
IoT is a macro instance of the M-V-C pattern. Open source software components built from IoT Toolkit, Node-RED, and Dojo Toolkit create an open source stack for the Internet of Things
Lighting a Beacon: training for (future) implementersCINECAProject
The Beacon project has received a lot of attention and can already count with implementations (e.g., CINECA cohorts, Beacon+). Beacon purposely leaves a lot of room for freedom on the options to be implemented, and its versatility is part of its success. It also means that implementing Beacon can sometimes be quite challenging: this training session presents the steps for a Beacon implementation in general ways, and leaves room for an extended Q&A session from the audience. The questions might be sent in advance so the use cases can turn into training exercises.
At the end of this training session, participants should have the tools to get started with the implementation autonomously, and have identified the resource persons to answer their questions during the implementation process.
This training session was delivered on 15 February 2022 as part of the CINECA GA4GH Beacon series.
You can learn about the CINECA project on https://www.cineca-project.eu/
Enterprise Application Architectures by Dr. Indika KumaraThejan Wijesinghe
Enterprise Applications/Computing
Architecture Styles for Enterprise Applications
Method-oriented
Message-oriented
Resource-oriented
REST (representational state transfer)
Event-oriented
SOA (service-oriented architecture)
Basic and extended SOA
Implementing SOA
RESTful
WS-* (web services stack)
ESB (enterprise service bus)
Business processes and service compositions
Presentation for the 12/12/12 Open Source Internet of Things Silicon Valley meetup.
http://www.meetup.com/The-Open-Source-Internet-Of-Things-Silicon-Valley/
Summary of the IoT TOolkit project and related concepts
http://iot-toolkit.com/
Michael Koster from ARM presented during the Open Mobile Alliance LwM2M Workshop event on January 28, 2015. This is a copy of the slides presented for his session titled, "IPSO Alliance Objects".
A Modular Open Source Platform for Web Scale IoT InteroperabilityMichael Koster
IoT is a macro instance of the M-V-C pattern. Open source software components built from IoT Toolkit, Node-RED, and Dojo Toolkit create an open source stack for the Internet of Things
Lighting a Beacon: training for (future) implementersCINECAProject
The Beacon project has received a lot of attention and can already count with implementations (e.g., CINECA cohorts, Beacon+). Beacon purposely leaves a lot of room for freedom on the options to be implemented, and its versatility is part of its success. It also means that implementing Beacon can sometimes be quite challenging: this training session presents the steps for a Beacon implementation in general ways, and leaves room for an extended Q&A session from the audience. The questions might be sent in advance so the use cases can turn into training exercises.
At the end of this training session, participants should have the tools to get started with the implementation autonomously, and have identified the resource persons to answer their questions during the implementation process.
This training session was delivered on 15 February 2022 as part of the CINECA GA4GH Beacon series.
You can learn about the CINECA project on https://www.cineca-project.eu/
Enterprise Application Architectures by Dr. Indika KumaraThejan Wijesinghe
Enterprise Applications/Computing
Architecture Styles for Enterprise Applications
Method-oriented
Message-oriented
Resource-oriented
REST (representational state transfer)
Event-oriented
SOA (service-oriented architecture)
Basic and extended SOA
Implementing SOA
RESTful
WS-* (web services stack)
ESB (enterprise service bus)
Business processes and service compositions
Mesh-ing around with Streams across the Enterprise | Phil Scanlon, SolaceHostedbyConfluent
Organisations are becoming Event Driven based on streaming technologies and adopting Data Mesh and Event Mesh architectures. As this becomes pervasive, so do the challenges around runtime governance and lifecycle management. For example, do you know what streams exist, who is producing and consuming them? What is the effect of upstream changes? How is this information kept up to date, and how do people collaborate efficiently across distributed teams and environments? Ever wish you had a way to view and visualize graphically the relationships between schemas, topics and applications? In this talk we will show you how to do that and get more value from your Kafka Streaming infrastructure using an Event Portal - an API portal specialized for event streams and publish/subscribe patterns. Join us to see how you can discover event streams from your Kafka clusters, import them to a catalog to see alongside other enterprise event streams and leverage code gen capabilities to ease development.
Rich Miller & Surendra Reddy
Lighthouse is a concept for the creation of an intercloud registry service, based on (1) access points established and maintained by cloud instances to disseminate operational metadata; and, (2) the use of publish/subscribe (pub/sub) asynchronous messaging as the dominant means of disseminating operational metadata among the constituents of the intercloud.
WOTS2E: A Search Engine for a Semantic Web of ThingsAndreas Kamilaris
A Semantic Web of Things (SWoT) brings together the Semantic Web and the Web of Things (WoT), associating
semantically annotated information to web-enabled physical de-
vices, services and their data, towards seamless data integration and better understanding of real-world information. A missing element in order to realize SWoT is a standardized, scalable and flexible way to globally discover in (near) real time web-connected embedded devices, as well as their semantic data. To address this gap, we propose WOT Semantic Search Engine (WOTS2E), which is a search engine for the SWoT, based on web crawling, being able to discover Linked Data endpoints and, through them, WoT-enabled devices and their services. In this presentation, we describe the design, development and implementation of WOTS2E, as well as an evaluation procedure showing its operation and performance across the web.
Friend Of A Thing and IoT Resource access control #OSIOTMichael Koster
Friend Of A Thing is a conceptual ontology for connecting the physical graph to the personal graph for the purpose of resource access control and management. FOAT helps integrate the Internet of Things with the Internet of People
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBrad Spiegel Macon GA
Brad Spiegel Macon GA’s journey exemplifies the profound impact that one individual can have on their community. Through his unwavering dedication to digital inclusion, he’s not only bridging the gap in Macon but also setting an example for others to follow.
1.Wireless Communication System_Wireless communication is a broad term that i...JeyaPerumal1
Wireless communication involves the transmission of information over a distance without the help of wires, cables or any other forms of electrical conductors.
Wireless communication is a broad term that incorporates all procedures and forms of connecting and communicating between two or more devices using a wireless signal through wireless communication technologies and devices.
Features of Wireless Communication
The evolution of wireless technology has brought many advancements with its effective features.
The transmitted distance can be anywhere between a few meters (for example, a television's remote control) and thousands of kilometers (for example, radio communication).
Wireless communication can be used for cellular telephony, wireless access to the internet, wireless home networking, and so on.
# Internet Security: Safeguarding Your Digital World
In the contemporary digital age, the internet is a cornerstone of our daily lives. It connects us to vast amounts of information, provides platforms for communication, enables commerce, and offers endless entertainment. However, with these conveniences come significant security challenges. Internet security is essential to protect our digital identities, sensitive data, and overall online experience. This comprehensive guide explores the multifaceted world of internet security, providing insights into its importance, common threats, and effective strategies to safeguard your digital world.
## Understanding Internet Security
Internet security encompasses the measures and protocols used to protect information, devices, and networks from unauthorized access, attacks, and damage. It involves a wide range of practices designed to safeguard data confidentiality, integrity, and availability. Effective internet security is crucial for individuals, businesses, and governments alike, as cyber threats continue to evolve in complexity and scale.
### Key Components of Internet Security
1. **Confidentiality**: Ensuring that information is accessible only to those authorized to access it.
2. **Integrity**: Protecting information from being altered or tampered with by unauthorized parties.
3. **Availability**: Ensuring that authorized users have reliable access to information and resources when needed.
## Common Internet Security Threats
Cyber threats are numerous and constantly evolving. Understanding these threats is the first step in protecting against them. Some of the most common internet security threats include:
### Malware
Malware, or malicious software, is designed to harm, exploit, or otherwise compromise a device, network, or service. Common types of malware include:
- **Viruses**: Programs that attach themselves to legitimate software and replicate, spreading to other programs and files.
- **Worms**: Standalone malware that replicates itself to spread to other computers.
- **Trojan Horses**: Malicious software disguised as legitimate software.
- **Ransomware**: Malware that encrypts a user's files and demands a ransom for the decryption key.
- **Spyware**: Software that secretly monitors and collects user information.
### Phishing
Phishing is a social engineering attack that aims to steal sensitive information such as usernames, passwords, and credit card details. Attackers often masquerade as trusted entities in email or other communication channels, tricking victims into providing their information.
### Man-in-the-Middle (MitM) Attacks
MitM attacks occur when an attacker intercepts and potentially alters communication between two parties without their knowledge. This can lead to the unauthorized acquisition of sensitive information.
### Denial-of-Service (DoS) and Distributed Denial-of-Service (DDoS) Attacks
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
Talk presented at Kubernetes Community Day, New York, May 2024.
Technical summary of Multi-Cluster Kubernetes Networking architectures with focus on 4 key topics.
1) Key patterns for Multi-cluster architectures
2) Architectural comparison of several OSS/ CNCF projects to address these patterns
3) Evolution trends for the APIs of these projects
4) Some design recommendations & guidelines for adopting/ deploying these solutions.
This 7-second Brain Wave Ritual Attracts Money To You.!nirahealhty
Discover the power of a simple 7-second brain wave ritual that can attract wealth and abundance into your life. By tapping into specific brain frequencies, this technique helps you manifest financial success effortlessly. Ready to transform your financial future? Try this powerful ritual and start attracting money today!
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC
Ellisha Heppner, Grant Management Lead, presented an update on APNIC Foundation to the PNG DNS Forum held from 6 to 10 May, 2024 in Port Moresby, Papua New Guinea.
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
Web of Things to the edge
1. Web to the Edge
REST and Hypermedia Design for
Machine APIs
2. Michael Koster – Current Work
• ARM
– IoT Architecture and Standards
– Application Level Interoperability
– Developer Enablement
• IETF
– Resource Directory
– CoRE Interfaces
– CoAP Pub-Sub
– T2TRG
• OMA LWM2M
– Peer-to-peer, firewall traversal, and M2M interface
• IPSO
– Smart Object Committee, Data Model and Schema
3. IoT Architecture – Problems to Solve
• Interoperability
– In the way in which software interacts with physical
resources
– Decouple IoT devices from the software that manages them
– Discovery, Management and Reporting, Security,
Authorization
• Scalability
– Large number of devices, users, interactions, connections
– Scale-less interaction
• Technology Reuse and Modularity
– Software, networks, protocols, data models
– Across vendors in a vertical application segment
– Across diverse vertical application segments
• Low Barrier to Innovation
– Anyone can participate and innovate
4. Internet/WWW Design Patterns
• Narrow Waist, endpoint oriented
– Innovation happens at the endpoints, enabled by common,
openly available network protocols (the narrow waist)
• Layered Protocols
– Common set of IP protocols (TCP, UDP) abstract the lower
communication layers
– Common Application Protocols (HTTP, REST) abstract
resources
• Uniform Addressing
– URIs and Hyperlinks point to resources
– IP Addresses, DNS names are globally unique
• Stateless Interaction
– Client-Server pattern
– Hypermedia As The Engine Of Application State
5. How Does it Apply to IoT?
• Internet Protocol (IP) on Constrained
Devices
• Machine to Machine (M2M) Application
Protocols
• Standard Object Models and Data Models
• Hypermedia for Machine APIs
7. CoAP Protocol
Makes each device a
lightweight origin server that
exposes a REST API
A CoAP endpoint may also
contain application client logic
A CoAP endpoint can be both
client and server
Peer to Peer interaction is
based on a duplex client-
server pattern
Also supports asynchronous
notification, Pub-Sub pattern
8. RFC 6690 CoRE Link-Format
<4001/0/9002>;rt=“oma.lwm2m”;ct=50;obs=1
Resource Type
Content Type
Observability
9. Resource Discovery
See draft-ietf-core-resource-directory
• RFC 6690 CoRE Link Format
defines
– The link format media type
– Peer-to-peer discovery
• A directory approach is also useful
– Supports sleeping nodes
– No multicast traffic, longer battery life
– Remote lookup, hierarchical and
federated distribution
• CoRE Link Format is used in
Resource Directories
– Nodes register their resource links to an
RD
– Nodes refresh the RD periodically
– Nodes may unregister (remove) their RD
entry
Application
GET /rd-lookup/ep
</nodea/sensor/temp>
</nodeb/actuator/led>
10. Device Management and Application
Support
Application Software
IPSO Objects
OMA LWM2M
CoAP HTTP
6LowPAN IPV4/IPV6
MCU – 16KiB RAM MPU
802.15.4 WiFi, Ethernet
Hardware
HW Network
Routing
Application Protocol
API and Services
Data Models
Application
Web Server
11. OMA LWM2M Reference Architecture
M2M Applications
Application abstraction through
REST API
Resource Discovery and Linking
LWM2M Clients are Devices
Device abstraction through CoAP
LWM2M Clients are CoAP Servers
Any IP network connection
LWM2M Server
CoAP Protocol persistent endpoint
Supports Caching Proxy
Resource Directory
Gateway and Cloud deployable
12. OMA LWM2M Interfaces
• Bootstrap Interface
– Configure Servers & Keying
– Pre-Configured, Smart Card, or
Server Initiated Bootstrap
– CoAP REST API
• Registration Interface
– RFC6690 and Resource
Directory
• Management and Application
Interface Using Objects
– Device Management Objects
and Resources
– CoAP REST API
• Reporting Interface
– Object Instances and
Resources Report
– Asynchronous notification using
CoAP Observe
13. OMA LWM2M Object Model
• A Client has one or more Object
Instances
• An Object is a collection of Resources
• A Resource is an atomic piece of
information that can be Read, Written
or Executed
• Objects can have multiple instances
• Objects and Resources are identified
by 16-bit Integers
• Objects/Resources are accessed with
simple URIs:
/{Object ID}/{Object
Instance}/{Resource ID}
Example: /3/0/1
• Object Type=3 (Device)
• Instance=0
• Resource Type = 1 (Device Mfg.)
14. IPSO Smart Objects
• Plug and play data models between applications and
data sources
• Create a set of reusable objects and resources that
represent single points of interest and fundamental
concepts
– Temperature Sensor, On-Off Control Switch
– Current Value, Max Value, Min Value
• Make Objects and Resources Reusable across
application domains
• Build up models of complex things by composing
simple objects
– For example, an electric motor with temperature sensors,
rotation speed, power supply current, voltage, frequency,
vibration sensors
15. IPSO Smart Objects Support Modular
Internet Protocols
Application Software
IPSO Objects
LWM2M
CoAP HTTP
6LowPAN
/Thread
IPV4/IPV6
MCU – 16KiB
RAM
MPU
802.15.4 WiFi, Ethernet
Hardware
HW Network
Internet Protocol
Wire Protocol + REST
API – Data and Metadata
Data Models
Application
REST
Server
Device Management
Other IP
Based
Stacks:
MQTT,
XMPP, etc.
Non-IP
based
Transport -
BTLE
16. IPSO Smart Objects are based on
LWM2M Data Model
• REST API with a URI template
– 2 level Class Hierarchy and schema
– Objects, one or more instances
– Resources
• Reusable resource and object IDs
– Object ID determines gross concept
and object structure
– Resource ID determines what aspect
of the object is represented
– Semantic Consistency e.g.
Object=Temperature,
Resource=Current Value
– IDs are registered with the OMNA
• Data Types and Operations
– String, Decimal, Boolean, Time,
ObjLink
– Read, Write, Create, Delete, Execute,
Discover, Observe, Notify
3303/0/5700
Object ID, defines object type
Object Instance, one or more
Resource ID, defines resource type
3303 is Temperature
5700 is Current Value
3303/0/5700 refers to the current value
of temperature sensor instance 0
18. Semantic Annotation of Smart Objects
• Object annotation uses RFC 6690 links for associating additional
semantic descriptions with Smart Objects and Resources
• Can be used to add contextual metadata and dynamic link
relations
• Semantic connectors to web scale common data models
• Discovery by relation and attribute
– For example, using CoRE Resource Directory:
GET /rd-lookup?ep&rt=“urn:X-ipso:temperature”
Returns: </sensors/3303/0/5700>;obs;if=“urn:X-
ipso:sensor”;rt=“urn:X-
ipso:temperature”;ct=50;u=“ucum:degC”
20. Web of Things
Hypermedia Web Applications
IPSO Objects + Hypermedia
OMA LWM2M
CoAP HTTP
6LowPAN IPV4/IPV6
MCU – 16KiB RAM MPU
802.15.4 WiFi, Ethernet
Hardware
HW Network
Routing
Application Protocol
API and Services
Data Models
Application
Web Server
21. • API State Machine Automation
– Enables Common Web Client to interact with any device or virtual
entity, regardless of schema or model structure
– Hypermedia controls work like HTTP links and forms, but for functional
abstractions of physical world items like on/off light switch controls
• Application Semantics and Discovery
– Describes intrinsic resources and controls at the application level using
physical concepts like temperature, light intensity
– Enables applications to discover the proper resources to link to
• Context Integration
– Contextual information like installed location, what is being measured
and controlled, also used in application resource discovery
• Using Web Linking, Relations, and Attributes
Hypermedia
22. Model-Based Information Architecture
ModelSchema
Web API
M2M API
Application
Physical Abstraction
Constrained Environments
Intrinsic Properties
Functional Abstractions
Instance of Schema
Compositional
Conceptual Abstraction
User Experience
Autonomic Control
Hypermedia
Annotation
Templates
Code Generation
Gateway/Cloud API
Hypermedia Controls for
Events, Actions, Properties
Classes
Operations
Data Types
Construction
Annotation
Discovery
23. • Instance(s) of Schema(s) with annotation
• Enable composition of complex entities from simple ones
• Connect functional abstractions to concrete APIs
• Constructors for hypermedia controls
• Contain relations and attributes
– Provide a way to describe entities using semantic annotation
– Provide a structured way to introduce contextual annotation
• Can function as instance constructors for constrained devices,
e.g. server code generation
• Also provide for managed APIs and application code generation
Models
24. Deployment From Models
ModelSchema
Service Layer
Devices
Web Applications
Hypermedia
Code
Generation
Proxies, Web Servers,
Gateways, Catalogs
Embedded,
Mobile,
Local, Cloud
Connected
Devices, Mobile
Devices
Hypermedia-Capable Devices
Common Client
Semantic Binding
Protocol Binding
25. Deployment with LWM2M
Web Applications
Common Client
Constrained
Devices
Device Connector
Virtual Entity
Catalogs Brokers
Pub-SubDiscovery
M2M API
Pub-Sub
Hypermedia
Discovery
REST API
LWM2M
WoT Servient
28. • What do the hypermedia descriptions of events, actions, and
properties look like?
• What are the functional abstractions that will be used to
enable vertical specialization while still providing broad
interoperability?
• How does discovery integrate with API automation?
• What are the metadata constructs for connecting constrained
hypermedia to higher level abstractions?
• Prototype using constrained lighting objects with LWM2M and
IoT Toolkit open source python framework
• Reference WoT client using Node-RED + extensions
Follow on work
29. • RESTful API Modeling Language (RAML) uses JSON Schema
• JSON Schema, JSON Hyper-schema
• Web API Description Language (WADL)
• XML Schema Definition language (XSD)
• URI Templates (RFC 6570)
• IETF CoRE Interfaces Function Set
• Schema.org – Vocabulary for RDFa, JSON-LD
• RESTdesc.org – uses Turtle (RDF based)
• Hypertext Application Language (HAL)
• Eclipse Vorto
• Hydra
• ALPS
Modeling Tools and Frameworks
30. • XMPP – XEP-323, XEP-325
• Hypercat – Hypercat 3.0
• OneM2M – MAS
• Zigbee Alliance – ZCL-over-IP
• HGI - SDT
• IIC – Use Cases and Testbeds
• UPnP – Common Data
Model
• Cable Labs – Common Data
Model
Organizations and Initiatives
• W3C – WoT TF-TD, TF-DI
• OMA - GotAPI
• IETF – CoRE RD, Interfaces,
link-format
• IPSO – Smart Object
Guidelines
• IEEE – P2413
• OIC – SHP
• Allseen Alliance, Alljoyn
• Eclipse Foundation – Vorto,
IoT Backend
31. References
IPSO Smart Object Guideline
http://www.ipso-alliance.org/smart-object-guidelines
OMA LWM2M Specification
http://openmobilealliance.hs-sites.com/lightweight-m2m-
specification-from-oma
IETF CoAP and Related Specifications
CoAP (RFC 7252):
http://tools.ietf.org/html/rfc7252
CoRE Link-Format (RFC 6690):
http://tools.ietf.org/html/rfc6690
CoRE Resource Directory: http://tools.ietf.org/html/draft-ietf-
core-resource-directory
CoAP Community Site
http://coap.technology/