본문 바로가기
Computer Science

OSI 7 계층 모델

by Devry 2023. 9. 24.

OSI 7 계층 이란?

네트워크 통신이 일어나는 과정을 7단계로 나눈 것입니다.

OSI 7 계층

물리계층

0과 1의 나열을 아날로그 신호로 바꾸어 전선으로 흘려보내고(인코딩)
아날로그 신호가 들어오면 0과 1의 나열로 해석하여(디코딩)
물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고받을 수 있게 해주는 모듈입니다
1 계층 모듈은 하드웨어적으로 구현되어 있습니다. PHY칩, 더미 허브, 리피터(증폭기), 랜, 선로

Data Link 계층

같은 네트워크에 있는 여러 대의 컴퓨터들이 데이터를 주고받기 위해서 필요한 모듈입니다
framing은 data-link layer에 속하는 작업들 중 하나로 1111 0000 등으로 데이터를 감싸는 작업입니다.
1 계층 모듈과 마찬가지로 하드웨어적으로 구현되어 있습니다. (랜카드, 브릿지, 스위치(똘똘한 허브))
헤더 + 패킷 => 프레임

네트워크 계층

데이터에 목적지 ip주소를 붙인 것을 패킷이라고 합니다
수많은 네트워크의 연결로 이루어진 inter-network 속에서 아딘가에 있는 목적지 컴퓨터로 데이터를 전송하기 위해 ip주소를 이용해서 길을 찾고(라우팅) 자신 다음의 라우터에게 데이터를 넘겨주는 과정(포워딩)입니다.
운영체제의 커널에 소프트웨어적으로 구현되어있습니다. (라우터)
헤더 + 세그먼트 => 패킷

프로토콜

IP: 주소로 빠르게 전달하는 데에 사용되고 비신뢰성, 비연결성의 특징을 갖습니다.
ICMP: 네트워크 통신 문제를 진단하는 네트워크 계층 프로토콜
ARP: IP => MAC
RARP: 프로토콜 MAC => IP

전송 계층

Port 번호를 사용하여 도착지 컴퓨터의 최종 도착지인 프로세스에까지 데이터가 도달하게 하는 모듈입니다

포트 번호는 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 가져가야 하는 정수 값입니다.
송신자는 데이터를 보낼 때 데이터를 받을 수신자 컴퓨터에 있는 프로세스의 포트 번호를 붙여서 보냅니다.
(데이터 전송자는 포트 번호까지 알고있어야합니다)

운영체제의 커널에 소프트웨어적으로 구현되어 있습니다

헤더 + 데이터 => 세그먼트

종단 간 신뢰성 있는 정보전달에 사용됩니다. (오류 흐름제어. tcp/udp)

응용 계층

왜 session, presentation 계층은 건너뛰고 응용계층일까요?
사실 현대 인터넷은 osi모델이 아니라 마찬가지로 네트워크 시스템 모델인 TCP/IP 모델입니다.
그 이유는 osi모델이 시장 경쟁에서 졌기 때문이죠.

TCP/IP 모델은 OSI 7 계층에서
Application, Presentation, Session Layer => Application Layer
Network Layer => Internet Layer
Physical, Data Link => Network Interface

로 바뀐 차이가 있습니다.

업데이트된 TCP/IP이 Physical, Data Link , Network, Transport, Application

TCP/IP 소켓 프로그래밍

운영체제의 Transport Layer에서 제공하는 API를 활용해서 통신 가능한 프로그램을 만드는 것입니다.
누구나 자신만의 Application Layer 인코더, 디코더를 만들 수 있다는 의미이죠.(프로토콜)

(대표적인 Application Layer 프로토콜이 HTTP)

 

소프트웨어 아키텍처 중에 Layered Architecture가 있는데 대표적인 게 이 네트워크 시스템입니다
즉, 네트워크 시스템은 하나의 커다란 소프트웨어라고 할 수 있죠

이 네트워크 소프트웨어의 구조를 설명하는 게 osi 7 계층 모델입니다

 

생략한 계층의 특성들을 간단하게 표현하면 다음과 같습니다.

표현계층: 암호, 복호화, 데이터 표현
세션계층: 연결설정, 로그인

 

 

참고: 10분 테코톡 히히의 OSI 7 Layer

 

 

 

댓글