OSI 7계층

Jun·2022년 5월 11일
0

네이버 부스트캠프

목록 보기
14/21

1. OSI 7계층


OSI 7계층이란 국제 표준화 기구 ISO에서 개발한 모델로서, 네트워크 프로토콜 디자인과 통신을 계층으로 나눠 설명한 것입니다.

스크린샷_2021-08-05_오전_2 06 58

1.1 응용 계층 (Application)


  • OSI의 최상위 7계층인 응용계층은 사용자 또는 어플리케이션이 네트워크에 접근할 수 있도록 해줍니다.
  • 사용자를 위한 인터페이스를 지원합니다.
  • 즉, 사용자에게 보이는 유일한 계층이고 메일 전송, 인터넷 접속 등을 예로 들 수 있습니다.
  • 또한 HTTP, FTP 등의 프로토콜이 응용 계층에 속합니다.

1.2 표현 계층 (Presentation)


  • 표현계층은 응용계층으로부터 전달받거나 전송하는 데이터의 인코딩 및 디코딩이 이루어지는 계층입니다.
  • 주로 base64 방식으로 인코딩이 진행됩니다.

Base64

  • Base64는 Binary Data를 텍스트로 변경하는 인코딩 방식 중 하나로, 바이너리 데이터를 문자 코드에 영향을 받지 않는 공통 64개의 ASCII 영역의 문자들로 이루어진 문자열로 변경합니다.

  • Base64 인코딩 과정
    먼저 24bit의 buffer를 생성하여 위쪽(MSB)부터 바이트 데이터를 넣은 뒤,
    버퍼의 위쪽부터 6bit 단위로 잘라 Base64 테이블의 ASCII 문자로 변환합니다.
    99C7F8345C90BF422C

    ex) Man → TWFu
    993070395C90BE292A

만약 24bits의 버퍼가 모두 채워지지 않을 경우 다음과 같이 처리합니다.

99B430495C91CF022A

6비트 까지는 0으로 채우고 뒤의 나머지는 '='문자로 채웁니다.

1.3 세션 계층 (Session)


  • 세션 계층은 네트워크상 양쪽 연결을 관리하고 연결을 지속시켜주는 계층입니다.
  • 세션을 만들고 유지하며, 세션 종료, 전송 중단 시 복구 기능이 있습니다.
  • 이 계층은 TCP/IP 세션을 만들고 없애는 책임을 집니다.
  • 전이중, 반이중, 단방향 통신을 결정합니다.

1.4 전송 계층 (Transport Layer)


  • 전송 계층은 양 끝단 사용자들이 데이터를 주고 받을 수 있게 하는 계층입니다.
  • 대표적으로 TCP, UDP 프로토콜이 있습니다.

TCP

TCP의 경우 신뢰성있는 통신을 보장합니다. 따라서 데이터가 전달되는 과정에서 여러 스위치 라우터 등등을 거치면서 데이터가 잘못 전달되는 현상이나 전달 안 되는 경우에 오류 제어, 흐름 제어를 수행해 신뢰성있는 데이터가 전달될 수 있도록 합니다.

TCP는 처음 연결할 때 3-way handshake 방식으로 목적지와 상호 패킷을 교환하여 연결합니다. 연결을 종료할 때는 4-way handshake 방식을 사용합니다.

  • 3-way handshake
    • 먼저 클라이언트가 서버에 SYN을 보냅니다.
    • SYN을 받은 서버는 클라이언트에게 받았다는 신호 SYN+ACK를 보냅니다.
    • 클라이언트는 그 신호 마저 받았다고 서버에게 ACK로 알립니다.
  • 4-way handshake
    • 클라이언트는 연결을 종료하기 위해 FIN을 전송합니다.
    • FIN을 받은 서버는 확인 ACK를 보냅니다.
    • 서버의 ACK를 받은 클라이언트는 FIN이 오기 까지 기다립니다.
    • 서버가 FIN을 보내면 비로소 클라이언트는 ACK로 잘 받았다고 알립니다.

1.5 네트워크 계층 (Network Layer)


  • 네트워크 계층은 우리가 흔히 아는 IP 주소를 제공하는 계층입니다.
  • 네트워크 계층에서는 대표적으로 노드들을 거칠때마다 라우팅 해주는 역할을 담당합니다.
  • 이 계층의 대표적인 장비는 라우터, L3 스위치, IP공유기 등 입니다.
  • 전송 단위는 packet입니다.

  • 데이터 링크 계층은 Point to Point 간의 신뢰성 있는 전송을 보장하기 위한 계층입니다.
  • 물리주소인 MAC주소를 이용하여 전송을 보장합니다.
  • 전송 단위는 Frame입니다.

1.7 물리 계층 (Physical Layer)


  • 물리 계층은 말 그대로 하드웨어 전송 기술로 이루어져 있습니다.
  • 전기적인, 기계적인 신호를 주고 받는 역할을 합니다.
  • 0, 1 비트 단위로 통신을 합니다.
  • 통신 케이블, 허브, 리피터 등이 해당됩니다.
profile
HiHi

0개의 댓글