본문 바로가기
  • A space that records me :)
공부/네트워크

[네트워크] OSI 7 계층

by yjkim_97 2021. 4. 10.

프로토콜이란?

통신망에서 송신과 수신 사이에서 데이터를 주고 받기 위해 미리 약속된 운영상의 통신규약이다.
 
프로토콜의 구성요소

  • 구문 (Syntax)
  • 의미 (Semantics)
  • 순서 (Timing)
통신 프로토콜 중에서 가장 대표적인 것은 ISO (International Organization for Standardization)에서 정의한 OSI (Open Systen Interconnection) 7계층이다.

1. OSI 7 계층

OSI 7계층은 서로 다른 네트워크 간의 상호 통신이 가능하도록 ISO에서 정의한 개방현 시스템 통신 표준안이다.

  • 개방형 시스템(Open System) 의 효율적인 네트워크 이용을 위해, 모든 데이터 통신을 계층별로 분할하고 각 계층간의 필요한 프로토콜을 정의한다.
  • 국제표준화 기구 ISO에서 1977년에 개방형 시스템 간의 상호 통신을 위해서 재정의한 표준안이다.
  • 7계층으로 분루하여 서로 다른 네트워크 간에 통신이 가능하도록 규정했다.

목표

  • 서로 다른 형태의 네트워크에서도 데이터 통신이 가능하도록 한다.

특징

  • 개방형 시스템 간에 상호 접속을 위해서 표준화된 방법을 제시했다.
  • OSI 계층별 정보 흐름을 최소화 하여 각 계층의 독립성을 향상시켰다. (캡슐화)
  • 통신 프로토콜의 표준화를 마련하여 효율성 및 생선성을 향상시켰다.
캡슐화란?
한 계층에서 다음 계층으로 데이터를 넘겨줄 때 해당 계층에 대한 정보를 메시지 헤더에 붙이는 과정을 캡슐화라고 한다.

계층 구성

  설명 데이터 단위 관련 장비
(1)Physical Layer 데이터를 전기신호로 바꾸어 전송하는 역할을 한다.
데이터를 2진수의 전기 신호로 변환하여 전송시킨다.
Bit 랜선, 케이블
리피터
허브
(2)Data Link Layer - 물리적인 링크를 통해 '노드 대 노드' 두 장치간의 신뢰성있는 정보 전송을 담당한다.
- 물리 계층의 전기신호(비트 데이터)와 네트워크 계층의 통신 채널로 알맞게 변환한다.
- 송/수신층이 속도 차이를 해결하기 위해 흐름 제어 기능을 한다.
- 프레임의 시작/끝을 구분하기 위해 프레임의 동기화 기능을 한다.
- 오류의 검출과 회복을 위한 오류 제어 기능을 한다.
- 프래임의 순차적 전송을 위한 순서 제어 기능을 한다.
Mac 주소 할당
Frame 스위치
브릿지
(3)Network Layer 다중 네트워크 링크에서 패킷을 목적지까지 전달한다.
라우터를 통해 다른 네트워크 상의 컴퓨터와 최적의 경로로 패킷을 주고 받을 수 있도록 한다.
IP 주소 할당
Packet 라우터
(4)Transport Layer - 메시지의 발신지와 목적지 간의 에러를 관리한다.
- 신뢰성 있고 정확성있는 데이터 전송을 담당한다.
- 주소설정, 다중화(분할 및 재조립), 오류제어, 흐름제어를 수행
Segment  
(5)Session Layer 세션 계층은 Port 연결로 불리기도한다.
통신 장치간의 상호작용을 설정하고 동기화 한다.
적절한 상태에서 연결을 끊어지지 않도록 유지시켜 통신이 이루어 지도록 한다.
Message  
(6)Presentation Layer 운영체제의 한 부분으로 입출력되는 데이터를 표현형태로 전환한다.
송신할 때 컴퓨터가 관리하는 방식으로 데이터를 변환하고, 수신할 때 사용자가 볼 수 있는 방식으로 변환시킨다.
데이터의 인코딩, 디코딩, 암/복호화, 코드변환 등을 수행한다.
Message  
(7)Application Layer 사용자가 네트워크에 접근할 수 있도록 도와주는 계층이다.
인터페이스 전자우편, 데이터베이스 관리 등의 서비스를 제공한다.
Message 게이트웨이

 

1. 응용계층 - OSI 7계층의 7계층 Application Layer

keywork : 사용자 접근

  • 사용자들이 직접 접근하여 사용하는 계층이다. (사용자가 네트워크게 접근 할 수 있도록 도와주는 계층)
  • 데이터 송신을 위한 메시지를 만든다. (사용자 요청을 하위 계층에서 통신하기 이ㅟ한 메시지를 만든다.)
  • 최상위 계층으로 하위 계층을 몰라도 네트워크를 사용할 수 있다.
  • 인터넷 통신을 위한 HTTP, 파일 통신을 위한 FTP, 네트워크 관리를 위한 SNMP 등의 프로토콜들이 있다.
  • 인터페이스, 전자우편, 데이터베이스 관리 등의 서비스를 사용자에게 제동한다.

 

2. 표현계층 - OSI 7계층의 6계층 Prasentation Layer

keywork : 데이터 표준화, 암호화, 압축

  • 응용계층에서 전송한 메시지에 대한 표준화 작업을 한다. (암호화, 압축하는 계층)
  • 메시지를 압축하여 전송되는 데이터 용량을 줄인다.
  • 메시지를 암호화한다. -> 공격자가 스니핑(Sniffing)으로 인해 메시지를 훔쳐볼 수 있기 때문
  • JPEG, MPEG 등 데이터를 특정형식으로 표준화하는 프로토콜등이 존재한다.

 

3. 세션계층 - OSI 7계층의 5계층 Session Layer

keyword : 세션 연결, 동기화, 통신방식 결정

  • 애플리케이션 프로세스 사이의 세션을 열고 닫고 관리한다.
  • 시스템이 반이중 또는 전이중 통신모드중 어떤 방식을 따를지 결정하고, 교환된 메시지 스트림에서 동기화 지점을 제공한다.
  • 체크포인트(데이터 스트림의 동기화 지점)를 통해 동기화 작업을 진행한다.
  • 사용자 애플리케이션에 대한 단일 또는 다중 연결을 제어한다.
  • 세션계층의 서비스는 일반적으로 RPC프로토콜을 사용하는 애플리케이션 환경에서 제공된다.

 

4. 전송계층 - OSI 7계층의 4계층 Transport Layer

keyword : 연결지향, 신뢰성, 다중화, 오류제어, 흐름제어

  • End-to-End(종단간 : 송신측과 수신측간)의 신뢰성있고 정확한 데이터 전송을 담당한다.
  • 전송 데이터의 오류제어, 흐름제어 작업을 한다.
  • TCP, UDP 등의 프로토콜이 존재한다.
  • 다중화/역다중화 작업을 수행한다.
Multiplexing(다중화)/Demultiplexing(역다중화)
네트워크 계층이 제공하는 host-to-host 서비스에서 process-to-process 서비스로 확장하는 것을 전송계층의 다중화/역다중화라고 한다.

Multiplexing :  네트워크 계층에서 한 host에는 하나 이상의 socket이 존재하는데, socket들로 부터 데이터를 모으고 각 데이터의 헤더 정보를 캡슐화하여 전달하는 것을 말한다.
Demultiplexing : segement의 데이터를 분할하여 올바른 socket들로 네트워크 계층에 전달하는 작업을 말한다.

5. 네트워크계층 - OSI 7계층의 3계층 Network Layer

keywork : IP , 경로설정

  • 목적지 호스트로 가변길이의 패킷을 전송하는 역할을 담당한다.
  • 다른 네트워크망의 서버가 가동 중인지 확인한다. (여기서 트래픽 발생)
  • 2계층의 데이터를 패킷으로 분할한다. (4계층에서 순서제어가 필요한 이유)
  • 패킷에 IP 주소를 설정한다.
  • 라우터의 라우팅 프로토콜로 패킷이 도달할 목적지까지의 경로를 설정한다.
라우팅 프로토콜
라우팅 프로토콜은 패킷이 목적지까지 가는 방법을 결정해주는 프로토콜이다. RIP, OSPF, IGRP, BGP 등이 존재하며 라우팅 테이블을 참조해 비용 및 속도 대비 가장 좋은 경로을 선택한다.

 

6. 데이터링크계층 - OSI 7계층의 2계층 DataLink Layer

keyword : MAC, Praming오류제어, 흐름제어, 순서제어

  • 전기신호를 모아 데이터 형태로 처리한다.
  • 물리적으로 신뢰성있는 통신을 위한 연결을 담당한다.
  • 물리계층으로 부터 전달받은 Bit데이터를 그룹핑해 Data, Header, Trailer등을 넣어서 캡슐화하는 작업을 진행한다. (프레이밍 - Framing)
  • 송수신측간의 속도 차이를 해결하기 위해 Buffer 및 Window를 통해 흐름제어 작업을 수행한다.
  • MAC 주소체계가 생기면서 동시에 멀티 통신을 지원한다. (오류제어, 흐름제어, 순서제어가 필요한 이유)
  • 물리 전송 매체의 특성상 오류와 같은 잡음데이터가 랜덤하게 존재하는데 이 오류를 검출하고 수정하기 위해 에러제어 작업을 수행한다.
  • 주고받는 데이터의 순서를 동기화 시키기 위해 ACK신호에 일련번호가 존재하고 이것을 통해 순서제어 작업을 수행한다.
  • 프레임에 MAC 주소를 할당한다.
  • 플로 컨트롤 (Flow Control) 작업을 수행한다.
플로 컨트롤 (Flow Control)
수신지가 현재 통신 가능한 상황인치 확인하는 작업을 말한다.

 

7. 물리계층 - OSI 7계층의 1계층 Physical Layer

keyword : 물리적 연결, 전기신호

  • 물리적으로 연결된 선로를 통해 데이터를 전송한다. (케이블 등)
  • 데이터는 전기신호로 0과 1 비트로 이루어져있다.
  • 전기신호가 미약하여 목적지까지 도달하기 힘든 경우 리피터를 통해 증폭시키기도 한다.
  • 아날로그 신호를 디지털 신호로 변환한다.
  • 주소 계념이 없어 전기 신호가 들어온 포트를 제외한 모든 포트에 같은 전기 신호를 보낸다. (Brodcasting)

현재 네트워크는 대부분 패킷 기반 네트워크이다.

패킷 네트워크는 데이터를 패킷이라는 작은 단위로 쪼개 보내는데 이런 기법으로 하나의 통신이 회선 전체를 점유하지 않고 동시에 여러 단말이 통신하도록 해주는 것이다.

 

OSI 7계층은 아래 2가지 작업으로 네트워크 통신을 지원한다고 할 수 있다.
1. 인캡슐레이션, 디캡슐레이션 과정을 통해 데이터가 전송되는 과정
2. 각 계층 헤더를 이용해 송신자 계층과 수신자 계층 간의 논리적 통신 과정

 

인캡슐레이션 : 하위계층에서 상위계층이 전송한 패킷을 자신의 패킷 데이터로 캡슐화 하는 과정
디캡슐레이션 : 상위계층에서 하위계층이 전송한 패킷의 헤더를 버리고, 데이터 부분을 디캡슐화 하는 과정.

2. 계층별 관련장비

네트워크 장비와 스위치의 종류
2021.12.26 - [공부/네트워크] - [네트워크] OSI 7계층 - 네트워크 장비, 스위치 종류

 

[네트워크] OSI 7계층 - 네트워크 장비, 스위치 종류

2021.04.10 - [공부/네트워크] - [네트워크] OSI 7 계층 [네트워크] OSI 7 계층 프로토콜이란? 통신망에서 송신과 수신 사이에서 데이터를 주고 받기 위해 미리 약속된 운영상의 통신규약이다. 프로토콜

yjkim97.tistory.com


3. 계층별 프로토콜

(1)Physical Layer PSTN, DSU, CSU, Modem
(2)Data Link Layer Ethernet, Token Ring, PPP, HDLC, ISDN, ATM, FDDI, 무선랜
(3)Network Layer IP, ICMP, IGMP, X.25, CLNP, ARP, RARP, BGP, OSPF, RIP, IPX, DDP
(4)Transport Layer TCP, UDP, RTP, SCRP, SPX
(5)Session Layer TLS, SSH, ISO 8327 / CCITT X.225, RPC, NetBIOS
(6)Presentaion Layer JPEG, MPEG, XDR, ASN.1, SMB, AFP
(7)Application Layer HTTP, SMTP, SNMP, FTP, Telnet, SSH, NFS, RTSP

 

1. 응용계층 프로토콜
2021.04.10 - [공부] - [네트워크] OSI7 - 응용계층 프로토콜

 

[네트워크] OSI7 - 응용계층 프로토콜

프로토콜 종류 HTTP SMTP SNMP FTP Telnet SSH NFS RTSP HTTP 응용계층 프로토콜 인터넷상에서 데이터를 주고 받기 위한 프로토콜이다. 서버/클라이언트 모델을 따른다. Connectionless방식으로 작동한다. 서버

yjkim97.tistory.com

2. 표현계층 프로토콜
2021.07.11 - [공부/정보처리기사] - [네트워크] OSI 7 - 표현계층 프로토콜

 

[네트워크] OSI 7 - 표현계층 프로토콜

프로토콜 종류 JPEG MPEG XDR SMB AFP JPEG 이미지 압축 프로토콜 MPEG 영상 압축 프로토콜 XDR (eXternal Data Representation) 데이터의 설명 및 인코딩을 위한 표준 서로 다른 컴퓨터 간에 데이터를 전송하는..

yjkim97.tistory.com

3. 세션계층 프로토콜
 
4. 전송계층 프로토콜
2021.04.17 - [공부/정보처리기사] - [네트워크] OSI 7 - 전송계층 프로토콜

 

[네트워크] OSI 7 - 전송계층 프로토콜

종류 TCP UDP RTP RTCP TCP (Transmission Control Protocal) 양방향 연결형 서비스를 제공한다. 가상 회선 연결 형태의 서비스를 제공한다. 스트림 위주의 전달(패킷 단위)을 한다. 신뢰성 있는 경로를 확립하

yjkim97.tistory.com

5. 네트워크계층 프로토콜
 
6. 데이터링크계층 프로토콜
 
7. 물리계층 프로토콜