# Network

# 1. Intro

# 네트워크의 구조

  • 규모, 업종, 방식, 토폴로지에 의해 분류 가능하다.
  • 토폴로지
    • Star
    • Ring
    • Bus
    • Mesh
    • Tree
    • Redundancy : 하나가 fail했을 때 백업하는 구조

# 홈 네트워크

  • 인터넷 - ISP - 모델 - 공유기 - 클라이언트(컴퓨터) 로 연결된다.

# 기업용 네트워크

  • 인터넷 - ISP - 라우터 - 방화벽 -L3백본 - L2스위치 - 클라이언트
  • 인터넷 - ISP - 라우터 -방화벽 - L4 Load Balancer - 서버

# 클라우드 네티워크

  • 인터넷 - Route53 - GIW - VPC - ELB - Auto Scaling - Security Group - EC2

# OSI 7 Layer

벤더간 호환을 위한 프로토콜을 기능별로 나누고 계층별로 구분했다.

  • Application - HTTP, SMTP. 소프트웨어
  • Presentation - 인코딩. 프로그램과 네트워크 데이터 간 변환.
  • Session - TCP / IP 연결 유지/중단. ip/port 관리
  • Transport - TCP / UDP. 호스트 간의 전송, L4로드 밸런서가 있다.
  • Network - 다른 네트워크로 전송. 그러기 위해 라우팅 필요. 크기가 크면 패킷화 시켜준다. IP통신과 라우팅을 한다.
  • Data Link - 이더넷, 랜카드. MAC처럼 일련번호. 동일 네트워크로 전송
  • Physical - 전송. 디지털 비트 전송. 케이블, 인터페이스, 허브, 리피터 포함.

# TCP/IP

네트워크 프로토콜의 모음. 패킷 통신 방식 IP와 전송 조절의 TCP

  • Application : 응용 프로그램간 데이터 교환
  • Transport : TCP/UDP
  • Network : 패킷 처리, 네트워크 연결
  • Network Interface : 물리계층

image-20210529150921279

  • Encapsulation :

image-20210529151005984

# 2. Physical Layer

네트워크 장치의 전기적 전송. 통신 장치와 커넥터, 인코딩(bit->signal)

image-20210529152858284

  • Copper Cable을 사용한 전화선, UTP, 동축케이블
  • Optical Fiber을 이용한 광케이블

image-20210529153512743

# 물리계층 장비

  • 허브와 리피터 : 둘다 전기 신호를 증폭시켜주는 장비. 요즘은 잘 안 쓰인다.
  • 동작방식
    • 브로드캐스팅 - 1:all
    • 유니캐스팅 - 1:1
    • 멀티캐스팅 - 1:n
  • CSMA/CD(carrier sense multiple access/ collision detection)
    • carrier sensing : 다른 노드가 사용중인지 확인
    • multiple access : 비었으면 전송 시작
    • collision detection : 충돌 감지시 정지 후 재시도
  • 전송방식
    • Simplex : 단방향
    • Half Duplex : 무전기 식. 한개씩 양방향 가능.
    • Full Duplex : 전화기 식. 동시 양방향 가능
  • 케이블
    • TP : Twisted Pair. UTP와 STP가 있다. 쉴드 차이.
    • 동축 : 선 중앙에 심선. 케이블 티비.
    • 광 : 싱글, 멀티 두 타입이 존재.
    • image-20210529160459111
  • 단위
    • 100Mbps할때 b는 소문자로 비트를 의미한다. 즉 12.5MBps가 된다.
  • 성능
    • Bandwidth :주어진 시간대에 이동가능 정보양. 8차선 도로
    • Throughput : 단위시간당 전송양. 도로의 자동차 양
    • BackPlane : 최대 처리 가능 양
    • CPS : 초당 커넥션 연결 수
    • CC : 최대 수용가능 커넥션
    • TPS : 초등 트랜잭션 연결 수

# UTP 케이블과 Wi-Fi

image-20210529161205375

  • UTP 케이브

    • 568b to 568b : direct
    • 568a to 568b : cross
  • 코드배열

    • Standard
    • Auto MDI-X(Automatic medium dependent interface crossover) : 알아서 direct cross 판단
  • UTP 카테고리

    image-20210529161501810

  • WiFi

    • 인터넷 - ISP - 라우터 - WIPS - AP - 컴퓨터
    • WIPS : Wireless IPS
    • AP : Access Point. 반경과 동시접속 단말기의 개수를 고려.

# 3. L2 Switch

인접 네트워크 노드끼리 데이터 저송. 물리 계층의 오류 감지 수정. 프로토콜은 이더넷, 장비는 스위치.

  • 두개의 부 계층

    • Media Access Control : 물리적. 1계층과 연결
    • Logical Link Control : 논리적. Frame을 만들어 3계층과 연결
  • Framing

    • 데이터그램을 캡슐화하여 프레임 단위로 만들고 헤더와 트레일러를 추가
    • 헤더는 목적지, 출발지, 내용 같은 메타를 정의
    • 트레일러는 비트에러를 감지
  • 회선 제어

    • ENQ/ACK

      image-20210529162440621

      • ENQ로 preflight
      • ACK로 괜찮다고 함
      • Data 송신
      • Ack로 완료
      • EOT 종료
    • Polling : 수신자에게 수신 여부를 확인한다.

      image-20210529162515325

  • 흐름제어 : 데이터 처리속도차이를 해결하기 위한 제어

    • Stop & Wait를 통해 멈췄다 기다렸다를 반복. 손실과 중복에 대한 대처가 되어있다.
    • Sliding Window
  • 오류제어 : 손실 탐지 및 재정송

    • Automatic Repeat Request

      image-20210529163133195

    • Go Back n ARQ

      image-20210529163218709

image-20210529163327602

# 스위치

2계층의 대표 장비. MAC주소 기반 통신. 포트별 Collision Domain. Full duplex. 라우팅 기능이 있으면 L3 스위치라고 한다.

# 4. IP Address and Routing

# 네트워크 계층

OSI Layer의 3계층. 패킷 포워딩과 네트워크간 라우팅. IP주소를 이용하여 통신. 대표 장비는 라우터(L3).

  • Internet Protocol

    • 1973 : 라우팅 구현으로 본질적으로 인터넷을 구축함
    • TCP/IP 모델의 기원.
    • 최신 버전은 IPv6

# IP정의와 구조

  • 구성

    image-20210601004117228

    • 헤더 : 목적지 출발지의 IP포함

      image-20210601004218986

    • 페이로드 : 데이터

#

# IP 클래스

  • 네트워크와 호스트

    • 네트워크는 브로드캐스트
    • 호스트는 개별 단말기
    • 192.168.1.0~255 에서 192.168.1은 네트워크, 0~255는 호스트
    • 브로드캐스트 스위칭으로는 같은 네트워크 안의 호스트끼리 연결
    • 라우터로는 다른 네트워크를 연결
  • 클래스

    image-20210601005220569

# 라우터

IP주소를 확인하여 네트워크 간 패킷의 경로를 선택하여 전송

  • 인터페이스 : 통신용은 UTP, WAN과 WAN도 연결

# 서브넷 마스크

부분망,

  • 할당된 네트워크 영역을 서브넷으로 쪼갬.
  • 네트워크를 여러개의 작은 네트워크로 구분 = 서브넷 마스킹

image-20210601005832205

  • 디폴트 게이트웨이 : 다른 네트워크로 패킷 전송시 거치는 라우터

  • Prefix 표기 : 서브넷 마스크를 간단히 표기.

    • A클래스 255.0.0.0=/8, B클래스:255.255.0.0=/16, C클래스 : 255.255.255.0=/24

    • 네트워크 영역의 비트수를 의미한다. 비트수가 올라갈수록 수가 줄어든다.

      image-20210601010120702

      image-20210601010253503

      image-20210601010409304

    • 주로 LAN 설계시 C클래스(256개)로 많이 나눈다.

# 라우팅

  • Static 라우팅 : 기본. 경로를 라우팅 테이블에 목적지 IP주소 & 인터페이스 정보를 설정.

image-20210601013854182

이런식으로 한다고 한다. 참고만 하자.

# ICMP

Internet Control Message Protocol

  • IP통신은 목적지에 전달을 시키지만 에러 발생시 처리 불가능하다.

  • ICMP는 에러 상황을 출발지에 전달해준다.

  • Protocol ID = 1이다. TCP=6, UDP=17.

  • ICMP Type : 0~254까지 정의 돼 있다.

    image-20210601015223841

# DHCP

Dynamic Host Control Protocol

  • 동적 호스트 프로토콜 : IP주소를 자동으로 할당

image-20210601020400068

# 5. Dynamic Routing

# 라우팅 프로토콜

  • 정적 : 경로 정보를 라우티에 미리 저장

  • 동적 : 네트워크 상황에 따라 더 빠른 경로로 전송

    • EGP
    • IGP

# 라우팅 알고리즘

  • 목적지까지 최적 경로 계산하고 라우팅 테이블 업데이트
  • 동적으로 라우팅 테이블 유지 및 업데이트
  • 종류
    • Distance Vector : 분산 업데이트. 소규모. Bellman-Ford 알고리즘으로 구한다.
    • Link State : 중앙 집중형. 대규모에 적합. 다익스트라 알고리즘으로 구한다.

# EGP

Exterior Gateway Protocol

image-20210601030920719

  • BGP(Border Gateway Protocol) : ISP와 ISP간에 연결한다. Distance Vector을 이용한다.
  • BGP 구성

image-20210601031329730

image-20210601031339587

# IGP

Interiro Gateway Protocol

# OSPF

Open Shortest Path First

  • 링크 스테이트 라우팅 알고리즘을 사용하는 IGP용 라우팅 프로토콜

  • 홉 카운트의 제한이 없다.

  • 변경된 정보만 전파하여 적은 트래픽 유발

# 6. TCP & NAT

  • Transport

    • End to End 서비스 : connection oriented, reliability, flow control
    • TCP, UDP, 소켓을 통한 프로세스별 통신
    • 5 tuple : Source IP, Source Port, Dest IP, Dest Port, Protocol
    • Port : 전송 계층에서 사용되며 프로세스 구분 단위 0~65535까지 있다.
      • 0~1023 : well known.
      • 1024~49151 : registered
      • 49152~65535 : dynamic
  • TCP

    • Transmission Control Protocol

    • 인터넷 구성의 핵심 프로토콜

    • 신뢰성 기반 1:1 통신

    • connection oriented

    • 에러 발생시 재전송 요청

    • 헤더

      image-20210602091937830

  • UDP

    • User Datagram Protocol
    • 신뢰성은 낮으나 빠르다.
    • 1:n 통신 가능
    • 스트리밍에 적합하다,
    • connectionless, 재전송불가, 실시간 전송에 적합

image-20210602111638417

# TCP 통신

  • 3way handshake

    image-20210602112028675

  • 정상적 종료시 4 way handshake

image-20210602112129674

# 7. Applicaton Service

Last Updated: 3/1/2021, 9:19:08 PM