검수요청.png검수요청.png

응용계층

위키원
(응용 계층에서 넘어옴)
이동: 둘러보기, 검색

응용계층(Application layer)은 컴퓨터 네트워킹에서 OSI(Open System Interconnection) 네트워크 모델 표준의 최상위층에 있는 계층이다. 응용계층은 이용자의 적용 업무를 처리하는 데 필요한 모든 기능을 이용자측에서 정의하고 처리하는 부분이다.

타고 월렌트 대형 가로 배너.jpg
이 그림에 대한 정보
[타고] 1개월 단위로 전기차가 필요할 때! 타고 월렌트 서비스

개요[편집]

응용계층의 기능으로는 시스템 공용 자원의 관리, 응용에 할당된 자원으로의 접근 관리나 완전성 제어, 응용 프로그램의 실행 등이 포함된다. 다른 시스템과 교신할 때의 대상 데이터는 모두 이 층으로 모이며, 각 층에서의 필요한 제어 정보를 부가하면서 위에서부터 아래로 한 층씩 전송되며 최하 위의 물리층(physical layer)에 도달했을 때, 물리적인 데이터 전송 회선을 경유하여 상대측에 전송된다. 상대측의 시스템에서는 반대로 하위층에서부터 한 층씩 상승하여 이 응용층에 도달하여 필요한 계산 처리가 실행된다.

OSI 계층구조

응용계층의 기능[편집]

  • 트랜스포트 엑세스와 관리(Transport access and management) - 사용자들이 원격 컴퓨터에서 파일에 엑세스하고 파일을 검색하며 관리하게 한다.
  • 메일 서비스 - 이메일 전송과 저장기능에 관한 기반을 제공한다.
  • 버츄얼 터미널 - 이 문제에 관한 OSI 솔루션은 실제 터미널의 추상 상태를 취하는 추상 데이터 구조 즉 가상터미널을 정의하는 것이다.
  • 기타 기능 - 상기 3개 기능 외에 응용계층에는 디렉토리 서비스(directory services), 원격 작업 입력, 그래픽, 정보통신 등의 기타 기능이 있다.[1]

응용계층 사례[편집]

  • DNS(Domain Name System) - 도메인 네임 시스템은 컴퓨터, 서비스 또는 기타 인터넷이나 프라이빗 네트워크에 연결된 리소스에 관해 계층적으로 탈중앙화된 네이밍 시스템이며 각 참여 엔티티에 할당된 도메인을 다양한 정보에 결합시킨다.

현재 도메인 네임 길이는 www.과 .com 또는 기타 확장 내역을 포함한 63개 문자로 한정되어 있으며 도메인 네임도 아스키 코드(ASCII)의 부분집합에 한정되어 다른 여러 언어들로 표현하는 이름과 단어를 표현할 수가 없다. 퓨니코드(Punycode) 기반의 IDNA 시스템은 유니코드 문자열을 유효한 DNS 문자집합으로 매핑이 가능하며 일부 레지스트리에서 해결방법으로 검사되고 적용되었다.

  • HTTP(Hypertext Transfer Protocol) - 하이퍼 텍스트 전송 프로토콜(HTTP)은 분산, 협업 및 하이퍼 미디어 정보 시스템을 대상한 애플리케이션 프로토콜이다.

HTTP는 요청과 응답에 관한 클라이언트와 서버 측의 표준이다. 여기서 클라이언트는 최종 사용자이고 서버는 웹 사이트이다. 클라이언트는 웹 브라우저, 웹 크롤러(web crawler) 또는 기타 도구를 사용하여 서버의 특정된 포트에 HTTP 요청을 시작하며 응답하는 서버는 HTML 파일이나 이미지와 같은 리소스를 저장한다. 비록 TCP/IP 프로토콜이 인너넷에서 가장 보편적인 애플리케이션이지만 HTTP 프로토콜은 이를 사용하지 않으며 지원하는 계층을 기반으로 한다. 사실상 HTTP는 임의의 기타 인터넷 프로토콜 또는 기타 네트워크에서 실행이 가능하다. HTTP는 기본 프로토콜(기본 프로토콜에서 제공)이 신뢰된다고 가정하며 이러한 보장을 제공하는 임의의 프로토콜을 사용한다.

대표적으로 서버의 목표 포트(디폴트는 80 포트)와 TCP 연결을 구축하고자 하는 요청은 HTTP의 클라이언트에서 추진하며 HTTP 서버는 클라이언트에서 오는 요청을 이 포트에서 접수한뒤 클라이언트에 "HTTP/1.1 200 OK"와 같은 상태 표시 줄과 요청 된 파일 또는 오류 메세지 또는 기타 정보 등의 메세지 본문(응답)을 보낸다.

  • FTP(File Transfer Protocol) - FTP 서비스는 일반적으로 20 포트와 21 포트에서 진행되며 20 포트는 클라이언트와 서버 사이에서 데이터 전송에 사용되고 21 포트는 제어 흐름을 전송하는데 사용되며 FTP 서버로 도입하는 명령이다.

데이터가 스트리밍으로 되면 제어 흐름은 유휴상태로 진입하며 이 상태가 긴 시간 유지될 때에 방화벽의 세션은 시간을 초과하였다고 간주한다. 따라서 대용량의 데이터가방화벽을 통과할 때 문제가 발생하기 쉬우며 이 시점에서 파일의 전송은 성공될 수 있지만 제어 세션의 원인으로 방화벽에 의해 차단될 수가 있으며 전송자체에 오류를 일으킬 수 있다.[1]

응용계층 프로토콜[편집]

응용계층 프로토콜은 애플리케이션 사이에 추진되는 통신 규범을 제공한다. 통신이 원활하게 이루어지려면 소스 호스트(source host)와 목적지 호스트(destination host)에 실행되는 응용계층 프로토콜이 같아야 한다.

응용계층 프로토콜의 특징:

  • 통신에 참여하는 양측의 프로세스를 정의한다(Define the process for both parties to the communication).
  • 메세지 형식을 정의한다(Define the message type).
  • 메세지 문법을 정의한다(Define the syntax of the message).
  • 정보 필드의 의미를 정의한다(Definition of the meaning of any informational field).
  • 메세지 전송과 예상 응답에 관한 방법을 정의한다(Define the way to send the message and the expected response).
  • 다음 레벨과의 상호작용을 정의한다(Define interaction with the next level).[1]

각주[편집]

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 응용계층 문서는 자동차 전장에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.