OSI 7계층 & TCP/IP 4계층

Eugenius1st·2022년 9월 9일
0

네트워크

목록 보기
3/12
post-thumbnail

네트워크 계층 모델은 크게 OSI 7계층 모델과 TCP/IP 4계층으로 나뉜다.

OSI 7계층 모델

해당 계층 모델은 ISO(International Organization for Standardization)라고 하는 국제표준화기구에서 1984년에 제정한 표준 규격이다.

왜 네트워크에 대한 표준 규격을 정해야만 했을까요?

지금은 상상하기 어렵지만 같은 회사에서 만든 컴퓨터끼리만 통신이 가능했던 시절이 있니다. 따라서 다른 회사의 시스템이라도 네트워크 유형에 관계없이 상호 통신이 가능한 규약, 즉 프로토콜(Protocol)이 필요했다. 그래서 ISO에서는 제조사에 상관없이 공통으로 사용할 수 있는 네트워크 표준 규격을 정의했다.

OSI 7계층 모델은 네트워크를 이루고 있는 구성요소들을 7단계로 나누고, 각 계층의 표준을 정하였다. OSI 7계층 모델의 목적은 표준화를 통하여 포트, 프로토콜의 호환 문제를 해결하고, 네트워크 시스템에서 일어나는 일을 해당 계층 모델을 이용해 쉽게 설명할 수 있다. 또한 네트워크 관리자가 문제가 발생 했을 때 이것이 물리적인 문제인지, 응용 프로그램과 관련이 있는지 등 원인이 어디에 있는지 범위를 좁혀 문제를 쉽게 파악할 수 있다. 즉 사이트에 접속되지 않는다고 해서 무작정 컴퓨터를 껐다 키는 일을 피할 수 있다.


각 컴퓨터간 데이터를 전송할 때 컴퓨터 내부에서는 여러가지 일을 한다. 해당 모델을 하드웨어 및 소프트웨어가 수행하는 기능에 따라 이를 7개의 계층(또는 레이어)으로 구분하였따.

각 계층은 다음과 같이 구분된다.

  • 1계층-물리계층
    : OSI 모델의 맨 밑에 있는 계층으로서, 시스템 간의 물리적인 연결과 전기 신호를 변환 및 제어하는 계층이다. 주로 물리적 연결과 관련된 정보를 정의한다. 주로 전기 신호를 전달하는 데 초점을 두고, 들어온 전기 신호를 그대로 잘 전달하는 것이 목적이다. ex)디지털 또는 아날로그로 신호 변경

  • 2계층-데이터링크계층
    : 네트워크 기기 간의 데이터 전송 및 물리주소(ex.MAC주소)를 결정하는 계층이다. 물리계층에서 들어온 전기 신호를 모아 알아볼 수 있는 데이터 형태로 처리한다. 이 계층에서는 주소 정보를 정의하고 출발지와 도착지 주소를 확인한 후, 데이터 처리를 수행합니다. ex)브리지 및 스위치, MAC주소

  • 3계층- 네트워크 계층
    :OSI 7게층에서 가장 복잡한 계층 중 하나로서 실제 네트워크 간에 데이터 라우팅을 담당한다. 이때 라우팅이란 어떤 네트워크 안에서 통신 데이터를 짜여진 알고리즘에 의해 최대한 빠르게 보낼 최적의 경로를 선택하는 과정을 라우팅이라고 한다. ex)IP패킷 전송

  • 4계층- 전송계층
    : 컴퓨터간 신뢰성 있는 데이터를 서로 주고받을 수 있도록 하는 서비스를 제공하는 계층이다. 하위 계층에서 신호와 데이터를 올바른 위치로 보내고 신호를 만드는 데 집중했다면 전송계층에서는 해당 데이터들이 실제로 정상적으로 보내지는지 확인하는 역할을 한다. 네트워크 계층에서 사용되는 패킷은 유실되거나 순서가 바뀌는 경우가 있는데, 이를 바로 잡아주는 역할도 담당한다. TCP/UDP연결

  • 5계층 - 세션계층
    : 세션 연결의 설정과 해제, 세션 메세지 전송 등의 기능을 수행하는 계층이다. 즉, 컴퓨터 간의 통신방식에 대해 결정하는 계층이라고 할 수 있다. 쉽게말해, 양 끝단의 프로세스가 연결을 성립하도록 도와주고, 작업을 마친 후에는 연결을 끊는 역할을 한다.

  • 6계층- 표현계층
    : 응용 계층으로 전달하거나 전달받는 데이터를 인코딩 또는 디코딩하는 계층이다. 일종의 번역기 같은 역할을 수행하는 계층이라고 볼 수 있다.
    ex) 문자코드, 압축, 암호화 등의 데이터 변환

  • 7계층- 응용계층
    : 최종적으로 사용자와의 인터페이스를 제공하는 계층으로 사용자가 실행하는 응용프로그램(ex.Google Chrome)들이 해당 계층에 속한다. ex)이메일 및 파일전송, 웹 사이트 조회

데이터 캡슐화

OSI 7계층 모델은 송신 측의 7계층과 수신 측의 7계층을 통해 데이터를 주고 받는다. 각 계층은 독립적이므로 데이터가 전달되는 동안에 다른 계층의영향을 받지 않는다.

데이터를 전송하는 쪽은 데이터를 보내기 위해서 상위계층에서 하위계층으로 데이터를 전달한다.
이 때 데이터를 상대방에게 보낼 때 각 계층에서 필요한 정보를 데이터에 추가하는데 이 정보를 헤더(데이터 계층에서는 트레일러)라고 한다. 그리고 이렇게 헤더를 붙여나가는 것을 캡슐화 라고 한다.

마지막 물리 계층에 도달하며 송신측의 데이터링크 계층에서 만들어진 데이터가 전기신호로 변환되어 수신측에 전송된다.

데이터를 받는 쪽은 하위 계층에서 상위계층으로 각 계층을 통해 전달된 데이터를 받게된다. 이때 상위 계층으로 데이터를 전달하며 각 계층에서 헤더를 제거해 나가는 것을 역캡슐화 라고 한다. 역캡슐화를 거쳐 마지막 응용계층에 도달하면 드디어 전달하고자 했던 원본 데이터만 남게된다.

TCP/IP 4계층 모델

TCP/IP 4계층 모델은 OSI 모델을 기반으로 실무적으로 이용할 수 있도록 현실에 맞춰 단순화된 무델이다. 쉽게말해 OSI 7계층 이론을 실제 사용하는, 즉 실용성에 기반을 둔 현대의 인터넷 표준이 TCP/IP 4계층이라고 할 수 있다.

TCP/IP 4계층모델은 다음가 같이 응용계층, 전송계층, 인터넷 계층, 네트워크 접속 계층으로 이루어져 있다. 각 계층에 대해 자세히 알아보자.

  • 4계층 - 어플리케이션 계층
    : OSI 계층의 세션계층, 표현계층, 응용계층에 해당하며 TCP/UDP 기반의 응용 프로그램을 구현할 때 사용한다. ex) FTP. HTTP, SSH
  • 3계층 - 전송계층
    : OSI 계층의 전송계층에 해당하며 통신 노드간의 연결을 제어하고, 신뢰성 있는 데이터 전송을 담당한다.
  • 2계층 - 인터넷 계층
    : OSI 계층의 네트워크 계층에 해당하며 통신 노드 간의 IP패킷을 전송하는 기능 및 라우팅을 담당한다.
  • 1계층 - 네트워크 인터페이스 계층
    : OSI 계층의 물리 계층과 데이터 링크 계층에 해당하며 물리적인 주소로 MAC을 사용한다. ex) LAN, 패킷망등에 사용됨

응용계층

앞서 살펴봤듯이 응용 계층은 네트워크 모델의 최상위 계층으로 최종적으로 사용자와의 인터페이스롤 제공하는 계층이다. 쉽게말해 사용자가 웹 서핑을 할 때에는 웹 브라우저를 사용하고 메일을 주고받을 때는 Outlook과 같은 메일 프로그램을 사용하는 것을 예시로 들 수 있다. 이렇게 응용게층은 이메일, 파일 전송, 웹 사이트 조회 등 어플리케이션에 대한 서비스를 사용자에게 제공하는 계층이다.


이때 어플리케이션은 서비스를 요청하는 측(사용자 측)에서 사용하는 어플리케이션과 서비스를 제공하는 측의 어플리케이션으로 분류된다.

일반적으로 서비스를 요청하는 측을 클라이언트, 서비스를 제공하는 측을 서버라고 한다. 웹 브라우저나 ㅁ일 프로그램은 사용자 측에서 사용하는 어플리케이션이니 클라이언트에 속하는 반면, 서비스를 제공하는 측인 서버에는 웹 서버 프로그램과 메일 서버 프로그램 등이 있다. 클라이언트와 서버 모두 응용계층에서 동작한다.

profile
최강 프론트엔드 개발자가 되고싶은 안유진 입니다

0개의 댓글