[네트워크] OSI 7계층

Junha Kim·2021년 5월 1일
0

계층 분리

  • 큰 하나의 일련의 과정을 세부적으로 쪼개어 모듈화, 분업화
  • 각 모듈은 본인에게 할당된 일에만 집중할 수 있고, 다른 부분 신경 X
  • 인접한 모듈에게 약속된 서비스를 받고 주기만 하면 됨
  • 내부 구현 방식에 변화가 있더라도 다른 모듈들에게는 영향 X독립성 \uparrow

1. 물리 계층 (Bit)

리피터, 케이블, 허브 등

신호로 변환하여 전송하는 계층

  • 데이터를 전지적인 신호로 변환해서 주고받는 기능 ⇒ 데이터를 전송하는 역할만 진
  • 물리적 기기에서 물리적 특성과 기능 정의
  • 비트 처리 방식 결정 → 0과 1을 나타내는 전압 정의
  • 전송 매체 결정
  • 전송 방식(simplex, duplex, half duplex 등) 결정
  • 데이터 전송 속도 결정

2. 데이터 링크 계층 (Frame)

브릿지, 스위치 등

물리적 매체에 패킷 데이터를 실어 보내는 계층 - 환경에 맞는 다양한 통신 프로토콜 지원

주요 기능

  • 주소 할당: 물리 계층으로부터 받은 신호들이 네트워크 상의 장치에 올바르게 안착할 수 있게 한다.

  • 오류 감지: 신호가 전달되는 동안 오류가 포함되는지를 감지한다. 오류가 감지되면 데이터 링크 계층은 해당 데이터를 폐기한다.

    1. 전진 오류 수정

    • 해밍 코드

    • 상승 코드

      2. 후진 오류 수정

      2.1. 오류 검출 방식

      1. 패리티 검사 (Parity Check)

      2. 블록합 검사 (Block Sum check)

      2.2. (검출 후) 재전송 방식 (Automatic Repeat Request)

      3. 순환잉여검사(CRC : Cycle Redundancy Check)

    1. Stop and Wait ARQ방식

    2. Go-back-N방식

    3. Selective-Repeat ARQ 방식

      4. 적응성(Adaptive)ARQ 방식

  • 흐름 제어 : 데이터 손실을 방지하기 위해 송/수신자 사이의 데이터 처리 속도를 제어한다

    • Stop and Wait : 송신측에서 프레임을 전송한 후 확인응답(ACK)을 받을 때까지 대기하는 방식
    • Sliding Window : 송신측에서 수신측의 확인응답을 받기 전에 수신 가능한 범위 내에서 여러 프레임을 전송
  • Network Layer와 Physical Layer 연결

  • 비트 전송에서의 오류 검출

  • 동일한 네트워크 세그먼트(브리지/스위치)에 있는 두 장비 사이의 데이터(Frame) 전송 ⇒ Forwarding

    • 프레이밍 : 3계층에서 받은 데이터 그램을 캡슐화 → 프레임
    • 헤더 → 목적지, 출발지 주소, 데이터 내용 정의, 트레일러→ 비트 에러 감지
  • Sublayer

    • Logical Link Control(LLC)
      • Network 계층과 MAC 사이의 인터페이스 담당
      • Flow Control, Error Notification
    • Media Access Control(MAC)
      • Layer 2 주소 체계 제공
      • Frame Conflict 탐지 및 회피
      • 프레임 시작과 끝 정의

3. 네트워크 계층 (Packet)

라우터, IP

네트워크를 논리적으로 구분하고 연결하는 계층 - 논리적 주소 사용

데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능을 담당한다

  • 데이터들의 Route 경로 제공
  • Forwarding, Routing
    • 외부 주소를 찾아야할때는 Routing
    • 동일 router 안에서는 Forwarding
  • IP 주소로 통신 → Connectionless

4. 전송 계층 (Segment)

TCP, UDP

서비스를 구분하고 데이터의 전송 방식을 담당하는 계층 (TCP/UDP)

  • 최초의 End-to-End 통신이 일어남

  • TCP (Transmission Control Protocol, 전송제어 프로토콜)

    • 연결 지향(Connection Oriented)

      → 송신자와 수신자 모두가 소켓이라고 부르는 종단점을 생성함으로써 이루어진다

      handshake를 통해

      TCP handshake

    • 전이중(full-duplex), 점대점(point to point) 방식 → 양방향 전송 가능, 연결점은 2개만 존재

      • 멀티캐스팅, 브로드 캐스팅 지원하지 않음
    • 흐름 제어 → 슬라이딩 윈도우

  • UDP (User Datagram Protocol, 사용자 데이터그램 프로토콜)

    • 비연결형 프로토콜 → 흐름제어, 오류제어, 손상된 세그먼트 수신에 대한 재전송을 하지 않음
    • 비신뢰성, 비연결성, 실시간

5. 세션 계층 (Message)

API, Socket

응용 프로그램 간의 연결을 지원해주는 계층

  • 데이터가 통신하기 위한 논리적 연결을 담당
  • TCP/IP 세션을 만들고 없애는 책임
  • Transport Layer의 Port를 통과
  • 사용자의 Credential 인증

6. 표현 계층 (Message)

JPEG, MPEG 등

데이터의 변환 작업을 하는 계층

  • 데이터 표현에 대한 독립성을 제공하고 암호화하는 역할
  • 파일 인코딩, 명령어를 포장, 압축, 암호화

7. 응용 계층 (Message)

HTTP, FTP, DNS 등

User Interface 를 제공하는 계층

  • 사용자와 가장 밀접한 계층, 인터페이스(Interface) 역할
  • 최종 목적지로, 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행

0개의 댓글