[Computer Network] OSI 7 Layer & TCP/IP


📝 Protocol Layer

  • 크고 복잡한 네트워크 시스템을 여러 개의 계층(Layer)으로 나누면 이해하기 쉽고, 통신의 흐름을 단계적으로 파악할 수 있다.
  • 여러 개의 레이어로 나눈 네트워크 시스템은 레이어드 아키텍쳐를 적용한 하나의 소프트웨어라고 할 수 있다.
  • 각 계층은 서로 독립적이어서 모듈화의 장점을 갖는다. 즉, 유지보수와 업데이트가 용이하다.

    • 예를들어 규모가 큰 프로그램을 여러개의 함수로 나누어 구현하면, 함수 단위로 유지보수와 업데이트를 진행할 수 있다는 장점이 있다. 이와 같은 맥락이다.
    • 유지보수의 장점 : 다른 계층과 상관없이 어떤 계층에 문제가 생기면 해당 계층만 수정하면 된다.
    • 업데이트의 장점 : 다른 계층과 상관없이 어떤 계층의 기술적 요소를 바꾸고 싶으면 해당 계층만 수정하면 된다.
  • 각 계층은 상위 계층에 서비스를 제공하고 하위 계층으로부터 서비스를 제공 받는다는 특징이 있다.
  • 계층화는 다음과 같은 단점을 갖는다.
    • 계층간 기능이 중복될 수 있다.
    • 계층간 많은 상호작용이 요구되기 때문에 오버헤드가 발생한다.
  • 다양한 계층의 프로토콜을 모두 합하여 프로토콜 스택(Protocol Stack)이라고 부른다.



📝 OSI 7 Layer Model


  • 국제표준기구(ISO)에서 1984년에 발표한 네트워크 구조 모델이다.
  • 네트워크를 7가지 계층으로 구분했다.


1계층 Physical Layer

  • 컴퓨터는 1과 0으로 통신한다.
  • 1과 0으로 표현되는 데이터를 물리적 매체를 통해 아날로그 신호로 바꿔서 전송한다.
  • 0과 1으로 표현되는 데이터를 아날로그 신호로 바꿔서 물리적 매체(전선)으로 흘려보내고,
  • 아날로그 신호가 들어오면 0과 1으로 데이터를 표현해서 물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고 받게 한다.
  • 정리해서, Physical Layer는 네트워크 통신을 위한 물리적인 표준을 정의하는 계층이다.
  • 두 호스트간의 전기적, 기계적, 절자적인 연결을 정의한다. (케이블 종류, 데이터 송수신 속도, 신호의 전기 전압 등 )


  • 데이터 링크 계층은 같은 네트워크에 있는 여러 대의 컴퓨터들이 데이터를 주고받게 해준다.
  • 즉, 패킷 스위치를 통해 데이터 전송을 라우터간 데이터 전송 기능을 제공한다.
  • 스위치로 들어오는 각각의 데이터들에 대해 heaer와 tailer 비트를 넣어줘서 데이터간 구분이 가능하도록 작업해주는데, 이를 프레이밍이라고 한다.
  • 물리적 계층을 통한 데이터 전송에 신뢰성을 제공한다.
  • 물리적 주소(MAC) 지정, 네트워크 토플로지, 오류통지, 프레임의 순차적 전송 흐름제어 등의 기능을 가진다.


3계층 Network Layer (전송 단위 : Packet, 주소 단위 : IP)

  • 라우팅을 통해 패킷의 최적 이동경로를 결정하고 포워딩으로 패킷을 다음 라우터에 전송한다.
  • 호스트간 데이터 전송을 한다.


4계층 Transport Layer (전송 단위 : Segment, 주소 단위 : Port)

  • 데이터를 분할하여 전송하고, 수신할 때 다시 합치는 과정을 담당한다.
  • 대표적인 프로토콜 : TCP, UDP


5계층 Session Layer (전송 단위 : Massage)

  • 통신을 하는 두 host간 최초 연결을 수행하고 연결 유지를 한다.
  • 통신을 하는 두 hsost 사이의 세션을 열고, 닫고, 관리하는 기능을 담당한다. 동기화 기능과 대화 기능이 있다.
  • 동기화 기능
    • 동기란 통신 양단에서 서로 동의하는 논리적인 공통처리 지점으로써, 동기점을 설정하기위해 사용된다.
    • 동기점이 설정된다는 의미는 그 이전까지의 통신은 서로 완벽히 처리했다는 것을 뜻한다.
    • 동기점은 오류 복구에 사용된다. 동기점 이전 과정은 복구가 필요 없고, 동기점 이후 처리 과정에 대한 복구 절차가 진행된다.
  • 대화 기능
    • 대화 기능은 데이터 전송 과정을 의미한다.
    • 시간 경과에 따라 순차적으로 동기점을 부여하여 신뢰성 보장 기능을 단계적으로 구현할 수 있게 된다.
    • 의도적으로 일시 정지하여 나중에 이어서 작업하는 것이 가능하다.
  • 데이터 송수신 방식(Duplex), 반 이중 방식(Half Duplex), 전 이중 방식(Full Duplex)의 통신과 함께, 체크 포인팅과 유휴, 종료, 다시 시작 과정을 수행한다.
  • 대표적인 프로토콜 : SSL(TLS)


6계층 Presentation Layer (전송 단위 : Massage)

  • 데이터의 Format을 결정하는 계층이다.
    • EX) ASCII, EBCDIC, CIF, JPEG, AVI, MPEG 등
  • 송신자와 수신자간에 데이터표현이 일관 되도록 변환, 압축, 암호화 기능을 제공한다.


7 계층 Application Layer (전송 단위 : Massage)

  • 사용자(사람 또는 소프트웨어)가 네트워크에 접근할 수 있도록 User Interface를 제공한다.
  • 대표적인 프로토콜 : HTTP(80), FTP(20,21), Telnet(23), SMTP(25), DNS(53), TFTP(69)



📝 TCP/IP 4 Layer


  • 현대의 인터넷은 OSI 7모델이 아니라 TCP/IP 모델을 따르고 있다.
  • TCP/IP는 인터넷 표준 프로토콜 스택이다.
  • 현재는 TCP/IP 오리지날보다 TCP/IP Updated가 더 많이 사용된다.
  • 상위 계층인 TCP는 데이터를 패킷으로 나누어 순서대로 전송하는 것을 보장하고 수신된 패킷들을 원본 데이터로 재조립하는 일을 담당한다.
  • 하위 계층인 IP는 각 패킷의 IP 주소를 통해 패킷들이 목적지에 정확하게 도달할 수 있게한다.



🔎 출처 & 더 알아보기

  • 컴퓨터 네트워킹 하향식 접근
  • http://pigbrain.github.io/network/2017/03/08/OSI7_on_Network
  • https://goitgo.tistory.com/25
  • https://goodgid.github.io/OSI-7-Layer/
  • https://www.youtube.com/watch?v=NOFWq2mWeGA