ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 네트워크
    CS 2021. 5. 31. 16:18

    네트워크


    1. OSI 7 Layer

    • 정의
      • 네트워크 프로토콜과 통신을 7 계층으로 표현
    • 목적
      • 프로토콜을 기능별로 나누고 계층 별로 구분
      • 벤더간 호환성을 위한 표준 필요 -> 쉬운 접근성으로 기술의 발전

    OSI 7 Layer 모델

    • 1 계층 - Physical
      • 장치와 통신 매체 사이의 비정형 데이터의 전송을 담당
      • 디지털 bit 를 전기, 무선 또는 광 신호로 변환
      • 전송되는 방법, 제어 신호, 기계적 속성 등을 정의
      • ex) 케이블, 인터페이스, 허브, 리피터
    • 2 계층 - Data Link
      • 동일 네트워크 내에서 데이터 전송, 링크를 통해서 연결을 설정하고 관리
      • 물리계층에서 발생할 수 있는 오류를 감지하고 수정
      • ex) 모뎀, 스위치
    • 3 계층 - Network
      • 다른 네트워크로 데이터 전송, IP 주소로 통신
      • 출발지 IP 에서 목적지 IP 로 데이터 통신 시 중간에서 라우팅 처리
      • 데이터가 큰 경우 분할 및 전송 후 목적지에서 재조립 하여 메시지 구현
      • IP 통신과 라우팅
      • ex) L3 스위치, 라우터
    • 4 계층 - Transport
      • 호스트 간의 데이터 전송
      • 오류 복구 및 흐름 제어, 완벽한 데이터 전송을 보장
      • TCP/UDP
    • 5 계층 - Session
      • 로컬 및 원격 애플리케이션 간의 IP / Port 연결을 관리
    • 6 계층 - Presentation
      • 사용자 프로그램과 네트워크 형식간에 데이터를 변환하여 표현과 독립성을 제공
      • 인코딩, 디코딩, 암호화, 압축
      • ex) ASCII, JPG, MPEG
    • 7 계층 - Application
      • 사용자와 가장 밀접한 소프트웨어
      • ex) 이메일 서비스 SMTP, 파일 전송 FTP 등

     


    TCP/IP

    • TCP/IP
      • 네트워크 프로토콜의 모음으로 패킷 통신 방식의 IP 와 전송 조절 프로토콜인 TCP로 이루어져 있다.

    TCP/IP, OSI 7 Layer 비교

     


    2. 물리 계층

    물리계층의 역할과 기능

    • 네트워크 장치의 전기적, 기계적 속성 및 전송하는 수단을 정의
    • ex) 허브, 리피터
    • Signaling 의 종류
      • 전기
        • Copper 케이블 사용
        • ex) 전화선, UTP, 동축 케이블
      • 광(빛)
        • Optical Fiber 케이블이 이에 속하며 빛의 패턴을 신호로 사용
      • 전파
        • 무선이 이에 속하며 마이크로파 패턴을 신호로 사용

     

    물리계층 장비 

    • ex) 허브와 리피터
    • 허브의 동작 방식
      • 단순 중계기의 역할로 허브에 연결된 PC1이 다른 PC2에게 데이터를 보내려 하면 허브에 연결된 모든 PC들에게 그 데이터를 전달하게 된다.
        • 브로드캐스팅 통신 1 -> ALL
        • 유니캐스트 통신 1 -> 1
        • 멀티캐스트 통신 1 -> N
    • CSMA/CD (carrier sense multiple access/collision detction)
      • 송신노드는 데이터를 전송하고, 다음 채널에서 다른 노드의 데이터 충돌 발생을 계속 감지
      • 충돌 발생시 모든 노드에게 충돌 발생을 통지하고 재전송을 시도
        • 1. Carrier Sensing: 데이터를 보내기 전에 다른 노드에서 데이터를 보내는 중인지 확인
        • 2. Multiple Access: 데이터를 보내는 곳이 없다면 전송 시작
        • 3. Collision Detection: 동 시간대에 데이터를 보내게 되면 충돌이 일어나고 정지
    • 전송방식
      • 1. Simplex: 단방향 통신
      • 2. Half Duplex: 반이중 전송방식, 양방향 통신이나 송수신 시간은 정해짐, ex) 무전기
      • 3. Full Duplex: 전이중 전송방식, 동시 양방향 통신 가능, ex) 전화기
    • 케이블과 커넥터
      • 종류
        • TP (Twisted Pair)
        • 동축 (Coaxial)
        • 광 (Fiber)
        • 광 트랜시버
    • 성능
      • Bandwith (대역폭)
        • 주어진 시간대에 네트워크를 통해 이동할 수 있는 정보의 양
      • Throughput (처리량)
        • 단위 시간당 디지털 데이터 전송으로 처리하는 양
      • ex) 대역폭 -> 도로의 차선, 처리량 -> 도로를 달리는 자동차의 숫자
      • BackPlane
        • 네트워크 장비가 최대로 처리할 수 있는 데이터 용량
      • CPS (Connections Per Second)
        • 초당 커넥션 연결수, L4
      • CC (Concurent Connections)
        • 최대 수용가능한 커넥션
      • TPS (Transaction Per Seconds)
        • 초당 트랜잭션 연결수, L7, 주로 HTTP 성능

     

    UTP 케이블과 Wi-Fi

    • UTP 케이블
      • Unshielded Twisted Pari
      • 주로 근거리 통신망 (LAN)에서 사용되는 케이블
      • 이더넷 망 구성시 가장 많이 보게되는 케이블
    • Wi-Fi
      • 비영리 기구인 Wi-Fi Aliance의 상표로 전자기기들이 무선랜에 연결할 수 있게 하는 기술
      • 802.11n Wi-Fi 4, 802.11ac Wi-Fic 5, 802.11ax Wi-Fi 6로 불림
    • 무선랜 구성
      • 인터넷 - ISP(전용선) - 라우터 - WIPS(Wireless IPS) - AP(Access Point) - 컴퓨터(무선랜카드)

     


    3. L2 스위치

     

    데이터 링크 계층의 역할과 기능

    • 데이터 링크 계층 
      • OSI 7 Layer 의 2 계층으로 인접한 네트워크 노드끼리 데이터를 전송하는 기능과 절차를 제공
      • 물리계층에서 발생할 수 있는 오류를 감지하고 수정
      • 대표적인 프로토콜로 이더넷이 있으며 장비로는 스위치가 있다.
        • 2개의 부 계층으로 구성
          • MAC (Media Access Control)
            • 물리적인 부분으로 매체간의 연결방식을 제어하고 1계층과 연결
            • 48bit (6 Bytes)로 6자리로 구성, 각 16진수로 표현
          • LLC (Logical Link Control)
            • 논리적인 부분으로 Frame을 만들고 3계층과 연결 
      • 주요 기능
        • Framing
          • 데이터그램을 캡슐화하여 프레임 단위로 만들고 헤더와 트레일러를 추가
          • 헤더는 목적지, 출발지 주소, 데이터 내용을 정의
          • 트레일러는 비트 에러를 감지
        • 회선 제어
          • 신호간의 충돌이 발생하지 않도록 제어
          • ENQ/ACK 방법
            • 전용 전송 링크 1:1
          • Polling 방법
            • 1:다
            • Select 모드: 송신자가 나머지 수신자들을 선택하여 전송
            • Poll 모드: 수신자에게 데이터 수신 여부를 확인하여 응답을 확인하고 전송
        • 흐름 제어
          • 송신자와 수신자의 데이터를 처리하는 속도 차이를 해결하기 위한 제어
          • Feedback 방식의 Flow Control 이며 상위 계층은 Rate 기반
          • Stop & Wait
            • 송신자가 데이터를 보내고 ACK 응답이 올때까지 기다림.
            • ACK (Acknowledgement)
            • 간단한 구현, 비효율적
          • Frame을 전달하고 ACK이 회선문제로 응답하지 않는 경우
            • 데이터를 보내고 ACK 응답이 올때까지 기다림.
            • ACK가 오지 않으면 일정시간 후 다시 보냄.
            • Retransmit frame
          • Frame을 재전송하게되면 Duplicate frame 문제 발생 가능
            • Sequence number (1bit)를 사용하여 동일 frame 인지 구분하여 상위계층으로 전달
          • Sliding window
            • ACK 응답 없이 여러 개의 프레임이 연속으로 전송 가능
            • Window size 는 전송과 수신측의 데이터가 저장되는 버퍼의 크기
        • 오류 제어
          • 전송 중에 오류나 손실 발생시 수신측은 에러를 탐지 및 재전송
          • ARQ (Automatic Repeat Request): 프레임 손상 시 재전송이 수행되는 과정
          • Stop & Wait ARQ
            • 전송 측에서 NAK 을 수신하면 재전송
            • 주어진 시간에 ACK 가 안오면 재전송
          • Go Back n ARQ
            • 전송측 Frame 한번에 여러개 전송
            • 수신측 x 번 Frame 문제 발생
            • 수신측 NAK x번으로 손상 응답
            • 전송측 x번이 포함된 x~... 번 재전송
          • Selective Repeat ARQ
            • 손상된 Frame 만 선별해서 재전송
        • 이더넷 프레임 구조
          • Ethernet v2
            • 데이터 링크 계층에서 MAC (Media Access Control) 통신과 프로토콜의 형식을 정의
            • Preamble: 이더넷 프레임의 시작과 동기화
            • Dest Addr: 목적지 MAC 주소, Src Addr: 출발지 MAC 주소
            • Type: 캡슐화 되어있는 패킷의 프로토콜을 정의
            • Data: 상위 계층의 데이터로 46~1500 바이트의 크기, 46바이트보다 작은 면 뒤에는 패딩이 붙음
            • FCS (Frame Check Sequence): 에러 체크

     

    이더넷 프레임 구조

     

    스위치와 ARP

    • L2 스위치
      • 2계층의 대표적인 장비로 MAC 주소 기반 통신
      • 허브의 단점을 보완
      • Half Duplex -> Full Duplex
      • 1 Collision Domain -> 포트별 Collision Domain
      • 라우팅 기능이 있는 스위치를 L3 스위치라고 한다.
      • 동작 방식
        • 목적지 주소를 MAC 주소 테이블에서 확인하여 연결된 포트로 프레임 전달
        • 1. Learning
          • 출발지 주소가 MAC 주소 테이블에 없으면 해당 주소를 저장
          • 1. 스위치에 연결된 각 포트에서 프레임을 스위치에 전달함
          • 2. 스위치는 해당 포트로 유입된 프레임을 보고 MAC 주소를 테이블에 저장함
        • 2. Flooding - Broadcasting
          • 출발지 주소가 MAC 주소 테이블에 없으면 전체 포트로 전달
          • 1. PC에서 목적지 주소로 프레임 전달
          • 2. 스위치는 해당 주소가 MAC Table 에 없으면 전체 포트로 전달
        • 3. Forwarding
          • 목적지 주소가 MAC 주소 테이블에 있으면 해당 포트로 전달
          • 1. 목적지 주소로 프레임 전달
          • 2. 스위치는 해당 주소가 MAC Table 에 존재하면 해당 프레임을 바로 PC로 전달
        • 4. Filtering - Collision Domain
          • 출발지와 목적지가 같은 네트워크 영역이면 다른 네트워크로 전달하지 않음
          • 1. 스위치로 프레임 전달
          • 2. 스위치는 해당 주소가 동일 네트워크 영역임을 확인하면 다른 포트로 전달하지 않음.
          • 3. Collision Domain 을 나누어 효율적 통신이 가능하다.
        • 5. Aging
          • MAC 주소 테이블의 각 주소는 일정 시간 이후에 삭제
          • 삭제되는 이유는 테이블 저장 공간을 효율적으로 사용하기 위해
          • 해당 포트에 연결된 PC가 다른 포트로 옮겨진 경우도 발생
          • 기본 300초 (Cisco 기준)저장, 다시 프레임이 발생되면 다시 카운트
    • ARP (Address Resolution Protocol)
      • IP 주소를 통해서 MAC 주소를 알려주는 프로토콜
      • 컴퓨터 A 가 컴퓨터 B 에게 IP 통신을 시도하고 통신을 수행하기 위해 목적지 MAC 주소를 알아야 한다.
      • 목적지 IP 에 해당되는 MAC 주소를 알려주는 역할을 ARP가 해준다.
      • ARP 동작 과정
        • 1. PC1은 동일 네트워크 대역인 목적지 IP A로 패킷 전송 시도
        • 2. 목적지 MAC 주소를 알기 위해 우선 자신의 ARP Cache Table 확인
        • 3. ARP Cache Table 에 있으면 패킷 전송, 없으면 ARP Request 전송 
        • 4. IP A에서 목적지 MAC 주소를 ARP Reply로 전달
        • 5. 목적지 MAC 주소는 ARP Cache Table에 저장되고 패킷 전송
      • ARP 헤더 구조
        • Hardware Type: ARP가 동작하는 네트워크 환경, 이더넷
        • Protocol Type: 프로토콜 종류, 대부분 IPv4
        • Hardware & Protocol Length: MAC 주소 6Byte, IP 주소 4Byte
        • Operation: 명령코드, 1=ARP Request, 2=ARP Reply
        • Hardware Address=MAC, Protocol Address=IP

    스위치 정리 과정

     

     

    ARP 헤더 구조

     

     

    스패닝트리 프로토콜과 루핑

    • Looping
      • 같은 네트워크 대역 대에서 스위치에 연결된 통로과 2개 이상인 경우에 발생
      • PC 가 브로드캐스팅 패킷을 스위치들에게 전달하고 전달 받은 스위치들은 Flooding 한다.
      • 스위치들끼리 Flooding된 프레임이 서로 계속 전달되어 네트워크에 문제를 일으킨다.
      • 회선 및 스위치 이중화 또는 증축 등에 의해 발생
      • 물리적인 포트 연결의 실수 또는 잘못된 이중화 구성으로 L2 에서 가장 빈번히 발생하는 이슈
    • STP (Spanning Tree Protocol): 스패닝 트리 프로토콜
      • 자동으로 Looping을 막아주는 알고리즘 -> 스패닝 트리 알고리즘
      • 스패닝 트리 알고리즘에 사용되는 프로토콜 -> STP
        • Bridge ID
          • 스위치의 우선순위로 0~65535로 설정, 낮을수록 우선순위 높음
        • Path Cost
          • 링크의 속도(대역폭), 1000/링크 속도로 계산되며 작을수록 우선순위 높음
          • 1Gbps 속도가 나오면서 계산법이 적합하지 않아 IEEE 에서 각 대역폭 별 숫자 정의
          • 10Mbps = 100, 100Mbps = 19, 1Gbps = 4
      • STP의 요소
        • 1. Root Bridge: 네트워크당 1개 선출
        • 2. Root Port: Root Bridge가 아닌 스위치들은 1개 포트 선출
        • 3. Designated Port: 각 세그먼트별 1개 포트 지정
      • BPDU (Bridge Protocol Data Unit)
        • 스패닝 트리 프로토콜에 의해 스위치간 서로 주고받는 제어 프레임
        • 1. Configuration BPDU: 구성관련
          • Root BID - 루트 브리지로 선출될 스위치 정보
          • Path Cost - 루트 브리지까지의 경로 비용
          • Bridge ID, Port ID - 나머지 스위치와 포트의 우선순위
        • 2. TCN (Topology Change Notification) BPDU
          • 네트워크 내 구성 변경시 통보
        • 우선순위 - 낮은 숫자가 더 높은 우선순위를 가진다.
          • 누가 더 작은 Root BID ? 
          • 루트 브리지까지 더 낮은 Path Cost ? 
          • 연결된 스위치 중 누가 더 낮은 BID ?
          • 연결된 포트 중 누가 더 낮은 Port ID ?
      • STP 상태변화
        • 스위치의 포트는 스패닝 트리 프로토콜 안에서 5가지 상태로 표현된다.
        • 1. Disabled
          • 포트가 Shut Down 인 상태로 데이터 전송불가, MAC 학습불가, BPDU 송수신 불가
        • 2. Blocking
          • 부팅하거나 Disabled 상태를 Up 했을 때 첫번째 거치는 단계, BPDU 만 송수신
        • 3. Listening - 15초
          • Blocking 포트가 Root 또는 Designated Port로 선정되는 단계, BPDU 만 송수신
        • 4. Learning - 15초
          • 리스닝 상태에서 특정 시간이 흐른 후 러닝 상태가 됨, MAC 학습 시작, BPDU 만 송수신
        • 5. Forwarding
          • 러닝 상태에서 특정 시간이 흐른 후 포워딩 상태가 됨, 데이터 전송 시작, BPDU 만 송수신 
    • RSTP & MST
      • RSTP (Rapid Spanning Tree Protocol)
        • STP 적용시 포워딩 상태까지 30~50초 걸림, 이 컨버전스 타임을 1~2초로 단축
        • Learning & Listening 단계가 없음
      • MST (Multiple Spanning Tree)
        • 네트워크 그룹이 많아지면 STP or RSTP BPDU 프레임이 많아지고 스위치 부하 발생
        • 여러개의 STP 그룹들을 묶어서 효율적으로 관리

    Looping 구조

     

    VLAN

    • VLAN (Virtual Local Area Network)
      • 물리적 구성이 아닌 논리적인 가상의 LAN을 구성하는 기술
      • 불필요한 데이터 차단: 브로드캐스트 도메인 별로 나누어 관리
      • 관리의 용이성과 보안: 호스트의 물리적 이동 없이 LAN 그룹 변경이 가능
      • 비용 절감: 새로운 LAN 추가시 물리적 스위치 구매 필요 없음
    • VALN 종류
      • 1. Port 기반 
      • 2. MAC 주소 기반
      • 3. IP 주소 기반
    • Trunk
      • 물리적 스위치간 VLAN 연결 시 하나의 물리적 연결로 VLAN 그룹들 공유
      • Trunk Protocol
        • 이더넷 프레임에 식별용 VLAN ID 를 삽입하여 데이터를 구분하여 통신 및 제어 가능

     


    4. IP 주소와 라우팅

     

    네트워크 계층의 역할과 IP 구조

    • 네트워크 계층의 역할
      • OSI 7 Layer 의 3계층으로 패킷 포워딩과 네트워크간 라우터를 통한 라우팅 수행
      • IP (Internet Protocol) 주소를 사용하여 통신, 계층적 구조
      • 대표적인 장비는 라우터, 또는 L3 라고 부른다.
    • IP (Internet Protocol) 정의와 구조
      • 네트워크 계층에서 통신하는 주요 프로토콜로 라우팅을 구현하고 본질적인 인터넷을 구축하는 계기
      • IP 구조는 헤더와 페이로드로 구성되어 있다.
        •  Header
          • 헤더는 목적지 & 출발지 IP 주소등을 포함, 페이로드는 전송되는 데이터를 의미한다.
          • Version: IP 버전
          • Header Length: 헤더의 길이
          • Type of Service: 서비스 품질
          • Total Packet Length: IP 패킷 전체의 길이 - 바이트 단위
          • Identifier, Flags, Offset: IP Fragment 필드로 단편화와 재조합, 큰패킷이 작은 패킷으로 전송되는 경우
          • Time to Live: IP 패킷 수명
          • Protocol ID: 데이터에 포함되어 있는 상위 계층의 프로토콜 정보
          • Header Checksum: 오류 검출
          • Source, Destination Ip Addres: 출발지 & 목적지 IP 주소 
          • IP Header Options & Padding: 옵션, 거의 사용되지않음, 시험/디버깅용, 통신 미관여
      • IP 주소 클래스
        • 2진수 32비트로 구성
        • 총 2의 32승 = 42억 9천여개
        • 2진수는 어려워 10진수로 표현
        • 네트워크와 호스트
          • 네트워크는 브로드캐스트 영역, 호스트는 개별 단말기
          • ex) 192.168.1.0~255 => 192.168.1 = 네트워크, 0~255 = 호스트
        • 크기에 따라 5개의 클래스 (A, B, C, D, E) 로 구분
          • A: 0.0.0.0 ~ 127.255.255.255, 호스트는 2의 24승
          • B: 128.0.0.0 ~ 191.255.255.255, 호스트는 2의 16승
          • C: 192.0.0.0 ~ 223.255.255.255, 호스트는 2의 8승 
          • D&E: 멀티캐스트용, 연구용

     

     

    IPv4 헤더 구조

     

    라우터와 서브넷팅 

    • Router: 네트워크 간의 패킷을 전송해주는 장비
    • Routing: 네트워크 간의 패킷을 전달하는 경로를 선택하는 과정, Static & Dynamic
    • Routed: 라우터가 라우팅을 해주는 대상, IP

     

    • 서브넷 마스크
      • 서브넷: 부분망, IP주소는 네트워크와 호스트로 구분
      • 할당된 네트워크 영역을 좀 더 효율적으로 사용하기 위해 서브넷으로 쪼개어 구성
      • 네트워크를 여러개의 작은 네트워크 서브넷으로 구분하는것 -> 서브넷 마스크
      • 디폴트 게이트웨이: 다른 네트워크로 패킷 전송시 거쳐야 하는 거점

     

    • 라우터의 동작 방식
      • Static 라우팅
        • 가장 기본적인 라우팅 방식으로 수동으로 경로를 라우터에 설정하여 패킷을 처리한다.
        • 경로는 라우팅 테이블에 목적지 IP 주소 & 인터페이스 정보를 설정
      • Hop & TTL
        • 전세계 네트워크 호스트는 IP 라우팅을 통해서 연결
        • Hop: 소스와 목적지 간의 경로
        • TTL (Time to Live): 패킷이 폐기되기 전 hop 카운트

     

    ICMP

    • ICMP (Internet Control Message Protocol)
      • 인터넷 제어 메시지 프로토콜
      • IP 통신은 목적지에 패킷을 정상적으로 전달하는 방법은 있지만 에러 발생시 처리 불가
      • ICMP는 IP 통신의 에러 상황을 출발지에 전달 & 메시지 제어 역할
      • 주 타입은 정보용 (8, 0, 9, 10)과 오류 보고용 (3, 5, 11, 12)로 구분
      • Ping & Traceroute 명령어를 통해서 사용된다.
    • ICMP 포맷 구조
      • IP 패킷에 포함
      • Type: ICMP 메시지 종류
      • Code: 메시지 Type 별 세부 코드 정보
      • Checksum: ICMP 헤더 손상 여부 확인

     

    DHCP

    • DHCP (Dynamic Host Control Protocol)
      • 동적 호스트 구성 프로토콜
      • DHCP 서버를 사용하여 클라이언트인 네트워크 장치에 IP 주소를 자동으로 할당
      • 요청에 의한 IP 할당으로 효율성 극대화
      • 잘못된 IP 설정으로 인한 장애 예방
      • IP 변경이 잦은 호스트의 관리
    • DHCP 메시지 포멧
      • OpCode: 1 Request, 2 Reply
      • Hardware Type: 1, Ethernet
      • Hardware address length: 6, MAC address
      • Hop count: 0시작, 네트워크 망 이동시 증가
      • Transaction ID: 클라이언트가 선택하는 랜덤 수, 요청과 응답 매칭
      • Seconds: IP 할당 후 경과한 초의 수
      • Flags: 서버 응답에 대해서 0 unicast 또는 1 broadcst 응답 구분 값
      • Client IP: 최초 0.0.0.0, Your IP: 할당될 IP, Options: DHCP 메시지 타입 포함
    • DHCP 동작 과정
      • IP 할당
        • 기본 네트워크 구성, Gateway - Switch - DHCP Server - PC
      • IP 갱신
        • 지정된 IP 갱신 타임이 도래하면 갱신을 요청
      • IP 해제
        • 사용중인 PC가 전원 off 되는 경우

    DHCP 메시지 타입


    5. 동적 라우팅

     

    동적 라우팅의 개요 

    • 라우팅 프로토콜
      • 라우팅 프로토콜은 Static & Dynamic 으로 구분된다.
      • 정적 라우팅: 경로 정보를 라우터에 미리 저장하여 패킷 전송
      • 동적 라우팅: 경로 정보가 네트워크 상황에 따라 더 빠른 경로로 변경되어 패킷 전송
    • 라우팅 알고리즘
      • 목적지까지의 최적 경로를 계산하고 라우팅 테이블에 업데이트
      • 동적으로 라우팅 테이블을 유지 및 관리하는 알고리즘
        • Distance Vector
          • 분산 업데이트
          • 각 라우터들에 의해 최소 비용 경로 계산 -> 인접 노드와 교환
          • 소규모 네트워크, 주기적이며 비동기 방식
        • Link State
          • 중앙 집중형 업데이트
          • 네트워크 전체 정보를 통해서 최소 비용 경로를 계산
          • 대규모 네트워크에 적합, 이벤트 기반의 라우팅 테이블 관리
      • Distance Vector 알고리즘
        • 거리 + 방향
        • 목적지 IP 까지의 거리 = Hop 카운트 = 라우터와 라우터 사이의 거리 + 인터페이스 방향
        • 인접 라우터들과 주기적으로 라우팅 테이블을 교환하여 확인 및 관리
        • 인접 라우팅 테이블만 관리 -> 메모리 절약
        • 비교적 구성이 간단
        • 주기적 라우팅 테이블 업데이트 => 무의미한 트래픽 발생 가능
        • Convergence time 이 느리다.
      • Bellman-Ford 알고리즘
        • 최단 경로 문제를 풀어주는 알고리즘
        • 최단경로: dq(e) = q에서 e까지의 총 경로
        • 비용: c(q,w) = 인접 노드간의 비용
        • 갱신: dq(e) = min { c + d }
      • Link State 라우팅
        • 회선의 대역폭을 고려하여 가중치를 부여
        • 네트워크 토폴로지 경로를 모든 라우터들에게 전달
        • 라우팅 정보가 변경되는 이벤트 건에 대해서만 전파 -> 네트워크 트래픽 감소
        • 각 라우터들은 최상의 경로를 계산 -> Dijkstra's algorithm
      • 다익스트라 알고리즘
        • 주어진 출발지와 목적지 사이의 최단 경로 문제를 푸는 알고리즘
        • S = {}, d[], Q = {}

     


    6. TCP 와 NAT

     

    TCP & UDP 개요

    • Transport 계층
      • End to End 서비스, 커넥션을 관리
      • Connection-oriented, Reliablility, Flow control, Multiplexing
      • TCP & UDP, 소켓을 통한 프로세스별 통신
      • 5 tuple = Source IP, Source Port, Dest IP, Dest Port, Protocol
    • Port
      • 전송 계층에서 사용되며 특정 프로세스를 구분하는 단위
      • 0 ~ 65535
      • 0 ~ 1023: well-known port
      • 1024 ~ 49151: registed port
      • 49152 ~ 65535: dynamic port
      • 웹 TCP 80, FTP TCP 21
    • TCP (Transmission Control Protocol)
      • 전송 제어 프로토콜
      • 인터넷을 구성하는 핵심 프로토콜
      • 신뢰성을 기반으로 데이터를 에러 없이 전송, 1:1 통신
      • 연결 지향, Connection-oriented, 패킷의 상태 정보를 확인하고 유지
      • 에러 발생시 재전송 요청하고 에러 복구

     

    TCP 헤더 포맷
    TCP 제어 플래그

     

    • UDP (User Datagram Protocol)
      • 신뢰성은 낮으나 데이터 전송이 빠르다.
      • 송신측은 일반적으로 데이터를 보내고 확인 안함
      • 1:n 통신 가능
      • Connectionless
      • 재전송 불가, 실시간 데이터 전송에 적합

    UDP 헤더 포맷
    TCP & UDP 비교

     

     

     


    - 아직 정리 안된 강의 -> 다음 주꺼 끝나면 보충 

    5-2, 5-3

    6-2, 6-3, 6-4

    7-1, 7-2, 7-3, 7-4


    ※ 출처

    패스트캠퍼스 컴퓨터 공학 강의

    'CS' 카테고리의 다른 글

    시스템 프로그래밍 - 쉘, 쉘스크립트  (0) 2021.05.09
    운영체제 - 2  (0) 2021.04.24
    운영체제 - 1  (0) 2021.04.18
    리눅스 중요 명령어  (0) 2021.01.16
    HTTP 8. 캐시와 조건부 요청  (0) 2021.01.08
킹수빈닷컴