OSI Model (Open Systems Interconnection Reference Model)
OSI 참조 모델이란 국제표준화기구(ISO)에서 개발한 계층적 모델로 네트워크를 통해
데이터를 송수신하는데 필요한 과정등을 단계별로 분류 해두었다.
OSI 모델은 각 계층에서 '무엇을 해야 하는지' 만을 정의하고 그것을
'어떻게 구현해야 하는지'에 대해서는 정의하지 않고 있는데, 개발자나 제조사가 자신의 판단에 따라
가장 좋은 방법으로 그것을 수행하게 자유를 준 것이라고 볼 수 있다고 한다.
네트워크를 학습함에 있어서 전반적인 데이터의 흐름을 파악하기 위해 이 7개의 계층에서
각각 어떤 역할을 어떻게 수행 하는지에 대한 이해가 중요하다. 각 계층은 다른 계층과 분리되어서
자신만의 기능을 캡슐화(Encapsulation)해서 데이터의 헤더부분에 추가(Over Head)한 다음, 이웃한 층으로 전송한다.
간단한 예시로 우리가 응용계층에서 어플리케이션을 실행해 문서 작업을 마친 뒤
수신자에게 문서를 전송한다고 가정 한다면, 송신자의 데이터는 7(응용) ~ 1(물리)계층을 거치며 캡슐화가 진행되고
수신자는 송신자의 역순으로 1(물리) ~ 7(응용)계층을 거쳐 캡슐을 하나하나 벗겨낸 후 최종적으로
순수한 데이터를 확인해 볼 수 있는 것이다.
또 하나의 예시로는 우리가 OSI 7계층의 역할을 인지한 상태에서 통신간의 문제가 발생한다면
각 계층을 대입해서 생각해볼 수 있는 것이다.
ex) 로컬(LAN)로 묶인 PC끼리 통신은 가능하나, 외부(WAN)의 인터넷 접속은 불가하다.
1, 2계층에서 문제가 없지만, 3계층 장비 라우터(Router)의 문제일 가능성이 높다..
---> 식의 문제의 원인을 유추해 볼 수 있다.
** 각 층은 바로 이웃한 층과의 통신만 가능하다.
● 각 계층에 대해서
1. 물리계층 (Physical Layer) : 데이터를 전기적 신호(0, 1)로 전송해주는 역할을 하며 별도로 오류를 체크하지는 않는다,
fiber-optic, re-232 등의 통신 케이블과 리피터, 허브 등이 대표적인 장치이다.
데이터의 단위는 'bit' 로 표현한다.
2. 데이터 링크 계층 (Data Link) : 통신 노드 간 데이터 전송, 오류체크를 담당하며,
LLC(Logical Link Control) / MAC(Media Access Control) 으로 장치를 구분한다.
대표적으로 스위치, 브릿지 등의 장치가 있고, Ethernet, FDDI, ATM, HDLC .. 등의 프로토콜이 존재,
데이터의 단위는 'Frame' 으로 표현한다.
** 오류체크 시에는 : CRC, Parity를 이용한다.
3. 네트워크 계층 (Network Layer) : 데이터 전송을 위해 최적의 '경로'를 찾아주는 역할을 하며,
데이터의 흐름과 에러를 제어한다. 대표적인 장치로는 라우터와 L3-Switch가 있으며,
IP, IPX, IPSEC, ICMP .. 등의 프로콜이 존재,
데이터의 단위는 'Packet' 으로 표현한다.
4. 전송 계층 (Transport Layer) : 가상회로를 설정하거나 패킷의 분할, 재조립 등을 담당하고
에러를 수정하는 역할을 한다. 대표적으로 TCP(연결지향적) / UDP(비연결지향적) 프로토콜이 있고,
그 외로도 SPX, RIP, BGP, SSL .. 등 다양한 프로토콜이 존재,
데이터의 단위는 'Segment' 로 표현한다.
5. 세션 계층 (Session Layer) : 통신수립 및 통신 제어(Full / Half - Duplex), 연결을 설정/해제 해주는 역할을 하며
NetBIOS, SAP, TLS, SSH .. 등의 프로토콜이 존재,
데이터의 단위는 'Data / Message' 로 표현한다.
6. 표현 계층 (Presentation Layer) : 그림, 음악 등 데이터의 변환을 담당해주고 데이터의 압축과 암호화를 담당한다.
EBCDIC, MP3, MPEG, MIDI .. 등의 프로토콜이 존재,
데이터의 단위는 'Data / Message' 로 표현한다.
7. 응용 계층 (Application Layer) : 응용 프로그램을 사용하거나 서비스를 제공, 대역폭 확인, 통신 동기화 등의
역할을 하고 대표적으로 HTTP, FTP, SMTP, Telnet .. 등의 프로토콜이 존재 실제 사용자(User)들이
접하는 환경이다. 데이터의 단위는 'Data / Message' 로 표현된다.
'Network' 카테고리의 다른 글
[Network]STP_Algorithm (0) | 2022.11.11 |
---|---|
[Network]FDDI (0) | 2022.11.11 |
[Network]Ethernet (0) | 2022.11.09 |
[Network]MAC_Address (0) | 2022.11.09 |
[Network]Network (0) | 2022.10.28 |