[네트워크] 프로토콜 & OSI 7계층

찬들이·2022년 9월 2일
0

컴퓨터공학

목록 보기
19/34

🎯 프로토콜이란?

  • 통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계이다.

  • 즉 컴퓨터와 컴퓨터가 서로 이해 할 수 있는 언어이자 통신규약 및 약속이다.

    프로토콜의 기본 요소

    • 구문 : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정한다.
    • 의미 : 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정한다.
    • 시간 : 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정한다.

    프로토콜 종류

    • 단편화
      • 송신 측에서는 긴 데이터 블록을 손쉽게 전송할 수 잇도록 크기가 똑같은 작은 블록으로 나누어 전송
    • 재합성
      • 수신 측에서 쪼개진 작은 데이터 블록을 재합성하여 원래의 페이지로 복원하는 기능
    • 캡슐화
      • 각 프로토콜에 적합한 데이터 블록을 만들려고 데이터에 정보를 추가하는 것
      • 플래그, 주소, 제어 정보, 오류 검출 부호 등을 부착하는 기능
    • 연결제어
      • 비연결 데이터 전송과 연결 위주 데이터 전송을 위한 통신로를 개설 유지 종결하는 기능
    • 흐름제어
      • 데이터양이나 통신속도 등이 수신 측의 처리 능력을 초과하지 않도록 조정하는 기능
    • 오류제어
      • 데이터 전송 중 발생할 수 있는 오류나 착오 등을 검출하고 정정하는 기능
    • 순서 결정
      • 연결 위주의 데이터를 전송할 때 송신 측이 보내는 데이터 단위 순서대로 수신측에 전달하는 기능
    • 주소 설정
      • 발생지 목적지 등의 주소를 명기하여 데이터를 정확하게 전달하는 기능
    • 동기화
      • 두 통신 객체의 상태를 일치시키는 기능
    • 다중화
      • 하나의 통신로를 여러개로 나누거나 회선 여러개를 하나의 통신로로 변환시켜 다수의 가입자가 동시에 사할 수 있도록 하는 기능
    • 전송 서비스
      • 통신 객체를 사용하기 쉽도록 별도로 추가 서비스를 제공하는 기능

🎯 OSI7계층

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

AH : Application Header
PH : Presentation Header
SH : Session Header
TH : Transport Header
NH : Network Header / NT : Network Tail
DH : Data Link Header / DT : Data Link Tail

캡슐화(Encapculation) & 역캡슐화(Decapsulation)

위에 나와 있는 그림과 설명과 같이 발신측에서 헤더를 생성하고, 트레일러를 만들어 보내는 부분, 즉 필요한 데이터를 추가해 나가는 것을 캡슐화라 하고, 수신측에서 헤더를 제거하며 상위 계층으로 전달하는 과정이 역캡슐화이다.

물리 계층(Physical Layer)

물리계층은 실제 장치들을 연결하기 위해 필요한 전기적, 물리적 세부 사항들을 정의하는 계층이다.
통신 채널을 통해 전송되는 사용자 장치의 디지털 데이터를 이에 상응하는 신호들로 변환한다.

  • OSI계층을 타고 전달된 데이터를 전기적인 신호로 변환시켜 통신을 수행한다.

  • 데이터 링크 개체 간의 비트 전송을 위한 물리적 연결을 설정, 유지, 해제하기 위한 수단을 제공한다.

  • 프로토콜: RS-232

  • PDU : Bit

  • 장비 : 허브, 리피터

    데이터 링크 계층은 링크의 설정과 유지 및 종료를 담당하며 노드 간의 오류제어, 흐름제어, 회선제어 기능을 수행하는 계층이다. 네트워크 계층에 데이터를 전달하고, 물리 계층에서 발생할 수 있는 오류를 탐지하고 수정하는 기능을 제공한다.

  • 시스템 간에 오류 없는 데이터 전송을 위해 상위 계층에서 받은 패킷을 프레임으로 변환하여 물리계층에 전송한다.

  • 헤더의 끝에는 물리 주소 정보가 들어있고, 트레일러에는 오류를 검출하는 비트를 포함한다.

  • 프로토콜 : HDLC, PPP, 프레임 릴레이, ATM

  • PDU : Frame(L2)

  • 장비 : 스위치, 브릿지

    네트워크 계층(Network Layer)

    네트워크 계층은 다양한 길이의 패킷을 네크워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질을 위한 수단을 제공하는 계층이다. 라우팅 패킷 포워딩, 인터 네트워킹 등을 수행한다.

  • 패킷을 네트워크를 통해 발신지에서 목적지까지 전달하기 위해, 라우팅 프로토콜을 사용하여 최적의 경로를 선택한다.

  • 데이터를 전송할 떼이터의 주소 확인 후 전송계층으로 전달한다.

  • 프로토콜: IP, ARP, RARP, ICMP, IGMP, 라우팅 프로토콜

  • PDU : Frame(L3)

  • 장비 : 라우터, L3스위치

    전송 계층(Transport Layer)

    전송 계층은 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해주면서 종단 간의 사용자들에게 신뢰성 있는 데이터를 전달하는 계층이다. 순차번호 기반의 오류 제어 방식을 사용하고, 종단 간 통신을 다루는 최하위 계층으로 종단 간 신뢰성이 있고 효율적인 데이터를 전송한다.

  • 프로토콜(TCP,UDP)로 구성되어 오류제어, 흐름제어, 혼잡제어 등을 담당하면서, 두 시스템 간에 신뢰성 있는 데이터를 전송한다.

  • 프로토콜 : TCP, UDP

  • PDU : Segment(L4)

  • 장비 : L4 스위치

    세션 계층(Session Layer)

    세션 계층은 응용 프로그램 간의 대화를 유지하기 위한 구조를 제공하고, 이를 처리하기 위해 프로세스들의 논리적인 연결을 담당하는 계층이다. 통신 중 연결이 끊어지지 않도록 유지시켜주는 역할을 수행하기 위해 TCP/IP 세션 연결의 설정과 헤제, 세션 메세지 전송 등의 기능을 수행한다.

  • 통신을 하기 위한 세션 확립, 유지, 중단을 수행한다.

  • 통신하는 사용자들을 동기화해주고, 오류 복구 명령들을 일괄적으로 처리한다.

  • 프로토콜 : PRC, NetBIOS

  • PDU : Data

    표현 계층(Presentation Layer)

    표현 계층은 애플리케이션이 다루는 정보를 통신에 알맞은 형태로 만들거나, 하위 계층에서 온 데이터를 사용자가 이해할 수 있는 형태로 만드는 역할을 담당하는 계층이다. 수신자 장치에서 적합한 어플리케이션을 사용하여 응용계층 데이터의 부호화 및 변환 수행을 통해 송신 장치로부터 온 데이터를 해석한다.

  • 데이터의 효율과 보안을 위해 압축과 암호화를 수행하고, 전송을 위한 포맷으로 변경을 수행한다.

  • 프로토콜 : JPEG, MPEG

  • PDU : Data

    응용 계층(Application Layer)

    응용계층은 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 역할을 담당하는 계층이다.
    응용 프로세스가 개방된 형태로 다양한 범주의 정보처리기능을 수행할 수 있도록 여러가지 프로토콜 개체에 대하여 사용자 인터페이스를 제공한다.

  • 응용 프로세스 간의 정보 교환, 파일 전송 등의 서비스를 제공한다.

  • 프로토콜 : HTTP,FTP,SMTP,POP3, IMAP, Telnet

  • PDU : Data

  • 장비 : L7 스위치

🎯 TCP/IP 프로토콜 스택

TCP/IP 프로토콜 스택은 데이터 송수신의 과정을 7계층으로 계층화했던 OSI7계층과 다르게 4개의 영역으로 계층화했다. 인터넷 기반의 효율적인 데이터 전송이라는 문제를 작게 나눠서 계층화함으로써 탄생한 것이 TCP/IP이다.

profile
Junior-Backend-Developer

0개의 댓글