TCP/IP - 01 - 06 OSI 참조 모델에 의한 통신 처리의 예

SSAD·2023년 2월 25일
0

TCP/IP

목록 보기
7/12
  • 통신을 예로 들어 설명
  • 실제 OSI나 인터넷 전자메일은 여기서 설명하는 구조로 되어있지 않음
  • 여기서는 OSI 참조 모델을 알기 쉽게 설명하기 위한 예


01 7계층 통신

  • 송신 측에서는 7층과 6층과 같이 윗층에서 아래 층으로 순서대로 데이터가 전달

  • 수신 측에서는 1층과 2층과 같이 아래층에서 윗층으로 데이터를 받음

  • 각 계층에서는 상위층으로부터 받은 데이터에 자신의 계층 프로토콜을 처리에 필요한
    '헤더'라는 형태로 정보를 덧 붙임

  • 수신 측에서는 수신한 데이터를 처리하여 '헤더'와 상위 층으로 가는 '데이터'를 분리한 후
    상 위층으로 데이터를 전달

  • 이렇게 송신한 데이터가 원래의 데이터로 복원



02 세션층 이상에서의 처리

  • Host A에서 Host B로 "안녕하세요"라는 문장을 보내는 경우 처리되는 과정

애플리케이션층 (Layer 7)

  • 메시지 소프트웨어를 실행시켜 새로운 메시지를 작성

  • 수신처를 B로 하고 "안녕하세요"입력

  • '문장을 입력한 후 데이터를 송신하는 부분'이 애플리케이션 층에 해당

  • 본문이라는 정보나 수신처 B라는 정보를 나타내는 헤더(태그)가 붙여짐

  • 이 헤더가 붙여진 데이터가 호스트B에서 메시지 수신 처리를 담당하는 애플리케이션에게 전달

  • 애플리케이션 오류 처리 등도 애플리케이션층의 역할에 해당


프레젠테이션층 (Layer 6)

  • (호스트 고유의 표현 방식과 네트워크 전체에서 통일된 표현 방식의 변환)

  • 프레젠테이션이란 '표현'이나 '제시'라는 뜻

  • 데이터의 표현 형식을 나타냄

  • 데이터의 표현 형식은 컴퓨터 시스템의 종류에 따라 다름

  • 송신할 데이터를
    '컴퓨터 고유의 표현 형식'에서 '네트워크 전체에서 공통된 표현 방식'으로 변환하여 송식

  • 수신하는 호스트는
    '네트워크 전체에서 공통된 표현 방식'에서 '컴퓨터 고유의 표현 형식'으로 변환

  • 다른 기종 간에도 데이터 표현 형식의 무결성을 보장

  • '네트워크 전체에서 통일된 표현 방식'과 '컴퓨터나 소프트웨어에 최적화된 표현 형식'을
    서로 변환해주는 계층

  • 프레젠테이션층에도 프레젠테이션 층 사이에서 데이터의 부호화 방식을 식별하기 위해
    '헤더'가 붙여짐

  • 실제 데이터를 전송하는 처리는 세션층 이하에게 맡김


세션층(Layer 5)

  • (어떤 커넥션을 사용하여 전송할것인가?)

  • 세션층에서는 데이터를 어떻게 보내면 효율적으로 주고 받을수 있을 것인지
    데이터를 어떻게 보내면 효율적으로 주고 받을 수 있을 것인지, 데이터는 어떤 방식으로
    송신할 것인지와 같은 논의가 이루어짐

  • 메시지를 하나 송신할 떄마다 커넥션을 확립하고 끊는 방법을 생각하거나
    5통의 메시지를 순서대로 송신하는 방법
    동시에 5개 확보하여 5통의 메시지를 병렬로 송신하는 방법

  • 이러한 것들을 판단하고 제어하는 것이 세션층의 역할

  • 세션 층에서도 헤더가 붙여져서 데이터가 하위층으로 전달

  • 태그나 헤더에는 데이터를 어떤 방법으로 전달할 것인지가 기록되어 있음



03 트랜스포트층 이하에서의 처리

  • 애플리케이션층에서 작성한 데이터는
    프리젠테이션층에서 부호화되고,
    세션층에서 판단한 방법을 이용하여 데이터가 전송
  • 세션층은 커넥션을 확립할 타이밍이나 데이터를 전송할 타이밍을 관리 할 뿐
    실제로 데이터를 전송하는 기능은 없음
  • 세션층보다 하위에 있는 계층이
    실제로 네트워크를 사용하여 데이터의 송신 처리를 하는 배후 존재

트랜스포터층(Layer 4)

  • (커넥션의 확립 및 끊기/필요하면 재송신 처리)

  • 호스트 A에서 호스트 B로 가는 통신로를 확보하고 데이터를 전송할 준비
    이를 '커넥션의 확립'이라고 함

  • 통신이 끝나면 확립한 커넥션을 끊어야 함

  • 이렇게 커넥션의 확립이나 끊기를 처리하고
    호스트 간의 논리적인 통신 수단을 만드는 것이 트랜스포터층의 역할

  • 데이터를 확실하게 상대방에게 전달하기 위해서
    통신하는 컴퓨터 간에 데이터가 제대로 전달되었는지 확인하고, 전달되지 않았다면 재전송

  • 통신에서 발생하는 데이터 전송의 신뢰성을 보증하는 것이 트랜스포터층의 역할

  • 신뢰성을 보증하기 위해 보낼 데이터를 식별하는 표시와 같은 정보를
    포함한 헤더가 데이터에 붙여짐

  • 실제로 데이터를 상대방에게까지 전달하는 처리는 네트워크 층에게 맡김


네트워크층(Layer 3)

  • (호스트 A에서 B의 주소 앞으로 데이터를 배달하는 처리)

  • 네트워크층은
    네트워크와 네트워크가 연결된 환경에서 데이터를 송신 수신 호스트로 배달하는 역할

  • 실제로 데이터를 전송하기 위해서는 수신처의 주소, 즉 어드레스가 필요
    - 이 주소는 통신을 하는 전 세계 네트워크에서 유일하게 사용

  • 주소가 정해지면
    많은 컴퓨터 중에서 어떤 컴퓨터에게 데이터를 전송하면 좋을 것인지가 정해짐

  • 이 주소를 바탕으로 네트워크층에서 패킷의 배송 처리가 일어남

  • 네트워크 층에서는 네트워크 층의 상위층으로부터 받은 데이터에 주소 정보 등을 붙여
    데이터 링크층으로 전달

트랜스포트층과 네트워크층의 관계

  • 네트워크층에서 데이터의 도달성을 보장하지 않는 경우가 있음
  • TCP/IP의 네트워크층에 해당하는 IP에서는
    데이터가 상대방 호스트에 확실히 전달된다는 보장은 없음
  • 중간에 데이터가 소실되거나, 순서가 바뀌거나 2개 이상으로 늘어날 가능성이 있기 때문
  • 신뢰성이 없는 네트워크층의 경우
    '올바르게 데이터를 전달하는 처리'는 트랜스포트층이 담당
  • TCP/IP에서는
    네트워크층과 트랜스포트층이 같이 움직임으로
    전 세계로 패킷을 전달할 수 있으며 신뢰성 있는 통신을 제공
  • 역할을 계층별로 분명하게 나누면 프로토콜의 사양을 정하기 쉽고,
    프로토콜을 구현하는 작업도 편해짐

데이터 링크층(Layer 2)과 물리층(Layer 1)

  • 통신은 실제로 물리적인 통신 매체를 사용하여 일어남

  • 데이터 링크층은
    통신 매체에 직접 연결된 기기 사이에 데이터를 주고 받을 수 있도록 하는 역할

  • 물리층에서는 데이터의 0과 1을 전압이나 빛의 펄스로 변환하여
    물리적인 통신 매체에 흘려보냄

  • 직접 연결된 기기 간에서도 주소를 이용하는 경우가 있음
    - 이러한 주소를 'MAC주소', '물리 주소', '하드웨어 주소'라고 함

  • 이 주소는 동일한 통신 매체에 연결된 기기를 식별하기 위한 것

  • 이 MAC(Media Access control)주소 정보를 포함한 헤더가
    네트워크층으로부터 받은 데이터에 붙여져 실제 네트워크로 흘러 감

  • 네트워크 층이든, 데이터 링크층이든
    주소를 근거로 데이터를 수신처까지 전달한다는 점은 같지만,
    네트워크층은 최종 목적지까지의 데이터 배달을 담당하고,
    데이터 링크층은 한 구간의 데이터 배달을 담당한다는 점이 다름

profile
learn !

0개의 댓글