OSI 7계층

조예진·2022년 2월 13일
0

OSI 7계층이란?

  • OSI(Open Systems Interconnection) : 개방형 시스템, 시스템 간의 상호연결성을 부여하는 표준
  • 국제표준화기구(ISO)에서 개발한 모델
  • 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명 → 네트워크 통신의 7단계 과정을 말하는 것
  • 일반적으로 하위 계층은 하드웨어로, 상위 계층은 소프트웨어로 구현됨

Layer 계층의 종류

  • Layer 7 → 응용 계층 (Application Layer)

    • 일반적 응용 서비스 수행 (네트워크 소프트웨어 UI, 사용자 입출력)

    • HTTP, FTP, DNS, SMTP

  • Layer 6 → 표현 계층 (Presentation Layer)
    • 데이터 번역 담당 (ex. EBCDIC 인코딩 → ASCII 인코딩 변환)
      • 네트워크 상의 다양한 시스템들이 저마다 다른 데이터 표현 방식을 사용 (정수를 16비트, 24비트 등으로 사용하는 경우) → 하나의 통일된 구문으로 변환
    • 데이터 변환, 문자 코드 번역, 압축, 암호화, 복호화
    • JPEG(이미지 손실 압축 방법 표준), MPEG(비디오/오디오)
  • Layer 5 → 세션 계층 (Session Layer)
    • 데이터가 통신하기 위한 논리적 연결 담당, TCP/IP 세션을 만들고 없앰
    • 동기화, 네트워크 오류 검사 및 복구 수행
      • 응용프로그램간의 대화를 유지하기 위한 구조(세션)를 제공 → 프로세서 간의 논리적 연결 담당
        • 두 응용프로그램 간의 연결 설정, 유지 및 종료
      • 분실 데이터 복원을 위한 동기화 지점을 두어 상위 계층 오류로 인한 데이터 손실 복원
        • 데이터 송수신 중 에러 발생 시 처음부터 재전송하지 않고 오류 발생 지점 이후 데이터만 재전송시킴
    • Socket
  • Layer 4 → 전송 계층 (Transport Layer)
    • 데이터 전송 서비스 제공 → 송수신측 간의 실제적 연결 설정 및 유지, 오류 복구와 흐름 제어
    • 세션 계층에 통신망 서비스 차이나 속성 관계 없이 균일한 데이터 전송 서비스를 세션 계층에 제공
    • 큰 데이터를 보낼 때에는 잘 분할하고, 받을 때에는 잘 조립하는 역할
      • 보낼 때, 데이터를 패킷으로 쪼갬
      • 받을 때, 패킷의 순서가 맞는지, 빠진 패킷은 없는지 점검하고 재구성
    • TCP, UDP 프로토콜로 통신을 활성화
    • TCP: 신뢰적, 연결지향
      • 송수신측 연결을 먼저 설정(3-way handshaking) → 연결 성공하면 모든 데이터를 순차적 전송 → 전송 완료하면 연결 해제(4-way handshaking)
      • 패킷 순서 번호 부여 X
    • UDP: 비신뢰적, 비연결지향, 실시간
      • 패킷이 독립적으로 전송되어서 각기 다른 경로로 목적지 노드로 도착 가능
      • 순서가 무작위이고 데이터 손실 가능성 있음 → 패킷마다 일련번호 할당
  • Layer 3 → 네트워크 계층 (Network Layer)
    • 라우터를 통해 이동할 경로를 선택하여 IP 주소를 지정하고, 해당 경로에 따라 패킷을 전달
    • 1) 노드 간의 접속 설정, 유지, 종료 2) 주소 지정 3) 통신 경로 선정
    • 노드 간의 연결이 붕괴되었는지 점검하고, 붕괴된 경우 복구 작업 수행
    • 프로토콜
      • 주소지정 프로토콜
        • 상대 노드의 고유 네트워크 주소를 인식 (논리적인 주소를 물리적 주소로 번역)
      • 경로결정(Routing) 프로토콜
        • 목적지 노드로 가는 경로를 결정 → 경로상 모든 트래픽 고려하여 최적의 경로 결정
        • IGP - Internal Gateway Protocol: 동일 그룹 내에서 라우팅 정보 교환
        • EGP - Exterior Gateway Protocol: 다른 그룹과 라우팅 정보를 교환
        • https://butter-shower.tistory.com/21
    • 세그멘테이션
  • Layer 2 → 데이터 링크 계층 (Data Link Layer)
    • 물리 계층으로 송수신되는 정보를 관리하여 안전하고 신뢰성 있게 전달되도록 도움
    • 직접 연결된 서로 다른 2개 네트워크 장치 간의 데이터 전송을 담당
    • 역할
      • 프레이밍: 송신할/수신한 데이터를 프레임 단위의 데이터 유닛으로 만들어 처리
      • 흐름 제어: 너무 많거나 너무 적게 데이터를 송수신하지 않도록 데이터 흐름을 제어
      • 오류 제어: 프레임 전송 시 발생한 오류 복원 혹은 재전송
        • 송신측의 타이머와 ACK 신호에 의해 알 수 있음
      • 접근 제어: 매체 상에 통신 주체가 여럿 존재할 경우 데이터 전송 여부 결정
      • 동기화: 프레임 구분자 → 패킷과 ACK 신호를 구분하기 위해 각각에 일련번호를 부여
    • 출발지와 도착지의 MAC 주소를 처리
    • 브릿지, 스위치 등
  • Layer 1 → 물리 계층 (Physical Layer)
    • 데이터를 전기적인 신호로 변환하여 주고받음 → 데이터를 케이블에 맞게 변환하여 전송 및 수신하는 것
    • 비트열 형태의 단순 데이터 전송 및 수신
    • 리피터, 케이블, 허브, 전화선, 도축, 광케이블 등

OSI 7계층을 나눈 이유

  • 통신이 일어나는 과정을 단계별로 파악하기 위함
    • 흐름을 한눈에 알기 쉬워짐
    • 사람들이 이해하기 쉽게 함
  • 오류가 발생할 경우 발생한 계층만 고칠 수 있고 다른 단계의 장비나 소프트웨어를 건드릴 필요가 없음 (유지보수에 편리)
  • 통신 구조가 모델링되어 앞으로 개발될 프로토콜의 표준 뼈대 제공

특징

  • 상하 구조를 가짐
    • 상위 계층 프로토콜이 정상 동작하기 위해서 하위 계층이 모두 정상 작동해야 함
  • 각 계층은 독립됨
  • 데이터 캡슐화
    1. 하위 계층은 상위 계층으로부터 정보를 받는데, 이 전체를 데이터로 취급
    2. 받은 데이터의 헤더에 현재 계층 정보를 담은 제어정보를 헤더화해 붙이는 것을 데이터 캡슐화라고 함
      • 헤더에는 주소, 에러 제어 등의 정보가 담김
      • 푸터를 추가하기도 함
    3. 데이터를 전송받으면 하위 계층에서 상위 계층으로 데이터를 전달하며 헤더를 떼어내는데, 이를 디캡슐레이션이라고 함
    • PDU(Protocol Data Unit): 프로토콜 데이터 단위이자 OSI 모델의 정보 처리 단위, 캡슐화 과정에서 만들어짐
    • SDU(Service Data Unit): 상향/하향 통신 레이어 간에 전달되는 실제 정보

  • 각 계층에서 데이터를 부르는 이름이 다르다.
    • 레이어 4 - 전송 계층: Segment
      • 발신지 포트, 목적지 포트, 순서 정보, 오류 검출 코드(체크섬) 등의 정보가 추가됨
    • 레이어 3 - 네트워크 계층: Packet
      • 발신지/목적지 컴퓨터 주소, 서비스 요청 정보가 추가됨
    • 레이어 2 - 데이터 링크 계층: Frame
    • 레이어 1 - 물리 계층: Bit

참고

profile
https://oooooroblog.com 으로 이사갔어요

0개의 댓글