관리 메뉴

너와 나의 스토리

[CH.4] Network Layer - 라우터 내부 본문

Computer Networks/이론

[CH.4] Network Layer - 라우터 내부

노는게제일좋아! 2019. 11. 14. 20:00
반응형

Router architecture overview

라우터의 주요 2가지 기능:

  • 라우팅 알고리즘/프로토콜(RIP, OSPF, BGP) 작동
  • 들어오는 데이터그램을 나가는 링크로 포워딩 시킴

 

Input port function

 

 

검색을 통해 패킷의 출력 포트가 결정되면 패킷을 스위칭 구조로 보낼 수 있다.

 

 

 

 

 

match - 목적지 IP 주소를 찾음

action - 패킷을 스위칭 구조를 통해 지정된 출력 포트로 보냄

 

 

 

 

 

Switching fabrics

  • 스위칭 구조를 통해 패킷이 입력 포트에서 출력 포트로 실제로 스위칭(즉, 전달)되므로 스위칭 구조는 라우터의 핵심이다.
  • 패킷을 인풋 버퍼에서 적절한 출력 버퍼로 이송시킴
  • switching rate: 패킷이 인풋에서 아웃풋으로 전송될 수 있는 속도
  • switching fabrics의 3가지 타입

  • CPU(라우팅 프로세서)를 직접 제어해서 스위칭하는 전통적인 방식이다
  • 입/출력 포트는 전통적인 I/O 장치처럼 작동함
  • 패킷이 도착하면 입력 포트는 라우팅 프로세서에게 인터럽트를 보내 패킷을 프로세서 메모리에 복사한다. (패킷은 시스템 메모리에 카피됨)
  • 속도는 메모리 bandwidth에 의해 제한된다. (데이터그램 당 2 bus crossings)

 

  • 데이터그램이 입력 포트 메모리에서 (라우팅 프로세서의 개입 없이) 공유 버스를 통해 출력 포트 메모리로 이동
  • 모든 출력 포트에 패킷이 수신되지만 라벨과 일치하는 포트만 패킷을 유지한다.
  • 라벨은 스위치 내에서 버스를 통과하기 위해서만 사용되므로 출력 포트에서 제거된다.
  • 동시에 여러 패킷이 다른 입력 포트로 라우터에 도착하면 한번에 하나의 패킷만 버스를 통과할 수 있기 때문에 하나를 제외한 모든 패킷은 대기함
  • bus contention: switching speed는 bus bandwidth에 의해 제한됨

속도: 메모리 << 네트워크

  • bus bandwidth의 제약을 극복
  • N개의 입력 포트를 N개의 출력 포트에 연결
  • 각 수직 버스는 교차점에서 각 수평 버스와 교차하며 스위치 구조 컨트롤러에 의해 언제든지 열거나 닫을 수 있다.
  • 여러 패킷을 병렬로 전달 가능
  • 두 개의 서로 다른 입력 포트에서 나오는 두 개의 패킷이 동일한 출력 포트로 보내지는 경우 -> 한번에 하나의 패킷만 특정 버스에서 전송될 수 있으므로 나머지 하나는 입력포트에서 기다려야 한다.

 

 

Output ports

  • 전송 속도보다 데이터그램 도착 속도가 더 빠르다면 버퍼링이 필요하다
  • scheduling discipline은 전송되길 기다리는 (queued)데이타그램 사이에서 고른다

 

 

 

 

Output port queueing

  • 버퍼가 커지면 라우터의 메모리가 소모될 수 있음
  • 패킷을 저장할 수 있는 메모리가 없을 때 패킷 손실 발생

 

얼마나 많은 버퍼가 필요할까?

  • 버퍼링: B, 평균 왕복 시간: RTT(250msec), C: 링크 용량
  • B = RTT*C   -> 상대적으로 작은 양의 TCP 흐름에 대한 큐잉 분석
  • 많은 수의 TCP 흐름(n)이 링크를 통과할 때, 필요한 버퍼링은 $\frac{RTT*C}{\sqrt{N}}$이다

 

Input port queuing

  • 입력 회선을 통해 도착하는 모든 패킷을 전송하기에 스위치 구조가 충분히 빠르지 않다면 -> queuing
  • Head-of-the-Line(HOL) blocking: 

  • 입력 포트에 있는 서로 다른 2개의 패킷이 같은 출력 포트(빨간색)을 향해 간다. 이 중 한 패킷은 차단되고 입력 큐에서 기다려야 한다 => HOL blocking

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

출처: [Computer networking: A top-down approach, 6th]

반응형
Comments