OSI 7 Layer

clay·2022년 12월 12일
0

네트워크 기초

목록 보기
1/5
post-thumbnail

OSI 7 Layer는 ISO(International Organization for Standartdization)
국제표준화기구가 다양한 네트워크 간의 호환을 만든 표준 네트워크 모델이다.

1. Physical Layer

실제 장치를 연결하기 위한 전기적 물리적 세부 사항을 정의한 계층으로 랜선등이 포함됨

1계층인 물리 계층은 시스템 간의 연결을 의미하는 것으로 가장 쉽게 이해할 수 있다.
물리 계층은 간단하지만 네트워크에서 매우 중요하다.

네트워크가 정상적으로 동작하지 않을 때 가장 먼저 랜 케이블이 컴퓨터나 스위치에 제대로 꼽혀 있는지 확인하는 것은 우리가 물리 계층의 중요성을 잘 알고 있기 때문이다.

2. Data link Layer

두 지점 간의 신뢰성 있는 전송을 보장하기 위한 계층. 16진수 12개로 구성된 MAC 주소 사용

2계층인 데이터 링크 계층은 두 포인트 간 (point to point)의 신뢰성 있는 전송을 보장하기 위한 계층으로, CRC 기반의 오류 제어 및 흐름 제어가 필요하다.

CRC(cyclic redundancy check는 네트워크 등을 통하여 데이터를 전송할 때 전송된 데이터에
오류가 있는지를 확인하기 위한 체크값을 결정하는 방식

여기서는 네트워크 위의 개체간에 데이터를 전달하며, 물리 계층에서 발생할 수 있는 오류를 찾아내고 수정하는 데 필요한 기능적 절차적 수단을 제공한다.

데이터 링크 계층에는 상호 통신을 위해 MAC 주소를 할당받는다.

MAC 주소는 총 12개의 16진수로 구성되어 있다 앞쪽의 6개 16진수는 네트워크 카드를 만드는 
회사를 나타내는 것으로 OUI라고 하며 뒤쪽의 6개 16진수는 각 회사에서 임의로 붙이는 
일종의 시리얼이다.

3. Network Layer

여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층
다양한 길이의 데이터를 네트워크를 통해 전달하고, 전송 계층이 요구하는 서비스 품질(QoS)을 위해 기능적 절차적 수단(IP 주소) 제공

3계층인 네트워크 계층은 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 한다.
이 계층은 다양한 길이의 데이터를 네트워크를 통해 전달하며 그 과정에서 라우팅, 흐름 제어, Segmentation, 오류 제어 등을 수행한다.

네트워크 게층에서 동작하는 라우터나 스위치도 있는데, 스위치의 경우 보통 L3 스위치라고 부른다. 네트워크 계층에서 여러 개의 노드를 거쳐 경로를 찾기 위한 주소로는 IP가 대표적이다.

IP 주소는 8비트 * 4로 되어 있다.
192.168.0.1
11000000 10101000 00000000 00000001

Octet(.)은 컴퓨팅에서 8개의 비트가 한데 모인것을 말한다.

IP 주소는 A, B, C, D, E 클래스로 구분하는데, 이는 네트워크와 호스트 부분의 구성을 다르게
하기 위함이다.

A 클래스 0 0000000 ~ 01111111까지의 네트워크
B 클래스 10 000000 ~ 10111111까지의 네트워크
C 클래스 110 00000 ~ 11011111까지의 네트워크
앞의 자리가 0 -> 10 -> 110으로 생각하면 외우기가 쉽다.

4. Transport Layer

양 끝단의 사용자들이 신뢰성 있는 데이터를 주고받게 함으로써 상위 계층이 데이터 전달의 유효성이나 효율성을 신경 쓰지 않게 해줌

4계층인 전송 계층 양 끝단 (end to end)의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있게 하여 상위 계층이 데이터 전달의 유효성이나 효율성을 신경 쓰지 않게 해준다.
전송 계층은 시퀀스 넘버 기반의 오류 제어 방식을 사용하여 특정 연결의 유효성을 제어하며, 일부 프로토콜은 상태 개념이 있고(stateful) 연결 지향형(connection oriented)이다. 이러한 특성은 전송 계층에서 패킷 전송이 유효한지 확인하고 전송에 실패한 패킷은 다시 전송한다는 것을 의미한다.

가장 잘 알려진 전송 프로토콜은 TCP다. TCP에도 port라는 주소가 있다. MAC 주소가 네트워크 카드의 고유 식별자이고 IP가 시스템의 주소라면 port는 시스템에 도착한 후 패킷이 찾아갈 응용 프로그램으로 통하는 통로 번호라고 볼 수 있다.

port는 0 ~ 65,535번까지 있으며, IP나 MAC 주소처럼 출발지와 목적지의 응용 프로그램별
port 번호를 가지고 통신을 한다.

0번부터 1,023번까지의 port를 well known port라고 하며 어느정도는 기억하는게 좋다.
FTP(21), SSH(22), Telnet(23), SMTP(25), DNS(53), HTTP(80), POP3(110), 
IMAP(143)

5. Session Layer

양 끝단의 응용 프로세그가 통신을 관리하는 방법 제공
세션수립 / 세션유지관리 / 세션종료

5계층인 세션 게층은 양 끝단의 응용 프로세스가 통신을 관리하는 방법을 제공한다. 세션 계층은 동시 송수신 방신(duplex), 반이중 방식(half-duplex), 전이중 방식(full duplex)의 통신과 함께 체크 포인팅, 유휴, 종료, 다시 시작의 과정을 수행한다. 또한 TCP/IP 세션을 만들고 없애는 책임을 진다.

전송 계층이 끝단 간의 논리적인 설정을 담당한다면 세션 계층은 이런 연결에 정보 교환을 효과적으로 할 수 있도록 추가 서비스를 한다.

6. Presentation Layer

코드 간의 번역을 담당하는 계층, 사용자 시스템에서 데이터 구조를 통일하여 응용
프로그램 계층에서 데이터 형식의 차이로 인해 발생하는 부담을 덜어줌
(암호화, 복호화, 파일 포맷등을 관리하는 계층)

6계층인 표현 계층은 코드 간의 번역을 담당한다. 사용자 시스템에서 데이터 구조를 하나의 통일된 형식으로 표현하여 응용 프로그램 계층의 데이터 형식 차이로 인한 부담을 덜어주는 것이다.

데이터 압축은 전송되는 데이터 용량을 줄이는 것이고, 암호화는 일반 평문을 의미 없는 다른 문자로 만들어 중간에 유출되더라도 원문을 이해할 수 없게 만드는 것이다.

표현 계층에서는 헤더 정보에 데이터 암호화 방식과 압축 방식에 대한 설명을 붙인다.

7. Application Layer

응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행

7계층인 응용 프로그램 계층은 사용자나 으용 프로그램 사이에 데이터 교환이 가능하게 하며, 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.
예를 들면 HTTP, FTP, 터미널 서비스, 메일 프로그램, 디렉토리 서비스 등을 제공한다.


네트워크를 처음 접하는 사람들이 공부를 하면서 ssh로 접근하거나 ping을 날렸을때
Connection refused / No route to host / Destination unreached
위에 3개의 문구는 무조건 봤을거다.


일반적인 패킷의 전송 과정은 위의 그림과 같다.

오류가 났을 떄 무작정 검색을해 찾는것도 방법이지만 OSI 7 Layer를 떠올리면 외우기도 쉽고 이해하기도 괜찮다.

Connection refused는 서비스 거부로 Daemon 미동작이나 제외

No route host는 호스트에게 갈 길이없다. IP 미도달 또는 Port가 막혔을 때 나타난다.

Destination unreachd는 다른 host에게 접근 하려할때 말 그대로 목적지에 도달 할 수 없다. L3 계층 전체적인 문제들 네트워크 없음 호스트 없음 등등.....에서 나타난다.

글자 하나하나 잘외우면 그 방법이 좋기는 하지만 워낙 컴퓨터가 기반이 영어라 그 단어를 생각하면서 공부하는것도 괜찮은 공부법이라고 생각한다.

profile
샤코타임 팬

0개의 댓글