본문 바로가기

애니리뷰

네트워크 4) 라우팅

1) 주소와 경로

MAC주소는 같은 네트워크 내의 수신처, IP주소는 수신처의 컴퓨터를 결정

즉, MAC주소로 '다음에 보낼 장소'를 지정, 그곳에 도달 시엔 다시 AMC주소로 '다음에 보낼 장소'를 지정..

이를 반복해 최종수신처에 도달. 이러한 최종수신처까지의 경로를, 라우터가 결정한다.

이러한 '수신처로 가기 위한 다음 라우터'를 반복해 '다음길로의 제시'를 '홉바이홉'으로 함.

만일 컴퓨터에 라우터가 설정되어있지 않다면, 디폴트 게이트웨이라고 하는, 컴퓨터가 지정하는 라우터가 있다.


2) 라우터

라우터는 네트워크와 네트워크의 경계상에서, 복수의 인터페이스를 갖는다.

각 인터페이스는 각 네트워크에 소속되어 있다.

라우팅 = 데이터그램의 수신처IP주소를 근거로 다음에 송신하는 라우터를 결정하는 것. 이를 통해 경로가 결정된다.

 

라우터에는, 라우팅 테이블이라 하는, 라우터가 수신한 패킷이 수신처에 도달하기 위한 최적의 경로의 지도가 존재.

이러한 라우팅 테이블에선, '다음 수신처가 될 라우터'가 존재하며, 

라우팅 테이블에서 다음 수신처를 찾는 방법은 곧 최장일치의 룰임.

 

실제 데이터그램의 수신처IP주소로부터 라우팅테이블의 수신처네트워크 주소를 결정해서 다음 라우터와 송신 인터페이스를 결정하는데, 수신처IP주소와 수신처네트워크주소를 비교할 때 이 룰을 사용.

즉, IP주소의 비트열과 네트워크주소의 비트열을 앞에서부터 순서대로 비교해서, 가장 많이 일치하는 것을 선택.

 

라우터 동작 - 라우팅테이블에서 다음 수신처가 되는 라우터, 송신할 인터페이스를 결정

1) 호스트로부터 패킷 수신

2) 수신처IP주소로부터 수신처네트워크를 결정

3) 라우팅테이블에서 다음 중계할 라우터, 송신할 인터페이스가 결정됨

4) 결정된 인터페이스로부터 패킷 송신

 

최장일치의 룰

[라우팅테이블]

IP주소/프리픽스 길이 다음 라우터 송신 인터페이스 메트릭
192.168.0.0/16 172.18.5.2 0 2
192.168.0.0/24 172.16.10.2 1 3
192.168.0.0/24 172.17.22.2 2 8

[수신처 IP주소와 라우팅테이블의 엔트리 비교]

수신처        
192.168.12.5 1111 0000 1010 1000 0000 1100 0000 0101
192.168.0.0/16 1111 0000 1010 1000 0000 0000 0000 0000
192.168.12.0/24 1111 0000 1010 1000 0000 1100 0000 0000
192.168.10.0/24 1111 0000 1010 1000 0000 1010 0000 0000

두번째가, 수신처와 프리픽스 길이가 24비트까지 일치하므로, 송신인터페이스 1번을 쓰게 됨.


3) 디폴트 게이트웨이

라우터가 네트워크를 나눔으로 인해, 브로드캐스트는, 라우터를 넘어서 전송할 수 없다.

이 브로드캐스트의 전송범위가 곧 브로드캐스트도메인.

 

그런데 MAC주소를 알아내는 ARP는 브로드캐스트. 따라서, ARP가 수신처에 도달하게 하기 위해, 디폴트 게이트웨이를 씀. 디폴트게이트웨이로 데이터를 보내, 다른 네트워크로 전송. 즉, 컴퓨터가 최초로 데이터를 보내는 수신처는 디폴트게이트웨이.

컴퓨터는 다른 네트워크에 데이터를 송신시, 디폴트게이트웨이로 ARP를 수행.

 

1) 다른 네트워크에 데이터를 보낼 때, 호스트는 디폴트게이트웨이로 ARP를 수행해 디폴트게이트웨이의 MAC주소 입수.

2) 호스트는 수신처MAC주소를 디폴트게이트웨이로, 수신처IP주소를 수신처호스트로 해서 패킷 전송.

3) 수신받은 디폴트게이트웨이는 라우팅을 하고, 중계라우터&송신포트를 결정해 다음에 수신받을 상대(중계라우터 또는 수신처)에 ARP를 수행.

4) ARP에 의해 입수한 MAC주소를 수신처MAC주소로, 자기자신의 MAC주소를 송신처MAC주소로 갱신해 송신. IP주소는 바뀌지 않음.


4) 라우팅

이 라우팅테이블은, 수신처 네트워크, 중계지점(다음 라우터), 메트릭, 수신처 출구가 기재된 테이블.

라우터는 수신처네트워크를 결정하며, 이 수신처네트워크 주소와 라우팅테이블을 비교해서 경로를 찾아낸다.

이 때, 최적의 경로를 찾기 위해선, 다른 네트워크 경로를 모두 알아야 함.

 

이 때, 정적(수동) 라우팅, 동적(자동) 라우팅이 존재한다.

정적 라우팅은, 관리자가 수동으로 경로를 입력. 그러나 수동으로 입력한 경로를 사용할 수 없는 경우가 존재.

동적 라우팅은, 라우터가 자동으로 정보를 교환해 경로를 알아냄. 그러나 라우터의 성능이 요구되며, 모든 라우터가 동일한 정보를 지녀야 함(=컨버전스).

컨버전스는, 네트워크 내 모든 라우터가 올바른 경로 정보를 갖지 않으면 수신처에 정확하게 도달하지 않음.

 

ex) A라우터가 x로부터 장애정보를 입수, Y로의 경유로 변환했다 가정. 그러나 Y는 장애정보를 아직 받지 않았다면, 아직 X로의 경유상태로 남아있는다. 이로 인해 A로는 도달하지 않는다. Y는 장애정보를 받을 때야 비로소 경로를 변환한다.


5) 라우팅 프로토콜 : 동적 라우팅을 실현할 프로토콜. 근접한 라우터 간의 네트워크 정보 교환을 위한 규칙.

인터넷의 많은 네트워크를 AS라는 것으로 통합하면 쉽게 관리가 가능한데, 라우팅에서 AS는 하나의 범위로 취급된다.

즉, 복수의 네트워크를 AS로 통합 -> 수신처의 AS에 전달하는 라우팅 수행 -> AS내부에서 각 네트워크에 전달하는 라우팅 수행.

 

이러한 라우팅프로토콜은, 정보교환을 언제, 어떻게, 누구에게, 어떤 것을 전송할지를 결정.

이 프로토콜이 결정한 방식에 따라 정보를 교환, 컨버전스 상태(모든 라우터가 동일한 경로정보를 갖는 것)에 도달하는 게 목표.

1) AS간 라우팅용(EGP) 

2) AS내부 라우팅용(IGP)


6) RIP : 메트릭(METRIC)은, 최적의 경로 결정시의 판단기준.

중계하는 라우터의 수, 회선속도 등의 기준에 따라 라우팅 프로토콜에 의해 결정된 값을 계산, 그 중 최소값을 갖는 것을 최소경로로 판단

 

가령 메트릭을 중계라우터 수(홉 수)로 판단한 경우, 가장 적은 중계라우터 수를 가진 경로가 테이블에 기록.

이 때, RIP란 바로 라우팅 테이블의 교환으로, 라우팅테이블의 정보를 받아서 각자 갱신해낙마.

이 때, RIP는 메트릭에서 홉 수를 사용하는데, 홉 수는 수신처 네트워크까지 통과하는 라우터 수이므로, 직접 접속된 네트워크의 메트릭은 0으로 간주한다.

 

간단히 말하면,

1) 자기가 모르는 네트워크를 테이블에 추가함.

2) 이 때, 업데이트를 보내온 라우터를 그 앞의 네트워크에의 중계라우터로, 업데이트를 받은 인터페이스를 그 앞의 네트워크에의 송신 인터페이스로 정하도록 함.

즉, 가르쳐준 라우터가 있는 방향이 수신처 네트워크의 경로가 됨.

 


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


8) Echo와 time exceeded

Traceroute : 수신처까지의 경로를 가르쳐주는 SW. 수신처에 도달하기까지 경유하는 라우터를 가르쳐줌.

'애니리뷰' 카테고리의 다른 글

네트워크 6)  (0) 2022.05.04
DIP) C++ Opencv로 보간법  (0) 2022.04.17
네트워크 5) 4계층(Transport Layer)  (0) 2022.04.16
네트워크 3 ) IP 어드레싱  (0) 2022.04.03
opencv의 c++에서의 픽셀 접근  (0) 2022.03.27