[CS] OSI 7 Layer

buckshot·2024년 7월 17일

cs

목록 보기
11/15
post-thumbnail

OSI 7계층은 인터넷을 이용하여 다른 컴퓨터간 통신을 하는데 있어 일어나는 과정을 정의해둔 것이다.

왜 계층을 따로 분리를 했을까?

OSI 모델의 네트워크 통신에 대하여 쉽게 이해하고, 구현하기 위해서 구분되었다. 그리고 특정 단계에서 문제가 발생되면 해당 문제에 대한 해결은 해당 문제가 발생된 단계에서만 문제 해결을 하게된다면 문제에 대한 복구 또한 간단하게 해겨할 수 있게된다.

계층 별 이해

  • Application

사용자와 직접적인 상호작용이 이루어지는 계층이다. 해당 계층은 데이터를 어떻게 표현할지 결정하고,데이터를 네트워크로 보내기 위해 준비한다.

송신자의 데이터를 해석하고, 응용 데이터 부호화 및 변환을 수행한다. 수신자 측에서는 데이터를 압축을 풀 수 있는 방식으로 데이터를 압축한다.

웹 브라우저(크롬, 엣지 등)에서 HTTP/HTTPS를 사용하여 웹 페이지를 요청하고 표시를 한다.

HTTP (Hyper Text Transfer Protocol)
웹에서 웹 서버 및 웹 브라우저 상호 산의 데이터 전송을 위한 응용계층 프로토콜이다. (간단하게 이야기 하면 웹 문서 전송 규약)

발생할 수 있는 문제로는 어플리케이션 오류, 네트워크 서비스 접근 문제, 프로토콜 불일치 등의 문제가 있다.

  • Presentation

데이터의 형식을 변환하고 암호화 및 압축을 하는 단계이다.
데이터의 구문 및 의미를 변환하여 서로 다른 시스템 간의 호환성을 보장한다.

SSL/TLS를 사용한 웹 사이트 보안 연결, JPEF 또는 GIF 형식의 이미지 파일을 처리하는 경우가 해당된다.

  • Session

Session계층은 통신 세션을 설정 및 관리, 종료를 한다. 그리고 컴퓨터 간의 연결을 인증하고 세션 복구 (복구할 때 필요한 것만 재전송을 한다.)가능을 제공한다.

  • Transport

데이터를 작은 단위로 분할하여 순번을 붙이며 각각의 포트 번호를 부여한다. (http 같은 경우 80번 포트) 포트 번호는 어플리케이션 구분용이다.

A, B 컴퓨터가 있다고 하자, A 컴퓨터는 100의 속도를 내고있고 B는 10의 속도를 내고 있을 때
두 컴퓨터 속도 차이를 조정을 해주며 에러 컨트롤도 해준다.
(1번 80 포트, 2번 80포트, 4번 80포트를 A에서 B로 전달을 했을 때 3번이 안 왔다는 점을 확인하여 재전송을 하게 만들어 준다.)

그리고 해당 계층에는 TCP와 UDP가 있다.

  • TCP (Transmission Control Protocol) : 안정성이 높으나 다소 느리다는 점이 있다. (파일 전송)
  • UDP (User Datagram Protocol) : 안정성이 낮으나 빠르다는 점이 있다. (온라인 게임)
  • Network

예를 들어 컴퓨터들 끼리 많은 수의 라우터로 연결이 되어 있다.
쉽게 생각해서 네트워크를 우편이라고 생각을 하자, 우편을 특정한 위치로 보내기 위해서는 전송되기위해 거치는 우체국이라고 생각하면 된다.

A컴퓨터에서 B컴퓨터로 보낼려고 하면 보낼려고 하는 IP주소를 알아야 한다. 해당 아이피를 알았다면 라우팅으로 경로를 선택하여 보낼려고 하는 패킷이 전송된다.

발생할 수 있는 문제로는 IP 주소 충돌, 라우팅 오류, 네트워크 혼잡 등의 문제가 나타날 수 있다.

  • DataLink

패킷에 MAC 주소를 추가하여 네트워크 내에서 데이터를 전송한다. 그리고 동일한 네트워크 내에서 오류 제어와 흐름제어를 수행한다.

해당 계층에서는 패킷에 MAC주소를 붙여준다.

IP와 MAC의 차이를 비유하자면 IP는 집주소? 라고 생각을 하고 MAC은 받는 컴퓨터의 주민등록 번호로 비유하면 될 것이다.
컴퓨터가 주소지를 이전을 하게 된다면, IP주소는 변경이 되겠지만 MAC은 그대로 변경없이 기존 값을 유지한다.

  • Physical

2진법 형태인 데이터를 전기 신호로 변환을 한다.

profile
let's go insane

0개의 댓글