1. 컴퓨터 네트워크 거시적으로 살펴보기
1) 네트워크 기본 구조
네트워크 구조 = 그래프
(1) 호스트(가장자리에 위치한 노드)
- 호스트 역할에 따른 구분
a. 클라이언트
b. 서버
(2) 네트워크 장비(중간에 위치한 노드)
- 호스트 간 주고받을 정보가 거치는 중간 노드
- 호스트 간 주고받는 정보가 수신지까지 안정적이고 안전하게 전송
(3) 통신매체(노드 간 연결하는 링크)
a. 유선 매체
b. 무선 매체
(4) 메시지(노드 간 주고받는 정보)
ex. 웹페이지, 파일, 메일 등
2) 네트워크의 분류
(1) 범위에 따른 네트워크 분류
a. LAN(Local Area Network)
: 가까운 지역을 연결하는 근거리 통신망
b. WAN(Wide Area Network)
: 먼 지역을 연결하는 광역 통신망
- 인터넷이 WAN으로 분류
- 다른 LAN에 속한 호스트와 메시지를 주고받아야 할 때 필요
>> ISP(Internet Service Provider)
- 사용자에게 인터넷과 같은 WAN에 연결가능한 회선을 임대하는 등 WAN과 관련한 다양한 서비스를 제공
(ex. KT, LG, SKT)
(2) 메시지 교환 방식에 따른 네트워크 분류
a. 회선 교환 네트워크
- 메시지를 주고받기 전 회선(메시지 전송로)을 설정한 뒤, 해당 회선을 통해 메시지를 주고받는 방식
>> 장단점
[장점]
- 두 호스트 사이에 연결을 확보한 후에 메시지를 주고 받는 특성 덕분에
주어진 시간 동안 전송되는 정보의 양이 비교적 일정함
[단점]
- 회선의 이용 효율이 낮아질 수 있음
- 가능한 모든 회선에 끊임없이 메시지가 흐르고 있어야만 회선의 이용 효율이 높아짐
- 메시지를 주고받지 않으면서 회선을 점유하는 것은 낭비
b. 패킷 교환 네트워크
- 메시지를 '패킷'이라는 단위로 쪼개어 전송
- 쪼개어 전송된 패킷들은 수신지에서 재조립
- 전송로의 이용효율이 높아 회선 교환 방식의 문제점을 해결
- 현대 인터넷은 대부분 패킷 교환 방식을 사용
+ '패킷'의 구조
- 페이로드(택배 물품) : 전송하려는 데이터
- 헤더, 트레일러(택배 송장) : 부가 정보 또는 제어 정보
> 헤더에 담기는 대표적인 정보. 주소
ex. IP 주소, MAC 주소
- 주소가 있다면 "누구에게 전송할지"를 지정할 수 있다!
-> 특정 기기 하나에 전송
같은 네트워크 내 모든 기기로 전송
같은 그룹에 속한 기기에 전송 등
> 송수신지 유형별 전송 방식
a. 유니캐스트
: 하나의 수신지에 메시지를 전송
- 송신지와 수신지가 일대일로 메시지를 주고 받는 경우
b. 브로드캐스트
: 네트워크상의 모든 호스트에게 전송
- 브로드캐스트 도메인 : 브로드캐스트가 전송되는 범위
2. 컴퓨터 네트워크 미시적으로 살펴보기
두대의 컴퓨터가 패킷을 주고받는 상황을 상정.
1) 프로토콜(네트워크 세상의 언어)
: 노드간에 정보를 올바르게 주고받기 위해 합의된 규칙이나 방법
(ex. HTTP <-> HTTP , FTP <-> FTP)
- 모든 프로토콜에는 목적과 특징이 있다.
2) 네트워크 참조 모델
: 네트워크를 통해 송수신하는 과정
- 정형화된 여러 단계가 있다
- 이 단계는 계층적으로 표현 가능하다
>> 통신 과정을 계층적으로 나눈 이유
(1) 네트워크 구성과 설계가 용이
(2) 네트워크 문제진단과 해결이 용이
>> 대표적인 네트워크 참조모델
(1) OSI모델 (OSI 7계층)
- 국제 표준화 기구 ISO에서 만든 네트워크 참조 모델
7. 응용 계층 | 사용자 및 사용자가 이용하는 응용 프로그램에 다양한 네트워크 서비스 |
6. 표현 계층 | 문자를 컴퓨터가 이해할 수 있는 코드로 변환(인코딩)하거나, 압축, 암호화 |
5. 세션 계층 | 세션(통신을 주고받는 호스트의 응용 프로그램 간 연결상태)을 관리 |
4. 전송 계층 | 신뢰성 있고 안정성 있는 전송을 해야 할 때 필요한 계층 |
3. 네트워크 계층 | 메시지를 (다른 네트워크에 속한) 수신지까지 전달하는 계층 |
2. 데이터 링크 계층 | 네트워크 내 주변 장치 간의 정보를 올바르게 주고받기 위한 계층(오류 확인) |
1. 물리 계층 | OSI 모델의 최하단, 1과 0으로 표현되는 비트 신호를 주고받는 계층 |
(2) TCP/IP 모델
- TCP/IP 4계층
- 인터넷 프로토콜 스위트
- TCP/IP 프로토콜 스택
4. 응용 계층 | OSI 모델의 세션+표현+응용 계층과 유사 |
3. 전송 계층 | OSI 모델의 전송 계층과 유사 |
2. 인터넷 계층 | OSI 모델의 네트워크 계층과 유사 |
1. 네트워크 엑세스 계층 | (링크 계층, 네트워크 인페이스 계층) OSI 모델의 데이터 링크 계층과 유사 |
3) 캡슐화와 역캡슐화
- 메시지는 송신지 입장에서는 가장 높은 계층에서부터 가장 낮은 계층으로 이동
- 메시지는 수신지 입장에서는 가장 낮은 계층에서부터 가장 높은 계층으로 이동
(1) 캡슐화 : 계층 별 프로토콜의 목적과 특징에 부합하는 헤더 추가
- 상위 계층에게 내려받은 패킷을 페이로드로 삼아, 프로토콜에 걸맞은 헤더(혹은 트레일러)를 덧붙인 후 하위 계층전달
- 상위 계층의 패킷은 하위 계층에서의 페이로드로 간주
(2) 역캡슐화 : 계층 별 프로토콜의 목적과 특징에 부합하는 헤더 제거
- 캡슐화 과정에서 붙였던 헤더(및 트레일러)를 각 계층에서 확인한 뒤 제거하는 과정
(3) PDU
: 각 계층에서 송수신되는 메시지의 단위
- 현재 계층의 PDU = 상위 계층 데이터 + 현재 계층의 프로토콜 헤더
'CS 공부' 카테고리의 다른 글
[CS] {운영체제} 파일 (0) | 2025.05.07 |
---|---|
[CS] {운영체제} 메모리 관리 방식 (1) | 2025.05.03 |
[CS] {운영체제} 교착상태(데드락) (0) | 2025.04.25 |
[CS] {운영체제} 동기화 (0) | 2025.04.22 |
[CS] {운영체제} CPU 스케줄링 (0) | 2025.04.21 |