Network

OSI 7계층과 TCP/IP 4계층

뮤셍 2023. 4. 8. 16:12

OSI 7계층과 TCP/IP 4계층

과거에는 통신용 규약이 표준화 되지 않아 각 벤더에서 별도로 개발을 했기 때문에 호환되지 않는 시스템이나 애플리케이션이 많았고, 서로 통신하기에 어려움이 있었다.

때문에 이를 ARPANET에서 TCP/IP 4계층으로 정리하고, OSI 7계층으로 세분화 되면서 네트워크의 동작을 나누어 설명하고 있다.

 

그러하여 이후엔 네트워크 프로토콜 전체를 개발하는 대신, 계층별로 프로토콜을 개발하여 네트워크 구성 요소들을 모듈처럼 사용할 수 있게 되었다.

두 계층 모델 모두 물리적인 계층에 가까운 부분을 하위 계층(Lower Layer)이라고 부르며, 개발자가 직접 접하게 되는 애플리케이션에 가까운 부분을 상위 계층(Upper Layer)이라고 부른다.

 

이는 쉽게 말해,

개발자의 측면에서 네트워크를 바라보면 물리~응용 순의 하향식으로 바라보게 되고,

엔지니어의 측면에서 네트워크를 바라볼 땐 응용~물리 순의 상향식으로 바라보게 되지만,

 

어느 측면에서 네트워크를 바라보건 물리 계층은 1계층, 응용 계층은 7계층이라고 생각하면 된다.


OSI 7계층

OSI 7계층은 데이터 플로우 계층과 애플리케이션 계층으로 구분할 수 있다.

이는 데이터를 만드는 애플리케이션 부분과 이 데이터를 잘 전달하는데 집중하는 하부 계층으로 구분하는 것에 목적이 있다.

1계층 - 물리 계층 (Physical Layer)

  • 주로 물리적 연결과 관련된 정보를 정의
  • 전기 신호를 전달하는 데 초점을 두고, 들어온 전기 신호를 그대로 잘 전달하는 것이 목적

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

  • 물리 계층에서 들어온 전기 신호를 모아 알아 볼 수 있는 데이터 형식으로 처리
  • 주소 정보를 정의하고 출발지와 도착지 주소를 확인한 후, 데이터 처리를 수행

3계층 - 네트워크 계층 (Network Layer)

  • IP주소와 같은 논리적인 주소를 정의
  • 라우터를 통해 정의한 IP주소를 이해하고, 이를 사용해 최적의 경로를 찾아 패킷을 전송

4계층 - 전송 계층 (Transport Layer)

  • port 번호, 전송방식(TCP/UDP)을 결정
  • 해당 데이터들이 실제로 정상적으로 보내지는지 확인하는 역할
  • 네트워크 계층에서 사용되는 패킷이 유실되거나 순서가 바뀌는 경우가 있는 데, 이를 바로 잡아주는 역할도 담당
  • 신호를 분산하고 다시 합치는 과정을 통해 에러와 경로를 제어

5계층 - 세션 계층 (Session Layer)

  • 양 끝 단의 프로세스가 연결을 성립하도록 도와주고, 작업을 마친 후에는 연결을 끊는 역할
  • TCP/IP 세션 체결, 포트번호를 기반으로 통신 세션 구성

6계층 - 프레젠테이션(표현) 계층 (Presentation Layer)

  • 일종의 번역기 같은 역할을 수행
  • 전송하는 데이터의 표현방식을 결정
  • MIME 인코딩이나 암호화, 압축, 코드 변환과 같은 동작이 이루어짐

7계층 - 애플리케이션(응용) 계층 (Application Layer)

  • 애플리케이션의 프로세스를 정의하고 서비스를 수행
  • 이 계층에서 사용되는 프로토콜을 다양한 종류가 있지만, 대표적으로 HTTP, FTP, SMTP 등이 있음

TCP/IP 4계층

TCP/IP는 현재 수많은 프로세스들이 인터넷으로 통신하는 데 있어 가장 기반이 되는 프로토콜로, 실제 대다수 프로세스는 TCP와 IP로 통신하고 있다.

이는 인터넷 프로토콜 그 자체를 표현하는 용어이기도 했고, 다양한 프로토콜이 개발된 현 시점에도 사실상 인터넷 프로토콜을 대표하는 용어로 사용중이다. 이를 이용해 컴퓨터를 연결하는 체계를 이더넷(Ethernet)이라고 부른다.

1계층 - 네트워크 액세스 계층 (Network Access Layer OR Network Interface Layer)

  • OSI 7계층의 물리 계층과 데이터 링크 계층에 해당
  • 물리적인 주소로 MAC을 사용하며 LAN, 패킷망 등에 사용됨

2계층 - 인터넷 계층 (Internet Layer)

  • OSI 7계층의 네트워크 계층에 해당
  • 통신 노드 간의 IP 패킷을 전송하는 기능과 라우팅 기능을 담당함

3계층 - 전송 계층 (Transport Layer)

  • OSI 7계층의 전송 계층에 해당
  • 통신 노드 간의 연결을 제어하고, 신뢰성 있는 데이터 전송을 담당함

4계층 - 응용 계층 (Application Layer)

  • OSI 7계층의 세션 계층, 표현 계층, 응용 계층에 해당
  • TCP/UDP 기반의 응용 프로그램을 구현할 때 사용됨