컴퓨터 네트워크 01 : 네트워크의 역사, 전달 방식, 품질 기준, OSI 7계층

728x90

컴퓨터 네트워크 01 : 네트워크의 역사, 품질 기준, 계층


1. 네트워크의 역사

통신 단말기의 역사(Network edge의 역사)

  1. Dial-up Modem
    • 전화선(음성정보)를 그대로 이용
    • Binary 데이터 -> 가청 주파수
    • 1200bps ~ 9600bps 전송률
    • 전화를 걸어서 통신
    • 음성정보 = 데이터 정보
    • Network core = 전화망
  2. DSL(Digital Subscriber Line)
    • 전화선을 통신 선로로 사용
    • Last Mile(마지막 1단계)만 전화선 사용
    • Network core가 별도로 존재
    • 1~8Mbps 전송률
    • splitter를 통해 전화국까지의 선은 공유하나 전화가 오는 신호와 DSL 에서 사용하는 신호가 구분됨
    • dedicated channel(전용채널, 혼자 쓰는 채널)
  3. 케이블 모뎀
    • 케이블 TV 선로(동축선)
    • 집 <-> 업체(30Mbps)
    • 높은 전송률 
    • 데이터 양 많음
    • Shared channel(공유 채널)
    • 대역폭, 설치 비용 적으나 잡음에 취약
  4. FTTH(Fiber To The Home)
    • 사용자가 많아지면서 생기는 문제를 해결하기 위해 등장 
    • 집 앞까지 광케이블
    • 통신 단말기의 발전이 코어망 -> 개인망으로 전환되는 추세
    • 국내 활성화
    • 구리선 -> 광섬유 사용으로 전환
    • 대역폭, 관리 및 설치 비용 크나 잡음 처리 우수
  5. 기타 Last Mile 통신 기법
    • Wifi: 공유 채널
    • Ethernet: 전용선 사용 (Wifi보다 빠름)
    • 3G(음성 최적화), LTE(Data 최적화)

 

2. 네트워크 전달 방식

통신 선로의 종류

  1. 구리선
    • 예) 전화선, Ethernet, 케이블 TV선
  2. 광섬유
    • 단위 전송률의 가성비가 높음
  3. 무선(공기)
    • 잡음 큼
    • 공유 채널 사용
  4. 구리선과 광케이블 선 특징 비교
비교 구리선 광케이블
신호 전기적 신호 전자기파(가시광선) 신호
대역폭 좁음 넓음
설치 비용 저가 고가
잡음 취약 우수

 

Circuit Switching vs Packet Switching

Circuit Switching Packet Switching
통신의 시작~끝까지 경로와 자원을 사전할당/독점 패킷마다 목적지 주소를 적어서 보내는 시스템
시작과 끝이 명시적으로 구분(연속적) 시작과 끝이 모호함
전송량 예측 수준 높음 전송량 예측되지 않음(들쭉날쭉)
초기화 비용 비쌈 초기화 비용 저렴
시간 단위 과금 패킷당 과금, 데이터량 과금
음성(전화에 적합) 데이터(이산화 시킬 수 있는 모든 정보-인터넷에 적합)
실시간 실시간 X
1:1 N:N

 

 

3. 네트워크의 품질 기준

  • 속도
    • 대역폭 (BandWidth)
      • 주파수 넓이와 전송률이 비례관계
      • data rate(전송률) -> Mb/s -> Mbps
      • 1MB/s = 8Mbps
  • 신뢰도 
    • 최악의 상황을 대비해 충분한 자원을 미리 할당하는 것.
    • 일관성, 보안성(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