OSI 7계층

서정범·2023년 4월 23일
0

네트워크

목록 보기
5/26
post-thumbnail

OSI 7계층이란?

OSI 모형(Open Systems Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 일반적으로 OSI 7계층이라고 합니다.

여기서 알아둘 것은 OSI 7계층은 이론적인 개념입니다.

권장 사항이지 결코 필수 사항이 아니라는 점입니다.

이에 반해 TCP/IP의 경우 상용화 된 것이라는 점에서 차이가 존재하긴 합니다.

목적

이 모델은 프로토콜을 기능별로 나눈 것입니다. 각 계층은 하위 계층의 기능만을 이용하고, 상위 계층에게 기능을 제공한다. '프로토콜 스택' 혹은 '스택'은 이러한 계층들로 구성되는 프로토콜 시스템이 구현된 시스템을 가리키는데, 프로토콜 스택은 하드웨어나 소프트웨어 혹은 둘의 혼합으로 구현될 수 있다. 일반적으로 하위 계층들은 하드웨어로, 상위 계층들은 소프트웨어로 구현됩니다.

OSI 7 계층을 나눈 이유는?

계층을 나눈 이유는 통신이 일어나는 과정이 단계별로 파악할 수 있기 때문입니다.

흐름을 한눈에 알아보기 쉽고, 사람들이 이해하기 쉽고, 7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건들이지 않고도 이상이 생긴 단계만 고칠 수 있기 때문이다.

1계층 - 물리계층(Physical Layer)

  • 물리 계층에서는 주로 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하게 된다.
  • 물리 계층에서 사용되는 통신 단위는 비트이며 이것은 1과 0으로 나타내어지는, 즉 전기적으로 On, Off 상태라고 생각하면 된다.
  • 물리 계층에서는 단지 데이터를 전달만 할 뿐 전송하려는 데이터가 무엇인지, 어떤 에러가 있는지 등에는 신경 쓰지 않는다.
  • 단지 데이터 전기적인 신호로 변환해서 주고받는 기능만 할 뿐이다. 이 계층에 속하는 대표적인 장비는 통신 케이블, 리피터, 허브등이 있다.
  • 물리 계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행할 수 있도록 도와주는 역할을 합니다.
    • 따라서, 통신에서의 오류도 찾아주고 재전송하는 기능을 가지고 있다.
  • 맥 주소를 가지고 통신을 하게 된다.
  • 전송되는 단위를 프레임이라고 하고 한다.
  • 대표적인 장비로는 브리즈, 스위치 등이 있다. (여기서 MAC 주소를 사용)
  • 데이터 링크 계층은 포인트 투 포인트(Point to Point)간 신뢰성있는 전송을 보장하기 위한 계층으로 CRC 기반의 오류 제어와 흐름 제어가 필요하다.

3계층 - 네트워크 계층(Network Layer)

  • 이 계층에서 가장 중요한 기능은 포워딩과 라우팅 기능입니다. 이 기능들을 통해서 데이터를 목적지까지 빠르게 전달하는 것을 목표로 합니다.

이 계층은 송신자와 수신자 사이의 수 많은 라우터 혹은 스위치를 적절하게 선택해서 가장 "빠른" 경로를 선택하고, 라우터 내에서 적절하게 패킷을 이동시키는 작업이 이루어 집니다.

해당 계층에서는 여러 프로토콜로 이루어진 데이터를 다루기 때문에 다양한 길이의 데이터를 전송하는 기능을 제공합니다.

4계층 - 전송 계층(Transport Layer)

  • 이 계층에서는 TCP와 UDP를 이용해서 데이터를 어떠한 방식으로 전송할 지를 결정하는 계층입니다.

TCP의 경우 연결지향성 프로토콜로 신뢰성 있는 데이터를 주고 받을 수 있게 해주며, 흐름 제어와 혼잡 제어를 통해서 전체적인 네트워크 트래픽도 고려하는 방식입니다. 데이터의 손실이 일어나서는 안되는 파일들을 전송하는 경우 대부분 이방식을 채택하여 데이터를 전송합니다.

UDP의 경우 비연결성 특징을 가지고 있으며, 빠른 속도로 데이터를 전송할 수 있지만 안전한 데이터 전송을 보장하지 않습니다. 데이터를 빠르게 전송할 수 있는 만큼 실시간 응용 및 멀티태스킹과 같은 작업에서 자주 이용됩니다.

5계층 - 세션 계층(Session Layer)

  • 데이터가 통신하기 위한 논리적인 연결을 말합니다.

하지만 4계층에서 Connection의 관리가 이루어 지기 때문에 통신이 끊어 졌나 판단하기에 한계점이 존재합니다.

그래서 세션 계층은 응용 프로그램 관점에서봐야 합니다.

세션 계층은 데이터 교환의 경계와 동기화를 제공하는데, 이에는 체킹포인트와 회복 방법을 세우는 수단을 포함합니다.

세션 설정, 유지, 종료, 전송 중단시 복구 기능 등이 있습니다.

세션 계층은 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공합니다.

동시 송수신 방식(duplex), 반이중 방식(half-duplex), 전이중 방식(Full Duplex)의 통신과 함께, 체크 포인팅과 유휴, 종료, 다시 시작 과정 등을 수행합니다.

이 계층은 TCP/IP 세션을 만들고 없애는 책임을 집니다.

6계층 - 표현 계층(Persentation Layer)

프레젠테이션 계층의 역할은 통신하는 애플리케이션드이 교환되는 데이터의 의미를 해석하도록 하는 서비스를 제공하는 것입니다.

이들 서비스는 데이터 기술뿐만 아니라 데이터 압축과 데이터 암호화를 포함합니다.

표현 계층(Presentation Layer)은 코드 간의 번역을 담당하여 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어 줍니다.

MIME 인코딩이나 암호화 등의 동작이 이 계층에서 이루어집니다.

7계층 - 응용 계층(Application Layer)

애플리케이션 계층 프로토콜(application-layer protocol)은 다른 종단 시스템에서 실행되는 애플리케이션의 프로세스가 서로 메시지를 보내는 방법을 정의합니다.

  • 교환 메시지 타임
  • 여러 메시지 타입의 문법
  • 필드의 의미, 즉 필드에 있는 정보의 의미
  • 언제, 어떻게 프로세스가 메시지를 전송하고 메시지에 응답하는지 결정하는 규칙

네트워크 애플리케이션과 애플리케이션 계층 플로토콜을 구별하는 것은 중요합니다.

애플리케이션 계층 프로토콜은 네트워크 애플리케이션의 한 요소일 뿐입니다. 예를 통해 확인할 수 있습니다.

예를 들어, 웹은 사용자가 필요에 따라 웹 서버로부터 문서를 얻게 해주는 네트워크 애플리케이션입니다. 웹 애플리케이션은 문서 표준 포맷(HTML), 웹 브라우저 그리고 애플리케이션 계층 프로토콜을 포함하는 여러 요소들로 구성됩니다.


Reference

profile
개발정리블로그

0개의 댓글