어제의 나보다 성장한 오늘의 나

OSI 7계층 본문

CS/네트워크

OSI 7계층

NineOne 2021. 4. 7. 00:56

OSI 7 계층이란?

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

OSI 7 계층을 나누는 이유는 무엇일까?

  • 계층별의 기능과 통신 과정을 단계별로 나누어서 쉽게 알 수 있다.
  • 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있기 때문에 편리하다.
  • OSI 계층별 기능과 통신의 과정을 정립하여 교육하기 위한 목적으로 사용

Encapsulation & Decapsulation

  • 캡슐화(Encapsulation)
    • 데이터를 전송할 때 각각의 Layer마다 인식할 수 있는 헤더를 붙이는 과정
    • 2 계층(Data layer)에서는 오류제어를 위해 데이터의 뒷부분에도 일부 데이터가 추가됨
  • 디캡슐화(Decapsulation)
    • 수집된 데이터가 각각의 Layer를 따라 올라가면서 헤더가 벗겨지는 과정

계층 별 프로토콜과 기능

  • OSI 7 계층에서 PDU개념을 중요시하는데 PDU(Process Data Unit)란 각 계층에서의 전송되는 단위이다.
  • 계층 별 PDU
    • 1계층 : Bits
    • 2계층 : Frames
    • 3계층 : Packets
    • 4계층 : Segments
    • 5~7계층 : Data
  • 각 계층별 프로토콜 기능
    • 분할 : 큰 용량의 데이터를 전송하기 위해 데이터를 나누는 기능
    • 재조립 : 분할된 데이터를 사용하기 위해 재조립하는 기능
    • 캡슐화 : 각 계층을 거칠 때마다 각 계층의 헤더가 계층별로 붙으며, 캡슐화를 진행
    • 순서 제어 : 전송되는 데이터의 순서를 조율하고 이를 통해 데이터가 중복되거나 유실되는지 체크
    • 흐름 제어 : 송신되어 데이터의 양과 전송률을 제한하는 기능
    • 오류 제어 : 데이터가 올바르게 수신되었는지 에러 검출 코드를 통해 체크하는 기능

1. 물리(Physical)

  • 주로 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하게 된다.
  • 사용되는 통신 단위는 비트이며 이것은 1과 0으로 나타난다. 즉, 전기적으로 On, Off 상태
  • 단지 데이터를 전달만 할 뿐 전송하려는( 또는 받으려는 ) 데이터가 무엇인지, 어떤 에러가 있는지 등을 전혀 신경 쓰지 않는다.

    → 통신 케이블, 리피터, 허브 등

2. 데이터 링크 계층(DataLink Layer)

  • 물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행을 도와주는 역할이다.
  • 오류를 찾아주고 재전송하는 기능을 가지고 있다.
  • MAC 주소를 가지고 통신을 한다.
  • 전송되는 단위를 프레임이라고 한다.
  • 포인트 투 포인트(Point to Point) 간 신뢰성 있는 전송을 보장하기 위한 계층

    → 브릿지스위치를 통해 맥주소를 가지고 물리계층에서 받은 정보를 전달함.

    → 데이터 전송 단위 : 프레임

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

  • 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅)이다.
  • 여기서 IP 주소를 사용한다.
  • 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할
  • 라우터를 이용해 경로를 선택하여 IP 주소를 지정하고, 해당 경로에 따라 패킷을 전달해준다.
  • 라우팅, 흐름 제어, 오류 제어, 세그멘테이션 등을 수행한다

    → 데이터 전송 단위 : 패킷

4. 전송 계층(Transport Layer) 

  • TCP, UDP 프로토콜을 통해 통신을 활성화한다.
  • 포트를 열어두고 프로그램들이 전송할 수 있도록 제공해준다.
  • 이를 통해 양 끝 단 사용자들이 데이터를 주고받을 수 있다.
  • 데이터가 왔다면 4 계층에서 해당 데이터를 하나로 합쳐서 5 계층에 던져준다.
  • 이 계층까지 물리적인 계층에 속한다.
  • TCP : 신뢰성, 연결 지향적
  • UDP : 비신뢰성, 비연결성, 실시간

    → 데이터 전송 단위 : 세그먼트

5. 세션(Session)

  • API, Socket
  • 데이터가 통신하기 위한 논리적인 연결을 말한다. 통신을 하기 위한 대문이라고 보면 된다.
  • 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공한다.
  • 동시 송수신 방식(duplex), 반이중 방식(half-duplex), 전이중 방식(Full Duplex)의 통신과 함께, 체크 포인팅과 유휴, 종료, 다시 시작 과정 등을 수행한다. 
  • TCP/IP 세션을 만들고 없애는 책임을 진다.

 

    → 통신하는 사용자들을 동기화하고 오류 복구 명령들을 일괄적으로 다룬다.

        통신을 하기 위한 세션을 확립/유지/중단 (운영체제가 해줌)

 

6. 표현 계층(Presentation Layer)

  • 데이터 표현이 상이한 응용 프로세스의 독립성을 제공하고, 암호화한다.
  • 코드 간의 번역을 담당하여 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어준다.
  • EBCDIC로 인코딩 된 문서 파일을 ASCII로 인코딩 된 파일로 바꿔준다.
  • 해당 데이터가 TEXT, 그림, GIF, JPG 인지를 구분해준다.

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

7. 응용 계층(Application Layer)

  • 최종 목적지로서 HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있다. 
  • 해당 통신 패킷들은 방금 나열한 프로토콜에 의해 모두 처리되어 우리가 사용하는 브라우저나, 메일 프로그램 프로토콜을 보다 쉽게 사용해주는 응용프로그램이다.
  • 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.

 

    → 네트워크 소프트웨어 UI 부분, 사용자의 입출력(I/O) 부분

 

3 계층(Network)과 4 계층(Transport)의 차이점

3 계층은 쉽게 말해 내 집을 찾아가는 것이다. 집이 여러 채가 있는데 그중, '내 집이 어디지'  하고 우편번호를 확인하는데 여기서 우편번호가 IP에 해당된다. 우편번호를 확인한 다음, 집을 찾아가서 '내방이 어디지' 하는 것이 4 계층이다.

OSI 모델의 실패

  • OSI Model은 TCP/IP 이후에 규격화 됨
  • 이유 1 : OSI는 TCP/IP가 자리잡고 난 다음 완성됨 -> 다른 모델로의 변경이 어려워 졌음
  • 이유 2 : OSI모델의 일부는 완전히 정의되지 않음
  • 이유 3 : TCP/IP측에서 볼 때, 구현된 OSI가 높은 수준의 성능을 보여주지 못함, 따라서 OSI로 변환 시킬 매력을 못 느낌 

TCP/IP 란?

 

TCP/IP 4계층

OSI 7 계층에 대해 알고 보면 좋다. 실제 사용되는 TCP/IP는 OSI 참조 모델을 기반으로 상업적이고 실무적으로 이용될 수 있도록 단순화된 모형이다 네트워크 전송 시 데이터 표준을 정리한 것이 OSI

gooweon.tistory.com

 

 

출처

'CS > 네트워크' 카테고리의 다른 글

로드 밸런싱  (0) 2021.04.08
TCP/IP 4계층  (0) 2021.04.07
UDP란?  (0) 2021.04.06
TCP 3 Way-Handshake & 4 Way-Handshake  (0) 2021.04.06
주소창에 naver.com을 치면 일어나는 일  (0) 2021.04.06
Comments