통신 모델 - 통신 절차를 표현
통신하는 절차를 역할대로 계층 형태로 나누어 표현 합니다.

사용자가 직접적으로 접하는 응용 프로그램의 인터페이스를 제공하는 계층입니다.
웹 브라우저, 이메일 클라이언트 등 다양한 네트워크 응용 프로그램이 속합니다.
HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있습니다.
ex) 카카오톡 프로그램을 활용해 데이터 생성, 확인
데이터의 형식을 변환하고 암호화, 압축 등을 담당하는 계층입니다.
텍스트 인코딩이나 이미지 파일 형식을 변환합니다. (확장자 설정)
JPEG, MPEG, GIF, ASCII 등
통신 세션을 설정, 유지, 종료하는 기능을 담당합니다. 세션의 관리와 동기화를 지원합니다.
API, Socket
상호간의 논리적 연결 - 카카오톡 친구 등록이 되어있으니까 편지를 보낼 수 있다
데이터 전송의 신뢰성을 보장하는 계층으로, 오류 검출과 재전송 기능을 제공합니다. 대표적으로 TCP와 UDP 프로토콜이 있습니다. 신호를 분산하고 다시 합치는 과정을 통해서 에러와 경로를 제어를 합니다.
TCP : 신뢰성, 연결지향적
UDP : 비신뢰성, 비연결성, 실시간
ex) 신뢰성 - 일반 우편 : 전송만 한다, 등기 우편 : 받았는지 확인이 가능하다
데이터를 목적지까지 전송하기 위해 경로를 설정하는 계층입니다. IP 주소를 사용하며, 패킷(Packet) 단위로 데이터를 전송합니다. (출발지점 부터 도착지점까지의 라우터 경로 설정)
ex) 보내는 사람 주소, 받는 사람 주소
물리 계층에서의 신뢰성 있는 데이터 전송을 보장합니다. MAC 주소를 사용하며, 프레임(Frame) 단위로 데이터 전송을 관리합니다.
스위치를 통해 맥주소를 가지고 물리계층에서 받은 정보를 전달합니다.
장비 - 장비 : pc - 공유기, 공유기 - 라우터, 라우터 - 공유기, 공유기 - 도착 pc
전기적, 기계적 신호 전송을 담당하는 계층입니다. 케이블, 스위치 등이 속하며, 데이터를 0과 1의 비트로 변환해 전송합니다.
- 수직 통신
- 보내는쪽 7Layer -> 1Layer 로 데이터를 감싸서 보내면, 받는쪽 1Layer -> 7Layer 로 데이터를 풀어서 확인
계층 단계별로(수직적) 데이터를 감싸고, 풀어서 데이터를 확인한다- 수평 통신
- 보내는쪽의 7Layer 에서 HTTP 프로토콜을 사용했다면, 받는쪽에서도 HTTP 프로토콜 사용하는것을 알고 있어야 한다.
보내는쪽과 받는쪽의 같은 계층에서 알고있는 것이 같아야 한다
| OSI 7 Layer | TCP/IP | |
|---|---|---|
| 7. Application | 4. Application | |
| 6. Presentation | ||
| 5. Session | ||
| 4. Transport | 3. Transport | |
| 3. Network | 2. Internet | |
| 2. Data Link | 1. Network Access | |
| 1. Physical |
왜 비표준이 사실상 표준일까?
미 국방성의 군사적 목적 데이터를 유사시 데이터 손실 방지를 위해 백업을 위해 망을 구축 장비와의 통신이 필요 TCP/IP 개발, 민간에서도 사용하기 시작
장비 개발 업체가 증가하면서 다른 업체들 간의 데이터 형식이 조금씩 달라지기 시작, 호환성의 문제가 생기게 되었다 (일반적(TCP/IP 규칙 적용)으로는 괜찮지만 특정 상황(세부적인 데이터 형식)
이것을 해결하기 위해 디테일 하게 만든 통신 모델 OSI 7 Layer
기존 장비들 새로운 규칙으로 갈아 엎는것은 기업 입장에서 손해이기 때문에 기존 TCP/IP에서 호환성 맞출 수 있도록 조금씩만 수정해서 사용하고 있다.