눈송이의 개발생활

[Network]OSI 7계층 & TCP/IP 4계층 본문

Computer Science/Network

[Network]OSI 7계층 & TCP/IP 4계층

꾸지새미언니

OSI모델과 TCP/IP모델

초기에 컴퓨터들은 자신의 업체 장비들끼리만 연결되어 있어 통신이 불가능했다. 모든 시스템이 상호 연결되어 데이터를 주고 받기 위해서는 통신 규격이 필요했는데, OSI 모델과 TCP/IP 모델이 대표적이다.

 

TCP/IP 프로토콜은 OSI 모델보다 먼저 개발되었다. 그러므로 TCP/IP 프로토콜의 계층은 OSI 모델의 계층과 정확하게 일치하지 않는다. 두 모델 모두 계층형 이라는 공통점을 가지고 있으며 TCP/IP는 인터넷 개발 이후 계속 표준화되어 신뢰성이 우수인 반면, OSI 7 Layer는 표준이 되기는 하지만 실제적으로 구현되는 예가 거의 없어 신뢰성이 저하되어있다.

 

OSI 7 Layer는 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 사용되는 반면에 실 질적인 통신 자체는 TCP/IP 프로토콜을 사용한다.

OSI 7계층

통신이 일어난 과정을 단계별로 파악할 수 있어서 계층을 나누었다. 7개의 단계 중 특정 레이어에 이상이 생기면, 다른 단계에 영향을 미치지 않고 문제가 있는 곳만 고칠 수 있다. 흐름을 한 눈에 보기 쉽고, 이해하기에도 쉬운 모델이다.

1️⃣ 물리 계층 (Physical Layer)

  • 시스템 간의 물리적인 연결과 전기 신호를 변환 및 제어
  • 데이터의 종류, 에러 유뮤 등은 신경쓰지 않음
  • 전송 단위 : Bit
  • 대표적인 장비 : 통신 케이블, 리피터, 허브

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

  • 네트워크 기기 간의 데이터 전송 및 물리 주소 결정
  • Point to Point 간 신뢰성있는 전송을 보장하기 위한 계층
    • CRC 기반의 오류 제어와 흐름 제어 필요
    • 물리 계층에서 발생할 수 있는 오류 제어, 수정
  • MAC 주소로 통신
  • 전송 단위 : Frame
  • 대표적인 장비 : 브리지, 스위치
  • ex) 이더넷

3️⃣ 네트워크 계층 (Network Layer)

  • 다른 네트워크와 통신하기 위한 경로 설정 및 논리 주소 결정
  • 라우팅, 흐름 제어, 세그멘테이션, 오류 제어, 인터네트워킹 수행
  • 경로 선택 -> 주소 결정 -> 경로에 따라 패킷 전달
  • IP주소(관리자가 직접 주소 할당)의 구조를 가지며, 계층적
  • 전송 단위 : Datagram (Packet)

4️⃣ 전송 계층 (Transport Layer)

  • 신뢰할 수 있는 통신 구현
  • End to End의 사용자가 신뢰성있는 데이터를 주고 받게 해줌
  • 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않게 해줌
  • 데이터 전송을 위해 port번호 사용 (대표적인 프로토콜 : TCP, UDP)
  • 전송 단위 : Segment

5️⃣ 세션 계층 (Session Layer)

  • 양 끝 담의 응용 프로세스가 통신을 관리하기 위한 방법 제공
  • TCP/IP 세션을 만들고 없애는 책임을 짐
  • 통신장치 간 상호작용 및 동기화 제공
  • 연결 세션에서 데이터 교환과 에러 발생 시의 복구 관리

6️⃣ 표현 계층 (Presentation Layer)

  • 데이터를 어떻게 표현할지 정하는 역할
  • 3가지 기능
    1. 송신자에게서 온 데이터 해석 : 응용계층 데이터 부호화, 변화
    2. 수신자가 데이터 압축 풀 수 있는 방식으로 데이터 압축
    3. 데이터 암호화 or 복호화

7️⃣ 응용 계층 (Application Layer)

  • 사용자와 가장 밀접한 계층 -> 인터페이스 역할
  • 응용 프로세스 간의 정보 교환 담당
  • ex) 이메일, 인터넷, 파일전송 등

 

TCP/IP 4계층

현재의 인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 통신 규약의 모음이다. 하드웨어, 운영체제, 접속 매체에 관계없이 동작할 수 있는 개방성을 가진다.

1️⃣ 네트워크 접속 계층 (Network Access Layer)

  • OSI에서 물리 계층 + 데이터 링크 계층
  • 하드웨어적인 요소와 관련된 모든 것을 지원하는 계층
  • 수신측 : 데이터 링크 계층에서 추가된 헤더를 제거하여 상위 계층으로 전달

2️⃣ 인터넷 계층 (Internet Layer)

  • OSI에서 네트워크 계층
  • 상위 Transport 계층으로부터 받은 데이터에 IP패킷 헤더를 붙여 IP 패킷 헤더를 만들고 전송하는 것

3️⃣ 전송 계층 (Transport Layer)

  • OSI에서 전송 계층
  • 시스템의 논리 주소와 포트를 갖고 있어 각 상위 계층의 프로세스를 연결해서 통신
  • 정확한 패킷 전송을 보장하는 TCP와 정확한 전송을 보장하지 않은 UDP 프로토콜 사용

4️⃣ 응용 계층 (Application Layer)

  • OSI에서 세션 계층, 표현 계층, 응용 계층
  • 표준적 인터페이스 제공

 

참고
https://shlee0882.tistory.com/110  https://goitgo.tistory.com/25 
https://velog.io/@cgotjh/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-OSI-7-%EA%B3%84%EC%B8%B5-OSI-7-LAYER-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90-%EA%B0%81-%EA%B3%84%EC%B8%B5-%EC%84%A4%EB%AA%85

 

Comments