허브와 스위치 콜리전 도메인, 브로드캐스트 도메인

허브와 스위치를 이용하면 콜리전 도메인과 브로드캐스트 도메인으로 통신의 한계가 생긴다. 

* 콜리전 도메인: 허브로 연결되면 충돌이 발생할 수 있는데 이 영역을 콜리전 도메인이라고 한다. 

** 브로드캐스트 도메인:  스위치와 연결된 영역을 브로드캐스트 도메인이라고 부른다

 

인프런 그림으로 쉽게 배우는 네트워크

따라서 라우터를 이용해 브로드캐스트 도메인을 나눈다. 

 

브로드캐스트 도메인을 나누면서 논리적인 주소가 필요하게 되어 등장한 것이 IP주소이고 

IP주소는 고유한 주소를 나타내며 모든 호스트(PC)와 라우터의 포트마다 부여된다. 

 

Private IP는 중복되긴 하지만 NAT를 배우기 전까지는 'IP는 고유한 주소' 라고 가정 

 

라우터는 IP를 다루기 때문에 네트워크 계층에 속한다. 

라우터는 CPU와 메모리가 있는 하나의 컴퓨터이다. 

오직 네트워크에서 데이터를 전송하기 위한 컴퓨터! 

사용하는 곳에따라 크기와 가격이 천차만별이다. 

 

작은 사무실에서는 라우터(공유기)를 사용, 우리나라에선 라우터를 공유기라고도 부른다. 

ISP(통신사)와 같은 곳에서 사용하는 라우터는 성능이 더 좋아야 하므로 큰 라우터를 사용하는데 가격은 수억원 한다.

ISP에서 사용하는 라우터

 

스위치로 만들어진 브로드캐스트 도메인은 LAN영역이라고 부른다. 

이런 LAN 영역을 넘어서 통신하기 위해서 라우터로 연결되고 라우터를 넘어간 다른 영역을 WAN 영역이라고 부른다. 

 

이렇게 LAN영역을 연결한 라우터가 수없이 많이 존재하고 

라우터끼리 연결한다면 네트워크는 상당히 커진다. 

그게 오늘날 인터넷의 모습! 

 

라우터 중에서 통신사에서 운영하는 핵심적인 라우터가 있다. 

핵심 라우터들은 다른 통신사와 연결되는데 이를 코어 라우터라고 부른다. 

라우터들끼리 연결되어 인터넷, 코어 라우터의 모습

 

우리나라의 KT, SK브로드밴드, LG U+는 데이터센터에 라우터를 두고 광케이블을 이용해 연결한다. 

이렇게 코어 라우터로 구축된 시스템을 백본이라고 부른다. 

통신사는 빠르고 많은 처리를 위해서 고성능 라우터를 광케이블로 연결한 백본을 구축함!

 

이렇게 라우터로 복잡하게 연결되어 있을 때 우리가 다른 LAN영역에 있는 사용자에게 데이터를 전송한다면 IP를 이용해 라우터는 최대한 빨리 도달할 수 있는 경로를 적절하게 찾고 이 경로를 통해 데이터를 전송할 수 있게 된다. 

 

가장 가깝고 빠른, 적합한 경로는 라우팅 프로토콜을 이용해 찾는다. 

 

라우팅 프로토콜 

라우터와 IP주소를 이용해 다른 네트워크까지 데이터를 전송할 수 있다는 것을 알고 있다. 

라우터는 목적지 네트워크까지 가는 경로를 라우팅 테이블이라는 곳에 미리 저장해두고 데이터가 들어오면 해당 네트워크로 전달하는 역할을 한다. 

 

그럼 라우팅 테이블이라는 것은 어떤 것이고 어떻게 만들어지는 것일까? 

 

라우팅 테이블은 어떤 네트워크에서 어떤 네트워크로 이동할 때 해당 라우터에서 '어떤 인터페이스(포트)로 이동해야 하는지'가 적혀있는 표이다. 

 

라우팅 테이블을 만드는 방법은 2가지 

1. 스태틱(정적) 라우팅: 사람이 직접 주소 하나하나를 지정 

 

2. 다이내믹(동적) 라우팅: 라우터가 다른 라우터들과 정보를 공유해 라우터 스스로 테이블을 만드는 방법 

 

그럼 다이내믹이 좋은 것 아닌가? 

 

하지만 작은 네트워크에서 라우터가 여러 개의 다른 라우터와 연결되지 않고 하나만 연결되는 경우라면 스태틱 라우팅으로 직접 만드는게 더 좋을 수 있다. 

직접 적어준다면 라우터가 다른 라우터와 정보를 공유하지 않아서 부하가 적어질테니까! 

 

Q. 다이내믹 라우팅은 하나의 라우터가 전 세계 모든 라우터와 정보를 교환할까? 

A. 메모리 한계 때문에 그렇게 하지는 않는다. 

 

그러면 경로를 어떻게 찾을 까? 

라우팅 테이블에는 디폴트 라우터가 있다. 

라우팅 테이블에 목적지와 일치하는 정보가 저장되어있지 않다면 설정한 디폴트 라우터로 무조건 보내는 것이다.

자신이 모르는 네트워크인 데이터를 다른 라우터로 전달하는데,  전달할 라우터를 디폴트 라우터라고 부른다.  

라우팅 테이블에 디폴트 라우터는 0.0.0.0이나 default로 표현한다. 

라우터 경로를 찾는 과정

 

TTL은 목적지가 없는 데이터가 영원히 네트워크에 존재하는 걸 방지한다. 

 

디폴트 라우터 말고 다른 약속된 주소가 있다. 

 

127.0.0.1이라는 주소로 '루프백 주소'라고 부른다. local host라고도 부른다. 

루프백 주소는 127.0.0.0부터 127.255.255.255(127.0.0.0/8)까지 있지만 보통 127.0.0.1을 사용한다. 

 

이 주소로 데이터를 전송한다면 네트워크로 나가지 않고 자신이 다시 받게 된다. 

개발할 때 많이 사용하니 알아두는 게 좋다. 

 

 

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

RIP(Routing Information Protocol)  (0) 2024.06.24
스태틱 라우팅과 다이내믹 라우팅  (0) 2024.06.23
IP헤더(패킷)  (0) 2024.06.23
IP 클래스와 서브넷 마스크  (0) 2024.06.23
IP  (0) 2024.06.20

브리지와 기능적인 차이는 없다. 

단지 성능이 좀더 좋아진 것 뿐이다. 

 

스위치는 스위칭 허브라고도 한다. 

브리지, 스위치 모두 같은 말 

 

MAC 주소를 이용하기 때문에 데이터링크 계층에 속한다. 

 

메모리와 저장장치가 있으므로 MAC 주소를 기억해 원하는 기기에만 데이터를 전송할 수 있다. 

 

Learning으로 MAC주소에 해당하는 포트를 매핑하고 

MAC주소 테이블에 찾는 주소가 없다면 Flooding 으로 브로드캐스팅. 

만약   찾는 주소가 있다면 Forwarding 으로원하는 기기에만 전송하고 데이터를 전달하지 않아도 될 때는 Filtering을 함

 

Aging이라는 것을 이용해 메모리가 부족하지 않도록 오래된 정보는 메모리에서 제거(타이머 5분)

 

<브리지와 스위치 차이>

성능차이 

 

1. 스위치는 브리지보다 더 많은 포트 제공

2. ASIC이라는 하드웨어로 스위칭 작업을 수행하므로 소프트웨어적으로 처리하는 브리지보다 스위치 처리속도가 빠름

3. 스위치는 오류를 체크하는 기능이 있지만 브리지는 없다. 

4. 스위치는 버퍼를 가지고 있지만 브리지는 없는 경우도 있다. 

 

요즘은 스위치 가격이 많이 내려 브리지를 사용하는 경우는 거의 없고, 스위치는 곧 브리지, 브리지는 곧 스위치로 같은 장치를 말한다. 

 

자세한 과정은 그림으로 쉽게 배우는 네트워크의 스위치 부분 확인하기!

 

--

회사가 커져서 스위치를 여러개 둔다고 가정할 때 

순환구조로 연결된 스위치

 

스위치가 순환구조로 연결되면 브로드캐스팅 메시지를 서로 순환하며 무한대로 전송하는 문제가 발생한다. 

브로드캐스팅 메시지를 서로 순환하며 무한대로 전송하는 문제가 발생한다. 

이를 해결하기 위해서는 순환구조가발생하지 않도록 만들어 줘야 한다. 

 

트리 자료구조에서 영감을 받아 스위치를 트리노드로 생각하고

스패닝 트리를 구해 그 중 가장 가까운 최소 스패닝 트리로 구성해 순환구조를 제거한다. 

4대 스위치가 구성할 수 있는 스패닝 트리 구조

 

스패닝 트리란 트리 자료구조에서 모든 노드(여기선 스위치)를 사이클 없이 연결하는 트리를 말한다. 

 

예시의 구조에서는 4개의 스패닝 트리가 나오는데, 단순한 구조라 어떠한 트리를 선택하더라도 비용(거리, 시간)이 같다. 

복잡한 구조에서는 어느 한 스패닝 트리가 가장 비용이 적고 비용이 가장 적은 스패닝 트리를 최소 스패닝 트리라고 부른다. 

스패닝 트리 프로토콜은 최소 스패닝 트리를 구해 무한정으로 데이터가 순환하지 않도록 만드는 프로토콜이다. 

 

<스위치의 한계> 

지금까지 배운대로라면 스위치로 전 세계 모든 컴퓨터를 연결할 수 있을 것만 같다. 

하지만 스위치에 컴퓨터가 무한정으로 연결되면 결국 문제가 발생한다. 

 

여러대의 컴퓨터를 허브로 연결한다면 허브는 연결된 모든 컴퓨터에 브로드 캐스트 한다. 

허브로 연결되면 충돌이 발생할 수 있는데 이 영역을 콜리전 도메인이라고 했다. 

 

스위치는 허브의 단점인 콜리전 도메인을 나눌 수 있다고 했다. 

스위치는 목적지의 MAC주소를 보고 브로드캐스팅하지 않고 목적지에만 데이터를 전송한다. 

하지만 스위치가 전혀 브로드캐스팅을 하지 않는다고 말하기는 어렵다. 

 

어느한 PC에서 브로드캐스팅 메시지를 보내거나 목적지 MAC주소를 모르는 경우엔 Flooding을 해서 Learning을 해야하기 때문이다. 

 

따라서 스위치와 연결된 영역을 브로드캐스트 도메인이라고 부른다. LAN영역이라고도 부른다. 

 

스위치를 늘려 LAN영역을 늘리면 어떻게 될까? 

 

콜리전 도메인은 나눠지지만 하나의 브로드캐스트 도메인에 있는 것은 달라지지 않는다. 

 

이렇게 스위치를 계속 연결해 수십만대의 PC가 브로드캐스트 영역에 있게된다면 

어느 한 PC에서 전송한 데이터의 목적지 MAC 주소가 스위치의 MAC주소 테이블에 없다면 'Flooding'이 발생하고 이 메시지가 수십만대의 PC로 전송된다. 엄청난 트래픽이 발생

한 PC만 데이터를 받고 나머지 PC는 버린다. 

 

통신하는 PC가 많을 수록 브로드캐스트 도메인에는 쓸모없는 트래픽이 많아진다. 

따라서 브로드캐스트 도메인을 나눌 필요가 생겨 네트워크 계층이 등장한다.

브로드 캐스트 영역을 나누기 위해 네트워크 계층으로 이동해야한다. 고고~!

 

 

 

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

IP  (0) 2024.06.20
네트워크 계층  (0) 2024.06.20
브리지  (0) 2024.06.16
CSMA/CD  (0) 2024.06.16
[데이터링크 계층] 이더넷과 이더넷 헤더  (0) 2024.06.16

+ Recent posts