[네트워크] #18 라우팅 프로토콜, Link status algorithm vs. Distance vector algorithm

2023. 12. 6. 12:57·전공/네트워크
728x90
반응형

목차

  1. 라우팅 프로토콜
  2. Link status algorithm vs. Distance vector algorithm

1. 라우팅 프로토콜

라우팅 프로토콜 목표: 라우터 네트워크를 통해 송신 호스트에서 수신 호스토로의 최적의 경로를 결정

네트워크의 그래프 추상화

그래프: G = (N,E)

 

N = 라우터 집합

-> {u, v, w, x, y, z }

 

E = 링크 집합

-> { (u,v), (u,x), (v,x), (v,w), (x,y), (w,y), (w,z), (y,z) }

 

c(x,x') = 링크 비용(x,x')

-> 예를 들어, c(w,z) = 5

-> 비용은 대역폭, u 또는 혼잡과 역으로 관련될 수 있음

 

경로 비용(x1, x2, x3,..., xp)

-> c(x1,x2) + c(x2,x3) + ... + c(xp-1,xp)

 

라우팅 알고리즘 분류

Global vs. Decentralized

Global

  • 모든 라우터에 완전한 링크 비용 정보가 있음
  • link status algorithm (링크 상태 알고리즘)
  • Link status 알고리즘 (Dijkstra's algorithm, Example, Oscillation problem)

 

Decentralized

  • 라우터는 물리적으로 연결된 이웃과 이웃으로 가는 링크 비용을 앎
  • 계산의 반복 과정, 이웃들과의 정보 교환
  • Distance vector algorithm (거리 벡터 알고리즘)
  • Distance vector 알고리즘 (Bellman-Ford equation, Example, 문제점)

 

static vs. dynamic

static

  • 경로가 거의 바뀌지 않는 상황

 

dynamic

  • 경로가 빠르게 변함
    • 주기적 업데이트
    • 링크 비용 변화에 대응

2. Link status algorithm vs. Distance vector algorithm

  Link status algorithm(LS) Distance vector algorithm(DS)
Message complexity O(N^2) 이웃 노드끼리만 데이터 전달
수렴 시간이 노드마다 다름
Speed of convergence O(N^2)
oscillation 발생 가능
수렴 시간이 노드마다 다름
routing loops, count-to-infinity problem 발생 가능
Robustness (오작동 시) 잘못된 값 계산 시 해당 노드 자신만 문제가 생김 잘못된 값 계신 시 주변 노드들까지 잘못된 정보가 전달됨

 

결론: LS는 대규모 네트워크에 적합, DS는 소규모 네트워크에 적합

728x90
반응형

'전공 > 네트워크' 카테고리의 다른 글

[네트워크] #20 Distance vector 알고리즘 (Bellman-Ford equation, Example, 문제점)  (1) 2023.12.06
[네트워크] #19 Link status 알고리즘 (Dijkstra's algorithm, Example, Oscillation problem)  (1) 2023.12.06
[네트워크] #17 IP (개념, Datagram 형식, IPv4, IPv6, 주소 접근, NAT)  (2) 2023.12.05
[네트워크] #16 라우터 (구조, 기능, 포워딩, 스케줄링 정책)  (2) 2023.12.05
[네트워크] #15 네트워크 계층 (Data plane, Control plane)  (1) 2023.12.05
'전공/네트워크' 카테고리의 다른 글
  • [네트워크] #20 Distance vector 알고리즘 (Bellman-Ford equation, Example, 문제점)
  • [네트워크] #19 Link status 알고리즘 (Dijkstra's algorithm, Example, Oscillation problem)
  • [네트워크] #17 IP (개념, Datagram 형식, IPv4, IPv6, 주소 접근, NAT)
  • [네트워크] #16 라우터 (구조, 기능, 포워딩, 스케줄링 정책)
dev_ares
dev_ares
대학에서 컴퓨터공학을 전공하고 있는 학생입니다.
    반응형
    250x250
  • dev_ares
    노트
    dev_ares
  • 전체
    오늘
    어제
    • 분류 전체보기 (188)
      • IT 트랜드 (2)
      • 백엔드 (18)
        • Java + Spring (8)
        • Kotlin + Spring (5)
        • 백엔드 (5)
      • 프론트엔드 (1)
        • React (1)
      • 대외활동 (17)
        • 42서울 (17)
      • 백준 (6)
        • Java (2)
        • C++ (3)
      • 전공 (121)
        • 객체지향프로그래밍 (17)
        • 자료구조 (23)
        • 리눅스시스템관리 (16)
        • 컴퓨터구조 (25)
        • 네트워크 (25)
        • 데이터베이스 (15)
        • 기타 전공 (0)
      • 프로그래밍 언어 (18)
        • Java (5)
        • Swift (4)
        • C++ (1)
        • Kotlin (8)
      • 기타 (4)
      • 공군 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    메모리 계층 구조
    코틀린
    컴퓨터 구조 및 설계
    컴퓨터구조
    티스토리챌린지
    C++
    상속
    사설 문제
    자바
    백준
    추가 문제
    단일 사이클
    반복자
    명령어
    자료구조
    리눅스
    42서울
    오블완
    컴공 포트폴리오
    데이터패스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
dev_ares
[네트워크] #18 라우팅 프로토콜, Link status algorithm vs. Distance vector algorithm
상단으로

티스토리툴바