Jump to content

Application layer

From Niidae Wiki

Template:Use American English Template:Short description Template:Use mdy dates

An application layer is an abstraction layer that specifies the shared communication protocols and interface methods used by hosts in a communications network.<ref>Template:Cite web</ref> An application layer abstraction is specified in both the Internet Protocol Suite (TCP/IP) and the OSI model.<ref>Template:Cite web</ref> Although both models use the same term for their respective highest-level layer, the detailed definitions and purposes are different.<ref>Template:Cite web</ref>

Internet protocol suite

[edit]

Template:IP stack In the Internet protocol suite, the application layer contains the communications protocols and interface methods used in process-to-process communications across an Internet Protocol (IP) computer network.<ref>Template:Cite web</ref> The application layer only standardizes communication and depends upon the underlying transport layer protocols to establish host-to-host data transfer channels and manage the data exchange in a client–server or peer-to-peer networking model.<ref>Template:Cite web</ref> Though the TCP/IP application layer does not describe specific rules or data formats that applications must consider when communicating, the original specification (in Template:IETF RFC) does rely on and recommend the robustness principle for application design.<ref name=rfc1123>Template:Cite web</ref><ref>Template:Cite web</ref>

OSI model

[edit]

Template:OSI model In the OSI model, the definition of the application layer is narrower in scope.<ref>Template:Cite web</ref> The OSI model defines the application layer as only the interface responsible for communicating with host-based and user-facing applications.<ref name=":0">Template:Cite web</ref> OSI then explicitly distinguishes the functionality of two additional layers, the session layer and presentation layer, as separate levels below the application layer and above the transport layer. OSI specifies a strict modular separation of functionality at these layers and provides protocol implementations for each. In contrast, the Internet Protocol Suite compiles these functions into a single layer.<ref name=":0" />

Sublayers

[edit]

Originally the OSI model consisted of two kinds of application layer services with their related protocols.<ref>Template:Cite web</ref> These two sublayers are the common application service element (CASE) and specific application service element (SASE).<ref name="Hura">Template:Cite book</ref> Generally, an application layer protocol is realized by using the functionality of several application service elements.<ref>Template:Cite report</ref> Some application service elements invoke different procedures based on the version of the session service available.<ref>Template:Cite web</ref>

CASE

[edit]

The common application service element sublayer provides services for the application layer and request services from the session layer. It provides support for common application services, such as:

  • ACSE (Association Control Service Element)<ref name="Hura"/>
  • ROSE (Remote Operation Service Element)
  • CCR (Commitment Concurrency and Recovery)
  • RTSE (Reliable Transfer Service Element)

SASE

[edit]

The specific application service element sublayer provides application-specific services (protocols), such as:

  • FTAM (File Transfer, Access and Manager)
  • VT (Virtual Terminal)
  • MOTIS (Message Oriented Text Interchange Standard)
  • CMIP (Common Management Information Protocol)
  • JTM (Job Transfer and Manipulation)<ref>a former OSI standardTemplate:Dl</ref>
  • MMS (Manufacturing Messaging Specification)
  • RDA (Remote Database Access)
  • DTP (Distributed Transaction Processing)

Protocols

[edit]

The IETF definition document for the application layer in the Internet Protocol Suite is RFC 1123. It provided an initial set of protocols that covered the major aspects of the functionality of the early Internet:<ref name=rfc1123 />

Examples

[edit]

Additional notable application-layer protocols include the following: Template:Div col

Template:Div col end

References

[edit]

Template:Reflist

[edit]