Updated Proposed ADIOS2 architecture based on standard OSI model (markdown) authored by williamfgc's avatar williamfgc
# Open Systems Interconnect (OSI) model, ISO/IEC 7498-1 standard references:
* [ISO standard](https://www.iso.org/standard/20269.html)
* [Microsoft](https://support.microsoft.com/en-us/help/103884/the-osi-model-s-seven-layers-defined-and-functions-explained)
* [Cisco](https://www.cisco.com/cpress/cc/td/cpress/fund/ith/ith01gb.htm)
* [Oracle](https://docs.oracle.com/cd/E18283_01/network.112/e10836/layers.htm)
* [IEEE 1983 paper](http://ieeexplore.ieee.org/document/1457043/)
![](https://alln-extcloud-storage.cisco.com/ciscoblogs/osi-550x425.gif)
Original source: [Cisco](https://blogs.cisco.com/cloud/an-osi-model-for-cloud)
# ADIOS2 architecture proposed amendments to comply with the OSI model standard:
```
adios2
└─── public (rename core, OSI layer 7 application)
└─── engine (layer 7 -> public, system layers 6,5,4 -> protected, private)
└─── presentation (OSI layer 6)
| |
| │
| └─── transform (same)
| | │
│ │ └─── compression (bzip2, zfp, szip, ...)
| | └─── vis
│ │
│ └─── format
│ │ │
│ │ └─── bp1
│ │ └─── bp2
│ |
│ └─── analytics (can be treated as managing collective transforms)
│ │
│ └─── visVTKm (from hackathon)
│ └─── pca
│ └─── SVD
└─── session (renaming TransportMan, OSI layer 5)
│ │
│ └─── fileSession
│ |
│ └─── dataMan
│ |
│ └─── dataSpaces
| |
│ └─── sst
|
└─── transport (same, OSI layer 4)
| │
│ └─── file (POSIX, stdio, fstream, ...)
│ └─── wan (libZmq, ... )
│ └─── shmem (SystemV, mmap, ... )
│ └─── rdma (ibverbs, nvlink, ... )
| └─── multitier (ceph)
|
|
└─── interop (same, OSI layers 6,5,4)
└─── adios1
└─── hdf5
```