본문 바로가기

IT개념/네트워크

[Network] 2-1. 표준화와 참조모델

728x90

OSI 모델

OSI 모델 개요

  • 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명
  • 프로토콜을 기능별로 구분
  • 각 계층은 하위 계층 기능만을 이용하고, 상위 계층에게 기능을 제공
  • 일반적으로 하위 계층들은 하드웨어로, 상위 계층은 소프트웨어로 구현
  • 물리-데이터링크-네트워크-전송-세션-표현-응용 순으로 하위→상위 계층으로 표현한다.

물리계층 (Physical Layer)

  1. 인접 장치들을 연결하기 위해 필요한 전기적, 물리적 세부사항인 핀들의 배치나 전압, 전선의 명세 등을 정의
  2. 대표적인 장치는 허브(hub)
  3. OSI 계층 중 가장 복잡함
  4. 네트워크 상에서 데이터 비트를 전송하는 계층으로 물리계층에서 데이터를 교환하는 방식은 회선교환, 메시지 교환, 패킷 교환 방식 등으로 구분
  5. 전달 매체에 대한 연결의 성립 및 종료, 다수 사용자들 간의 통신 자원에 대한 효율적 배분, 통신 채널을 통해서 전송되는 디지털 데이터의 신호 변환 및 변조

데이터링크계층 (Data Link Layer)

데이터링크 프로톸로은 인접한 기기 사이 통신을 관리하고, 신뢰도가 낮은 전송로를 신뢰도가 높은 전송로로 전환시켜주는데 주로 사용

  1. 데이터 패킷을 생성하고 전송하는 방법을 규정
  2. 프레이밍 (Framing): 데이터를 프레임(frame)으로 그룹화
  • 데이터 프레임화를 물리계층에 의해서 제공되는 비트 파이프(Pipe)를 패킷(또는 프레임)화된 링크(Link)로 변환하는 것으로, 이는 전송할 데이터를 전송단위로서의 패킷(또는 프레임)으로 나누어 그룹화시키는 역할
  1. 흐름제어 (Flow Control): 보내는 측과 받는 측간의 속도차를 보장
  2. 에러제어 (Error Control): 에러보정을 위한 에러제어 등의 기능들을 제공
  • 정확하게 수신되지 않은 패킷들을 제공
  1. 순서화 (Sequencing)
  • 패킷이나 ACK 신호를 잘못 혼동하는 것을 피하기 위해 패킷과 ACK 신호에는 Sequence number가 부여됨
  1. 대표적인 장치: L2 스위치
  2. 프로토콜: ARP, RARP, 이더넷 등

네트워크 계층 (Network Layer)

네트워크 계층은 중간 라우터를 통한 라우팅을 포함해 패킷 포워딩을 담당하는 계층, 라우터 내에서 다음 노드로 프레임을 보낼 포트(인터페이스)를 결정해 주는 것

  1. 비연결 지향 통신
  2. 호스트 주소 할당
  3. 메시지 포워딩
  4. 라우팅
  • 네트워크 안에서 최적의 경로를 선택하는 과정
  • 최적의 경로는 주어진 데이터를 가장 짧은 거리로 또는 가장 적은 시간 안에 전송할 수 있는 경로

전송계층(Transmission Layer)

송신자와 수신자를 연결하는 통신 서비스, 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어, 그리고 다중화와 같은 편리한 서비스 제공

  1. 프로토콜: TCP, UDP
  2. 쌍방 응용 프로세스 간에 투명하고 신뢰성 있게 양단 간에 논리적인 통신을 이루는 계층
  3. 네트워크 계층으로부터 얻은 서비스의 형태(연결지향성 및 비연결성)에 따라 전송계층 프로토콜의 크기와 복잡성이 결정
  4. 만일, 망계층에서 가상회선 능력이 있고, 신뢰할 수 있는 통신 지원이 있으면, 전송 계층의 기능이 최소로 축소될 수 있지만, 그 반대의 경우, 전송계층이 에러감지와 회복을 위해 많은 노력을 해야 함(TCP의 경우)

1계층~4계층

  • 주된 기능은 데이터를 전달하는 것
  • 전송계층을 중심으로 하위계층으로 분류

5계층~7계층

  • 데이터를 송수신하는 양쪽의 최종 단말 컴퓨터내의 프로세스간 통신 프로토콜
  • 상위계층의 표현

세션계층(Session Layer)

세션 계층은 상위 계층에 제공하는 서비스로 세션 연결 설정과 해제, 세션 메시지 전송을 통해 동작하는 계층

  1. 세션이란 일정 시간동안 같은 사용자(브라우저를 의미)로 부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술.

    1. 일정 시간이란 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점으로부터 웹 브라우저를 종료함으로써 연결을 끝내는 시점으로, 방문자가 웹서버에 접속해 있는 상태를 하나의 단위로 보고 이를 세션이라고 하는
      것.
  2. 세션 계층은 크게 동기 기능과 대화의 기능을 수행

  3. 동기기능(통신 양단끼리 서로 동의하는 논리적인 공통 시점인 동기점을 만들어 메시지가 제대로 처리되고 있는지 파악)

  4. 대화는 데이터 전송 과정을 의미

    1. 시간 경과에 따른 순차적으로 동기점을 부여하여 신뢰성 보장 기능을 단계적으로 구현할 수 있게 되고, 의도적으로 일시 정지하여 나중에 이어서 작업을 하는 것이 가능.
    2. 두 응용 프로세스의 대화를 관리하려고 하는 토큰이라는 특수 메시지를 사용
  5. 동기점은 오류 복구를 위해 필수적으로 사용

    • 동기점 이전 과정은 복구가 불필요하고 동기점 이후 처리 과정에 대한 복구만 필요
    • 토큰의 종류
    1. 데이터 토큰: 데이터를 전송할 수 있는 권한을 의미
    2. 해제 토큰: 통신 양단 사이의 연결 해제를 제어하는데 사용
    3. 동기 토큰:동기 처리가 필요한 시점에 사용
  6. 동기점을 사용하면 에러 복구 시 동기점 이후 과정만 복구

    • 전송 오류가 발생했을 때 동기점을 이용해 복구하는 과정을 재동기라고 함

    • 주동기점과 부동기점으로 구분

    • 주동기점 이전 복구 과정은 필요하지 않지만 부동기점은 복구에 필요한 백업정보가 상대적으로 ㅇ적어 복구에 필요한 부담은 최소화 되지만 오류 복구가 완벽히 이루어지지 않을 수 있기 때문에 이전 부동기점에서 복구가 불가능하면 직전 부동기점으로 이동하는 과정을 반복함


표현계층(Presentation Layer)

네트워크 장비 제조사의 여러 다른 기종 시스템은 저마다 다른 데이터 표현 방식을 사용하는데 이를 하나의 통일된 구문 형식으로 변환시키는 기능을 수행하는 계층

  1. 암호화
  2. 압축
  3. 코드변환
  4. ASN.1 방식으로 압축과 암호화 기능 수행, 압축은 용량을 줄이는 것, 암호화는 평문을 의미없는 문자로 변경해 유출되도 이해할 수 없게 만듦

응용계층(Application Layer)

컴퓨터 네트워크 프로그래밍에서 인터넷 프로토콜(IP) 컴퓨터 네트워크를 통하는 프로세스 간 통신 접속을 위해 설계되어 통신 프로토콜과 방식을 위해 보유된 추상 계층으로 응용 계층 프로토콜은 기반이 되는 전송 계층 프로토콜을 사용하여 호스트 간 연결을 확립

  1. 주요 프로토콜: TELNET, FTP, SMTP, IMAP, POP, SNMP, DNS
  2. 클라이언트 - 서버 모델
    • 응용 계층의 연결 설정 방식으로 하나의 서버 프로그램이 다수의 클라이언트에 응용 서비스를 제공하는 모델


TCP/IP 모델

  1. TCP/IP는 현재의 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신규약 (프로토콜)의 모음
  2. 1960년대 말 미국방성의 연구에서 시작되어 1980년대 초 프로토콜 모델이 공개
  3. 하드웨어, 운영체제, 접속매체에 관계없이 동작할 수 있는 개방성

OSI 7 계층과 TCP/IP Protocol Suite

  1. TCP/IP 프로토콜은 OSI 모델보다 먼저 개발되었기 때문에, TCP/IP 프로토콜의 계층은 OSI 모델의 계층과
    정확하게 일치하지 않음
  2. 두 계층을 비교할 때 , 세션(Session)과 표현(presentation) 2개의 계층이 TCP/IP프로토콜 그룹에 없음
  3. 두 모델 모두 계층형 이라는 공통점을 가지고 있으며 TCP/IP는 인터넷 개발 이후 계속 표준화되어 신뢰성이 우수인 반면, OSI 7 Layer는 표준이 되기는 하지만 실제적으로 구현되는 예가 거의 없어 신뢰성이 저하
  4. OSI 7 Layer는 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 사용되는 반면에 실 질적인 통신 자체는

(1) Network Access Layer

  1. OSI 7 Layer에서 물리계층과 데이터링크 계층에 해당
  2. OS의 네트워크 카드와 디바이스 드라이버 등과 같이 하드웨어적인 요소와 관련되는 모든 것을 지원하는
    계층
  3. 송신측 컴퓨터의 경우 상위 계층으로부터 전달받은 패킷에 물리적인 주소는 MAC 주소 정보를 가지고 있는
    헤더를 추가하여 프레임을 만들고, 프레임을 하위계층인 물리 계층으로 전달
  4. 수신측 컴퓨터의 경우 데이터 링크 계층에서 추가된 헤더를 제거하여 상위 계층인 네트워크 계층으로 전달

(2) Internet Layer

  1. OSI 7 Layer의 네트워크 계층에 해당
  2. 인터넷 계층의 주요 기능은 상위 트랜스포트 계층으로부터 받은 데이터에 IP패킷 헤더를 붙여 IP패킷을 만들고 이를 전송하는 것

(3) Transport Layer

  1. OSI 7 Layer에서 전송계층에 해당
  2. 네트워크 양단의 송수신 호스트 사이에서 신뢰성 있는 전송기능을 제공
  3. 시스템의 논리주소와 포트를 가지고 있어서 각 상위 계층의 프로세스를 연결해서 통신
  4. 정확한 패킷의 전송을 보장하는 TCP와 정확한 전송을 보장하지 않는 UDP 프로토콜을 이용
  5. 데이터의 정확한 전송보다 빠른 속도의 전송이 필요한 멀티미디어 통신에서 UDP를 사용하면 TCP보다
    유용

(4) Application Layer

  1. OSI 7 Layer에서 세션계층, 프레젠테이션계층, 애플리케이션 계층에 해당
  2. 응용프로그램들이 네트워크서비스, 메일서비스, 웹서비스 등을 할 수 있도록 표준적인 인터페이스를 제공