[Network] OSI 7 Layer란? (2)

Ham S. J·2022년 12월 3일
0

개요

OSI 7 계층은 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층간 상호 작동하는 방식을 정해 놓은 것으로, ISO(국제표준화기구)가 1984년에 발표했다. 통신이 일어나는 과정을 7단계로 크게 구분하여 한 눈에 들어올 수 있도록 정의했기 때문에 단계별로 파악할 수 있다.

  • 1계층인 물리계층(Physical Layer)
  • 2계층인 데이터링크 계층(DataLink Layer)
  • 3계층인 네트워크 계층(Network Layer)
  • 4계층인 전송 계층(Transport Layer)
  • 5계층인 세션 계층(Session Layer)
  • 6계층인 표현 계층(Presentation Layer)
  • 7계층인 응용 계층(Application Layer)

컴퓨터 통신 구조의 모델과 앞으로 개발될 프로토콜의 표준적인 뼈대를 제공하기 위해 개발된 참조 모델이라 OSI 7 계층 모델을 알면 네트워크 구성을 예측하고 이해할 수 있다.

네트워크에서 트래픽의 흐름을 꿰뚫어 볼 수 있으며, 각 계층은 독립되어 있다. 7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건드리지 않고도 이상이 생긴 단계만 고칠 수 있다.


등장 배경

1980년대 컴퓨터 통신망이 확산되면서 다양한 통신망 혼재 상황에서의 기능별 분류가 필요해졌다.
통신망별 정보교환을 위한 별도의 절차를 마련하는 것은 비효율적이므로 다른 제조업자의 시스템이라도 네트워크 유형에 관계없이 상호 통신이 가능한 지침이 필요했다.

일반적인 통신 환경에서 서로 통신을 원하는 양 당사자는 신뢰성 있고, 원활한 통신을 수행하기 위해 서로 합의하여 설정한 통신 규약, 즉 프로토콜(Protocol)을 가지게 됐다. 컴퓨터간의 네트워크의 필요성이 절실하게 대두되자 ISO(국제표준화기구)는 OSI 7 계층이라는 새로운 네트워크 모델을 발표 했다.

이 모델은 서로 다른 컴퓨터 기기 간에 네트워크를 형성할 수 있도록 규정한 네트워크 모델 표준안이다.
이 모델은 모든 통신 관련 시스템, 즉 각종 네트워크 장비 및 컴퓨터기기 등에 동일하게 적용이 되는 개념이며 우리가 사용하고 접하는모든 통신 관련 시스템은 이 OSI 7 계층 범주에 속하게 된다.

이 OSI 참조 모델은 각 시스템의 하드웨어 및 소프트웨어 자원을 서로 다른 기능을 수행하는
7개의 계층으로 구분 했다. 물론 모든 통신 시스템이 7계층을 다 가지고 있는 것은 아니다.

어떤 장비는 7계층을 다 구현(예 : Gateway)한 기능을 가지고 있고 어떤 장비는 하위 1계층(예, 각종 케이블) 또는 3계층(예, 라우터)만 구현한 장비도 있다.

다시 말하면

모든 하드웨어 및 소프트웨어는 하나의 계층만으로 구현될 수도 있고
여러 개의 계층에 걸쳐 구현될 수도 있다.
두 컴퓨터가 서로 네트워크를 형성하여 데이터를 주고받기 위해서는
7계층이 다 구현되어야 하며, 각각의 계층은 서로 독립된 기능을 제공한다.
그리고 각 계층은 서로 인접한 계층 간에만 의존하게 된다.


특징

데이터 캡슐화
데이터 캡슐화는 사용자 데이터가 각 계층을 지나면서 하위 계층은 상위 계층으로부터 온 정보를 데이터로 취급하며, 자신의 계층 특성을 담은 제어정보(주소, 에러 제어 등)를 헤더화 시켜 붙이는 일련의 과정을 말한다.

데이터를 보낼 때는 응용 계층에서 시작되어 OSI 계층을 차례로 내려오며 물리 계층으로 간다.
이 과정에서 캡슐화를 하게 되는데 각 계층은 다른 계층과 통신할 때 데이터에 특정 정보가 들어 있는 머리말(헤더)과 꼬리말(푸터)을 추가한 후 다른 계층으로 전달한다.

PDU(Protocol Data Unit)은 프로토콜 데이터 단위이며 OSI 모델의 정보 처리 단위로,
캡슐화 과정에서 만들어진다. 아래 계층으로 내려갈수록 PDU에는 다양한 프로토콜에 의해 헤더와 푸터가 더해진다.

마지막 물리 계층에서 PDU는 최종적인 모습으로 변하며, 데이터를 보내는 접점이 된다. 반대로 데이터를 받은 컴퓨터는 PDU로부터 프로토콜의 헤더와 푸터를 분석하며 올라가 마지막 응용 계층에 도달하면 원본 데이터만 남는다.


OSI 계층 및 각 요소들


기능

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

응용 계층에서는 OSI 7계층 모델에서 최상위 계층으로 사용자가 네트워크 자원에 접근하는 방법을 제공한다.

그리고 계층 7은 최종적으로 사용자가 볼 수 있는 유일한 계층으로 모든 네트워크 활동의 기반이 되는 인터페이스를 제공하는데, 즉 사용자가 실행하는 응용 프로그램들이 계층 7에 속한다고 보면 된다.

예를 들면 가상 터미널인 텔넷(telnet), 구글의 크롬(chrome), 이메일(전자우편), 데이터베이스 관리 등의 서비스를 제공한다. 사용자와 가장 가까운 계층이다.

표현 계층(Presentation Layer, 6계층)

표현 계층에서는 응용 계층으로부터 전달받은 데이터를 읽을 수 있는 형식으로 변환하는데 표현 계층은 응용 계층의 부담을 덜어주는 역할이 되기도 한다. 응용 계층으로부터 전송받거나 응용 계층으로 전달해야 할데이터의 인코딩과 디코딩이 이 계층에서 이루어진다.

그리고 표현 계층은 데이터를 안전하게 사용하기 위해서 암호화와 복호화를 하는데 이 작업도 표현 계층에서 이루어진다. 예를 들면 유니코드(UTF-8)로 인코딩 되어있는 문서를 ASCII로 인코딩 된 문서로 변환하려 할 때 이 계층에서 변환이 이루어진다.

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

세션 계층에서는 두 컴퓨터 간의 대화나 세션을 관리하며, 포트(Port)연결이라고도 한다.
모든 통신 장치 간에 연결을 설정하고 관리 및 종료하고 또한 연결이 전이중(Full duplex / 양방향)인지
반이중(half duplex / 단방향)인지 여부를 확인하고 체크 포인팅과 유휴, 재시작 과정 등을 수행하며 호스트가 갑자기 중지되지 않고 정상적으로 호스트를 연결하는 데 책임이 있다.

즉 이 계층에서는 TCP/IP 세션을 만들고 없애고 통신하는 사용자들을 동기화하고 오류 복구 명령들을
일괄적으로 다루며 통신을 하기 위한 세션을 확립, 유지, 중단하는 작업을 수행한다.

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

전송 계층의 주목적은 하위 계층에 신뢰할 수 있는 데이터 전송 서비스를 제공하는 것이다.

컴퓨터와 컴퓨터 간에 신뢰성 있는 데이터를 서로 주고받을 수 있도록 해주어 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 부담을 덜어주는데, 이때 시퀀스 넘버 기반의 오류 제어 방식을 사용한다.

흐름 제어, 분할/분리 및 오류 제어를 통해 전송 계층은 데이터가 오류 없이 점-대-점으로 전달되게 하는데 신뢰할 수 있는 데이터 전송을 보장하는 것은 매우 번거롭기에 OSI 모델은 전체 계층을 사용한다.

전송 계층은 연결형 프로토콜과 비 연결형 프로토콜을 모두 사용하며, 전송 계층의 예로는 특정 방화벽이나 프록시 서버가 있다.

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

네트워크 계층에서는 2홉 이상의 통신(멀티 홉 통신)을 담당한다.
OSI 7 계층에서 가장 복잡한 계층 중 하나로서 실제 네트워크 간에 데이터 라우팅을 담당한다.

네트워크 계층의 데이터를 패킷이라고 하는데 네트워크 계층에서는 종단간의 패킷 전달을 수행하며 전달 시에 라우팅과정을 거치게 되는데 이때 라우팅이란 어떤 네트워크 안에서 통신 데이터를 짜여진 알고리즘에 의해 최대한 빠르게 보낼 최적의 경로를 선택하는 과정
즉 가장 효율적인 경로를 선택하여 패킷을 전송할 수 있게 하는 것을 라우팅이라고 한다.

네트워크 계층은 네트워크 호스트의 논리 주소 지정(ip 주소, 물리적 주소로는 MAC Address가 있다.)
을 확인
한다. 또한 데이터 스트림을 더 작은 단위로 분할하고 경우에 따라 오류를 감지해 처리한다.

그리고 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층으로서 다양한 길이의 데이터를 네트워크들을 통해 전달하고 그 과정에서 전송 계층이 요구하는 서비스 품질을 제공하기 위한 기능적, 절차적 수단을 제공한다.

네트워크 계층은 라우팅, 흐름 제어, 세그멘테이션, 오류제어, 인터네트워킹 등을 수행한다.
라우터가 3계층에서 동작하고, 3계층에서 동작하는 스위치(원래 2계층의 장치이다.)도 있다.

데이터링크 계층(DataLink Layer, 2계층) - 하드웨어 + 소프트웨어

데이터링크 계층은 물리적인 네트워크를 통해 데이터를 전송하는 수단을 제공한다.
1홉 통신을 담당한다고도 말하며 홉(hop)은 컴퓨터 네트워크에서 노드에서 다음 노드로 가는 경로를 말한다. 1홉 통신이면 한 라우터에서 그다음 라우터까지의 경로를 의미한다고 할 수 있다.
이 계층의 주목적은 물리적인 장치를 식별하는 데 사용할 수 있는 주소 지정 체계를 제공하는 것이다.

데이터 링크 계층은 포인트 투 포인트 간의 신뢰성 있는 전송을 보장하기 위한 계층으로 CRC 기반의 오류 제어와 흐름 제어가 필요하다. 네트워크 위의 개체들 간 데이터를 전달하고 물리 계층에서 발생할 수 있는 오류를 찾아내고 수정하는 데 필요한 기능적, 절차적 수단을 제공한다.

이 계층의 예시를 들자면 브리지 및 스위치 그리고 이더넷 등이 있다.

물리 계층(Physical Layer, 1계층) - 하드웨어

물리 계층은 OSI 모델의 맨 밑에 있는 계층으로서, 네트워크 데이터가 전송되는 물리적인 매체이다.

데이터는 0과 1의 비트열로 ON, OFF의 전기적 신호 상태로 이루어져 있다. 이 계층은 전압, 허브, 네트워크 어댑터, 중계기 및 케이블 사양을 비롯해 사용된 모든 하드웨어의 물리적 및 전기적 특성을 정의한다.

물리 계층은 연결을 설정 및 종료하고 통신 자원을 공유하는 수단을 제공하며
디지털에서 아날로그로 또는 그 반대로 신호를 변환하는 역할을 한다. OSI 모델에서 가장 복잡한 계층으로 간주된다.


암기법(?)

7단계에서 1단계 ( A - P - S - T - N - D - P )
아 파 서 티 낸 다 - 피~ ㅡ3ㅡ

(적으면서 현타가 온다......)

1단계에서 7단계 ( P - D - N - T - S - P - A )
포 도 는 톡 씹 힌(핀) 다(Aㅏ~)

............

예 암튼.. 도움이 됐으면 좋겠습니다.


OSI 7계층과 TCP/IP 4계층 비교

실제로 인터넷 통신은 OSI 7 Layer Reference Model이 아닌,
DoD에서 정의한 TCP/IP 프로토콜에 기반하여 이루어진다. 공통점과 차이점은 다음과 같다.


출처(꼭 읽어보세요! 추천!)

  1. 해시넷 OSI 7 계층
    http://wiki.hash.kr/index.php/OSI_7_%EA%B3%84%EC%B8%B5#n2.

  2. 양햄찌가 만드는 세상(추천! 읽어보세요)
    https://jhnyang.tistory.com/194 OSI 7 Layer 개요
    https://jhnyang.tistory.com/373 1계층(Pysical Layer)
    https://jhnyang.tistory.com/403?category=947031 2계층 (DataLink Layer)
    https://jhnyang.tistory.com/498?category=947031 3계층 (Network Layer)

  3. IT 엘도라도 (추천! 읽어보세요)
    https://it-eldorado.tistory.com/78#comment9278799 OSI 7 계층 참조 모델

profile
즐겁게 귀엽게 코딩합시다 !

0개의 댓글