Published on

[ Network ] OSI 7 Layer

Authors
  • avatar
    Name
    유사공대생
    Twitter

OSI 7 Layer

OSI 7 Layer는 네트워크 통신을 7단계로 나눠 규격화한 모델이다. 이 모델은 통신이 이루어지는 과정을 계층별로 나누어 관리하므로, 각 계층의 독립성이 보장되고 유지보수 및 문제 해결이 용이하게 설정되어 있다.

1. 물리 계층 (Physical Layer)

  • 요약: 전기 신호를 이용하여 데이터를 전송하는 역할을 수행한다. 케이블, 허브, 리피터와 같은 장비가 여기에 해당한다.

OSI 모델의 가장 하위 계층은 물리 계층이다. 물리 계층은 데이터를 전송하고 수신하기 위한 하드웨어 수단을 지정하며, 케이블, 카드 및 물리적인 측면을 정의하는 역할을 한다. Fast Ethernet, RS232 및 ATM은 물리 계층 구성 요소를 갖는 프로토콜이다.

물리 계층은 네트워크의 물리적 특성을 다룬다. 이는 모든 것을 연결하는 데 사용되는 케이블의 종류, 사용되는 커넥터의 종류, 케이블의 최대 길이 등을 포함한다. 예를 들어, 100BaseT 케이블의 Ethernet 표준은 무선 쌍 케이블의 전기적 특성, 커넥터의 크기와 형태, 케이블의 최대 길이를 지정한다.

물리 계층은 또한 네트워크 노드 간에 데이터를 전송하는 데 사용되는 신호의 전기적 특성을 지정한다. 이 신호에는 '0' 또는 '1'의 이진 특성 이외에는 특별한 의미가 없다. OSI 모델의 상위 계층에서는 물리 계층에서 전송되는 비트에 의미를 할당한다.

네트워크에서 매우 중요한 종류의 물리 계층 장치 중 하나는 네트워크 TAP(Network TAP)이다. 네트워크 TAP은 네트워크 링크의 트래픽을 복사하고, 트러블슈팅 및 분석 도구로 복사본을 리디렉션하는 하드웨어 장치로서, 트래픽 흐름을 중단시키거나 장애점을 도입하지 않고 작동한다. 심지어 TAP이 전원을 잃더라도 작동한다.

  • 요약: 네트워크 기기 간의 물리적 연결과 예러 관리를 담당한다. 이 계층에서는 맥(MAC) 주소를 사용하여 프레임 전송을 담당하며, 스위치와 브릿지 같은 장비가 포함된다.

데이터 링크 계층은 네트워크를 통해 전송할 데이터에 의미나 지능을 부여하기 시작하는 곳이다. 데이터 링크 계층의 프로토콜은 전송할 패킷의 크기, 패킷을 수신자에게 전달하기 위한 주소 지정 방법, 그리고 동시에 여러 노드가 수신자에게 패킷을 전송하지 않도록 하는 방법과 같은 문제를 해결한다.

데이터 링크 계층은 데이터를 전송한 내용과 수신한 내용이 동일한지 확인하기 위해 오류 검출 및 수정 기능을 제공한다. 오류를 수정할 수 없는 경우, 데이터 링크 표준은 노드에게 오류를 알리고 오류가 있는 데이터를 재전송하는 방법을 지정해야 한다.

각 노드(네트워크 인터페이스 카드 - NIC)는 MAC 주소라고도 하는 데이터 링크 계층의 주소를 가지고 있다. 이는 제조업체에서 할당한 실제 하드웨어 주소이다. 'ipconfig /all' 명령을 실행하여 기기의 MAC 주소를 찾을 수 있다.

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

  • 요약: IP 주소를 이용하여 패킷의 원점과 목적지를 결정하고, 경로를 설정한다. 라우터와 같은 장비가 이 계층에서 활용된다.

3계층은 네트워크 메시지를 네트워크를 통해 라우팅하는 역할을 담당한다. 네트워크 계층의 중요한 기능은 논리 주소 지정이다. 각 네트워크 장치에는 MAC 주소라고 하는 물리적 주소가 있다(2계층 참조). 컴퓨터에 NIC를 구입하면 해당 카드의 MAC 주소는 변경할 수 없다. 그러나 다른 주소 체계를 사용하여 컴퓨터와 다른 장치를 참조하려면 3계층인 네트워크 계층에서 '논리 주소'라고 불리는 것을 설정할 수 있다. 논리 주소는 할당한 주소를 사용하여 네트워크 장치가 네트워크 상에서 접근할 수 있는 위치를 제공한다.

논리 주소는 IP 또는 IPX와 같은 네트워크 계층 프로토콜에서 생성하고 사용할 수 있다. 네트워크 계층 프로토콜은 논리 주소를 MAC 주소로 변환한다.

예를 들어, 네트워크 계층 프로토콜로 IP를 사용한다면, 네트워크의 장치들은 107.210.76.30과 같은 IP 주소를 할당받는다. IP 프로토콜은 실제로 패킷을 전송하기 위해 3계층에서 작동하기 때문에, IP는 장치의 IP 주소를 올바른 MAC 주소로 변환해야 한다. 'ipconfig /all' 명령을 사용하여 컴퓨터나 다른 장치의 IP 주소를 찾을 수 있다.

IP 주소가 해결되면 이제 패킷을 목적지로 이동시키기 위해 경로를 설정해야 한다. 라우팅은 한 네트워크의 패킷이 다른 네트워크에 있는 컴퓨터로 전송되어야 할 때 사용된다.

4. 전송 계층 (Transport Layer)

  • 요약: 서버와 클라이언트 간의 신뢰성 있는 데이터 전송을 관리한다. 이 계층에서는 TCP 및 UDP 프로토콜이 활용되어, 데이터를 세그먼트로 나누고 전송 관리를 수행한다.

전송 계층(Transport Layer)은 한 네트워크 컴퓨터가 다른 네트워크 컴퓨터와 통신하는 기본적인 계층이다. 전송 계층에는 가장 인기 있는 네트워킹 프로토콜 중 하나인 전송 제어 프로토콜 (TCP)가 있다. 전송 계층의 주요 목적은 패킷이 네트워크를 신뢰성 있고 오류 없이 이동하도록 보장하는 것이다. 전송 계층은 네트워크 장치 간의 연결을 수립하고 패킷 수신을 확인하며, 도착할 때 수신되지 않거나 손상된 패킷을 재전송하여 이를 수행한다.

많은 경우, 전송 계층 프로토콜은 큰 메시지를 네트워크를 효율적으로 전송할 수 있는 작은 패킷으로 분할한다. 전송 계층 프로토콜은 수신 측에서 메시지를 재조립하여 한 번의 전송에 포함된 모든 패킷이 수신되고 데이터가 손실되지 않도록 한다.

5. 세션 계층 (Session Layer)

  • 요약: 클라이언트와 서버 간의 세션을 구축, 유지 및 종료하는 역할을 담당한다.

세션 계층(Session Layer)은 네트워크 노드 간의 연결을 설정하고 관리하며 종료한다. 데이터를 네트워크를 통해 전송하기 전에 세션이 설정되어야 한다. 세션 계층은 이러한 세션을 올바르게 설정하고 유지하는 역할을 한다. 이 계층은 전이중(full-duplex), 반이중(half-duplex) 또는 단방향(simples) 동작을 제공하며, 체크포인팅(check-pointing), 연기(adjournment), 종료(termination), 재시작(restart) 절차를 수립한다. OSI 모델에서는 이 계층을 TCP 프로토콜의 세션 정상 종료(graceful close)와 세션 체크포인팅 및 복구(session check-pointing and recovery)의 책임으로 지정했으며, 이는 일반적으로 인터넷 프로토콜 스위트에서 사용되지 않는다. 세션 계층은 원격 프로시저 호출(remote procedure calls)을 사용하는 응용 환경에서 명시적으로 구현되는 경우가 많다.

6. 표현 계층 (Presentation Layer)

  • 요약: 데이터를 사용자와 애플리케이션에 적합한 형태로 변환하고, 암호화 및 압축 처리를 수행한다.

표현 계층(Presentation Layer)은 네트워크를 통해 전송되는 데이터를 한 표현 형식에서 다른 형식으로 변환하는 역할을 담당한다. 예를 들어, 표현 계층은 고급 압축 기술을 적용하여 네트워크를 통해 전송될 때 정보를 나타내는 데 필요한 데이터 바이트 수를 줄일 수 있다. 전송의 다른 측면에서는 전송 계층이 데이터를 압축 해제한다.

이 계층은 응용 프로그램과 네트워크 형식 간의 데이터 표현의 차이로부터 독립성을 제공하기 위해 응용 프로그램에서 네트워크 형식으로 번역하고 그 반대로 작동한다. 표현 계층은 데이터를 응용 프로그램 계층에서 수용 가능한 형식으로 변환하는 작업을 수행한다. 이 계층은 데이터를 네트워크를 통해 전송하기 위해 형식화하고 암호화하여 호환성 문제로부터 자유를 제공한다. 때로는 구문 계층(syntax layer)이라고도 다.

7. 응용 계층 (Application Layer)

  • 요약: 사용자 인터페이스 및 응용프로그램이 이 계층에서 실행되어, 사용자와 시스템 간의 상호작용을 가능하게 한다.

OSI 모델의 가장 높은 계층인 응용 계층(Application Layer)은 응용 프로그램이 네트워크와 통신하기 위해 사용하는 기술을 다룬다. 이 계층의 이름은 조금 혼동스러울 수 있다. 왜냐하면 응용 프로그램(예: Excel이나 Word와 같은)은 실제로 이 계층의 일부가 아니기 때문이다. 대신, 응용 계층은 응용 프로그램이 프로그래밍 인터페이스를 사용하여 네트워크 서비스를 요청하는 수준을 나타낸다. 가장 일반적으로 사용되는 응용 계층 프로토콜 중 하나는 HTTP이다. HTTP는 하이퍼텍스트 전송 프로토콜(HyperText Transfer Protocol)의 약자로, 월드 와이드 웹의 기초이다.

OSI 7 Layers Explained the Easy Way