2024. 4. 30. 13:06ㆍ개발서 발자국/혼공네트
01-3 네트워크 미시적으로 살펴보기
#프로토콜 #네트워크참조모델 #OSI모델 #TCP/IP모델 # 캡슐화 #역캡슐화 #PDU
프로토콜
통신 과정에서 정보를 올바르게 주고받기 위해 합의된 규칙이나 방법
- 현대 인터넷은 패킷 교환 방식 === 택배
- 노드 간에 정보를 올바르게 주고받기 위해 합의된 규칙이나 방법
- 인터넷을 이용, 이메일 주고 받기, 파일 주고 받기 등 모두 상대 호스트와 동일한 프로토콜을 사용하기 때문
- 모든 프로토콜은 저마다 목적과 특징이 있음
프로토콜 예시 ( IP, ARP, HTTPS & HTTP, TCP & UDP …)
- IP 는 프로토콜 : 패킷을 수신지까지 전달하기 위해 사용되는 프로토콜
- ARP 는 프로토콜 : A1:B2:C3:D4:E5:F6 와 같은 형태 ‘MAC주소’로 대응 하기 위해 사용되는 프로토콜
- HTTPS & HTTP : 보안상 HTTPS 가 더 안전함
- TCP & UDP : UDP라는 규칙으로 정보를 주고받는 것에 비해 데이터를 더 확실하게 전송할 수 있다고 짐작함
네트워크 참조 모델
통신이 일어나는 구조를 계층화
- 네트워크를 통해 정보를 주고받을 때는 정형화된 여러 단계를 거침
- 이 과정을 계층으로 표현할 수 있고 각 과정을 계층으로 나눈 구조가 “네트워크 참조 모델” === “네트워크 계층 모델”
통신 과정을 계층으로 나눈 이유
- 네트워크 구성과 설계가 용이함
- 네트워크 문제 진단과 해결이 용이함
OSI 모델
- 국제 표준화 기구 (International Organization For Standardization)에서 만든 네트워크 참조 모델
- 통신 단계 7개의 계층
- 물리계층, 데이터 링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층
OSI 모델 (7개의 계층) 7개의 계층 4개의 계층 TCP/IP 모델 (4개의 계층)
- OSI 참조 모델 최상단에 있는 계층 |
- 사용자 및 사용자가 이용하는 응용프로그램과 가장 밀접히 맞닿아 있는 계층
- 사용자가 이용할 응용 프로그램에 다양한 네트워크 서비스를 제공함
- 실질적인 네트워크 서비스가 제공되는 계층 | 응용 계층 | 응용 계층 | | | - 번역가와 같은 역할을 하는 계층
- 사람or컴퓨터 이해할 수 있는 코드로 변환, 압축, 암호화 이루어짐 | 표현 계층 | | 전송 계층 <= 표현계층+세션계층+전송계층 | | - ‘세션’을 관리하기 위해 존재하는 계층
- 통신을 주고받는 호스트의 응용 프로그램 간연결 상태
- 연결 상태를 생성, 유지, 종료 하는 역할 함 | 세션 계층 | | | | - 신뢰성 있고 안정성 있는 전송을 해야 할 때 필요함
- 패킷의 흐름을 제어하거나 전송 오류를 점검해 신뢰성 있고 안정적인 전송이 이루어지도록 함
- 포트라는 정보를 통해 실행 중인 응용 프로그램의 식별 이루어짐 | 전송 계층 | 전송 계층 | | | - 메시지를 (다른 네트워크에 속한)수신지까지 전달하는 계층
- 네트워크 간의 통신이 이루어짐
- IP주소 체계를 통해 통신하고자 하는 수신자 호스트와 네트워크를 식별하고, 원하는 수신지에 도달하기 위한 최적의 경로를 설정함 | 네트워크 계층 | 인터넷 계층 | 주요 프로토콜과 네트워크 장비의 역할과 동작 | | - 네트워크 내 주변 장치 간의 정보를 올바르게 주고받기 위한 계층
- 많은 LAN기술이 데이터 링크 계층에 놓아 있음
- 물리 계층을 통해 주고받는 정보에 오류가 없는지 확인
- MAC주소라는 주소 체계를 통해 네트워크 내 송수신지를 특정할 수 있음, 때론 전송 과정에서 발생할 수 있는 충돌 문제를 해결하는 계층 | 데이터 링크 계층 | 네트워크 액세스 계층 | - 링크 계층 , 네트워크 인터페이스 계층 | | - 최하단에 있는 계층
- 1과0으로 표현되는 비트 신호를 주고 받는 계층
- 근원적인 통신이 이루어지는 계층 ⇒ 통신 매체에 맞는 신호로 운반되도록 비트 데이터의 변환이 이루어지고 통신매체를 통한 송수신이 이루어지는 계층 | 물리 계층 | | |
TCP/IP 모델
- OSI모델 보다 이론적으로 기술하고 이해할 때 사용함
- OSI모델의 목적 ⇒ 이상적 설계 TCP/IP 모델 ⇒ 실용적 구현
- TCP.IP 4계층, 인터넷 프로토콜 스위트, TCP/IP 프로토콜 스택 이라고도 불림
캡슐화 역캡슐화
통신 과정에서 이루어짐
- 패킷은 송신과정에서 캡슐화
- 수신과정에서 역캡술화
과정 개념 설명
송신과정 | 캡슐화 | 송신지 입장에서 가장 높은 계층 → 가장 낮은 계층으로 이동 |
수신과정 | 역캡술화 | 수신지 입장에서 가장 낮은 계층에서부터 가장 높은 계층으로 이동 |
캡술화
- 패킷 교환 네트워크에서 메시지는 패킷 단위로 송수신됨
- 택배와 유사한 개념
- 패킷 구성
- 헤더와 페이로드, 때로는 트레일러를 포함하여 구성
- 프로토콜의 목적과 특징에 따라 헤더의 내용은 달라질 수 있음
- 한 단계 아래 계층은 바로 위의 계층으로부터 받은 패킷을 헤더 및 트레일러를 추가해 나감
- 데이터 전송 과정에서 헤더 및 트레일러를 추가해나가는 과정을 의미 ⇒ 이 과정을 “캡슐화” === 인캡슐레이션
역캡슐화
- 메시지를 수신할 때는 캡슐화 과정에서 붙였던 헤더(및 트레일러)를 각 계층에서 확인한 뒤 제거
- ⇒ 이 과정을 “역캡슐화” === 디캡슐레이션
PDU (IP패킷)
- 각 계층에서 송수신되는 메시지의 단위
- 상위 계층에서 전달받은 데잍터에 현재 계층의 프로토콜 헤더(및 트레일러)를 추가하면 현재 계층의 PDU가 됨
- 주로 전송 계층 이하의 메시지를 구분하기 위해 사용
- 네트워크 계층의 PDU 인 ‘패킷’ 송수신 단위를 지칭하기 위해 사용됨
- ↔ 패킷 교환 네트워크, 네트워크에서 쪼개어져 전송되는 단위를 통칭하기 위한 일반적인 용어
OSI 계층 PDU
응용 계층 | 데이터(data) |
표현 계층 | “ |
세션 계층 | “ |
전송 계층 | 세그먼트, 데이터그램 |
네트워크 계층 | 패킷 |
데이터 링크 계층 | 프레임 |
물리 계층 | 비트 |
! 응용 계층의 PDU 는? 메시지message, 데이터그램datagram, 심볼datagram
조금 더 알아보기
OSI 7계층, TCP/IP 4계층은 사실 아무것도 해주지 않는다!
네트워크 참조 모델은 반드시 지켜져야 하는 규칙이 아니라 가이드라인임
중요한 개념이지만 이름처럼 네트워크 구조에 대한 개념 참조를 위해 사용하는 것이 바람직함
프로토콜 혹은 네트워크 장비 같은 참조 모델에 속한 대상이 바로 네트워크를 자곧ㅇ시키는 주체이자 ‘무언가를 해 주는’ 대상임
트래픽과 네트워크 성능 지표
트래픽: 네트워크 내의 정보량
라우터: 네트워크 장비
서버(호스트)의 트래픽을 분산한다
특정 노드에 트래픽이 몰린다는 것은 해당 노드가 특정 시간 동안 처리해야 할 정보가 많음을 의미함 → 노드에 과부하가 생길 수 있음
컴퓨터의 여러 프로그램을 동시에 실행하면 CPU가 뜨거워지며 성능이 저하되는 것처럼, 트래픽이 몰려 특정 노드에 성능의 저하로 이루어질 수 있으
**네트워크 성능을 평가할 수 있는 세 가지 대중적인 지표는?
:처리율, 대역폭, 패킷 손실**
처리율 (throughput 쓰루풋)
- 단위 시간당 네트워크를 통해 실제로 전송되는 정보량
- bps(bit/s), Mbps(Mbilt/s), Gbps(Bbit/s) 단위로 표현함
- 초당 패킷 수를 표현하기 위해 pps(p/s)단위를 사용하기도 함
대역폭 (bandwidth)
- 신호 처리 영역에서의 정의와 네트워크 성능 측정 영역에서의 정의가 다소 다름
- 전자는 주파수를 의미, 후자는 단위 시간 동안 통신 매체를 통해 송수신할 수 있는 최대 정보량의 의미
- 처리율과 같이 bps, Mbps, Gbps 단위 사용
- ex) 통신 매체가 높은 대역폭을 가지고 있다면 이는 많은 정보를 송수신할 능력이 있음을 의미
패킷손실
- 송수신되는 패킷이 손실된 상황을 의미
- 높은 트래픽으로 인해 노드가 순간적으로 처리해야 할 패킷이 너무 많아지거나 네트워크상 예기치 못한 장애가 발생해서 패킷을 처리하지 못하면 패킷 손실이 발생할 수 있음
- 유실된 패킷을 백분위로 표현한 값을 사용하는 경우가 많음
확인문제
- 4번 통신 장치 간에 프로토콜이 통하지 않아도 정보를 주고받을 수 있습니다.
- 2번 TCP/IP 모델은 3개의 계층으로 통신과정을 구분합니다.
'개발서 발자국 > 혼공네트' 카테고리의 다른 글
[ 혼공네트 ] 02-4 스위치 (0) | 2024.05.17 |
---|---|
[ 혼공네트 ] 02-3 허브 (0) | 2024.05.17 |
[ 혼공네트 ] 02-2 NIC 와 케이블 (0) | 2024.05.16 |
[ 혼공네트 ] 02-1 이더넷 (1) | 2024.05.09 |
[혼공네트] Chapter01-1 컴퓨터 네트워크를 알아야 하는 이유 (0) | 2024.04.17 |