컴네 찐막 정리

hadoju·2022년 12월 8일
1

CH04. 네트워크 계층 : 데이터 평면

4.1 네트워크 계층 개요


[데이터 평면과 제어평면]

  • 데이터 평면
    -입력 링크에서 출력 링크로 데이터그램 전달
    -포워딩
  • 제어 평면
    -라우팅 알고리즘(OSPF, BGP)
    -데이터그램이 출발지 호스트에서 목적지 호스트까지 잘 전달되게끔 로컬포우딩, 라우더별 포워딩
    • 네트워크 계층 구성요소와 서비스 설정, 관리하는 것을 제어
      -경로설정

[네트워크 서비스 모델]

  • 서비스 : 보장된 전달, 지연 제한 이내, 순서대로 패킷 전달, 최소 대역폭, 보안
  • best-effort 서비스
    -보장할 수 있는 서비스 없음
    -매커니즘의 단순성 때문에 사용
    -대역폭 충분 : 스트리밍 비디오 서비스 등에 많이 활용
  • ATM 네트워크 구조
    - 보장할 수 있는 서비스O
  • Intserv 구조
    - 인터넷 구조 서비스 모델
    - 혼잡 방지 통신 목표

4.2 라우터 내부에는 무엇이 있을까?


  • 라우터 내부 : 입력 포트, 스위치 구조, 출력포트, 라우팅 프로세서

[목적지 기반 포워딩]

  • 최장 프리픽스 매치 규칙
    - 가장 긴 매치 엔트리에 매치
    - TCAM

[스위칭]

  • 포워딩과 기능 유사
  • 메모리를 통한 교환
    - 메모리 대역폭에 의해 제한된 속도 가짐
    - 두 패킷 동시 전달 불가
  • 버스를 통한 교환
    - 라우팅 없이 직접 출력포트로 패킷 전송
    - 버스 대역폭에 의해 제한된 속도
  • 상호연결 네트워크를 통한 교환 ⭐
    1. 크로스바 스위치
    - 수직 버스, 수평 버스 : 여러 패킷 병렬 전달 가능
    - 서로 다른 입력포트에서 같은 출력포트로 전달 불가
    1. 다단계(multy) 스위치
      -서로 다른 입력포트에서 동일한 출력포트로 전달 가능
      -데이터 그램을 고정된 길이의 셀로 분할
      -출력 포트에서 원래 패킷으로 재조합

[큐잉]

  • 출력포트 처리 : 스케줄링, 큐 제거, 필요한 링크 계층 및 물리 계층 전송
  • 입력 큐잉 : HOL 차단 (블로킹)
    -빨간박스가 초록박스 막음
  • 출력 큐잉 : 버퍼링
    -도착 속도 > 출력 라인 속도
  • 버퍼 관리 ( 위 문제 해결법)
    -drop-tail 정책 : 이미 대기중인 하나 이상의 패킷 제거
    -스케줄링 정책 : 우선순위 스케줄링 (중요한 애부터 빼냄)
    -버퍼링의 양 : 버퍼링의 양 RTT * 링크용량 C / 루트 흐름 N

[패킷 스케줄링]

  • FCFS : 도착한 순서대로
  • Priority : 우선순위 클래스 분류
  • Round Robin : 클래스 번갈아서 (클래스 간 우선순위 존재 X)
  • WFQ : 라우드로빈에서 클래스마다 다른 양의 시간 부여, 최소 대역폭 보장

4.3 인터넷 프로토콜(IP)


[IPv4 데이터그램 포맷]

  • 헤더에 가변길이 옵션 포함
  • 20바이트 헤더 + TCP 20바이트 = 40바이트

[IPv4 주소체계]

  • 32비트
  • IP주소는 인터페이스에 할당
  • IP주소 구조 : 서브넷 + 호스트 (CIDR) <- 구조 나눠서 표시
    -서브넷 : 네트워크의 프리픽스,ISP
    -호스트 : 같은 서브넷 안에서 구별,DHCP
  • 라우터와 호스트는 IP주소 왼쪽 24바이트가 동일 -> 서브넷
  • 서브넷
    -서브넷 마스크 : 223.1.1.0/24 에서 /24 -> 서브넷의 범위 표시

[DHCP]

  • 호스트가 네트워크에 가입할 때 네트워크 서버에서 IP주소를 동적으로 가져옴
  • 과정
    -DHCP discover : 67, 68 포트
    -DHCP offer : yiaddr(사용가능한 IP) 전송
    -DHCP request
    -DHCP ACK
  • IP주소 + first-hop 라우터 주소, DNS서버이름 IP주소, 네트워크 마스크

[ISP]

  • ISP 블록 : 서브넷 주소 -3비트
  • 최장 프리픽스 매치
  • ISP가 주소 블록 얻는 방법
    -ICANN 국제기관 : IP주소공간 관리
  • IPv4 -> NAT -> IPv6

[NAT]

  • 하나의 IP주소를 공유하는 여러개의 로컬 네트워크
  • 보안 : 로컬 네트워크 내부의 장치는 직접 주소지정 X, 볼 수 X
  • NAT 변환 테이블 : 나가고 들어오는 데이터그램 헤더 변경

[IPv6]

  • 간소화된 40바이트 고정된 헤더 길이
  • 플로우 : 패킷 단위가 아닌, 하나하나 어떤 서비스의 흐름들끼리 디테일한 제어 가능
  • IPv4와의 차이점 : (체크섬, 단편화, 재결합, 옵션) 없음
  • 터널링
    -IPv4 -> IPv6 방법
    -IPv4 데이터그램 내에 IPv6 데이터그램 포함

4.4 일반화된 포워딩 및 SDN


[SDN]

  • 포워딩, 라우팅 기능 분리
  • 매치 플러스 액션
    - 목적지 기반 포워딩과 달리, 다른 헤더의 필드들이 기준(플로우) : 다양한 액션 가능해짐
    - 원격 컨트롤러가 테이블 계산, 설치, 갱신

[오픈 플로우]

  • 리모트 컨트롤러와 SDN 사이의 통신에 사용되는 프로토콜
  • 기존에는 라우터가 포워딩테이블 계산 -> 이제는 리모트 컨트롤러가 포워딩

4.5 미들박스


  • 소스 호스트와 목적지 호스트 사이의 데이터 경로에서 IP 라우터의 주된 기능 이외의 기능을 수행하는 모든 중개장치
  • 라우터의 기능인 포워딩과 라우팅을 제외한 부분
  • 유형 : NAT변환, 보안, 성능향상 등

CH05. 네트워크 계층 : 제어평면

5.1 개요


  • CA : 제어 에이전트
    - SDN의 컨트롤러와 통신
    -컨트롤러와 통신하는 최소한의 기능 : 플로우 테이블 구성 및 관리

5.2 라우팅 알고리즘


[분류]

  • Link State
    -모든 라우터들이 가진 정보가 동일 : 브로드캐스팅
    -네트워크 전체 정보 이용
    -중앙 집중형 라우팅 알고리즘
    -EX)다익스트라
    -한계 : 진동 문제 (한쪽에 몰리면서 왔다갔다)
  • Distance Vector
    -내 옆 이웃에게만 전달하면서 퍼져나감
    -반복적, 비동기적, 분산적(나를 기준으로 주변으로 퍼져나가므로)
    -한계 : 링크 변경 비용에 따른 라우팅 루프 <-비용 안좋게 변함
    -포이즌 리버스 : 라우팅 루프 방지, 루프 안돌게 특정 경로 무한대로 설정
    -수렴속도, 견고성이 LS보다 취약

5.3 인터넷에서의 AS내부 라우팅 : OSPF


[자율시스템 (AS)]

  • 라우터의 그룹, 도메인 : 라우터를 조직화 해서 관리
  • intra-AS
    -같은 AS 내에서의 라우팅 (내부 목적지)
    -동일한 라우팅 알고리즘 사용
    • RIP, EIGRP : DV기반 / OSPF : LS기반
  • inter-AS
    -다른 AS 간의 라우팅 (외부 목적지)
    -게이트웨이 라우터

[OSPF : 개방형 최단 경로 우선 프로토콜]

  • LS 기반 프로토콜 : 견고성 굳
  • 계층 구조 : local area, backbone
  • border : 경계, 내부 -> 외부, 외부 -> 내부

5.4 인터넷 서비스 제공업자(ISP) 간의 라우팅 : BGP⭐


[BGP]

  • 목적지 주소가 아닌 CIDR 형식으로 표현된 주소의 프리픽스를 향해 전달
  • inter-AS 라우팅 프로토콜
    -수천개의 ISP(서브넷 주소)를 연결하는 프로토콜⭐
    -CIDR 형식으로 표현된 주소의 프리픽스를 향해 전달
  • 역할
    -서브넷 존재 알림
    -경로 결정 프로시저
  • 연결
    -eBGP : 인접 AS로부터 서브넷 도달 가능성 정보 획득(외부)
    -iGBP : 모든 AS 내부 라우터에 도달 가능성 정보 전달(내부)

[BGP 경로 설정]

  • prefix + attributes
    -prefix : 브로드캐스트 중인 목적지
    -attributes : AS-PATH, NEXT-HOP
  • 뜨거운 감자 라우팅 : 나한테 붙은 애 중에 최단길이 선택 (외부 길이 신경안씀)
  • 정책에 띠라 경로 결정

5.5 SDN 제어 평면


5.6 인터넷 제어 메세지 프로토콜 (ICMP)


[ICMP]

  • 호스트와 라우터가 서로 간에 네트워크 계층 정보를 주고받기 위해 사용
    -망 자체의 문제 발생 보고
    -IP 데이터그램에 담겨서 전송
  • 메세지 형식 : Type + Code
    -Type = 3 : 도달할 수 없음
    -Type = 11, code = 0 : TTL expired
  • Tracerouter
    -ICMP로 구현
    -TTL expired 이용해서 어떤 호스트로의 경로라도 추적 가능
    -타입3코드3 최종목적지~

CH06. 링크 계층과 근거리 네트워크


6.1 링크 계층 소개


[링크 계층 채널]

  • 브로드캐스트 채널
    -중앙 컨트롤러가 다수의 호스트 연결
    -매체 접속 프로토콜(MAC) : 프레임 전송 조정
  • 점대점(point to point) 통신 링크
    -원거리 링크에 의해 연결된 두 라우터 등에 사용
    -PPP : 전화선, 고속 점대점 프레임 전송
  • 서비스 : 프레임화, 링크접속, 신뢰적 전달, 오류 검출 빛 정정
  • 구현 위치 : NIC(네트워크 인터페이스 카드)

6.2 오류 검출 및 정정 기술


  • EDC : 오류 검출 비트

[패리티 검사]

  • 단일 패리티 비트
    -d+1번째 비트에 1의개수 짝/홀 되게 0,1 중 맞는 값 넣어줌
  • 2차원 패리티 비트
    -가로세로 해서 1의 개수 짝/홀 ~

[체크섬 방법]

  • 더한 값의 1의 보수
  • 모두 1인 비트로 구성되어있는지 계산
    -하나라도 0이면 오류 발생
    -패킷 오버헤드 적다
  • CRC에 비해 오류에 취약

[CRC]

  • 생성자 정해져있음 (G) R은 G-1
  • XOR 연산 이용해서 계산
  • 계산 결과 나머지 비트를 기존의 D의 뒤에 붙여서 보냄
  • 실제 전송된 데이터 XOR 생성다항식이 모두 0이어야 오류X

6.3 다중 접속 링크와 프로토콜


[MAC 프로토콜]

  • 다중 접속 프로토콜
    -여러개의 노드를 동시전송 -> 간섭 발생
    -채널을 어떻게 공유할 것인지 결정하는 분산된 알고리즘

1) 채널 분할 프로토콜

  • 시분할,(TDMA), 주파수 분할(FDMA)
  • 부하 높을수록 효율적

2) 랜덤 접속 프로토콜

  • 분할 안하고 충돌 허용,감지 -> 충돌로부터 회복
  • 부하 높을수록 비효율적
  • ALOHA
    -슬롯 안나눔 -> 회선 이용률 개손해
    -간단
  • slotted ALOHA
    -slot으로 시분할
    -충돌 발생시 재전송
    -자율적으로 전송 가능, 슬롯의 시작만 맞춤
    -충돌 발생시 슬롯 낭비
    -얘도 비효율적
  • CSMA
    -전송하기 전에 확인 -> 누가 먼저 쓰고있으면 솔딩
    -propagation delay문제
    -확인했는데 없어서 보내기 시작했는데 충돌 -> 전체패킷 전송 시간 낭비
    -비효율
  • CSMA/CD
    -충돌 발생했을때 전송 멈춤 -> 회선 빠르게 정리 -> 충돌시 낭비되는 채널 줄어듬
    -무선에서는 사용X
    -binary backoff
    효율 prop에는 반비례 trans에는 비례
  • CSMA/CA
    -무선에서 사용

3) 순번 프로토토콜

  • 가장 효율적
  • polling
    -round robin 이용
    -마스터 노드 有
    -빈 슬롯 없음 -> 높은 효율
    -폴링 지연, 마스터 죽으면 다죽음
  • token passing
    -토큰 : 작은 특수목적 프레임이 정해진 순서대로 노드 간 전달
    -분산 방식 -> 효율적
    -노드 하나 실패하면 전체 채널이 동작X

[DOCSIS]

  • 케이블 접속 네트워크를 위한 링크 계층 프로토콜
  • 주파수 채널을 통한 FDM -> 채널 분할 프로토콜 사용
  • 하향 채널은 UDP만 가능 상향 태널은 TDM도 가능
  • 상향채널에서만 다중 접속 문제 발생 -> 랜덤 접속 프로토콜 사용

6.4 스위치 근거리 네트워크


[MAC]

  • NIC ROM, 48비트
  • MAC주소 : 주민등록번호, IP주소 : 집주소
  • IEEE가 MAC 주소 공간을 관리해서 동일한 MAC주소는 존재할 수 없다
  • IP주소는 휴대성이 X, MAC주소는 휴대성 좋음 (플랫한 주소)

[ARP]

  • 3계층 IP 주소를 -> 2계층 MAC주소로 변환
  • ARP 테이블
    -IP주소에 해당하는 MAC주소 + TTL(MAC 주소 사용가능한 시간)
  • 랜 내에서의 라우팅 과정
    -IP주소를 포함한 ARP 쿼리 브로드캐스트
    -해당 노드가 자신의 MAC주소 담아서 응답 전송
    -응답 받은 노드는 자신의 ARP 테이블에 정보 저장
  • 랜 밖에서의 라우팅 과정

[이더넷]

  • 가장 우세한 유선 랜 기술 (근거리)
  • 페이로드에 데이터그램 운반
  • 비연결형 (handshaking x)
  • 비신뢰적 : 오류검출 o, 정정 x
  • CSMA/CD

[스위치]

  • 2계층 장비
  • 자가학습
  • 다중 동시 전송 가능 (충돌X) -> full duplex 가능
  • 목적지 같으면 충돌
  • 스위치 테이블
    -MAC주소
    -스위치 인터페이스
    -TTL

[가상 근거리 네트워크 VLAN]

  • 스위치 계층구조 한계 : 트래픽 격리의 부족
  • 논리적 망 분리
    -트래픽 격리
    -서로 다른 서브넷으로 간주
  • VLAN 트렁킹
    -스위치에 대해 정의된 VLAN 간에 프레임 전달
    -자신의 VLAN을 식별할 수 있는 포맷 필요 : 802.1Q 프레임 형식

CH07. 무선 및 이동 네트워크


7.1 개요


  • base station(기지국) = AP

[분류]

  • 인프라스트럭처 방식
    -기치국 존재
    -handoff
  • 애드훅 네트워크
    -기지국 존재x
    -링크 커버리지 내의 다른 노드로만 전송 가능

7.2 무선 링크 및 네트워크 특징


[SNR]

  • 측정된 수신 신호의 세기와 잡음의 상대적 비율
  • 얘 커질수록 잡음에도 불구하고 원하는 신호 추출 가능
  • BER : 오류검출확률

[무선 링크 문제]

  • 숨은 터미널 문제
  • 페이딩 현상

7.3 와이파이 : 802.11 무선 랜


[채널과 결합]

  • 개별 무선 단말기는 데이터 송수신을 위해 하나 AP와 결합 필수
  • AP가 주기적으로 비컨 프레임 전송 요구
    -AP의 SSID, MAC 주소 등 (비컨프레임)
  • AP탐색
    -수동적 스캐닝 : AP로부터 비컨 프레임 수신
    -능독적 스캐닝 : 내가 직접 요청, 탐사용 프로브 프레임 방송

[802.11 MAC 프로토콜 : CSMA/CA]

  • DIFS : propagation delay 방지
  • 채널 사용중이면 임의의 시간동안 대기
  • SIFS후 ACK 반환
  • ACK 없으면 BACKOFF 간격 늘리고 반복

[RTS와 CTS]

  • 숨은 터미널 있어도 문제해결
  • RTS패킷을 AP로 전송
  • RTS가 충돌 가능하지만 짧다
  • CTS : AP가 RTS에 대한 응답으로 브로드캐스트

[802.11 프레임]

  • 주소 피드 4개 필요
    -수신자의 MAC주소, 송신자의 MAC주소, 인터페이스의 MAC주소, 애드훅
    • AP가 있기 때문

0개의 댓글