OSI(Open System Interconnection)

국제표준화 기구인 ISO(International Standard Organization)에서 Open 시스템간 원활한 정보교환을 위하여 7개의 계층을 가지는 Protocol 표준을 제안

OSI 7 layer(or 7계층모델)라고 부름

 

OSI 모델의 목적

기본적인 하드웨어 또는 소프트웨어의 변경 없이 서로 다른

시스템간에 개방 통신을 위한 것

 

 

계층 분류 이유

  • 복잡함의 감소
  • 인터페이스의 표준화
  • 상호 호환성의 확보
  • 기술 개발의 가속화
  • 설명과 이해(습득)의 간소

 

 


 

 

OSI 모델의 7가지 추상 계층은 탑 다운 방식으로 다음과 같이 정의할 수 있음

 

 

 

7. 애플리케이션 계층

 

  • 이 계층은 사용자의 데이터와 직접 상호 작용하는 유일한 계층
  • 웹 브라우저 및 이메일 클라이언트와 같은 소프트웨어 애플리케이션은 통신을 개시하기 위해 애플리케이션 계층에 의지
  • 소프트웨어가 사용자에게 의미 있는 데이터를 제공하기 위해 의존하는 프로토콜과 데이터를 조작하는 역할
  • 클라이언트 소프트웨어 애플리케이션은 애플리케이션 계층의 일부는 아님
  • 애플리케이션 계층 프로토콜에는 HTTP뿐만 아니라 SMTP도 포함됨 (SMTP는 이메일  통신을 가능하게 하는 프로토콜 중 하나임)

 

 

6. 프레젠테이션 계층

  • 이 계층은 주로 데이터를 준비하는 역할을 하여 애플리케이션 계층이 이를 사용할 수 있게 함
  • 즉, 계층 6은 애플리케이션이 소비할 수 있도록 데이터를 프레젠테이션

 

  • 프레젠테이션 계층은 데이터의 변환, 암호화, 압축을 담당

        변환 - 서로  통신하는 두 개의 통신 장치는 서로 다른 인코딩 방법을 사용하고 있을 수 있으므로, 계층 6은 수신 장치          의 애플리케이션 계층이 이해할 수 있는 구문으로 수신 데이터를 변환하는 일을 담당

        

        암호화 - 장치가 암호화된 연결을 통해 통신하는 경우, 계층 6은 최종 송신자에게 암호화를 추가할 뿐만 아니라 최종            수신자에게 암호화를 디코딩하여 암호화되지 않은 읽기 쉬운 데이터로 애플리케이션 계층을 제시할 수 있도록 하는            역할

 

        압축 - 프레젠테이션 계층은 애플리케이션 계층에서 수신한 데이터를 계층 5로 전송하기 전에 압축하는 일도 담당

                  전송할 데이터의 양을 최소화함으로써 통신의 속도와 효율을 높이는 데 도움이 됨

 

 

 

5. 세션 계층

  • 두 기기 사이의 통신을 시작하고 종료하는 일을 담당하는 계층
  • 통신이 시작될 때부터 종료될 때까지의 시간을 세션이라고 함
  • 세션 계층은 교환되고 있는 모든 데이터를 전송할 수 있도록 충분히 오랫동안 세션을 개방한 다음 리소스를 낭비하지 않기 위해 세션을 즉시 닫을 수 있도록 보장
  • 세션 계층은 데이터 전송을 체크포인트와 동기화함

       →  ex) 100MB의 파일이 전송되는 경우 세션 계층이 5MB마다 체크포인트를 설정할 수 있음

            52 MB가 전송 된 후 연결이 끊어 지거나 충돌이 발생하면 마지막 체크 포인트에서 세션을 재개하는 것이 가능

            즉, 50MB의 데이터만 더 전송하면 됨

            체크 포인트가 없으면 전체 전송을 처음부터 다시 시작해야 함

 

 

 

4. 전송 계층

 

  • 두 기기 간의 종단 간 통신을 담당
  • 세션 계층에서 데이터를 가져와서 계층 3으로 보내기 전에 세그먼트라고 하는 조각으로 분할하는 일이 포함됨 (수신 기기의 전송 계층은 세그먼트를 세션 계층이 이용할 수 있는 데이터로 재조립해야 함)
  • 전송 계층은 또한 흐름 제어 및 오류 제어 기능의 역할도 함

      흐름제어 - 연결 속도가 빠른 송신자가 연결 속도가 느린 수신자를 압도하지 않도록 최적의 전송 속도를 결정함

      오류제어 - 전송 계층은 수신된 데이터가 완료되었는지 확인하고 수신되지 않은 경우 재전송을 요청하여 최종 수신자          에 대해 오류 제어를 수행함

  • 전송 계층 프로토콜에는 전송 제어 프로토콜(TCP)  및 사용자 데이터그램 프로토콜(UDP)이 있음

 

 

3. 네트워크 계층

네트워크를 구축하는데 osi 7 layer중 몇 계층 까지 있어야 할까?
단순하게 네트워크를 구축하고 운영하는데 2계층만 있어도 됨

네트워크란 통신 매체를 통해 연결된 노드들의 집합
통신 매체 → 물리적
노드 → 노드는 주소가 있음 → data link 계층

 

 

1. Routing(Path determination) 경로 결정
가장 최적의 경로를 결정해줌

 

2. 주소제공
빠르게 찾아갈 수 있는 주소가 제공되어야 함

이전의 주소 → 물리적이면서 평면적
3계층에서의 주소는 논리적이면서 계층적인 특징이 있음

 

  • 네트워크 계층은 서로 다른 두 네트워크 간 데이터 전송을 용이하게 하는 역할
  • 서로 통신하는 두 장치가 동일한 네트워크에 있는 경우에는 네트워크 계층이 필요하지 않음
  • 네트워크 계층은 전송 계층의 세그먼트를 송신자의 장치에서 패킷이라고 불리는 더 작은 단위로 세분화하여 수신 장치에서 이러한 패킷을 다시 조립함
  • 네트워크 계층은 데이터가 표적에 도달하기 위한 최상의 물리적 경로를 찾는데 이를 라우팅이라고 함
  • 네트워크 계층 프로토콜에는 IP, 인터넷 제어 메시지 프로토콜(ICMP) , 인터넷 그룹 메시지 프로토콜(IGMP) , IPsec 제품군이 있음

 

 

2. 데이터 연결 계층

논리적인 연결 - 전송을 위한 데이터의 형식 결정, 매체 접근 방법(MAC)의 제어

 

1. 논리적인 연결을 위해 주소를 제공
주소는 물리적이면서 평면적인 특징을 가지고 있음

주소가 물리적이다 → 제품이 생산이 될 때 박혀져 나오는 주소 (ex. 주민등록번호) 변경 불가능

평면적이다 → 하나의 제한된 공간에서만 사용

 

2. Topology를 정의
미로를 위에서 보면 입구와 출구를 쉽게 알 수 있음
데이터링크 계층에서 보면 어떤것들이 물리적으로 연결되어있는지 보임

 

3. 매체 접근 방식 규정

LAN(ethernet 이더넷)
어떻게 접근해야 에러없이 접근할 수 있을까?
CSMA/CD
Career Sense Multiple Access/Collision Detect
→  랜 환경에서의 동작방식을 약어(CSMA/CD)로 표현

 

 

  • 동일한 네트워크에 있는 두 개의 장치 간 데이터 전송을 용이하게 함
  • 네트워크 계층에서 패킷을 가져와서 프레임이라고 불리는 더 작은 조각으로 세분화
  • 네트워크 계층과 마찬가지로 데이터 연결 계층도 인트라 네트워크 통신에서 흐름 제어 및 오류 제어를 담당 (전송 계층은 네트워크 간 통신에 대해서만 흐름 제어 및 오류 제어만을 담당함)

 

 

MAC 주소 (Media Access Control Address)

데이트 링크 계층에서 통신을 위한 네트워크 인터페이스에 할당된 물리적 고유 식별 주소


MAC 주소는 간단히 말해 인터넷을 할 수 있는 이더넷 기반 기기에는 모두 다 하나씩 할당되어 있는 고유한 ID
PC의 랜카드나 스마트폰의 와이파이모듈에도 1대씩 할당되어 있음


MAC Address는 16진수, 48비트
앞에 6자리 - 벤더 코드
뒤에 6자리 - 프로덕트 넘버 (제품 생산 번호)


 

 

1. 물리적 계층

  • 물리적 연결 구간의 전기적, 기계적 특징과 순서의 정의, 활성, 관리, 비활성을 위한 기능적 특징
  • 케이블, 스위치 등 데이터 전송과 관련된 물리적 장비가 포함됨 (매체를 통해 연결)
  • 이 계층은 1과 0의 문자열인 비트 스트림으로 변환되는 계층
  • 두 장치의 물리적 계층은 신호 규칙에 동의해서 두 장치의 1이 0과 구별될 수 있어야 함

 

 


 

 

OSI 모델을 통해 데이터가 전송되는 방법

 

네트워크를 통해 사람이 읽을 수 있는 정보를 장치 간에 전송하려면 데이터가 송신 장치에서 OSI 모델의 7가지 계층 아래로 이동한 다음 최종 수신자에서 7가지 계층 위로 이동해야 함

 

 

예: A 가 B에게 이메일을 보내려고 함

 

A 는 자신의 노트북에 있는 이메일 애플리케이션에서 메시지를 작성하고 '발송'을 누름

A 의 이메일 애플리케이션이 이메일 메시지를 애플리케이션 계층으로 넘기면, 애플리케이션 레이어는 프로토콜(SMTP)을 선택하고, 데이터를 프레젠테이션 계층으로 전달

프리젠테이션 계층이 압축한 데이터는 세션 계층에 도달하고, 세션 계층은 세션을 시작함

 

이제 데이터는 발신자의 전송 계층으로 넘어가 세그먼트로 나눠지게 되며, 이 세그먼트는 네트워크 계층에서 패킷으로 다시 나눠지고, 이는 데이터 연결 계층에서 프레임으로 나눠짐

데이터 링크 계층은 해당 프레임을 물리적 계층으로 전달하며, 물리적 계층은 데이터를 1과 0의 비트스트림으로 변환하고 물리적 매체(예: 케이블)를 통해 전송

 

B의 컴퓨터가 물리적 매체(예: 와이파이)를 통해 비트스트림을 수신하면, 데이터는 반대 순서로 계층을 지나게 됨

먼저 물리적 계층은 비트 스트림을 1과 0에서 프레임으로 변환해 데이터 연결 계층으로 넘김

데이터 연결 계층은 프레임을 패킷으로 재조립해 네트워크 계층으로 넘김

네트워크 계층은 패킷으로 세그먼트를 만들어 전송 계층으로 넘기고, 전송 계층은 세그먼트를 재조립해 하나의 데이터를 만듬

 

이제 데이터는 수신자의 세션 계층으로 흐르고, 세션 계층이 이 데이터를 프리젠테이션 계층으로 넘기면, 통신 세션이 종료됨

프레젠테이션 계층은 압축을 제거하고 원본 데이터를 애플리케이션 계층으로 넘김

애플리케이션 계층은 사람이 읽을 수 있는 데이터를 B의 이메일 소프트웨어에 제공하고, B는 자기 노트북 화면에서 이메일 소프트웨어를 통해 A의 이메일을 읽을 수 있게 됨

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

1. 네트워크 개요  (0) 2024.10.19

+ Recent posts