728x90
🖐 들어가기 전에
LAN (Local Area Network)
- 사용자가 포함된 지역 네트워크
- LAN은 이더넷이라는 프로토콜을 주로 사용한다
- 주로 학교, 회사, 집에서 컴퓨터나 IP 전화기 등의 장비를 연결하는 근거리 통신망이다
- 이 때 컴퓨터끼리 일대일로 직접 연결하는게 아닌, 공유기나 스위치 등을 이용해서 연결한다
WAN (Wide Area Network)
- 광범위한 지역 단위로 구성하는 네트워크
- LAN과 LAN 사이를 연결하는 역할을 한다
🌌 라우터 (Router)
- 패킷을 목적지까지 전달하기 위해 다음 네트워크 지점을 결정하는 장치나 컴퓨터 내의 소프트웨어
- WAN/인터넷 접속에 사용되는 네트워크 3계층 기기
- WAN/인터넷 서비스는 전 세계에 다양하게 존재하며, 서비스마다 접속하는 인터페이스와 프로토콜도 각각 다르다
- 이 때 라우터는 다양한 서비스에 접속할 수 있도록 다양한 인터페이스와 프로토콜을 지원한다
- 인터넷을 작동시키는 네트워크 하드웨어 구성요소는 라우터이다
- 인터넷의 핵심은 IP 패킷들이 여러 개의 다른 라우터를 통해 정확히 목적지로 라우팅 되는 것이다
- 인터넷은 라우터의 기능 없이는 존재할 수 없다!
- 라우터는 여러 개의 통신 회선에 연결된 특수한 컴퓨터로 한 회선으로부터 받은 패킷들을 조사하여 그 패킷의 최종 목적지에 가까운 회선으로 패킷을 라우팅하도록 되어있다
- 또한 만약 원하는 통신 회선이 손상되었거나 트래픽이 많은 경우, 패킷은 라우터를 사용하여 다른 통신 회선을 통해 전송될 수 있다
- 라우터의 대표적인 기능은 서로 다른 네트워크를 연결하는 것이지만, NAT(Network Address Translation), 방화벽, VPN(Virtual Private Network), QoS(Quality of Service) 등의 다양한 부가 기능을 함께 제공하기도 한다
- LAN과 LAN을 연결하거나 LAN과 WAN을 연결하기 위한 인터넷 네트워크 장비
- 외부 네트워크와 내부 네트워크를 연결시켜준다
라우팅 (Routing)
- 적절한 네트워크로 패킷을 전송하는 것
- 라우터는 라우팅 테이블을 미리 만들어 놓는다
- 라우터는 패킷을 받으면 각 패킷의 도착지를 읽어들여 어느 네트워크로 전송하면 좋을지 판단하는데, 이를 라우팅이라고 한다
- 즉, 라우팅은 경로 정보를 기반으로 현재 네트워크에서 다른 네트워크로 최적의 경로를 통해 데이터를 전송하는 기법이다
- 패킷을 보낼 곳을 판단할 때 필요한 정보를 라우팅 테이블 이라고 한다
- 최적의 경로를 설정하는 라우팅(여러 가지 경로 중 한 가지 경로를 설정해주는 과정) 기능이 존재한다
- OSI 3계층
라우팅 정보
라우팅 결정에 이용하는 정보는 크게 토폴로지, 트래픽 부하, 링크 비용, 메시지, 라우팅 테이블이 있다
1) 토폴로지
- 네트워크 요소를 물리적으로 연결하는 방식을 의미한다
2) 트래픽 부하
- 특정 라우터에 트래픽이 몰려 있을 경우, 다른 라우터로 경로를 안내하여 네트워크의 성능을 높일 수 있다
3) 링크 비용 (라우팅 메트릭)
- HOP 수 (거쳐가야 하는 지점의 수), 비용, 지연, 처리율 등과 같은 변수를 참조하여 최적의 라우팅 경로를 계산한다
4) 메시지
- 라우터끼리 라우팅을 위해 주고 받는 정보를 의미한다
5) 라우팅 테이블
- 라우팅 테이블은 패킷을 목적지로 전달하기 위해 참조하는 테이블이다
- 라우팅 계산에 필요한 요소를 기반으로 라우팅 프로토콜을 통해 계산된 라우팅 정보를 저장한다
- 위와 같이 호스트 A가 호스트 B와 통신하고 싶다고 목적지 IP 주소를 라우팅 테이블에게 알려주면, 라우팅 테이블은 여러 경로 중 호스트 B로 전달하기 위한 최적의 경로를 선택한다
라우터의 동작 원리
- 라우터는 패킷의 전송 경로를 결정하기 위해 LAN 테이블, 네트워크 테이블, 라우팅 테이블 을 사용한다
- 라우터는 위의 3가지 테이블을 관리함으로써 다른 네트워크에 연결된 장치들을 비롯하여 네트워크에 연결된 모든 장치들의 주소를 인식하고 이것을 바탕으로 패킷의 전송 경로를 결정한다
라우터 동작 순서
동일 네트워크 상에 있는 장치로 패킷을 보낼 때, 라우터에서는 아래 순서를 매번 거친다
- LAN 테이블을 검사한다
- 이곳에서는 패킷의 목적지가 같은 네트워크에 있는지 아니면 다른 네트워크에 있는지를 확인한다
- 네트워크 테이블을 검사하여 패킷을 전달할 네트워크의 주소를 찾아낸다
- 라우팅 테이블을 검색하여 가장 적합한 경로를 찾아낸 후 패킷을 보낸다
💡 라우팅 테이블
1) LAN 테이블 : 라우터에 연결되어 있는 LAN 세그먼트 내 장치의 주소를 관리하며, 필터링 작업에 사용된다
2) 네트워크 테이블 : 네트워크 상의 모든 라우터의 주소를 보관하며 패킷의 수신지 라우터를 식별하는데 사용된다
3) 라우팅 테이블 : 각각의 라우터에 구축되어 있으며, 각 경로에 대한 정보를 유지하고 있어 다른 세그먼트로 전송되는 패킷의 가장 효율적인 경로를 결정하는 데 사용된다
라우팅 방식
라우팅 방식은 크게 정적 라우팅 방식과 동적 라우팅 방식으로 나뉜다
1) 정적 라우팅
- 네트워크 관리자가 패킷의 경로를 임의로 결정하여 수동으로 구성하는 라우팅 방식이다
- 소규모로 검증할 때에 불피요한 패킷 발생을 방지하기 위해 주로 사용된다
- 장점
- 라우터의 부하를 줄일 수 있다
- 복잡한 계산이 필요없어 빠른 라우팅이 가능하다
- 원하는 경로를 직접 설정할 수 있다
- 외부에 경로 정보를 알릴 필요가 없어 보안적이다
- 단점
- 관리자가 관리해야 할 부분이 많아진다
- 네트워크 환경 변화를 고려하지 않는다
- 정해진 경로 상에서 장애가 발생할 경우, 능동적으로 대처할 수 없어 네트워크 전체 이용에 장애가 발생할 수 있다
- 네트워크 규모가 커지면 수동으로 추가해야 하여 시간이 오래 걸린다
💡 정적 라우팅 하는 방법
- $ netstat -r 명령어를 통해 현재 PC의 라우팅 테이블을 확인할 수 있다
- 정적 라우팅 방식의 경우 이 라우팅 테이블을 하나 하나 조작하여 경로를 입력해주어야 한다
2) 동적 라우팅
- 라우터가 라우팅 프로토콜에 의한 계산에 따라 스스로 라우팅 경로를 결정하는 방식이다
- 대부분의 네트워크가 동적 라우팅을 사용한다
- 장점
- 작업 부담이 없고, 항상 최신 라우팅 정보를 유지할 수 있다
- 네트워크 환경 변화를 고려하여 능동적으로 경로를 결정할 수 있다
- 장애 대처와 관리가 쉽다
- 단점
- 라우팅 테이블을 라우터 간에 계속 업데이트하며 교환하기 때문에 라우터의 부담이 크다
💡 네트워크 환경에 따른 적절한 라우팅 프로토콜
일반적으로 작은 규모의 네트워크에서는 정적 라우팅을 사용하고, 많은 네트워크 경로를 처리해야 하는 곳에서는 동적 라우팅을 사용한다
3) 디폴트 라우팅 (Default Routing)
- 경로를 찾지 못한 모든 네트워크들이 가도록 정해 놓은 길
- 목적지에 대한 경로가 라우터의 라우팅 테이블에 존재하지 않는 경우에 마지막으로 패킷을 보내는 경로를 지정한다
- 주로 인터넷을 사용하거나 Stub 네트워크에 있는 라우터에 사용된다
- 가장 많이 사용하는 인터페이스 쪽으로 디폴트 라우터를 잡아 놓으면 다른 경로에서 해당 네트워크를 못찾을 때 무조건 인터넷 쪽 인터페이스로 가게 된다
라우팅 프로토콜
라우팅 프로토콜이란 라우터 간에 경로 정보(라우팅 테이블) 교환에 사용되는 프로토콜을 말한다
라우팅 프로토콜은 크게 EGP와 IGP로 나뉜다
1) EGP (Exterior Gateway Protocol)
- AS (Autonomous System)간의 경로 정보를 교환하기 위한 프로토콜이다
- 이전에는 EGP와 BGP 프로토콜이 존재했으나, 현재는 BGP만 존재한다
AS (Autonomous System)
- 하나의 정책을 바탕으로 관리되는 네트워크(자율 시스템)
- 엔터프라이즈 기업이나 공공기관 등의 조직이 해당된다
- BGP (Border Gateway Protocol)
- AS 사이에서 이용되는 프로토콜
- 대규모 네트워크에 대응하도록 설계되었다
- BGP로 동작하는 라우터는 비교적 고가인 제품이 많다
2) IGP (Interior Gateway Protocol)
- AS 내부에서 이용되는 프로토콜
- RIP, OSPF, EIGRP 등이 있고, 현재는 OSPF와 EIGRP를 채용한 네트워크가 많다
- RIP (Routing Information Protocol)
- HOP 수(목적 네트워크까지의 라우터 수)를 기준으로 경로를 선택하는 프로토콜
- 디스턴스 벡터형 프로토콜 이라고도 불린다
- 구현이 쉬워 자주 이용되었으나, 루핑(Looping) 등의 문제로 OSPF나 EIGRP를 채용하는 사례가 증가하고 있다
- OSPF (Open Shortest Path First)
- RIP로는 실현할 수 없는 빠른 경로 전환과 경로의 대역폭을 고려한 경로 선택 등이 가능하고 멀티 벤더도 가능하다
- 대규모 네트워크를 지원할 수 있는 프로토콜이다
- 링크 스테이트형 프로토콜 이라고도 불린다
- 한 라우터가 모든 라우터들의 모든 경로 정보를 토폴로지 데이터베이스화 하여 가지고 있다
- 토폴로지 베이스를 SPF 알고리즘을 통해 가장 빠른 경로를 찾는다
- 모든 라우팅 정보를 가지고 있고 이 중 변경된 부분만 교환하기 때문에, 디스턴스 벡터 방식에 비해 트래픽 발생이 적고 CPU 부담이 크다
- EIGRP (Enhanced Interior Gateway Routing Protocol)
- Cisco의 IGRP를 개량한 프로토콜
- 경로 선택을 복수의 요소로 결정하며 매우 빠르게 경로 전환이 가능하다
- 링크 스테이트와 디스턴스 벡터의 성질을 모두 갖추고 있어, 하이브리드 형이나 확장 디스턴스 벡터 형으로 불린다
- 소규모에서 대규모 네트워크까지 모두 지원할 수 있고, 허브나 스포크형 대규모 네트워크에 적합하다
- Cisco 독자 프로토콜이므로 Cisco 온리 네트워크 안에서 구현되는 일이 많다
참고)
https://chunggaeguri.tistory.com/entry/Network-%EB%9D%BC%EC%9A%B0%ED%84%B0-Router-%EB%9E%80
https://steady-coding.tistory.com/528
https://m.blog.naver.com/cds0915/220117828137
https://dltjrals2.github.io/network/network-concept-9/
728x90
'야미스터디 > Network' 카테고리의 다른 글
[Network] OSI 7계층 (0) | 2023.03.15 |
---|---|
[Network] HTTP Status code 📌 (0) | 2022.11.19 |
[Network] HTTP 1, 2, 3 📌 (0) | 2022.09.12 |
[Network] cast 📌 (0) | 2022.09.02 |
[Network] Cookie vs Session 📌 (0) | 2022.08.04 |
댓글