OSI 7 Layer
네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것

https://shlee0882.tistory.com/110 출처
| 계층 | 장치/프로토콜/도구 | 구현 위치 | 기능 | 식별자 | 데이터 단위 |
|---|---|---|---|---|---|
| 1 물(hw) | 리피터, 케이블, 허브 | encoding, decoding | bit | ||
| 2 데(hw) | 스위치 | LAN카드 | 같은 네트워크(LAN)에서 데이터 패킷의 경로 찾아줌(switching) | MAC주소 | 프레임 |
| 3 네 | 라우터 | OS커널 | 다른 네트워크(WAN)에서 데이터 패킷의 경로 찾아줌(routing) | IP주소 | Packet |
| 4 전 | TCP, UDP | ||||
| OS커널 | 프로세스까지 데이터가 도달할 수 있도록 전송함 | 포트번호 | Segment | ||
| 5 세 | API, socket | OS user모드 | 응용 프로그램 간 통신을 위해 세션을 관리 | ||
| 6 표 | OS user모드 | • 데이터 포맷팅 | |||
| • 암호화 및 복호화 | |||||
| 7 응 | HTTP | OS user모드 | 응용프로그램을 통해 사용자가 확인 |
데이터를 전기적인 신호로 변환해서 주고받는 기능을 진행(데이터전송)
컴퓨터가 통신하려면?
ex) 5~8Hz만 통과시킬수 있는 전선에, 주파수 최소값 1, 최대길이 10인 전자기파는 5~8hz부분만 통과해서 엉뚱한 데이터만 도착하기도 함
0과 1을 주고받을 수 있으면 되는데, but 수직선과 수평선이 있는 전자기파는 항상 0~무한대의 범위를 가짐
→ 이런 전기신호를 통과시킬 수 있는 전선은 없음
⇒ 아날로그 신호로 바꿔서 전송해야함

⇒ 물리계층: 0,1을 아날로그 신호로 바꾸는(encoding)과 아날로그 신호를 0과 1로 바꿔서**(decoding**) 물리적으로 연결된 2대의 컴퓨터가 0과 1을 주고받을 수 있게 해주는 모듈(함수)
2계층: 데이터링크 - 브릿지, 스위치 등
→ 여러대의 컴퓨터가 통신하려고 모든 컴퓨터에 전선을 연결하면 비용면에 비효율
⇒ 하나의 선에 여러개의 컴퓨터가 연결되어있으면 효율적으로 통신할 수 있음
이 하나의 선을 상자(더미허브)안에 넣어보자.
→만약 하나의 선에 있는 A가 B에게 데이터를 보내고 싶음⇒B에게만 보내라고 목적지를 정하도록 더미허브를 똑똑하게 만든것=스위치
⇒2계층: 같은 네트워크에 있는 여러대의 컴퓨터들이 데이터를 주고받기 위해 필요한 모듈 (프레이밍은 그 작업 중 하나), LAN카드에 구현되어있음(HW)
3계층: 네트워크 - 라우터 등
→ 서로 다른 네트워크에 속한 컴퓨터끼리 통신할 수 있게하는 장비=라우터(like 공유기)
⇒이렇게 전세계의 컴퓨터를 연결한것=인터넷
*IP주소: A가 다른 사람말고 B에게만 데이터를 보내고 싶어서 데이터를 보낼때 데이터+B의 주소(패킷)를 같이 보냄, 이때 주소=IP주소 ex)네이버 주소=ip주소로 변환
⇒ 네트워크계층: 수많은 네트워크의 연결로 이뤄지는 internetwork에서 목적지로 데이터를 전달하기 위해 IP주소를 이용해서 길을 찾고(routing) 자신 다음의 라우터에게 데이터를 넘겨주는 것(forwarding), OS의 커널에 구현되어있음
4계층: 전송 - TCP, UDP
⇒전송계층: 각 프로세스 별로 포트번호를 사용하여 수신 컴퓨터의 어떤 프로세스에 데이터를 보낼지 구분해서 데이터를 전송하는 모듈, os커널에 구현
*포트번호: 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 프로세스가 가져야하는 정수값 ex)https://www.naver.com/**80**
⇒오늘날 TCP/IP모델을 사용하고 이 모델을 3개의 계층을 묶어 어플리케이션 계층으로 본다
= 네트워크 시스템은 하나의 거대한 sw라고 할 수 있음, 이 거대한 구조를 설명하는 것
데이터 캡슐화
: 데이터를 전달할 때 상위계층(7층)→하위계층(1층)으로 전달되는데, 각 계층에서는 다른 계층과 통신할 때, 데이터에 header와 footer를 추가한 후 다른 계층으로 전달
참고사이트 : https://velog.io/@jeongs/네트워크-OSI-7-계층-그림과-함께-이해하기
<TCP/IP계층>
⭐면접단골질문
’www.google.com/’을 웹브라우저에 입력하면 무슨일이 일어날까?

패킷에 대한 그림, 각 계층에 필요한 정보가 담겼다.
응용계층: 구글 서버의 80포트로 http request메시지를 보내는 것⇒ 패킷을 만듬
전송계층: TCP헤더
인터넷계층 : IP헤더