responsible for interpreting data to a format meaningful to applications the primary data that lower levels are in charge of transporting closest to end user
receives raw data from the application in use and provides services such as file and message exchange to the application
delivers the application-specific functionality that is required. there may be many different application programs in this layer.