Which osi layer provides the interface between the applications used to communicate and the underlying network over which messages are transmitted?.