Generic Communication Protocols Evaluation Intro to RESTful API
- Slides: 15
Generic Communication Protocols Evaluation Intro to RESTful API and JSON
Content ● ● ● What is REST? Basic REST concepts AUTOSAR and REST HTTP JSON
1. What is REST ● ● ● REpresentational State Transfer. Architecture style for networked systems (not a protocol nor a standard!) A set of rules and principles inspired from the web. Outlines how resources are defined and addressed. Blends very well with HTTP methods (GET, POST, PUT, DELETE). Relies on other standards to do its job (HTTP, TLS, JSON, etc…) Protocol, language and platform independent which makes it very flexible Client-Server architecture just like the web. Stateless Cacheable Uniform Interface (through HTTP methods)
Basic concepts of REST
Resources ● An abstraction of any kind of information. ● Any information that can be named is a resource (document, image, temporary service, etc…) ● Represented with a global identifier (maps to a URI in HTTP). ○ https: //drive. google. com/files/12345
AUTOSAR REST API ● Designed to meet embedded systems constraints(deterministic, low footprint, not too complicated). ● Modular design to allow better flexibility (OEM can add extra layers on top, vendor-specific implementations, etc…). ● 3 fundamental abstraction blocks: ○ ○ ○ Object graph to represent the data model. URI Request methods ● Task and asynchronous based model
BASIC COMPONENTS OF ARA: : REST
ASPECTS OF HTTP ● Simplicity: HTTP headers can be easily read by Humans ● Extensibility: New features can be added by simple agreement between the client and the server ● Stateless: No state is kept between different requests(But can be achieved using cookies) ● Can be used to control authentication, caching and sessions(using cookies).
HTTP Messages Request Message Response Message
Uniform Resource Locator (URL) ● used to uniquely identify a resource over the web. URL has the following syntax. protocol: //hostname: port/path-and-file-name There are 4 parts in a URL: ● Protocol: The application-level protocol used by the client and server, e. g. , HTTP, FTP, and telnet. ● Hostname: The DNS domain name (e. g. , www. nowhere 123. com) or IP address (e. g. , 192. 128. 1. 2) of the server. ● Port: The TCP port number that the server is listening for incoming requests from the clients. ● Path-and-file-name: The name and location of the requested resource, under the server document base directory.
JSON ● ● ● ● ● Java. Script Object Notation. Is used theoretically when software components need to exchange. data(regardless of the programming language). Mostly used to serialize and transmit data over the network. Very Human readable. Less verbose and more compact compared to XML. Basic types map very well with known programming types. Reasonable choice for Embedded use cases due to performance. A standard to validate JSON objects called JSON schema.
JSON TYPES
JSON SCHEMA
- Generic communication
- Communication protocols for rpc
- Network communication protocols map
- Dicomn
- Restful vs restless
- Ingredients of art
- Tend to be disturbing they suggest decay or chaos
- Generally restful like the
- Homesick carol ann duffy
- Research action communication evaluation
- Self evaluation for communication
- Evaluation of communication
- Types of wan
- Data link layer design issues
- Channel partitioning mac protocols
- Proofs of work and bread pudding protocols