https://animated-marmot-be5.notion.site/Overall_OSI-Architecture-6d3b3c91a071423eb5b263a98ab581b5?pvs=4
Service Networking
- ‘컴퓨터 위에서 돌아가는 SW(Service)가 중요하다’ 라는 개념.
- Computer Network 배우는 이유: Service가 컴퓨터 위에서 동작하므로
- Service 어떻게 구현: SW → SW 돌아가는 곳: 컴퓨터
Computer
- 컴퓨터 프로그래밍을 통해 연산/논리적 지시를 수행하는 것
→ (프로그래머가 만든 프로그램을 통해 논리적이며 산술적인 동작을 하는) 소프트웨어가 실행되는 하드웨어
- 우리가 프로그램을 짜서 넣을 수 있으면 모두 컴퓨터임..!
- 컴퓨터 ≠ HW + SW
- 컴퓨터 ⊂ 하드웨어
Computer Networking
: 2개 이상의 컴퓨터가 0과 1을 주고받는 것.
- Network 규모
- LAN (Local Area Network)
- MAN (Metropolitan Area)
- WAN (Wide Area Network)
LAN
표현
- WireLess LAN : 무선랜
- LAN: 유선 / 유선+무선 (중의적)
의미
- 동일 소유권자/운영권자의 방 / 건물 / 캠퍼스
- Ex) 경희대
- 컴퓨터 > 강의실 > 강의실들 > 층 > 층들 > 건물 > 건물들 > 경희대 국제 캠퍼스
기타
- P2P: 주로 같은 Local Area(LAN)에서만 동작하는 것이 의미있음.
- HTTP: MAN / WAN 개념에 해당하는 서비스 제공.
- HTTP 2, 3가 나오는 이유: MAN / WAN 일때의 성능 개선을 위해.
MAN
의미
- 지역 안에 밀집되어서 서로 연결 되어 있음.
- 도시 레벨의 Network
- LAN들을 포함하고 있는 큰 규모의 Network
- Ex) 서울시, 부산시, ..
WAN
표현
의미
- 전용 라인을 가지고 LAN을 연결한 것
MAN들의 연결
- EX) 서울시 MAN + 부산시 MAN
- Ex) 경희대
- 서울캠 LAN - 국제캠 LAN
- 설캠과 국캠간의 통신을 원활하게 하기 위해
전용 라인
을 빌려 씀.
해당 라인을 WAN이라고 함.
발생 문제
정리
- LAN + .. + LAN = MAN
- LAN ——— LAN = WAN
- 한줄로 연결 X
- 이유: 경희대학교가 KT 같은 곳에서 라인을 빌려쓰는데, 그 라인이 또 어딘가의 네트워크를 타고 들어갈 수 있음.
- Ex) 삼성전자
- 서울지사 —— 미국 지사
- 한국: KT 라인, 미국: Verizon 라인
- 서울지사 - KT라인 -
KT ↔ Verizon
- 미국지사
OSI 7계층
: Open System InterConnection
- OS가 다르더라도 서로 통신이 가능하게 하는 개방형 통신 표준.
OSI 개념
- Layered Architecture
- 순차 개념
- Maria: 순차적 (위 → 아래)
- Ann: 역순 (아래 → 위)
- Peer-Communication
- Layering (계층) 개념
- 동일 계층끼리 통신
- 의미가 있는 작업(암호화/복호화)은 동일 계층의 상대끼리 함.
OSI 7계층
위: 사용자와 가까움
아래: 하드웨어와 가까움
- Physical Layer
- 0/1 주고받기 위한
유무선 기술
제공
- Ex)
- 유선: 전선, 구리선, 광케이블 ..
- 무선: 주파수 ..
문제 발생:
- 유선: 케이블 부식 → 해당 부분에서 신호 왜곡 발생.
- 무선: 데이터를 보낼 때 Noise가 낌.
- Data Link Layer
- Physical Layer에서 발생한
Error 검출 및 수정
**Flow Control**
- A 성능 High ↔ B 성능 Low
- A에서 과도한 traffic 보낼 경우, B가 죽음.
- 이를 방지/조절해줌.
- Network Layer
- 무사히 목적지까지 갈 수 있도록 함.
- A→B로 가기위해 많은 장비를 거쳐야하는 경우, 제대로 B까지 갈 수 있도록 함.
- Transport Layer
- 멀리 떨어진 컴퓨터 사이에 발생한
에러 복구
- Network Layer가 무사히 메시지를 B까지 보냈지만, 에러가 남. 이를 복구.
멀리 떨어진 컴퓨터 사이에 발생한 에러 복구
- Data Link Layer와의 차이
- Data Link Layer:
- 눈에 보이는/줄이
연결되어 있는 양쪽 끝
에 대한 에러 처리
- 현재 컴퓨터에 꽂혀있는 줄/주파수에 대한 에러 처리
- Transport Layer:
멀리 떨어져
있어서 줄이 길고 많을 때의 에러에 대한 처리
- Session Layer
- 멀리 떨어진 컴퓨터들을 1, 2, 3, 4계층이 연결해놓으면 Application이 그 위에 올라탐.
- 특정 서비스가 있는데, 논리적으로 연결을 해야할 경우 이를 처리.
- Ex) 줌
- Authentication: 인증된 학생만 줌 참석.
- Permission: 교수님만 녹화 가능.
- Restoration: 중간중간 발생하는 에러를 줌이 고치고 있음.
- Presentation Layer
- Application Layer
정리
- 1, 2, 3, 4 계층
- Transport Service
- 어플리케이션에 상관 없이 일반적으로 제공 가능한 전달 기법
- 에러 검출 / 복구 기법
- 5, 6, 7 계층
- Upper Layer
- 서비스가 무엇을 어떻게 연결 / 주고받을지를 엮은 서비스 계층
풀스택 서비스 네트워킹 미리보기
-
SOCKET
- Transport Layer 안에서 동작.
- TCP, IP 사용
- 4계층 안 → 운영체제 → Kernel → 발전시키기 힘듦.
-
HTTP
- Transport Layer 위에 서비스 동작.
- 4계층 위 → Application → 개선 용이
-
ZMQ
- Transport Layer 위 / 아래 등에서 동작 가능.
- 5계층 이상에서 일단 짜여짐. BUT 기능은 4계층까지 있을 수 있음.
- 기본적으로는 Application에서 하므로 수정 용이.
-
1, 2, 3, 4 계층
- 운영체제 안에 들어감
- 수정/개선시, Kernel을 건들여야함. → 어려움
-
5, 6, 7 계층
Chrome 브라우저
동영상/이미지 보여줌
브라우저는 서버에 연결 요청 / 해제 → 정보 주고받음
7
6
5
웹 서버
동영상 스트리밍 서버
로그인 로그아웃 관리
- 4계층
- Network 통해서 받은거, 오류 발생시 검출 및 복구
- TCP, UDP는 4계층에 속한 SW
- 3계층
- 왼→오 전달
- IP는 3계층에 속한
- 라우터(중간에 다른 장치들) 많음.
** OSI는 아래 계층이 없으면 위 계층 동작 불가.
FLOW
-
Physical에서 메시지 받음
-
문제가 없는지 에러 점검 및 복구 + flow control
-
라우터에서 어디로 보낼지 결정.
** 메시지: 위 ↔ 아래
** 실질적 기능: 왼 ↔ 오
Router
- Switch / Hub
- 1, 2 계층에 들어가 있음.
- 좋은 것들은 2.5나 3계층에 있음.
OSI 7 계층 요약
- Application
- Presentation
- 동영상 이미지 등을 압축 해제 암호화 등 보여지는 것
- Session
- 다른 사람과 논리적인 줄(연결)을 가지고 통신
- 인증, 권한 등..
- Transport
- Network를 지나 어렵게 도착한 정보가 에러를 검출, 복구.
- Network
- Physical과 Datalink가 많아져서 중간중간 지나가는 통신장비가 많아져 처음과 끝이 멀어질 때,
수많은 줄과 컴퓨터 사이에서 맨 왼→맨 오 잘 전송되도록 길잡이 역할(라우팅)
- DataLink
- 받은 0과 1이 제대로 된 것인지 점검, 검사, 복구, 속도의 문제가 없도록 flow control.
- Physical
Layering Operation
- 위 ↔ 아래
- Layer N
PDU
: 본인이 정보를 가지고 있는 것.
SDU
: N-1 계층으로 정보를 보내는 것.
- Servie Data Unit
- N-1 계층 입장에서는 이게 PDU 임.
- 결과적으로 1계층은 해당 데이터를 유무선 줄에 태우는 역할을 함.
- 잘못 그린 그림임!
- 중요한 것은!
- 무선랜, 블루투스, NFC, 이동통신 등 모두 다 OSI 1, 2 계층임.
- TCP UDP는 4계층임.
- IP는 3계층임
따라서, TCP/IP는 밑의 계층 상관없이 본인 일 열심히 함.
필요할 때 그냥 보내달라고 내리기만 하면 됨.
중요한 건 상대방의 TCP/IP와 통신하면 됨.
따라서, tcp/ip 웹 브라우저는 무선랜 이동통신 유선 어디에서 돌아가던 상관없음. 이것이 layering architecture 의 장점임
- http는 session 기능은 있지만, 그 보다 많은 것을 하고 있기 때문에 5계층이라고 할 수 없음.
패러다임 변화
- 전통적
- 현재
- TCP/IP 의 한계가 굉장히 많이 드러남.
- 이를 고치고자 하면 운영체제에 손을 대야하지만, 이건 아닌 것 같음.
- 따라서, 커널 아래의 기술 보다는 커널 위의 네트워킹 기술들이 Application Layer에서 만들어짐.
- Application Layer 장점: 운영체제에 상관 없이 짜서 배포 가능.
- 즉, 하드웨어 보다는 SW적인 신기술 등장.
- 커널 아래 보다는 커널 위에서 개발
- Application Layer 기반