OSI 7계층

1계층 물리계층


1계층(물리계층)은 데이터를 0과 1의 비트로 표현하고, 이를 전선으로 아날로그 신호 형태로 전달합니다. 이 과정에서 전압의 변화를 이용하여 데이터를 전송합니다. 아래는 물리계층의 데이터 전송 방식을 단계별로 설명합니다.

  • 상단 그래프:

    • 5Hz의 주파수를 가진 신호입니다.

    • 전선의 대역폭(5Hz~8Hz) 내에 있기 때문에 정상적으로 전달됩니다.

  • 하단 그래프:

    • 10Hz의 주파수를 가진 신호입니다.

    • 대역폭 범위를 초과했기 때문에 전선에서 손실됩니다.

  • 위와같이 수직 수평이 된 주파수를 가진 신호는 무한대의 주파수를 가지게 되므로 안되고

  • 위와같이 곡선으로 완만한 주파수를 가진 신호만 전달해야합니다

1. 디지털 데이터와 전압의 관계

  • 디지털 데이터: 컴퓨터 내부 데이터는 이진수(0과 1)로 이루어져 있습니다.

  • 전압 변환: 전선을 통해 데이터를 보내기 위해 0과 1을 특정 전압으로 변환합니다.

    • 1: +5V (전압 상승)

    • 0: -5V (전압 하강)


2. 아날로그 신호로의 변환 과정

물리계층에서는 디지털 신호를 아날로그 신호로 변환하여 전송합니다. 이는 데이터가 전선이라는 아날로그 매체를 통해 손실 없이 이동하도록 하기 위함입니다.


3. 변조 방식 예시

NRZ (Non-Return-to-Zero) 방식

  • 설명: 0과 1을 각각 고유의 전압으로 표현하는 방식.

    • 1: +5V로 유지

    • 0: -5V로 유지


4. 전송 신호의 실제 예

예를 들어, 아래와 같은 데이터를 전송한다고 가정합니다.

디지털 데이터: 0 1 0 1 1 0 0 1 이 데이터를 NRZ 방식으로 전송하면, 전선의 전압 변화는 다음과 같이 나타납니다.


아래는 인코더디코더를 코드블록으로 단순하게 표현한 다이어그램입니다.

2. 데이터 링크 계층

1. 문제: 여러 대의 컴퓨터 연결

기본적으로 컴퓨터 간 통신을 위해 전선을 연결해야 하지만, 여러 컴퓨터를 연결할 경우 효율적인 방법이 필요합니다.

문제 상황:


2. 해결 방법: 공유 전선과 허브 사용

:

전선 공유:

  • 데이터를 모든 컴퓨터로 동시에 전송하는 방식.


문제점:

  • 모든 컴퓨터가 데이터를 받아 신호를 해석할 수 있음 → 데이터 충돌.


3. 스위치 사용: 데이터 목적지 지정

스위치란?

스위치는 데이터를 보내는 컴퓨터가 지정한 목적지에만 데이터를 전달하는 장치입니다.

  • 스위치가 데이터를 분석하여 컴퓨터 B만 데이터를 받게 함.

  • 효율적이고 보안이 강화된 데이터 전송 가능.


4. 여러 네트워크 연결: 라우터 사용

라우터란?

라우터는 서로 다른 네트워크를 연결하여 데이터를 전송합니다.

  • 라우터는 컴퓨터 B의 IP 주소를 읽어 올바른 네트워크로 데이터를 전송.

라우터 구성:


5. 인터넷 연결: 전 세계 라우터 연결

:


인터넷 구조:

  • 여러 라우터들이 연결되어 모든 네트워크를 통합.


6. 데이터 링크 계층: 데이터 구분 (Framing)

문제: 데이터를 구분하지 않으면 해석 불가

해결: 데이터 앞뒤에 구분자 추가

데이터 링크 계층 과정:



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


데이터 전송 시나리오

  • A 컴퓨터에서 B 컴퓨터로 데이터를 보내고 싶습니다.

  • 이를 위해 IP 주소를 사용하여 데이터를 정확한 목적지로 전달합니다.

  • A의 IP를 51.12.42.51

  • B의 IP를 61.23.51.25

1. 데이터에 목적지 IP 주소 추가


2. 라우터 가에서의 동작


3. 라우터 마에서의 동작


4. 최종 전달


3계층 인코딩 및 디코딩


4계층: 트랜스포트 레이어 (Transport Layer)


데이터 전송 시나리오

  • 데이터를 받는 컴퓨터에 여러 프로그램(프로세스)이 실행 중입니다.

  • 전송 계층은 포트번호를 사용하여 데이터를 정확한 프로세스에 전달합니다.


1. 포트번호 추가 및 데이터 전송


데이터 전달 과정

  1. 데이터를 보내는 컴퓨터:

    • 4계층 인코더: 데이터에 목적지 프로세스의 포트번호를 추가.

      • 예: 포트번호: 8000 (줌), 포트번호: 9000 (카카오톡).

    • 3계층 인코더: 데이터에 목적지 IP 주소를 추가.

    • 2계층 인코더: 데이터에 프레임(구분자)을 추가.

    • 1계층 인코더: 데이터를 아날로그 신호로 변조하여 전송.

  2. 전송:

    • 데이터를 전선으로 전송 (아날로그 신호 형태).

  3. 데이터를 받는 컴퓨터:

    • 1계층 디코더: 아날로그 신호를 디지털 신호로 복원.

    • 2계층 디코더: 프레임 제거.

    • 3계층 디코더: 목적지 IP 주소를 확인.

    • 4계층 디코더: 포트번호를 확인하여 데이터를 해당 프로세스에 전달.

      • 포트번호 8000: 줌

      • 포트번호 9000: 카카오톡


포트번호를 활용한 데이터 구분


트랜스포트 레이어 요약

  1. 포트번호 추가:

    • 데이터를 특정 프로세스와 연결.

    • 한 컴퓨터에서 실행 중인 여러 프로그램이 데이터를 구분해서 받을 수 있도록 도와줌.

  2. 포트번호 사용 예시:

    • 줌: 8000

    • 카카오톡: 9000

  3. 데이터 흐름:

    • 데이터는 포트번호IP 주소를 기반으로 정확한 프로세스까지 도달.


코드블럭 표현


Last updated