OSI란?
국제표준화기구에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 모델
프로토콜을 기능별로 나누었다.
- why? 관리를 용이하도록 해준다. 계층별로 나누어 관리하면 어디서 문제가 발생했는지 빠르게 파악할 수 있어 도움이 된다.
- 현재는 OSI 7계층보다 TCP/IP(updated ver.) 모델이 더 많이 사용되고 있다!
- TCP/IP(updated ver.)은 ( Application / Transport / Network / Data-Link / Physical )으로 나누고 있다.
- 하위계층은 상위계층에게 기능을 제공한다.
- 하위는 하드웨어(data-link, physical), 상위는 소프트웨어로 구현되어 있다.
Application layer
- 응용 서비스를 수행한다.
- 응용 서비스는 관련된 응용 프로세스들 사이의 전환을 제공한다.
- endSystem에 존재한다.
- Client-Server, P2P 구조 등
- HTTP
Presentation layer
- 코드 간의 번역을 수행하여 사용자가 데이터 형식 차이를 다루어야 하는 부담을 덜어준다.
- MIME 인코딩(바이너리→텍스트), 암호화, 압축 수행
- JPEG, MPEG
Session layer
- End-system 에 있는 프로세스가 통신을 관리하기 위한 방법을 제공한다.
- TCP/IP를 만들고 없애는 책임을 갖는다.
- 통신 시작부터 종료하기까지의 시간을 세션이라 한다.
- duplex, half-duplex, full-duplex 통신을 수행한다.
- API, Socket
- input: ( Hello ) → output: ( status code: 500 Hello )
Transport layer
- 효율성과 유효성을 보장하여 End-system에 있는 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있도록 한다.
- TCP, UDP
- 포트 번호 사용 : 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 가지는 정수값
- 상위 계층에서 받은 데이터 앞에 포트 번호를 붙인다(encoder)
- or
- 하위 계층에서 받은 데이터에서 포트 번호를 뗀다(decoder)
- Segment 단위
Network layer
- 여러 노드를 거칠 때마다 경로(최적의 경로)를 찾아주는 역할을 담당한다.
- 라우팅, 흐름 제어, 세그멘테이션, 오류 제어, 인터네트워킹 등
- 네트워크 관리자가 직접 할당하는 구조를 갖고 계층적이다.
- IP 주소를 이용하여 경로를 찾는다 : 라우팅
- 만약 목적지의 주소를 알지 못한다면, 자신 다음의 라우터에게 데이터를 넘겨준다 : forwarding
- Packet 단위
- 하나의 라우터는 LAN단위, LAN들이 묶이면 WAN을 구성한다.
Data link layer
- 신뢰성 있는 전송을 보장하기 위한 계층이다.
- 주소 값은 물리적으로 할당받는다. 즉, 맥 주소가 정해져 있다.
- 여러 대의 컴퓨터가 통신하기 위해서 필요하다.
- 수신자 입장에서는 여러 대의 컴퓨터에서 보내오는 데이터를 구분할 필요가 있다.
- 이를 위해 송신자는 데이터 앞, 뒤에 특정 비트열을 붙여서 전송한다.
- (1111) real data (0000) → real data
- 네트워크 '안' 에서의 전송을 담당한다.(LAN)
- 이더넷
- Frame 단위
Physical layer
- 하드웨어 전송 기술을 말한다.
- bit 단위 ↔ 아날로그 신호
- PHY 칩
아래는 많은 도움이 되었던 유튜브 강의?이다.
https://www.youtube.com/watch?v=1pfTxp25MA8
'CS > 네트워크' 카테고리의 다른 글
HTTP 헤더 (0) | 2021.05.25 |
---|---|
GET과 POST (0) | 2021.05.18 |
TCP의 3 way handshake와 4 way handshake (0) | 2021.05.17 |
TCP/UDP의 Header (0) | 2021.05.17 |
TCP와 UDP (0) | 2021.05.15 |