OSI 7계층

김나영·2023년 7월 11일
0

CS

목록 보기
4/12

OSI 7계층이란?

  • 네트워크 통신이 일어나는 과정을 7단계로 나눈 국제 표준화 기구(ISO)에서 정의한 네트워크 표준 모델

OSI 7계층을 나눈 이유는?

  • 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문

  • 흐름을 한 눈에 알아보기 쉽고, 사람들이 이해하기 쉽기 때문

  • 7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건들이지 않고 이상이 생긴 단계만 고칠 수 있기 때문

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

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

    • 물리적으로 연결된 두 대의 컴퓨터가 전선을 통해 직접 데이터를 송수신할 수 있게 해주는 모듈
  • 데이터 전기적인 신호(0,1)로 변환해서 주고받는 기능만 가능

    • 단지 데이터를 전달만 할뿐 전송하려는(또는 받으려는)데이터가 무엇인지, 어떤 에러가 있는지 등에는 전혀 신경 쓰지 않음
  • 이 계층에서 사용되는 통신 단위 : 비트

    • 1과 0으로 나타내어지는, 즉 전기적으로 On, Off 상태
  • 이 계층에 속하는 대표적인 장비 : 통신 케이블, 리피터, 허브 등

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

    • 통신에서의 오류도 찾아주고 재전송도 하는 기능을 가지고 있음
    • 출발 주소와 도착 주소를 확인하고 자신에게 보낸 데이터인지 아닌지 검사한 후 데이터 처리를 수행
  • 프레임에 물리적 주소(MAC address)를 부여하고 에러검출, 재전송, 흐름제어를 수행

  • 포인트 투 포인트(Point to Point) 간 신뢰성있는 전송을 보장하기 위한 계층으로 CRC 기반의 오류 제어와 흐름 제어가 필요

  • 이 계층에서 전송되는 단위 : 프레임

  • 이 계층에 속하는 대표적인 장비 : 브리지, 스위치, 이더넷 등(여기서 MAC주소를 사용)

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

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

  • 데이터를 목적지까지 가장 안전하고 빠르게 전달(라우팅)

    • 여기에 사용되는 프로토콜의 종류도 다양하고, 라우팅하는 기술도 다양
  • 라우터(Router)를 통해 경로를 선택하고 주소를 정하고(IP) 경로(Route)에 따라 패킷을 전달 > IP 헤더 붙음

    • IP 주소를 이용해 서로 다른 네트워크에 속한 컴퓨터끼리 데이터를 주고 받게 해주는 것
  • 여러개의 노드를 거칠때마다 경로를 찾아주는 역할을 하는 계층

  • 다양한 길이의 데이터를 네트워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적, 절차적 수단을 제공

  • 데이터를 전송할 수신측의 주소를 찾고 수신된 데이터 주소를 확인하여 자신의 것이면 위 계층(전송계층)으로 올려줌

  • 라우팅, 흐름 제어, 세그멘테이션(segmentation/desegmentation), 오류 제어, 인터네트워킹(Internetworking) 등을 수행

  • 이 계층에서 전송되는 단위 : 패킷(Packet)

  • 이 계층의 대표적인 장비 : 라우터

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

  • 통신을 활성화하기 위한 계층으로 TCP프로토콜을 이용하며, 포트를 열어서 응용프로그램들이 전송을 할 수 있게 함

    • 만약 데이터가 왔다면 4계층에서 해당 데이터를 하나로 합쳐서 5계층에 던져 줌
  • port 번호, 전송방식(TCP/UDP) 결정 > TCP 헤더 붙음

    • TCP : 신뢰성(데이터 신뢰도가 높은 프로토콜), 연결지향적, 오류방지

    • UDP : 비신뢰성, 비연결성, 실시간, 데이터 손실이 있더라도 데이터를 지속적으로 전송/비디오

  • 두 지점(시스템)간의 신뢰성 있는 데이터를 주고 받게 해주는 역할

    • 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해줌
  • 신호를 분산하고 다시 합치는 과정을 통해서 에러와 경로를 제어

  • 시퀀스 넘버 기반의 오류 제어 방식을 사용

  • 오류검출 및 복구와 흐름제어, 중복검사 등을 수행

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

  • 데이터가 통신하기 위한 논리적인 연결

    • 즉, 통신을 하기 위한 대문
  • 주 지점간의 프로세스 및 통신하는 호스트 간의 연결 유지

    • 응용 시스템간의 세션을 관리하며 송신자와 수신자간에 동기화 신호를 주고받음
  • TCP/IP 세션 체결, 포트번호를 기반으로 통신 세션 구성

  • API, Socket

  • 세션 설정, 유지, 종료, 전송 중단시 복구 등의 기능 존재

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

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

  • 전송하는 데이터의 표현방식을 결정(ex. 데이터변환, 압축, 암호화 등)

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

  • 파일인코딩, 명령어를 포장, 압축, 암호화

  • JPEF, MPEG, GIF, ASCII 등

    • EBCDIC로 인코딩된 문서 파일을 ASCII로 인코딩된 파일로 바꿔 주는 것, 해당 데이터가 TEXT인지, 그림인지, GIF인지 JPG인지의 구분 등

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

  • 최종 목적지로, 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행(ex. explore, chrome 등)

  • HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있음

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

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

참고

https://lxxyeon.tistory.com/155
https://shlee0882.tistory.com/110

0개의 댓글