컴퓨터 네트워크 4장-7장 찐막정리

Jnary·2022년 12월 8일
3

Computer Network

목록 보기
9/9

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

4.1 네트워크 계층 개요


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

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

[네트워크 서비스 모델]

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

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


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

[목적지 기반 포워딩]

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

[스위칭]

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

[큐잉]

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

[패킷 스케줄링]

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

4.3 인터넷 프로토콜(IP)


[IPv4 데이터그램 포맷]

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

[IPv4 주소체계]

  • 라우터와 호스트는 IP주소 왼쪽 24bit가 동일 -> 서브넷
  • IP주소 구조 : 서브넷 + 호스트 (CIDR)
    - 서브넷 부분 : ISP
    - 호스트 부분 : DHCP
  • 서브넷
    - 서브넷 마스크 : 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 블록 : 서브넷 주소 - 3bit
  • 최장 프리픽스 매치
  • ISP가 주소 블록 얻는 방법
    - ICANN 국제기관 : IP주소 공간 관리
  • IPv4 -> NAT -> IPv6

[NAT]

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

[IPv6]

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

4.4 일반화된 포워딩 및 SDN


[SDN]

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

[오픈 플로우]

  • 리모트 컨트롤러와 SDN 사이의 통신에 사용되는 프로토콜

4.5 미들박스


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

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

5.1 개요


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

5.2 라우팅 알고리즘


[분류]

  • Link State : 다익스트라 알고리즘
    - 모든 라우터들이 가진 정보가 동일 : 브로드캐스팅
    - 네트워크 전체 정보 이용
    - 중앙 집중형 라우팅 알고리즘
    - 한계 : 진동 문제
  • Distance Vector
    - 이웃을 통해 다음으로 넘어감
    - 반복적, 비동기적, 분산적
    - 한계 : 링크 비용의 나쁜 변경에 따른 라우팅 루프
    - 포이즌 리버스 : 라우팅 루프 방지, 무한으로 설정
    - 수렴속도, 견고성이 LS보다 취약

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


[자율시스템 AS]

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

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

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

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


[BGP]

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

[BGP 경로 설정]

  • prefix + attributes
    - prefix : 브로드캐스트 중인 목적지
    - attribute : AS-PATH, NEXT-HOP
  • 뜨거운 감자 라우팅
    - 내부 라우터가 외부로 라우팅하고 싶을 때 게이트웨이 라우터까지의 최단 경로 우선 선택
  • 정책에 따라 경로 결정

5.5 SDN 제어 평면


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


[ICMP]

  • 호스트와 라우터가 서로 간에 네트워크 계층 정보를 주고받기 위해 사용
    - 망 자체의 문제 발생 보고
    - IP 데이터그램에 담겨져 전송
  • 메시지 형식 : Type + Code
    - Type = 3 : 도달할 수 없음
    - Type = 11, code = 0 : TTL expired
  • Traceroute
    - TTL expired 이용해서 어떤 호스트로의 경로라도 추적 가능
    - type = 3, code =3 목적지 도달 불가능 리턴함으로써 목적지에 도착

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

6.1 링크 계층 소개


[링크 계층 채널]

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

6.2 오류 검출 및 정정 기술


  • EDC : 오류 검출 비트

[패리티 검사]

  • 단일 패리티 비트
    - d + 1번째에 패리티 비트
    - 짝/홀 : 1의 개수가 짝/홀
  • 2차원 패리티 비트
    - 가로 세로 합 짝/홀

[체크섬 방법]

  • 더한 값의 1의 보수
    - 모든 비트가 1인지 계산 : 하나라도 0이면 오류
  • 특징
    - 장점 : 패킷 오버헤드 적다
    - 단점 : CRC보다 오류에 취약

[CRC 순환 중복 검사]

  • CRC 비트 추가 : 계산 결과의 나머지
  • <D,R> = D * 2^r XOR R
  • (실제 전송된 데이터 xor 생성자)의 나머지가 모두 0 : 오류X

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


[MAC 프로토콜]

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

1) 채널 분할 프로토콜

  • 시분할(TDMA), 주파수 분할(FDMA)
  • 효율성
    - 높은 부하 : 효율적
    - 낮은 부하 : 비효율적

2) 랜덤 접속 프로토콜

  • 충돌 감지 -> 충돌로부터 회복
  • 효율성
    - 높은 부하 : 비효율적
    - 낮은 부하 : 효율적
  • (pure) ALOHA
    - 비효율적, 간단
  • slotted ALOHA
    - slot으로 시분할, 분산된 형태
    - 충돌 발생 시 재전송
    - 한계 : 슬롯 낭비, 노드 동기화
  • CSMA
    - 전송하기 전에 확인 -> 홀딩
    - 한계 : Propagation delay로 인한 전체 패킷 전송 시간 낭비
  • CSMA/CD
    - 충돌 감지 -> 회선 정리
    - 한계 : 무선에서는 사용 X
  • CSMA/CA
    - 무선에서 사용 (cf. CSMA/CD는 이더넷에서 사용)

3) 순번 프로토콜

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

[DOCSIS]

  • 케이블 접속 네트워크를 위한 링크 계층 프로토콜
  • 주파수 채널을 통한 FDM : 1) 채널 분할 프로토콜
  • 하향채널
    - CMTS -> 모뎀
    - MAP 메시지 전송
  • 상향채널
    - 모뎀 -> CMTS
    - 다중 접속 문제
    - 시간 슬롯에 대한 경쟁 : 2) 랜덤 접속 프로토콜
    - TDM

6.4 스위치 근거리 네트워크


[MAC 주소]

  • NIC ROM, 48bit
  • IEEE가 관리 : 어떤 어댑터도 동일 X
  • 플랫한 주소 : 휴대성

[ARP]

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

[이더넷]

  • 가장 우세한 유선 랜 기술, 근거리 네트워킹
  • 특징
    - 비연결형 : handshaking (X)
    - 비신뢰적 : 오류 검출 O 정정 X
    - CSMA/CD

[스위치]

  • CSMA/CD
  • 자가학습
    - cf. 라우터는 설정된 알고리즘 이용
  • 다중 동시 전송
    - 충돌 X, full duplex
    - 목적지가 같은 경우 충돌 발생 : 스위치가 시간 차 조정
  • 스위치 테이블
    - MAC 주소
    - 스위치 인터페이스
    - TTL

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

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

CH07. 무선 및 이동 네트워크


7.1 개요


  • base station(기지국) = 무선 네트워크에서의 AP

[분류]

  • 인프라스트럭처 방식
    - 기지국 존재
    - handoff : 다른 기지국 영역으로 이동할 때 접속점을 변경하는 과정
  • 애드혹 네트워크
    - 기지국 존재 X
    - 링크 커버리지 내의 다른 노드로만 전송 가능

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


[SNR]

  • 측정된 수신 신호의 세기와 잡음의 상대적 비율
  • SNR값이 커질수록 잡음에도 불구하고 추출 용이
  • BER : 송신된 비트가 수신측에서 오류로 검출될 확률

[무선 링크 문제]

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

7.3 와이파이 : 802.11 무선 랜

[채널과 결합]

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

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

  • DIFS : popagation delay 방지
  • SIFS 후 ACK 반환

[RTS와 CTS]

  • 숨은 터미널 문제 해결
  • 예약 방법
  • RTS : 충돌 가능하지만 짧음
  • CTS : AP가 RTS에 대한 응답으로 브로드캐스트

[802.11 프레임]

  • 주소 필드 4개 필요
    - 수신자의 MAC 주소, 송신자의 MAC 주소, 인터페이스의 MAC주소 + 애드혹
    - AP가 있기 때문.
profile
숭실대학교 컴퓨터학부 21

0개의 댓글