OSI 7 계층에 대해서 설명해 주세요.

  • OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다.

  • 1단계부터 7단계까지 물리, 데이터링크, 네트워크, 전송, 세션, 표현, 응용 계층이다.

  • 이렇게 나눈 목적은 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문이다.

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

예를 들어 PC방에서 게임을 하는데 연결이 끊겼다. 어디에 문제가 있는지 확인하기 위해서는

  • 모든 PC가 문제가 있다면

    • 라우터 문제(3계층, 네트워크 계층) 이거나 광랜을 제공하는 회사의 회선 문제(1계층, 물리 계층)

  • 한 PC만 문제가 있고 게임 소프트웨어에 문제가 있다면

    • 7계층, 응용(애플리케이션)계층

  • 게임 소프트웨어에 문제가 없고, 스위치에 문제가 있으면

    • 2계층, 데이터링크 계층

이런 식으로 판단해 다른 계층에 있는 장비나 소프트웨어를 건들이지 않는 것이다.

img_1.png

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

  • 주로 전기적, 기계적 기능적은 특성을 이용해서 통신 케이블로 전송하는 물리적인 장비

  • 단지 데이터 전기적인 신호(0, 1)로 변환해서 주고받는 기능만 한다.

    • 전송하려는, 받으려는 데이터가 무엇인지, 어떤 에러가 있는지 등에는 전혀 신경 쓰지 않는다.

  • 사용되는 통신 단위는 비트(Bit)이며, 이것은 1과 0으로 나타내는, 즉 전기적으로 On, Off 상태다.

  • 장비 : 통신 케이블, 리피터, 허브 등

  • 물리 계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 통신의 흐름을 관리한다.

  • 프레임에 물리적 주소(MAC Address) 를 부여하고 에러검출, 재전송, 흐름 제어를 수행한다.

  • 전송되는 단위는 프레임(Frame)이다.

  • 장비 : 브릿지, 스위치, 이더넷 등

    • 여기서 MAC 주소를 사용한다.

    • 브릿지나 스위치를 통해 MAC 주소를 가지고 물리계층에서 받은 정보를 전달한다.

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

  • 데이터를 목적지까지 가장 안전하고 빠르게 전달한다.

  • 라우터(Router)를 통해 경로를 선택하고 주소(IP)를 정하며, 경로(Route)에 따라 패킷을 전달한다.(IP 헤더가 붙는다.)

  • 전송되는 단위는 패킷(Packet)이다.

  • 장비 : 라우터

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

  • 통신을 활성화하기 위한 계층이다.

  • Port 번호와 전송방식(TCP/UDP)을 결정한다.(TCP 헤더가 붙는다.)

    • TCP : 신뢰성, 연결지향적

    • UDP : 비신뢰성, 비연결적, 실시간

  • 보통 TCP 프로토콜을 이용하며, 포트를 열어서 응용 프로그램들이 전송을 할 수 있게 한다.

  • 만약 데이터가 왔다면 4계층에서 해당 데이터를 하나로 합쳐서 5계층에 던져 준다.

  • 전송 계층은 양 끝단(End to End)의 사용자들이 신뢰성있는 데이터를 주고 받을 수 있도록 해, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해준다.

  • 두 지점간의 신뢰성 있는 데이터를 주고 받게 해주는 역할을 한다.

  • 신호를 분산하고 다시 합치는 과정을 통해서 에러와 경로를 제어한다.

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

  • 데이터가 통신하기 위한 논리적인 연결을 말하며, 통신을 하기 위한 대문이라고 생각하면 된다.

  • 4계층(전송 계층)에서도 연결을 맺고 종료할 수 있는데, 우리가 어느 계층에서 통신이 끊어졌나 판단하기에는 한계가 있다.

  • 그러므로 세션 계층은 4계층과 무관하게 응용 프로그램 관점에서 봐야 한다.

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

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

  • 세션 계층은 TCP/IP 세션을 만들고 없애는 책임을 진다.

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

  • 데이터 표현이 상이한 응용 프로세스의 독립성을 제공하고, 암호화 한다.

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

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

  • 예를 들면 EBCDIC로 인코딩된 문서 파일을 ASCII로 인코딩된 파일로 바꿔 주는 것, 해당 데이터가 TEXT인지, 그림인지, GIF인지 JPG인지의 구분 등이 표현 계층의 몫이다.

  • 사용자의 명령어를 완성 및 결과 포현, 포장/압축/암호화

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

  • 최종 목적지로서 HTTP, FTP, SMTP, POP3, Telnet 등과 같은 프로토콜이 있다.

  • 해당 통신 패킷들은 위 나열한 프로토콜에 의해 모두 처리되며 우리가 사용하는 브라우저나, 메일 프로그램은 프로토콜을 보다 쉽게 사용하게 해주는 응용 프로그램이다.

  • 모든 통신의 양 끝단은 HTTP와 같은 프로토콜이지 응용 프로그램이 아니다.

  • 응용 계층은 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.

  • 일반적인 응용 서비스는 관련된 응용 프로세스들 사이의 전환을 제공한다.

참고

Last updated