[네트워크] OSI 7계층

yjkim97·2021년 12월 31일
0

네트워크

목록 보기
1/10
post-thumbnail

작년 부서 이동으로 인해 네트워크와 미디어 통신 쪽을 많이 다루게 되었다.

잠시 잊고 지냈던 네트워크에 대해서 다시 공부할 겸 OSI 7계층에 대해서 간략히 정리해보았다.


통신 프로토콜 중에서 가장 대표적인 것은 ISO (International Organization for Standardization)에서 정의한 OSI(Open System Interconnection) 7계층이다.

OSI는 Open System Interconnection의 약자로 개방형 시스템간 상호접속이다.

⭐️ OSI 7계층

OSI 7계층은 서로 다른 네트워크 간의 상호 통신이 가능하도록 ISO에서 정의한 개방형 시스템 통신 표준안이다.

  • 개방형 시스템 (Open System)의 효율적인 네트워크 이용을 위해, 모든 데이터 통신을 계층별로 분할하고 각 계층간의 필요한 프로토콜을 정의한다.
  • 국제표준화 기구 ISO에서 1977년에 개방형 시스템 간의 상호 통신을 위해서 재정의한 표준안이다.
  • 7계층으로 분류하여 서로 다른 네트워크 간에 통신이 가능하도록 규정했다.

프로토콜이란?
통신망에서 송신과 수신사이 데이터를 주고 받기 위해 미리 약속된 운영상의 통신규약이다.

프로토콜의 구성요소
- 구문(Syntax)
- 의미(Semantics)
- 순서(Timing)

목표

서로 다른 형태의 네트워크에서도 데이터 통신이 가능하도록 한다.

특징

  • 개방형 시스템 간에 상호 작용을 위해서 표준화된 방법을 제시했다.
  • 캡슐화과정을 통해 OSI 계층별 정보 흐름을 최소화하여 각 계층의 독립성을 향상시켰다.
  • 통신 프로토콜의 표준화를 마련하여 효율성 및 생산성을 향상시켰다.

캡슐화란?
한 계층에서 다음 계층으로 데이터를 넘겨줄 때 해당 계층에 대한 정보를 메시지 헤더에 붙이는 과정을 캡슈화라고 한다.

계층 구성

설명데이터 단위관련 장비
(1)Physical Layer물지적으로 이루어진 계층으로 데이터를 전기신호로 바꿔 목적지에 전송한다.
데이터를 2진수의 전기신호로 변환하여 전송시킨다.
Bit
, 커넥터
, 케이블
, 리피터
, 허브
(2)Data Link Layer물리적인 링크를 통해 '노드 대 노드' 두장치 간의 신뢰성 있는 정보 전송을 담당한다.
물리 계층의 전기신호와 네트워크 계층의 통신채널로 알맞게 변환한다.
흐름제어, 동기화, 오류제어, 순서 제어 기능을 수행한다.
MAC 주소 할당.
FrameNetwork Interface Card
, 스위치
, 브릿지
(3)Network Layer다중 네트워크 링크에서 패킷을 목적지까지 전달한다.
라우터를 통해 최적의 경로를 설정한다.
IP 주소를 할당한다.
Packet라우터
(4)Transport Layer메시지 송수신지 간의 에러를 관리한다.
신뢰성 있고 정확한 데이터 전송을 담당한다.
주소설정, 다중화, 오류제어, 흐름제어를 수행한다.
Segment로드 밸런서
, 방화벽
(5)Session LayerPort연결로 불리기도 한다.
통신 장치간의 상호작용을 설정하고 동기화 시킨다.
적절한 상태에서 세션 연결을 유지시키고 관리한다.
Message
(6)Presentation Layer운영체제의 한 부분으로 입출력되는 데이터를 표현형태로 전환한다.
송신할 때 컴퓨터가 관리하는 방시으로 데이터를 변환하고, 수신할 때 사용자가 볼 수 있는 방식으로 변환시킨다.
Message
(7)Application Layer사용자가 네트워크에 접근할 수 있도록 도와주는 계층이다.
인터페이스 전자우편, 데이터베이스 관리 등의 서비스를 제공한다.
Message게이트웨이

1. Physical Layer (물리계층)

OSI 7계층의 1계층에 속한다.

keyword : 물리적 연결, 전기신호

  • 물리적으로 연결된 선로를 통해 데이터를 전송한다. (케이블 등)
  • 데이터는 전기신호로 0과 1 비트로 이루어져있다.
  • 전기신호가 미약하여 목적지까지 도달하기 힘든 경우 리피터를 통해 증폭시키기도 한다.
  • 아날로그 신호를 디지털 신호로 변환한다.
  • 주소 계념이 없어 전기 신호가 들어온 포트를 제외한 모든 포트에 같은 전기 신호를 보낸다. (Brodcasting)

OSI 7계층의 2계층에 속한다.

keyword : MAC, Framing, 오류제어, 흐름제어, 순서제어

  • 전기신호를 모아 데이터 형태로 처리한다.
  • 물리적으로 신뢰성있는 통신을 위한 연결을 담당한다.
  • 물리계층으로 부터 전달받은 Bit데이터를 그룹핑해 Data, Header, Trailer등을 넣어서 캡슐화하는 작업을 진행한다. (프레이밍 - Framing)
  • 송수신측간의 속도 차이를 해결하기 위해 Buffer 및 Window를 통해 흐름제어 작업을 수행한다.
  • MAC 주소체계가 생기면서 동시에 멀티 통신을 지원한다. (오류제어, 흐름제어, 순서제어가 필요한 이유)
  • 물리 전송 매체의 특성상 오류와 같은 잡음데이터가 랜덤하게 존재하는데 이 오류를 검출하고 수정하기 위해 에러제어 작업을 수행한다.
  • 주고받는 데이터의 순서를 동기화 시키기 위해 ACK신호에 일련번호가 존재하고 이것을 통해 순서제어 작업을 수행한다.
  • 프레임에 MAC 주소를 할당한다.
  • 플로 컨트롤 (Flow Control) 작업을 수행한다.

    플로 컨트롤 (Flow Control)
    수신지가 현재 통신 가능한 상황인치 확인하는 작업을 말한다.

📖 흐름제어, 오류검출 방식이 다양하게 존재한다. 따로 포스팅하자!


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

OSI 7계층의 3계층에 속한다.

keyword : IP, 경로설정

  • 목적지 호스트로 가변길이의 패킷을 전송하는 역할을 담당한다.
  • 다른 네트워크망의 서버가 가동 중인지 확인한다. (여기서 트래픽 발생)
  • 2계층의 데이터를 패킷으로 분할한다. (4계층에서 순서제어가 필요한 이유)
  • 패킷에 IP 주소를 설정한다.
  • 라우터의 라우팅 프로토콜로 패킷이 도달할 목적지까지의 경로를 설정한다.

    라우팅 프로토콜
    라우팅 프로토콜은 패킷이 목적지까지 가는 방법을 결정해주는 프로토콜이다. RIP, OSPF, IGRP, BGP 등이 존재하며 라우팅 테이블을 참조해 비용 및 속도 대비 가장 좋은 경로을 선택한다.

📖 라우팅 프로토콜에 대해 따로 포스팅하자!


4. Transport Layer (전송계층)

OSI 7계층의 4계층에 속한다.

keyword : 연결지향, 신뢰성, 다중화, 오류제어, 흐름제어

  • End-to-End(종단간)의 신뢰성 있고 정확한 데이터 전송을 담당한다.
  • 전송 데이터의 오류제어와 흐름제어 작업을 수행한다.
  • 다중화/역다중화 작업을 수행한다.

    Multiplexing(다중화)/Demultiplexing(역다중화)
    네트워크 계층이 제공하는 host-to-host 서비스에서 process-to-process 서비스로 확장하는 것을 전송계층의 다중화/역다중화라고 한다.

    Multiplexing : 네트워크 계층에서 한 host에는 하나 이상의 socket이 존재하는데, socket들로 부터 데이터를 모으고 각 데이터의 헤더 정보를 캡슐화하여 전달하는 것을 말한다.
    Demultiplexing : segement의 데이터를 분할하여 올바른 socket들로 네트워크 계층에 전달하는 작업을 말한다.

📖 전송계층 TCP와 UDP별 다중화 작업에 대해 따로 포스팅하자!


5. Session Layer (세션계층)

OSI 7계층의 5계층에 속한다.

keyword : 세션 관리, 동기화, 통신방식 결정

  • 애플리케이션 프로세스 사이의 세션을 열고 닫고 관리한다.
  • 시스템이 반이중 또는 전이중 통신모드중 어떤 방식을 따를지 결정하고, 교환된 메시지 스트림에서 동기화 지점을 제공한다.
  • 체크포인트(데이터 스트림의 동기화 지점)를 통해 동기화 작업을 진행한다.
  • 사용자 애플리케이션에 대한 단일 또는 다중 연결을 제어한다.
  • 세션계층의 서비스는 일반적으로 RPC프로토콜을 사용하는 애플리케이션 환경에서 제공된다.

6. Prasentation Layer (표현계층)

OSI 7계층의 6계층에 속한다.

keyword : 데이터 표준화, 암호화, 압축

  • 응용계층에서 전송한 메시지에 대한 표준화 작업을 진행한다.(데이터를 JPEG, MPEG등 특정형식으로 표준화한다.)
  • 메시지를 압축하여 전송되는 데이터 용량을 줄인다.
  • 하위계층에서 Sniffing 공격을 방지하기 위해 메시지를 암호화한다.

7. Application Layer (응용계층)

OSI 7계층의 7계층에 속한다.

keyword : 사용자 접근

  • 사용자들이 직접 접근하여 사용하는 계층이다. (사용자가 네트워크에 접근 할 수 있도록 도와주는 것.)
  • 데이터 송신을 위한 메시지를 만든다. (사용자 요청을 하위 계층에서 통신하기 위한 메시지를 만든다.)
  • 최상위 계층으로 하위 계층을 몰라도 사용잔느 네트워크를 사용할 수 있다.
  • 인터페이스, 전자우편, 데이터베이스 관리 등의 서비스를 사용자에게 제동한다.

현재 네트워크는 대부분 패킷 기반 네트워크이다. 패킷 네트워크는 데이터를 패킷이라는 작은 단위로 쪼개 보내는데 이런 기법으로 하나의 통신이 회선 전체를 점유하지 않고 동시에 여러 단말이 통신하도록 해주는 것이다.

OSI 7계층은 아래 2가지 작업으로 네트워크 통신을 지원한다고 할 수 있다.
1. 인캡슐레이션, 디캡슐레이션 과정을 통해 데이터가 전송되는 과정
2. 각 계층 헤더를 이용해 송신자 계층과 수신자 계층 간의 논리적 통신 과정

인캡슐레이션, 디캡슐레이션

인캡슐레이션 : 하위계층에서 상위계층이 전송한 패킷을 자신의 패킷 데이터로 캡슐화 하는 과정
디캡슐레이션 : 상위계층에서 하위계층이 전송한 패킷의 헤더를 버리고, 데이터 부분을 디캡슐화 하는 과정.


다음 포스트에서는 OSI 7계층별 관련 장비에 대해 정리해보겠다!😊

profile
어제는 🐸두꺼비 오늘은 😄YJ

0개의 댓글