라우터(Router)

문딤·2022년 9월 12일
1

라우터란?

LAN 과 LAN을 연결하는 장치로 목적지까지의 최적 경로를 결정하여 라우팅해주는 장치이다.

EX) ALAN 에서 BLAN으로 가야할 것만 BLAN에 전달해주고 나머지는 버린다.

+@ 스위치 또는 허브의 경우

네트워크를 분리할수 없어서 동일한 네트워크에 속하게 된다.

라우터의 동작 방식과 역할

1.경로 지정: 다양한 경로수집 후 최적의 경로를 라우팅 테이블에 저장한 뒤 패킷이 들어오면 도착지 IP주소를 라우팅 테이블과 비교해 최선의 경로로 패킷을 내보낸다.
2.브로드캐스트 컨트롤: 들어온 패킷의 목적지 주소가 라우팅 테이블에 없으면 패킷을 버린다.
3.프로토콜 변환: 패킷 포워딩 과정에서 기존 2계층 헤더 정보를 제거 후 새로운 2계층 헤더를 만든다.

1.1 경로 지정
라우터는 패킷이 들어오면 패킷의 도착지 IP주소를 확인해서 경로를 지정해 패킷을 포워딩해줘야 한다.
경로지정을 하기위해서는 경로학습이 필요한데 그 방법은 다음과 같다.

  • IP 주소를 입력하며 자연스럽게 인접 네트워크 정보를 얻는 방법(다이렉트 커넥티드)
  • 관리자가 직접 경로 정보를 입력하는 방법(스태틱 라우팅)
  • 라우터끼리 서로 경로 정보를 자동으로 교환하는 방법(다이나믹 라우팅)__

이 세가지 방법을 이용해 경로를 먼저 파악 한 후 알맞은 경로에 패킷을 포워딩한다.

◻ 라우터의 가장 중요한 역할은
1.경로정보얻기, 2.얻은경로 정보로 패킷을 포워딩하기

1.2 브로드캐스트 컨트롤(Broadcast Control)

라우터는 스위치와는 다르게 분명한 도착지 정보가 있을때만 통신을 허락한다.
라우터는 바로 연결되어 있는 네트워크 정보를 제외하고 경로 습득 설정을 하지 않으면 패킷을 포워딩 할 수 없다. ⇒ 이 기능을 브로드캐스트 컨트롤/멀티캐스트 컨트롤이라 한다.

네트워크에 브로드캐스트가 많이 발생하는 경우 라우터로 네트워크를 분리하면 브로드캐스트 네트워크를 분할해 네트워크 성능을 높힐 수 있다.

1.3 프로토콜 변환

라우터의 또 다른 역할은 서로 다른 프로토콜로 구성된 네트워크를 연결하는 것.
⇒ 이는 현재 대부분의 네트워크가 이더넷을 사용하면서 줄어든 역할이다.

라우팅(라우터가 경로 정보를 얻는 방법)

라우팅이란?

경로 정보를 얻어 최적의 경로를 라우팅 테이블에 올려 유지하는 과정

다이렉트 커넥티드(Direct Connected)

IP주소를 입력할 때 사용된 IP주소와 서브넷 마스크로 해당 IP 주소가 속한 네트워크 주소 정보를 알 수 있다. 라우터나 PC에선 이 정보로 해당 네트워크에 대해 라우팅 테이블을 자동으로 만든다.
이러한 경로 정보를 다이렉트 커넥티드(Direct Connected)라 부른다.
해당 경로 정보는 인터페이스에 IP를 설정하면 자동 생성되는 정보이기에 정보를 강제로 지울 수 없고 해당 네트워크 설정을 삭제하거나 해당 네트워크 인터페이스가 비활성화되어야만 자동으로 사라진다.

connected: 하나의 장비가 물리적으로 연결된 루트를 학습하는 방식, 네트워크에서 내가 직접 연결한 경로를 학습하는 방식.

status up, down
전기적신호가 송수신 되면 up, 안되면 down
케이블을 통한 인터페이스를 확인해야한다.(포트불량 가능성이 있음.)

line protocol up ,down
디바이스 간 네트워크 구성을 가늠하게 하는 장비, 연결을 확인하는 장비
정상이면 up, 비정상이면 encap타입

스태틱 라우팅(Static Routing)

관리자가 목적지 네트워크와 넥스트 홉을 라우터에 직접 지정해 경로 정보를 입력하는 것을 스태틱 라우팅(Static Routing)이라 한다.
이 정보는 연결된 인터페이스 정보가 삭제되거나 비활성화되면 연관된 스태틱 라우팅 정보가 자동 삭제된다.
다만, 물리 인터페이스가 아닌 논리 인터페이스는 물리 인터페이스가 비활성화 되더라도 함께 비활성화되지 않는 경우도 있어 라우팅 테이블에서 사라지지 않을 수 있다.

장점

◻ 경로 관리의 효율성이 좋다.
◻ 리소스는 거의없고, 연산을 따로 하지않는다.
◻ 입력한 테이블에 대한 리소스는 있지만, 스스로 연산 x 수동 프로토콜이다.
◻ 관리자가 정한 길로만 간다.

단점

◻ 수동이기때문에 수동으로 해결해야한다.
◻ 리소스의 소비가 많다고 봄(연산에 따른 부하+)
◻ 관리자가 다른 문제를 해결하지 못하면 문제가 생긴다.
◻ 문제 대처시간,능력이 느리다.

다이나믹 라우팅(Dynamic Routing) - IGP, EGP / 디스턴스 벡터, 링크 스테이트

스태틱 라우팅 방법은 관리자가 직접 작성을 해줄 수 있기에 직관적으로 관리가 가능하다.
하지만 변화가 크거나 규모가 큰 네트워크일 경우 스태틱 라우팅으로 관리하기는 몹시 힘들다.
다이나믹 라우팅은 이러한 스태틱 라우팅의 단점을 보완해준다.

장점

경로 변경 대처가 용이하다.
네트워크 변화 대처가 빠르다.

단점

연산 부하가 많이 걸린다.
어느 경로로 향하는지 모른다.

디스턴스 벡터

거리에 따른 메트릭(metric)값의 크기를 이용하여 경로를 결정한다

ex) RIP,EIGRP,BGP

◻ 인접 라우터들에게 자신을 통하면 특정 네트워크까지 가는 메트릭 값이 얼마인지 보여준다.

◻ 디스턴스 벡터 프로토콜은 인접 라우터들에게만 정보를 알려주기 때문에 라우터 입장에선 전체적인 네트워크 구성을 알지 못하고 어떤 포트로 가면 목적지 네트워크의 메트릭이 얼마인지만 알고있다

◻ 경로를 결정할때 경로가 여러곳이라면 가장 낮은 메트릭값쪽으로 경로를 결정한다

  • 거리와 방향을 고려하여 만들어진 라우팅 알고리즘
  • 리소스가 적다
  • 루핑이 발생할수 있다
  • 네트워크 구성이 바뀌었을 때 모든 라우터가 정보를 받기까지의 시간이 오래걸린다.

+@ 루핑을 방지하기 위한 규칙

스플릿 호라이즌, 홀드 다운 타이머 ,맥시멈 홉 카운트, 라우트 포이즈닝 ,포이즌 리버스등등

◻ 라우터끼리 자신이 알고 있는 경로 정보나 링크 상태 정보를 교환해 전체 네트워크 정보를 학습한다.
◻ 주기적으로 또는 상태 정보가 변경될 때 라우터끼리 경로 정보가 교환되기에 위와같이 특정 경로가 장애가 생겨 경로 정보가 사라지게 되더라도 이 상황을 인지해 대체 경로로 패킷을 포워딩할 수 있게 된다.
◻ 이처럼 관리자의 개입없이도 자동으로 라우터끼리 정보를 교환해 라우팅 테이블을 갱신하고 장애발생 대처가 가능하기 때문에 대부분의 네트워크에서 다이나믹 라우팅이 사용된다.

◻ 전체 네트워크에 대한 토폴로지와 관련된 모든 정보로써 LSD(Link State Database)
를 각 라우터가 완벽히 갖고 있게됨.
- 이 LSD를 통해 SPF 트리를 만들고,
- 이를 토대로 최적 경로에 대한 라우팅 테이블을 구축하게 됨

◻ 네트워크 토폴로지 및 모든 링크 비용이 알려져 있고, 이들 값이 입력으로 사용됨
- 이에 참여하는 모든 라우터는 항상 전체 네트워크에 대한 맵(지도,그림 등)을 그리고,
- 이를 토대로 최적의 경로를 계산하는 방식을 취함
- 전체 지도는 점차 전 라우터에서 동일하게 그려지도록 빠르게 수렴됨

◻ 어떤 링크의 변화가 있는 경우만 정보를 전달하는 방식을 취함
- 따라서, 라우팅 정보의 교환에 따른 부하는 작은 편이다.

◻ Link State(링크 상태)에 기반하는 최적의 경로 선택을 위한 알고리즘
- 이는 OSPF 등에 적용되어 사용됨

예시

Dijsktra's Algorithm 적용

라우팅 프로토콜 : 운반용 프로토콜들 (Routed Protocol)
- OSPF : IP
- DECnet Phase V
- IS-IS, Integrated IS-IS : IP, CLNP
- NLSP : (IPX에 대한 IS-IS 버젼)
- PNNI : ATM

디스턴스 벡터 vs 링크 상태

참고

http://blog.skby.net/%EB%A7%81%ED%81%AC-%EC%83%81%ED%83%9C-%EB%9D%BC%EC%9A%B0%ED%8C%85-link-state-routing/
https://m.blog.naver.com/ljsun4336/220544726584
https://velog.io/@shpk/%EB%9D%BC%EC%9A%B0%ED%84%B0

profile
풀스택개발자가 될래요

1개의 댓글

comment-user-thumbnail
2022년 9월 12일

잘 보고 갑니다^^

답글 달기