OSI 모델
Open Systems Interconnection 모델의 약자로, 네트워크 통신을 7개의 계층으로 나누어 설명하는 모델.
1. 물리 계층 (Physical Layer)
- 물리적으로 연결된 두 대의 컴퓨터과 인코딩, 디코딩 과정을 통해 데이터를 전송하고 관리하는 모듈
- 전선, 무선 신호, 라우터, 허브 등의 하드웨어 요소들을 이용
- encoding : 0,1 나열을 아날로그 신호로 바꿈
decoding : 아날로그 신호를 0, 1 나열로 해석
2. 데이터 링크 계층 (Data Link Layer)
- 같은 네트워크에 있는 여러 대의 컴퓨터들이 데이터를 주고 받기 위해 필요한 모듈
- 네트워크 : 같은 물리적인 매체(예: 이더넷 케이블)를 통해 서로 연결된 여러 컴퓨터들의 집합
- 랜카드와 라우터, 스위치 등 물리 계층과 마찬가지로 하드웨어 장비로 구현
- 물리 계층에서 전송된 데이터를 패킷 단위로 만들어서 전송하고, 오류를 검사하며, 주소 정보(MAC 주소)를 이용하여 목적지를 구분하는 역할
3. 네트워크 계층 (Network Layer)
- 다양한 네트워크 상에서 전송된 데이터의 경로를 결정하고, 경로에 따라 패킷을 전달하는 역할
- IP(인터넷 프로토콜)주소를 이용하여 목적지 호스트를 식별하고, 최적의 경로를 선택(Routing)
- 운영체제 커널에 소프트웨어적으로 구현
4. 전송 계층 (Transport Layer)
- 데이터를 신뢰성 있게 전송하기 위한 계층으로 TCP와 UDP 두 가지 프로토콜을 이용
- TCP: 데이터가 안전하게 전송되도록 해주는 프로토콜
데이터의 순서를 보장, 전송 여부를 확인, 데이터의 손실 여부를 감지하여 재전송하는 등의 기능을 수행
- UDP: 전송 속도가 중요한 실시간 데이터(예: 게임, 음성, 영상 등)를 전송할 때 사용
- 호스트들 간의 송수신을 위해 포트 번호를 사용
5. 세션 계층(Session Layer)
- 컴퓨터 간의 연결을 생성, 유지, 종료하는 기능을 담당
- 데이터의 동기화와 오류 복구 등의 기능도 수행
6. 표현 계층(Presentation Layer)
- 데이터를 빠르고 안전하게 전송하기 위해 데이터 압축, 암호화/복호화
- 데이터의 형식을 정의하고 암호화, 복호화 등의 기능을 수행
7. 응용 계층(Application Layer)
- 도착 데이터를 브라우저나 메일, 메신저 같은 수단으로 최종 사용자가 확인하는 단계
- 웹 브라우저는 HTTP, FTP 등의 프로토콜을 사용하여 데이터를 전송하고, 이메일 클라이언트는 SMTP, POP3, IMAP 등의 프로토콜을 사용
TCP/IP 모델
현대의 인터넷은 OSI모델이 아니라 TCP/IP 모델을 따르고 있다. TCP/IP 모델(updated)은 5 계층으로 세션 계층, 표현 계층, 응용 계층을 합쳐서 응용 계층(Application Layer)으로 통합
참고한 자료
https://youtu.be/1pfTxp25MA8