OSI 7계층과 의미

강은비·2021년 11월 3일
0

Network

목록 보기
14/14
post-thumbnail

📌 OSI 7계층

Open System Interconnection

  • 국제 표준화 기구인 ISO (International Standardization Organization) 에서 개발한 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 개방형 시스템 상호 연결 모델이다.

💚 응용계층 - 7계층

Application Layer

  • OSI 7계층에서 사용자와 가장 밀접한 계층이다.
  • User Interface를 제공한다.
  • 응용 프로세스 간의 정보 교환을 담당한다. (전송 단위: message)
  • 구글 크롬, 파이어폭스, 사파리 등 웹 브라우저와 전자메일, 스카이프, 아웃룩, 오피스 등의 응용 프로그램이 대표적이다.

💚 표현계층 - 6계층

Presentation Layer

  • 응용 프로그램이 다루는 정보를 통신에 알맞은 형태로 만들거나, 하위 계층에서 온 데이터를 사용자가 이해할 수 있는 형태로 만드는 역할을 담당한다.
  • 즉, 응용프로그램이나 네트워크를 위해 데이터를 변환하고 표현하는 계층이다.
  • 수신자 장치에서 적합한 애플리케이션을 사용하여 응용계층 데이터의 부호화 및 변환 수행을 통해 송신 장치로부터 온 데이터를 해석한다.
  • 데이터 표현에 차이가 있는 응용 처리에서의 제어 구조를 제공한다.
    - 데이터 표현에 차이: ASCII, JPEG, MPEG 등의 변역
  • 전송하는 데이터의 암호화, 복호화, 코드 변환 등을 수행 (전송 단위: message)

💚 세션계층 - 5계층

Session Layer

  • 응용 프로그램 간의 대화를 유지하기 위한 구조를 제공하고, 이를 처리하기 위해 프로세스들의 논리적인 연결을 담당하는 계층
  • 즉, 응용 프로그램 간의 연결을 지원해주는 계층이다. (전송 단위: message)
  • 통신 중 연결이 끊어지지 않도록 유지시켜주는 역할 수행하기 위해 TCP/IP 세션 연결의 설정과 해제, 세션 메세지 전송 등의 기능을 수행한다.
  • 통신을 하기 위한 세션 확립, 유지, 중단을 수행한다.
  • 통신장치 간 상호작용 및 동기화를 제공한다.
  • 에러 발생 시 복구 관리 역할을 한다.
  • NetBios(세션 내 연결 관리 및 에러감지, 복구 수행), SSH, Appletalk

💚 전송 계층 - 4계층

Transport Layer

  • 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해주면서 종단 간(End-to-End)에 신뢰성 있는 데이터를 전달하는 계층
  • 순차번호 기반의 오류 제어 방식(패킷에 시퀀스 넘버를 입력하여 오류 제어)을 사용하고, 종단 간의 에러 복구와 흐름 제어를 담당한다.
  • TCP: 3-way handshaking을 통한 연결 지향성 통신
  • UDP: 상대방의 데이터 전달 상황을 고려하지 않는 비연결성 통신, 최소한의 오류 제어 수행
  • 어떤 통신을 할 것인지 전송 계층에서 결정하여 패킹된다.
  • 전송 단위: Segment

Three way handshaking

  • TCP/IP 프로토콜을 이용해서 통신을 하는 응용프로그램이 데이터를 전송하기 전에 먼저 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션을 수립하는 과정
  • TCP의 3-way Handshaking 과정
    1. A클라이언트는 B서버에 접속을 요청하는 SYN 패킷을 보낸다. 이때 A클라이언트는 SYN 을 보내고 SYN/ACK 응답을 기다리는 SYN_SENT상태가 된다.
    2. 이때 서버는 Listen 상태로 포트 서비스가 가능한 상태여야 한다. (Closed :닫힌 상태)
    3. B서버는 SYN요청을 받고 A클라이언트에게 요청을 수락한다는 ACKSYN flag가 설정된 패킷을 발송하고 A가 다시 ACK으로 응답하기를 기다린다. 이때 B서버는 SYN_RECEIVED 상태가 된다.
    4. A클라이언트는 B서버에게 ACK을 보내고 이후로부터는 연결이 이루어지고 데이터가 오가게 되는것이다. 이때의 B서버 상태가 ESTABLISHED이다.
  • 신뢰성 있는 연결을 맺어 준다는 TCP의 3 Way handshake 방식이다.
  • SYNsynchronize sequence numbers의 약자
  • ACKacknowledgements 의 약자.

💚 네트워크 계층 - 3계층

Network Layer

  • 다양한 길이의 패킷을 네트워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질(QoS)을 위한 수단을 제공하는 계층
  • IP(Internet Protocol)을 통해서 통신한다.
  • 패킷을 네트워크를 통해 발신지에서 목적지까지 전달하기 위해, 라우팅장비를 이용하여 최적의 경로 선택한다.
  • 흐름제어, 단편화, 오류제어 등을 수행한다.
  • 전송 단위: Packet

💚 데이터 링크 계층 - 2계층

Data Link Layer

  • 링크의 설정과 유지 및 종료를 담당하며 노드 간의 오류제어, 흐름제어, 회선제어 기능을 수행하는 계층이다.
  • 네트워크 계층에 데이터를 전달하고, 물리 계층에서 발생할 수 있는 오류를 탐지하고 수정하는 기능을 제공한다.
  • 물리적 연결을 통하여 인접한 두 장치 간의 신뢰성 있는 정보 전송을 담당한다. (전송 단위: Frame)
  • 장비 : 스위치(Switch), 브리지(Bridge)

💚 물리 계층 - 1계층

Physical Layer

  • 실제 장치들을 연결하기 위해 필요한 전기적, 물리적 세부 사항들을 정의하는 계층
  • 통신 채널을 통해 전송되는 사용자 장치의 디지털 데이터를 이에 상응하는 신호들로 변환 한다.
  • OSI 계층을 타고 전달된 데이터를 전기적인 신호(Bit)로 변환시켜 통신을 수행(전송)한다.
  • 단지 데이터 전송 역할만을 하고, 오류제어 기능은 존재하지 않는다.
  • 데이터 링크 개체 간의 비트 전송을 위한 물리적 연결을 설정, 유지, 해제 하기 위한 수단을 제공한다.
  • 장비 : 허브(Hub), 리피터(Repeater)

참고

0개의 댓글