[network] OSI 7 계층

📝 1yangsh·2022년 2월 2일
0

OSI 7 Layer


1. Physical Layer

  • 0과 1의 나열을 아날로그 신호로 바꾸어 전선에 흘려보내고 (encoding)
  • 아날로그 신호가 들어오면 0과 1의 나열을 해석하여 (decoding)
  • 물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고받을 수 있게 해주는 모듈 (module)

Physical Layer 기술은 어디에 적용이 되어있을까?

  • PHY 칩
  • 사실 1계층 모듈은 하드웨어적으로 구현되어 있다.

  • 같은 네트워크에 있는 여러 대의 컴퓨터들이 데이터를 주고받기 위해서 필요한 모듈
  • Framing은 Data-Link layer 에 속하는 작업 중 하나
  • 보내는 데이터에 앞뒤에 구분자를 두어 자신의 데이터임을 표시 (Framing)

Data-Link Layer 기술을 어디에 적용이 되어있을까?

  • 랜카드
  • 1계층 모듈처럼 하드웨어적으로 구현되어 있다.

3. Network Layer

  • 데이터가 목적지 주소를 붙힌다.
    목적지 주소가 있는 데이터를 패킷(Packet)
  • 수 많은 네트워크들의 연결로 이루어지는 inter-network 속에서 어딘가에 있는 목적지 컴퓨터로 데이터를 전송하기 위해, IP 주소를 이용하여 길을 찾고(routing),
  • 자신 다음의 라우터에게 데이터를 넘겨 주는 것(forwarding)

Network Layer 기술을 어디에 적용이 되어있을까?

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

4. Transport Layer

  • 여러개의 프로그램들이 실행되고(프로세스) 그 프로세스에게 전달하려는 데이터들이 있을 때 어떤 데이터를 어떤 프로세스에게 줘야할 지 컴퓨터가 어떻게 알 수 있을까?
  • 이를 위해 먼저 데이터를 받고자 하는 프로세스들은 포트 번호(Port Number)을 가져야 한다.
  • 한편, 송신자는 데이터를 보낼 때 데이터를 받을 수신자 컴퓨터에 있는 프로세스의 포트 번호를 붙여서 보낸다.

결국 Transport Layer 란,

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

Transport Layer 기술을 어디에 적용이 되어있을까?

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

사실 현대의 컴퓨터의 모델은 OSI모델이 TCP/IP 모델과의 점유 시장에서 졌기에 OSI 모델이 아니라 TCP/IP 모델을 따르고 있다.

5. Application Layer

  • TCP/IP 소켓 프로그래밍
    운영체제의 Transport Layer에서 제공하는 API를 활용해서 통신 가능한 프로그램을 만드는 것 (= 네트워크 프로그래밍)
    • 소켓 프로그래밍 만으로 클라이언트, 서버 프로그램을 따로 만들어서 동작 시킬 수 있음
    • 누구든 자신만의 Application Layer의 프로토콜을 만들어서 사용할 수 있음
  • 대표적으로, HTTP protocol

Reference

profile
개발 경험 저장소

0개의 댓글