# data[].attributes.body
This allows access to the network resources,
This is what is used to do things such as remote file access, remote printer access, network managing, electronic messaging such as email and inter process communication. It has protocols such as BEEP, eDonkey and APPC. The format of this is user data

# data[].attributes.body
The presentation layer allows Data conversion, Character code location, data compression and data encryption. This formats all of the data that it receives and so then it can present it to the application layer. This is often seen as the translator for the network. The format of this is encoded user data and the protocols in this layer are SSL and MIM

# data[].attributes.body
The session layer allows a connection between processes that are running on different machines. It provides support while doing this. This covers things such as security and logging on. The format of this data is sessions and the protocols it uses are NetBIOS, Sockets and RPC

# data[].attributes.body
The transport layer ensures that messages are delivered error-free. The size and complexity of the transport protocol depends on the service it gets from the network layer. The transport layer also provides message traffic control. This tells the transmitting station to "back-off" when no message buffers are available. Protocols that operate on this layer: TCP, UDP, NETBEUI, SPX.

# data[].attributes.body
The network layer controls the operation of the subnet. It decides what path the data should take depending on the network conditions. It also provides routing, which routes frames against networks. Some of the protocols for this are IP, IPv6, IP NAT and IPSec. The format of for this is Datagrams/ packets.

# data[].attributes.body
The data link provides error free transfer of data frames from one node to another. To do this, the data link layer provides frame traffic control, which just tells the transmitting node to "back off"when no frame buffers are available. The format of this is Frames and the protocols it uses are IEEE 802.2, SLIP and PPP

# data[].attributes.body
This is the first step of the OSI Model. it provides data encoding and modifies the simple digital signal pattern (1s and 0s). It determines:

How the receiving station knows when a "bit-time" starts

What signal state represents a binary 1

How the receiving station delimits a frame

An example of some of the protocols for this is; EEE 802, ISDN and IEEE 802.2. The format of the physical layer is bits.