728x90
컴퓨터 네트워크 01 : 네트워크의 역사, 품질 기준, 계층
1. 네트워크의 역사
통신 단말기의 역사(Network edge의 역사)
- Dial-up Modem
- 전화선(음성정보)를 그대로 이용
- Binary 데이터 -> 가청 주파수
- 1200bps ~ 9600bps 전송률
- 전화를 걸어서 통신
- 음성정보 = 데이터 정보
- Network core = 전화망
- DSL(Digital Subscriber Line)
- 전화선을 통신 선로로 사용
- Last Mile(마지막 1단계)만 전화선 사용
- Network core가 별도로 존재
- 1~8Mbps 전송률
- splitter를 통해 전화국까지의 선은 공유하나 전화가 오는 신호와 DSL 에서 사용하는 신호가 구분됨
- dedicated channel(전용채널, 혼자 쓰는 채널)
- 케이블 모뎀
- 케이블 TV 선로(동축선)
- 집 <-> 업체(30Mbps)
- 높은 전송률
- 데이터 양 많음
- Shared channel(공유 채널)
- 대역폭, 설치 비용 적으나 잡음에 취약
- FTTH(Fiber To The Home)
- 사용자가 많아지면서 생기는 문제를 해결하기 위해 등장
- 집 앞까지 광케이블
- 통신 단말기의 발전이 코어망 -> 개인망으로 전환되는 추세
- 국내 활성화
- 구리선 -> 광섬유 사용으로 전환
- 대역폭, 관리 및 설치 비용 크나 잡음 처리 우수
- 기타 Last Mile 통신 기법
- Wifi: 공유 채널
- Ethernet: 전용선 사용 (Wifi보다 빠름)
- 3G(음성 최적화), LTE(Data 최적화)
2. 네트워크 전달 방식
통신 선로의 종류
- 구리선
- 예) 전화선, Ethernet, 케이블 TV선
- 광섬유
- 단위 전송률의 가성비가 높음
- 무선(공기)
- 잡음 큼
- 공유 채널 사용
- 구리선과 광케이블 선 특징 비교
비교 | 구리선 | 광케이블 |
신호 | 전기적 신호 | 전자기파(가시광선) 신호 |
대역폭 | 좁음 | 넓음 |
설치 비용 | 저가 | 고가 |
잡음 | 취약 | 우수 |
Circuit Switching vs Packet Switching
Circuit Switching | Packet Switching |
통신의 시작~끝까지 경로와 자원을 사전할당/독점 | 패킷마다 목적지 주소를 적어서 보내는 시스템 |
시작과 끝이 명시적으로 구분(연속적) | 시작과 끝이 모호함 |
전송량 예측 수준 높음 | 전송량 예측되지 않음(들쭉날쭉) |
초기화 비용 비쌈 | 초기화 비용 저렴 |
시간 단위 과금 | 패킷당 과금, 데이터량 과금 |
음성(전화에 적합) | 데이터(이산화 시킬 수 있는 모든 정보-인터넷에 적합) |
실시간 | 실시간 X |
1:1 | N:N |
3. 네트워크의 품질 기준
- 속도
- 대역폭 (BandWidth)
- 주파수 넓이와 전송률이 비례관계
- data rate(전송률) -> Mb/s -> Mbps
- 1MB/s = 8Mbps
- 대역폭 (BandWidth)
- 신뢰도
- 최악의 상황을 대비해 충분한 자원을 미리 할당하는 것.
- 일관성, 보안성(HTTP보다 HTTPS를 사용)
- 지연 시간(통화, 실시간 방송, 금융시장, 교통, IOT등에서 영향을 받음)
- Processing delay(상수): 컴퓨터 안에서 패킷을 처리하는 데 걸리는 시간
- Queueing delay: 줄 서는데 드는 시간
- 병목 부분을 파악해서 그 부분을 분산시켜 시간을 줄이거나 자원을 늘리기(기술적으로 해결하기 가장 쉬움)
- Transmission delay
- 미디어에 패킷이 제일 앞에서 끝까지 통과하는 시간, 웜홀 시스템
- 현재의 네트워크는 전송률이 높아지면서 이 영향이 줄어들었음
- Propagation delay
- 빛의 속도와 관련
- 물리적인 거리에 의한 지연
- 캐쉬
- 가장 좋은 성능 향상 기법 중 하나
- 많이 사용하는 것을 더 가까이 끌어와서 빠르게 쓰는 방식
- packet loss: 잡음과 혼잡함이 원인이 되어 발생함. 대역폭이 줄어드는 문제가 발생함
4. 네트워크 OSI 7계층
네트워크 통신이 일어나는 과정을 7단계로 나눔.
이유? > 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문.
만약 7단계 중 특정한 위치에 이상이 생겼을 경우 다른 단계의 장비나 소프트웨어를 건들지 않고 이상이 발생한 단계에 대해서만 조치를 취할 수 있다.
예시: PC방에서 게임을 하는데 연결이 끊긴 상황.
모든 pc에 문제가 있는 경우 > 라우터의 문제(3: 네트워크 계층) 또는 광랜 회선 문제(1: 물리 계층)
한 pc에만 문제가 있는 경우 > 게임 소프트웨어 문제(7: 응용 계층) 또는 스위치 문제(2: 링크 계층)
결국 유지 보수의 원활화와 통신 과정의 단계별 파악을 위해서 계층을 7단계로 나누었다고 정리할 수 있다.
계층별 특징
애플리케이션 계층(HTTP, FTP)
: 비즈니스 로직 혹은 특정 데이터를 만들어내는 것에 따라 생성되는 데이터 전송 계층
트랜스포트 계층(TCP, UDP)
: 물리적으로 연결, 경로 지정이 된 후 데이터를 전송하는 방법을 정의하는 계층
인터넷 계층(IP)
: 노드(컴퓨터)의 논리적 주소로 데이터를 보낼 경로를 선택하는 계층
네트워크 액세스 계층
: 실제로 랜선을 꼽는 랜카드, 랜카드 드라이버등과 같이 물리적인 영역을 표준화 하는 계층이다.
- 1: 물리 계층(Physical Layer)
- 네트워크 데이터가 전송되는 물리적인 매체
- 통신 단위는 비트. 데이터를 전기적인 on, off(1과 0)상태로 변환하여 주고 받음.
- 데이터가 어떤 것인지, 어떤 에러가 있는지에 대해서는 신경쓰지 않는 단계.
- 대표적인 장비: 통신 케이블, 리피터, 허브 등
- 2: 링크 계층(Link Layer)
- 물리 계층을 통해 송 수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행
- 통신에서의 오류를 찾고, 오류 발생시 데이터를 재전송하는 기능이 있음.
- 오류 검사 방식: 패리티 비트 검사, 해밍 부호 검사 등
- 맥 주소를 활용하여 통신하며, 전송 단위를 프레임이라고 함.
- 대표적인 장비: 브릿지, 스위치 등
- 3: 네트워크 계층(Network Layer)
- 네트워크의 경로 설정, IP 주소 정하기, 경로에 따른 패킷 전달 역할
- 네트워크 위의 개체들 간에 데이터를 전달
- 호스트 간의 논리적 통신을 도움
- 대표적인 장비: 라우터
- 4: 전송 계층(Transport Layer)
- 품질 보장
- 하위 계층에 신뢰할 수 있는 데이터 전송 서비스를 제공
- TCP, UDP 프로토콜을 사용해 헤더에 송신지와 수신지의 포트 번호를 포함해 전달함
- * 포트 번호: 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 가져야 하는 정수 값.
- 응용 프로세스 간의 논리적 통신을 도움
- 5: 세션 계층(Session Layer)
- 접속이 끝날 때까지 정보를 유지시키는 것
- 세션: 일정 시간(방문자가 웹 서버에 접속한 시점부터 웹 브라우저가 종료되어 연결이 끊어지는 시점까지의 기간) 동안 같은 사용자로부터 들어오는 일련의 요구를 하나의 상태로 보고, 그 상태를 일정하게 유지하는 기술.
- 주로 TCP/IP 세션을 만들고 유지하며, 세선 종료나 전송 중단시 복구하는 등의 기능을 보유.
- 6: 표현 계층(Presentation Layer)
- 데이터 표현이 상이한 응용 프로세스의 독립성을 제공하고 암호화 함.
- 7: 응용 계층(Application Layer)
- 통신의 끝단이자 최종 목적지로서, HTTP, SMTP, FTP, SFTP, TELNET등과 같은 프로토콜로 이루어짐.
- 위와 같은 프로토콜을 쉽게 사용하기 위해 브라우저나 메일과 같은 응용프로그램이 개발되었음.
- 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 역할을 함.
- 응용예시: 구글 검색 시스템, 종합 정보 시스템, 네이버 웹툰, LOL
기존의 상위계층 개발자는 애플리케이션 계층만 신경쓰면 된다.
네트워크 엔지니어는 나머지 3계층에 대해서만 집중하면 된다.
이론보다는 실용성에 중점을 둔 프로토콜 스택이다.
728x90
'CS 공부 > 컴퓨터 네트워크' 카테고리의 다른 글
컴퓨터 네트워크 06 : TCP 흐름제어, 혼잡 제어 (0) | 2023.03.31 |
---|---|
컴퓨터 네트워크 05 : TCP UDP (0) | 2023.03.31 |
컴퓨터 네트워크 04 : IPv4 IPv6 (0) | 2023.03.24 |
컴퓨터 네트워크 03 : DNS 정리 (0) | 2023.03.24 |
컴퓨터 네트워크 02 : 네트워크 응용의 구조(Client-Server, P2P), 프로세스 종류, 프로토콜 종류, 인터넷 전송계층, FTP, HTTP (0) | 2023.03.17 |