네트워크 관리사/기본 개념

네트워크 개념 정리

유혁스쿨 2020. 12. 30. 19:45
728x90
반응형

Ctrl + F 키워드 및 개념정리 복습

 

이더넷 , CSMA/CD , 콜리전 , TCP/IP , IP주소 , ARP , Mac Address , 유니캐스트 , 브로드캐스트 , 멀티캐스트 , 인터럽트 , 브로드캐스트 도메인 , DHCP , 허브, 리피터 , 스위치 , 브리지 , 세그먼트 , 패킷 , 프레임 , Learning , Flooding , Forwarding , Filtering , Aging , Aging 리플래시 , Looping 등

 

[이더넷]
 네트워킹의 한 방식으로 CSMA/CD라는 통신방식의 프로토콜을 사용한다

[CSMA/CD]
 네트워크 상에서 carrier(통신번호)의 유무를 통해 송수신을 하며 하나의 네트워크 상에 여러 통신이 발생하면 충돌(collision)을 발생시킨다.
 carrier가 감지되면 이미 네트워크상에 통신을 하고있다는 뜻으로 통신이 끝날때 까지 기다린다.

[콜리전]
 CSMA/CD에서 네트워크가 비어있을때 동시에 접근(Multiple Access) 했을 때 일어나는 충돌현상
 동시에 전송한 pc들은 랜덤한 시간동안 기다린 후 다시 데이터를 전송하게 되며 충돌이 계속되어 15번 이후부터는 네트워크 접근을 포기

 

[프로토콜] 
PC가 서로 통신하려 할때 서로간의 통신 규약 또는 통신 방식에 대한 약속 
프로토콜이 같은것 끼리 통신이 가능


[TCP/IP]
 인터넷을 사용하기 위해 꼭 필요한 프로토콜로 OSI 7Layer 중 4계층 전송계층에 해당한다.
 Transmission Control Protocal/Internet Protocal 의 약자로 ARPANET에서 처음 개발된 프로토콜이다.
 각각의 네트워크에 접속되는 호스트들은 고유의 주소를 가지고 있어 자신이 속해있는 네트워크 뿐만 아니라 
 다른 네트워크에 연결되어 있는 호스트까지도 서로 데이터를 주고받을 수있도록 만들어 져 있는것이 특징이다.

[IP주소]
 인터넷을 사용하는 사람들에게 모두 하나씩 주어진 주소
 이 주소는 전세계적으로 유일한 주소를 가지게된다.
 남들하고 똑같은 주소를 갖게 되면 인터넷에 둘 중 한명은 접속이 불가능해지며 이것을 ip주소 충돌이라 한다.
 IP주소는 한정되어 있기 때문에 내부 네트워크에서는 공인되지 않은 IP주소를 사용하며 인터넷으로 나갈때에만 공인주소를 가지고 나가며 이것을 NAT방식이라 부른다.
 

[ARP] (Address Resolusion Protocol)
 통신을 위해 IP주소를 MAC주소로 바꾸는 절차 브로드캐스트 라고도 부름

[MAC Address]
 통신을 위해 서로를 구분하는 주소이며, LAN카드 혹은 네트워크(라우터,스위치,서버) 장비에 이미 고정되어 있는 주소이다.
 2진수 48자리로 이루어져 있으며 12자리의 16진수로 표기된다.
 8자리마다 하이픈(-) 이나 콜론(:) 점(.)으로 구분되어진다.
 48bit - 6octet (1octet - 8bit) 

 

 ex) 00-60-97-8F-4F-86 | 00:60:97:8F:4F:86 | 0060.978F.4F86 

 

 맨 앞의 6자리의 수 OUI는 생산자 즉 제조회사를 뜻하며 나머지 6자리는 각 장비에 부여하는 일련번호가 된다.

 PC Y와 PC Z가 통신할 때 Y는 Z의 IP주소를 알고 있다 Y는 자기가 속한 네트워크에 있는 모든 PC에게 맥 어드레스를 요구하는 브로드캐스트 메시지를 보낸다
이때 Z는 Y와 같은 네트워크에 있기 때문에 Y가 보낸 브로드캐스트를 받게되고 Z는 Y에게 자신의 맥 어드레스를 알려준 후 비로소 통신을 시작하게 된다.

만약 PC Y와 Z가 라우터를 넘어 다른네트워크에 있다면 호스트 Y가 브로드캐스트를 보내도 호스트 Z는 그 메시지를 받아볼 수가 없다.
왜냐하면 중간에 있는 라우터가 브로드캐스트를 통과시키지 않기 때문이다. 라우터는 중간에 브로드캐스트를 막는다.
이때 라우터는 Y에게 자신의 맥주소를 알려주어 PC Z를 대신해서 전달할 정보를 받으며, 자신의 네트워크 상에서 PC Z의 맥어드레스를 찾아 받은 정보를 넘겨준다. 

 

[OSI 7 Layer]
ISO 국제 표준기구에서 만들었다
통신이 일어나는 과정을 7계의 단계로 나누어 단계별로 표준화하여 효율성을 높이기위해 사용 

물리 데이터링크 네트워크  전송 세션 표현 애플리케이션
Pysical Datalink Network Transport Session  Presntation Application

데이터 흐름이 한눈에 보인다
 문제 해결이 편리하다.
 각 층별로 표준화 되었기 때문에 여러 회사 장비가 사용이 가능하다

[물리계층] - Pysical Layer
통신의 맨 아래단계로 주로 전기적 기계적 기능적인 특성을 이용하여 통신케이블로 데이터를 전송한다.
통신 단위는 Bit이며 0과 1로 나타내어진다.
데이터를 전달만 할 뿐 이 데이터가 무엇인지 어떤 에러가 있는지 어떻게 보내는 것이 효과적인지 관여하지 않는다.
계층에 해당하는 장비는 통신 케이블, 리피터, 허브 등이 있다

[데이터 링크 계층] - Data-Link Layer
물리계층을 통하여 송수신 되는 오류와 흐름을 관리하여 보다 안전한 정보전달을 수행하도록 도와준다
통신에서의 오류를 찾아주고 재전송 기능을 가지고 있으며, 맥 어드레스를 통해 통신한다
통신 단위는 프레임이다
계층에 해당하는 장비는 브리지 스위치 등이 있다.

[네트워크 계층] - Network Layer
데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능이 핵심이다
이것을 보통 라우팅이라고 한다
경로를 선택하고 주소를 정하고 경로에 따라 패킷을 전달해주는 역할을 한다
계층에 해당하는 장비는 라우터이며
요즘 나오는 라우팅기능을 수행하는 스위치를 Layer 3 스위치 라고 한다

 

shlee0882.tistory.com/110

 

OSI 7 계층이란?, OSI 7 계층을 나눈 이유

1. OSI 7 계층이란? OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다. 1.1 OSI 7 계층을 나눈이유는? 계층을 나눈 이유는 통신이 일어나는 과정이 단계별로 파악할 수 있

shlee0882.tistory.com


[유니캐스트] 
 자신의 랜 카드 Address와 목적지 Address 즉, 로컬 네트워크 상 (이더넷 네트워크 상에 있는 모든 pc) 의 송수신 양측의 맥 어드레스가 같을 때 랜카드에서 프레임을 cpu로 보내며, 다를때 랜카드에서 프레임을 버린다.
 
[브로드캐스트]
 로컬 랜(브로드캐스트 도메인) 상에 구축된(연결된) 모든 네트워크 장비에게 프레임을 전송하는 통신
 자신의 맥 어드레스와 같지 않더라도 브로드캐스트 패킷을 무조건 cpu로 보낸다.
 브로드캐스트 도메인 안에 있는 모든 pc들에게 한번에 전송하는 방식이며, 이 경우 모든 pc가 cpu에 인터럽트를 걸기 때문에 pc성능이 떨어진다.

[인터럽트]
 하던 일을 멈추고 자신의 일을 처리해 달라는 명령

[브로드캐스트 도메인]
 라우터에 의해서 구분지어진 공간, 프레임을 수신받는 모든 네트워크 장비 영역(로컬 랜)

[멀티캐스트]
 라우터 혹은 스위치의 기능을 통해 보내고자 하는 그룹(네트워크로 연결된) 에게만 전송할 수 있으며 클래스 D에 속한 IP를 사용한다.
 라우터나 스위치가 멀티캐스트 기능을 지원해주지 않는다면 라우터는 브로드캐스트로 취급하여 다 막어버리며, 스위치는 브로드캐스트 처럼 모든 포트로 뿌려버린다.

[DHCP 서버]
 PC마다 하나하나 IP주소를 미리 지정해 놓지 않고 DHCP서버가 그 네트워크에 필요한 IP주소를 전부 가지고 있다가 
IP주소를 요구하는 PC에는 그때그때 자동으로 분배해주는 방식. (다쓰고 난 IP주소는 다시 회수)


[허브] - 멀티포트 리피터
 여러개의 포트가 달려있는 장비로, 한 포트로 들어온 데이터를 나머지 모든 포트에 전송하는 장치
 허브에 접속되어 있는 모든 pc들은 서로 통신이 가능하며 외부 인터넷은 나갈 수 없다
 허브에 붙어있는 모든것들은 같은 콜리전 도메인 안에 있다 
 때문에 허브에 연결된 단 하나의 pc라도 콜리전이 발생한다면 모든 pc가 영향을 받게 된다.

 

[콜리전 도메인]
 같은 허브에 연결되어 있는 모든 PC들을 '같은 콜리전 도메인 상에 있다' 라고 한다


[리피터]
 제한된 거리의 케이블을 연결하여 데이터 송수신을 가능하게 하는 장비

[스위치]
 콜리전이 쌓여 콜리전 도메인이 포화되면 속도가 느려지므로 콜리전 도메인을 나눠주는 역할을 하는 장비
 스위치는 포트별로 콜리전 도메인이 나뉘어 져 있다. - 1번포트와 2번포트가 통신을 하는 와중에 3번포트와 4번포트도 통신이 가능함.
 하나의 허브는 노드(길)가 하나지만 하나의 스위치는 포트 수별로 각각의 노드가 나뉜다.



<데이터의 계층별 이름>

데이터, 세그먼트, 패킷or데이터그램, 프레임, 비트

 

• 애플리케이션, 프레젠테이션, 세션 계층까지는 데이터(Data)

• 트랜스포트 계층에서는 세그먼트(Segment)

• 네트워크 계층에서는 패킷(Packet) 혹은 데이터그램(Datagram)

• 데이터링크 계층에서는 프레임(Frame)

• 피지컬(물리) 계층에서는 비트(Bit)

 


[세그먼트] 
 물리적으로 제한되는 네트워크 구분 단위
 OSI 7계층의 전송계층에서 다룬다 
 데이터를 네트워크를 통한 실질적인 전송을 위하여 일정 크기로 나눈 단위를 의미한다.
 송수신 포트주소, 오류검출코드(CheckSum, Frame Check Sequence)가 붙게 된다.

 

브릿지, 라우터, 허브 또는 스위치 등에 의해 묶여 있는 네트워크의 한 부분을 의미하며

브리지 또는 스위치간의 연결링크 라고 할수 있다.
 
[패킷]
 OSI 7계층의 네트워크 계층에서 다룬다
 전송을 위해 분할된 데이터 조각인 세그먼트를 목적지까지의 전달을 위하여
 시작주소(Source IP) 와 목적지주소(Destination IP) 가 포함된 IP Header가 붙은 형태의 단위를 말한다.
 즉, 데이터 + IP Header 구조이다.

[프레임]
 OSI 7계층의 데이터링크 계층에서 다룬다.
 최종적으로 데이터를 전송하기 전에 패킷에 Header(Mac Address 포함)와 CRC를 위한 Trailer(데이터가 정확하게 수신 할 수 있는가에 대한 무결성을 검증하기 위한 FCS)
 를 붙인 단위를 말한다.


[브리지]
허브로 만들어진 콜리전 도메인 사이를 반으로 나누고 중간에 다리를 놓는 장비이다.

 남단은 남단끼리 북단은 북단끼리 통신하며 남단pc와 북단pc가 서로 통신하고자 하는 경우에만 다리를 건너 통신이 이루어진다.
 나누어진 남단 혹은 북단 영역을 세그먼트라고 부른다.
 브릿지에는 브릿지 테이블이 존재하며 PC A가 통신을 위해 프레임을 내보내면 그때 이 PC의 맥어드레스를 읽어 자신의 맥 어드레스 테이블에 저장해놓는다
 이후 어떤 PC가 A에게 통신할 경우 자신의 브리지테이블을 참고하여 다리를 건널지 못건너게할지 결정한다.


[브릿지 & 스위치의 기능] - Learning & Aging , Flooding , Filtering , Forwarding
 

 Learning
 출발지의 맥어드레스를 확인 후 브리지가 관리하는 브리지테이블에 해당 맥 어드레스 정보를 저장한다
 
 Flooding
 들어온 포트를 제외한 나머지 포트로 뿌리는것을 의미한다. 브로드캐스트의 성질과 같다.
 
 Forwarding
 목적지의 맥어드레스를 자신의 브리지테이블에 가지고 있고 이 목적지가 출발지의 목적지와 다른 세그먼트에 존재하는 경우에 일어난다.
 한마디로 목적지가 어디있는지를 알고있는데 그 목적지가 다리를 건너가야 하는 경우에 Forwarding이 발생한다.
 
 Filtering
 브리지를 못 넘어가게 막는다는것을 뜻하며 브리지가 목적지의 맥어드레스를 알고 있고(브리지 테이블에 목적지 어드레스가 저장되어 있는 경우)
 출발지와 목적지가 같은 세그먼트 상에 있는 경우이다.
 이와 같은 경우 다리를 건널 필요 없이 통신이 가능하기 때문에 브리지는 다리를 막는 필터링을 실시하게된다.
 Filtering기능으로 허브와는 다르게 콜리전 도메인을 나누어 줄 수 있게 되는것이다.

 Aging
 브리지 테이블에 저장된 출발지의 Mac Address를 일정 시간이 지난 후 브리지 테이블에서 삭제한다
 기본 default 타이머는 5분 - 300초 이다 
 
 Aging 리플래시
 타이머가 다 끝나기 전 같은 출발지 Mac Address를 가진 프레임이 브리지로 들어오게 되면 브리지는 타이머를 리셋하고 처음부터 다시 카운트를 한다


[브리지 기능의 순서]


1. Leanging or AgingReflash
 브리지에 프레임이 접수된 후 브리지 테이블에 맥어드레스가 존재하지 않는다면 Leaning을 하고 
이미 Leaning이 된 맥어드레스는 Aging타이머를 리플래시하여 맨 처음부터 다시 카운트를 진행한다

2. Flooding
 Leaning을 마친 후 목적지 주소가 브로드,멀티캐스트 혹은 자신의 브리지 테이블에 저장되어 있지 않은 주소 라면 
브리지는 이 프레임을 어디로 보내야 할지를 결정하지 못하므로 프레임이 들어온 포트를 제외한 나머지 모든 포트로 뿌려버린다.

3. Filtering
 목적지 주소와 출발지 주소가 같은 세그먼트 상에 존재한다면, 브릿지를 건너가지 않고도 통신이 일어날수 있게 되므로 브리지는 나머지 모든 포트로 이 프레임이 건너가는걸 막는다

4. Forwarding

 만약 목적지 주소가 출발지 주소와 다른 세그먼트에 있다면 브리지가 자신의 브리지 테이블을 확인하여 
어떤 포트로 길을 열어줘야 하는지 확인 후 그 포트로 프레임을 전달한다.


[Looping]
 하나의 호스트에서 다른 호스트로 가는 경로가 두 개 이상일 때 브로드캐스트 패킷이 양쪽 브리지를 통해 네트워크를 계속 뱅뱅 돌게되는 현상
   세그먼트 1의 호스트A가 브로드캐스트 패킷을 보내면 양쪽 브리지에 전달이되고 전달받은 두 브릿지는 해당 패킷을 분석한다
   브로드캐스트 패킷인것을 확인 한 브릿지는 Flooding을 하게되며 상대방쪽 세그먼트로 브로드캐스트 패킷이 보내진다
   즉, 양쪽 브리지에서 모두 패킷이 다리를 건너게 된다.
   그 다음 반대쪽으로 건너간 브로드캐스트 패킷은 다시 양쪽 브리지의 아래쪽 포트로 전달되고 이 패킷 역시 브리지의 특성에 따라 다시 위로 전달된다.
   이런 과정이 반복되는것을 Looping이라 부르며 루핑이 발생하면 데이터전송이 불가능해진다.

CSMA/CD 특성상 한 세그먼트 안에서 어느 한 순간에는 오직 하나만이 통신이 가능해지는 규칙때문이다.

 

[스패닝트리] 
 스위치나 브리지에 발생할 수 있는 루핑을 미리 막기 위해 두 개 이상의 경로가 발생하면 하나를 제외하고 나머지 경로들을 자동으로 막아두었다가 만약 기존 경로에 문제가 생기면 막아놓은 경로를 풀어서 데이터를 전송하는 알고리즘

스패닝트리알고리즘 혹은 스패닝트리프로토콜(STP) 이라고 부름
+현재 링크가 끊어졌을 때 다른 링크가 살아나 연결되는데 걸리는 시간은 약 1분 소요

[이더 채널]
여러개의 링크가 마치 하나의 링크처럼 인식되게 하는 기술. 패스트이더채널(100M) 기가이더채널(1000M)

[업링크 패스트]
전통적인 스패닝트리에서 링크 복구시간이 1분이상 걸리는것을 2~3초 안에 가능하도록 만든 기술


[라우터]
경로를 배정한다 
브로드캐스트 영역을 나눠주기 위해 필요한 장비
네트워크 주소에 따라 전송을 막고 푸는 패킷 필터링기능 제공
여러개의 경로를 가지고 있기 때문에 데이터가 여러경로를 타고 날아갈수 있는 로드분배
프로토콜이나 데이터의 크기 및 중요도 등 상황에 따라 트래픽 전송 순서를 조정하는 QOS 기능 제공 

[IP 주소]
TCP/IP 프로토콜을 사용하는 모든 장비들을 구분하기 위한 주소로 2진수 32자리 형태로 2의 32승의 개수를 가지며 현재 약 6%정도 남음
2진수 32자리를 총 4옥텟으로나눠 각 옥텟별 8자리(최대255)로 이루어졌으며 octet 사이에 점을 찍어 표현함

 

#라우터의 기본구성 

라우터에 IP주소를 배정하는 규칙

-이더넷 인터페이스 : 내부 네트워크에 연결되는 라우터의 포트
-시리얼 인터페이스 : 외부 네트워크 즉, 인터넷쪽으로 연결

라우터에 부여해야 하는 IP주소는 이더넷 인터페이스, 시리얼 인터페이스 총 2개를 배정 

이더넷 인터페이스 IP주소 : 내부 PC용으로 부여받은 주소의 범위중 맨 앞 번호 
ex) 203.120.150.1 ~ 203.120.150.255 일때 맨 앞번호인 203.120.150.1을 라우터 이더넷 주소로 부여 

시리얼 인터페이스 IP주소 : 라우터가 접속하는 상대편 (ISP업체) 라우터의 시리얼 인터페이스와 IP주소를 맞춘다
이때 현재 라우터의 내부용 IP주소와 다르며 이는 네트워크가 다른것을 뜻하고 상대편 라우터의 시리얼과 같은 네트워크가 된다.
ex) 
상대 라우터 시리얼 : 203.150.150.5 , 서브넷 마스크 : 255.255.255.2
우리 라우터 시리얼 : 203.150.150.6 , 서브넷마스크 : 255.255.255.2

 

#IP주소의 네트워크부분/호스트부분


모든 IP주소는 네트워크 부분과 호스트 부분으로 나누어진다.
하나의 네트워크란 라우터 없이도 통신이 가능한 하나의 브로드캐스트 영역이다.
한 네트워크 상에서 뒤에 오는 호스트 부분은 각 PC가 모두 달라야 한다.

[네트워크 부분]
브로드캐스트 영역 즉, 라우터를 거치지 않고 통신하는 영역

게임방 A 내부의 다른 PC와의 통신 - 라우터 사용X
게임방 A 외부의 다른 PC와의 통신 - 라우터 사용O <- 두 PC가 같은 네트워크 상에 있지 않기 때문 <- ARP
하나의 브로드캐스트 영역 안에 두 PC는 라우터 없이 통신이 가능하지만 영역 밖의 PC는 라우터를 거쳐야함.
하나의 네트워크 = 하나의 브로드캐스트 영역 : 라우터를 거치지 않고 통신이 가능한 영역이다

[호스트 부분]
각각의 PC 또는 장비

IP주소 자체는 네트워크 부분과 호스트 부분으로 나뉘며 "하나의 네트워크" 에서 
네트워크부분은 모두 같아야하고 호스트부분은 모두 달라야 정상적으로 통신이 가능하다

 


 예를들어사무실의 50대 PC가 한 라우터를 통해 연결되어 있다면(한 라우터 하나의 인터페이스)

이 PC들은 모두 같은 네트워크 상에 있다
이때 이 PC들의 IP주소중 네트워크부분은 모두 같아야 라우터를 거치지 않고 통신이 가능하며,

호스트 부분은 모두 달라야 한다
호스트부분이 같게 되면 PC간의 IP주소 충돌로 인해 충돌이 불가능해 진다.

구체적으로 어느 한 PC방의 IP주소가 203.240.100.1 ~ 203.240.100.255라고 가정했을 때,
203.240.100 부분이 네트워크 부분으로 모든 PC가 서로 같아야 하며 
제일 마지막 옥테트인 1~255가 호스트 부분으로 모든 PC가 서로 달라야한다

*IP 주소중 네트워크 부분만이 라우터가 라우팅을 할 때 참고하는 부분이다.*

 

#IP 클래스


IP주소에서 호스트가 전부 0인 경우 네트워크 전체를 나타내기 때문에 호스트 주소로 사용하지 않고
호스트가 전부 1인 경우 네트워크 전체에 있는 모든 호스트들에게 전송할 때 사용하는 브로드캐스트 주소이므로 호스트 주소로 사용하지 않는다.
그러므로 각 class마다 사용가능한 호스트의 수는 전체 호스트 중에 2개를 공통적으로 뺀다

 

[Class A]
 -IP주소의 32개의 이진수 중 맨 앞 1bit가 무조건 0 : 0xxx xxxx. xxxx ~

 -xxx.yyy.yyy.yyy 형태

 -네트워크부분 : 맨 앞 1개 옥테트 xxx

 -호스트부분 : 나머지 3개 옥테트 yyy.yyy.yyy

 -네트워크 범위 : 1.0.0.0 ~ 126.0.0.0 (127은 테스트용 사설 IP)
 -사용 가능 한 호스트 수 : 2의 24승 - 2 = 16,777,214개
 -디폴트 서브넷 마스크 : 255.0.0.0

 

[Class B]
 -IP주소의 32개의 이진수 중 맨 앞 2bit가 무조건 10 : 10xx xxxx. xxxx ~

-xxx.xxx.yyy.yyy 형태

 -네트워크부분 : 앞의 2개 옥테트 xxx.xxx

 -호스트부분 : 뒤의 1개 옥테트 yyy.yyy 

 -네트워크 범위 : 128.0.0.0 ~ 191.255.0.0 (네트워크를 나타날 때 호스트부분은 0으로 표기 - 모든 클래스)
 -사용 가능 한 호스트 수 : 2의 16승 - 2 = 65,534개
 -디폴트 서브넷 마스크 : 255.255.0.0

 

[Class C]
 -IP주소의 32개의 이진수 중 맨 앞 3bit가 무조건 110 : 110x xxxx. xxxx ~

 - xxx.xxx.xxx.yyy 형태

 -네트워크부분 : 앞의 2개 옥테트 xxx.xxx.xxx

 -호스트부분 : 뒤의 1개 옥테트 yyy
 -네트워크 범위 : 192.0.0.0 ~ 223.255.255.0 
 -사용 가능 한 호스트 수 : 2의 8승 - 2 = 254개
 -디폴트 서브넷 마스크 : 255.255.255.0


[서브넷 마스크]

 메인이 아닌 어떤 가공을 통한 네트워크를 만들기 위해 씌우는 마스크
주어진 IP 주소를 네트워크 환경에 맞게 나누어 주기 위해서 씌워주는 이진수의 조합
부여받은 원래 상태의 IP주소에 서브넷 마스크를 씌워 네트워크를 나누어 사용한다.

예를 들어 65000여개의 호스트를 가지는 ClassB 주소를 사용하여 네트워크를 구성한다면 사용은 가능하지만 
브로드캐스트 도메인이 너무 커서 브로드 캐스트가 너무 많이 발생하게 되어 네트워크를 정상적으로 사용하기 위해 서브네팅이 필요하다

각각의 서브넷간의 통신은 라우터를 통해서만 가능하다


[디폴트 서브넷 마스크]


 IP주소를 서브넷 마스크로 가공하지 않더라도 사용하더라도 기본 서브넷 마스크는 존재한다.
예를들어 Class C의 주소를 가공하지 않고 전부 쓰더라도 서브넷 마스크가 따라다니게 되는데 이것을 디폴트 서브넷 마 스크라고 한다.
이는 서브네팅 유무를 확인하기 위함이다.

주어진 네트워크를 가공하지않고 그대로 다 쓰는 경우 아래의 디폴트 서브넷 마스크를 사용한다.

Class A : 255.0.0.0
Class B : 255.255.0.0
Class C : 255.255.255.0

하지만 가공해서 사용하는 경우 약간 고쳐서 사용한다.

디폴트 서브넷마스크는 해당 IP의 각 Class별 기본성격과 같다
즉, 위의 디폴트 서브넷 마스크를이진수로 풀어냈을때 1인 부분이 네트워크 부분이며 0인 부분이 호스트 부분에 해당한다

특정 IP주소와 IP주소의 Class에 해당하는 디폴트 서브넷마스크를 논리적 AND 연산을 통해 서브네팅한다
예를들어 IP주소가 Class A라면 ClassA에 해당하는 디폴트 서브넷마스크를 논리AND 연산을 진행하고
Class B에 속하는 IP라면 ClassB에 해당하는 디폴트 서브넷마스크로 논리AND 연산을 수행한다

Class B의 디폴트 서브넷마스크를 씌워보자
150.150.100.1 + 255.255.0.0 = 150.150.0.0 
네트워크부분 : 150.150
호스트부분 : 0.0

만약 Class B에 해당하는 IP주소에 Class C의 디폴트 서브넷 마스크를 씌운다면 네트워크 부분이 늘어나고 호스트 부분이 줄어들게된다
150.150.100.1 + 255.255.255.0 = 150.150.100.0 
네트워크부분 : 150.150.100
호스트부분 : 0

Class B 주소를 Class C처럼 사용한다는 의미로 이처럼 하나의 주소를 서브넷 마스크를 씌워 작은 네트워크로 만드는것을 서브네팅이라고 한다.

 


서브넷 마스크의 기본 성질


서브넷 마스크를 통해 서로 나누어진 네트워크는 라우터를 거쳐야만 통신이 가능하다 

(서브네팅을 하고나면 네트워크 부분이 서로 달라지기 때문)
이진수로 나타냈을 때 1이 연속적으로 나와야 한다. 

 

서브넷 마스크를 이용하여 네트워크를 나누는 이유

 네트워크 주소를 효율적으로 이용하기 위함
 브로드캐스트 도메인을 줄이기 위함.(네트워크를 나눔과 동시에 호스트를 줄인다)

 


STP*

[브리지ID]
스위치들이 통신할 때 서로 확인하기 위해 하나씩 가지고 있는 번호
스패닝트리 계산에 요긴하게 사용된다.
2Byte(16bit)의Bridge Priority와 6Byte(48bit)의 Mac Address로 이루어져 있다 
Bridge Priority(2Byte - 16bit) + Mac Address(6Byte - 48bit)

[Bridge Priority]
16bit로 만들어지기 때문에 올 수 있는 수가 0~2의16승-1 = 0~65535
아무런 구성을 하지 않은 브리지에서는 기본값으로 범위 0~65535 의 중간값인 32768을 사용한다
2진수로 1000 0000 0000 0000 16진수로 8000이 된다

[Path Cost]
브리지가 얼마나 가까이, 얼마나 빠른 링크로 연결되어 있는지 알아내기 위한 값으로
한 스위치에서 다른 스위치로 가는데 드는 비용(노력)의 값이며 속도가 빠를수록 값이 작다.
예전에는 1000Mbps를 두 스위치사이의 링크 대역폭(속도)로 나눈 값으로 계산해왔지만
1000Mbps 속도의 기가비트나 2.4Ghz OC-48 ATM을 계산했을때 소수점이 나오는 문제가 발생하기 때문에
각 속도마다 Path Cost값을 정의하게되었다

대표적인 대역폭의 STP Cost값
10Mbps - 100
100Mbps - 19
1000Mbps - 4


#스패닝트리 3가지 기본동작

 네트워크당 하나의 루트브리지(Root Bridge)를 갖는다
 루트브리지(Root Bridge)가 아닌 모든 브리지(Non Root Bridge)는 무조건 하나의 루트포트(Root Port)를 갖는다 
세그먼트(Segment)당 하나씩의 데지그네이티드 포트(Designated Port - 지정포트) 를 갖는다

 1번에서 말한 네트워크는 스위치나 브리지로 구성된 하나의 네트워크로 라우터에의해 나누어진 브로드캐스트 도메인이 하나의 네트워크 즉, 하나의 브로드캐스트 도메인에 하나의 루트브리지가 있는것이다.
 2번에서 네트워크당 하나씩의 루트브리지가 있으므로 루트브리지를 제외한 모든 브리지는 자동으로 Non Root Bridge가 된다.
 3번에서 말한 세그먼트는 브리지 또는 스위치간에 서로 연결된 링크로 브리지나 스위치가 서로 연결되어있을 때 이 세그먼트에서
반드시 한 포트는 Designated Port로 선출되어야 한다.

[Root Bridge]
대장브리지 즉, 스패닝트리 프로토콜을 수행할 때 기준이 되는 브리지(스위치)

[Non Root Bridge]
루트브리지가 아닌 나머지 모든브리지이며 이 브리지는 하나씩의 Root Port를 가져야 한다.

[Root Port]
루트브리지에 가장 빨리 갈 수 있는 포트 

스패닝트리 프로토콜에서 루트포트나 데지그네이티드 포트가 아닌 나머지 모든 포트는 다 막아버린다
즉, 루트포트와 데지그네이티드 포트를 뽑는 목적은 어떤 포트를 살릴지 결정하기 위한 것 이다.


#스패닝 트리 프로토콜 순서 4단계

1단계 : 누가 더 작은 RootBID를 가졌는가?
2단계 : 루트 브리지까지의 Path Cost 값은 누가 더 작은가?
3단계 : 누구의 BID(Sender BID)가 더 낮은가?
4단계 : 누구의 포트 ID가 더 낮은가?

[BPDU] - Bridge Protocol Data Unit
스패닝트리 정보를 자기들끼리 주고받기 위해 사용하는 특수한 프레임이다.
BPDU에는
루트브리지의 BID인 RootBID
루트브리지까지 가는 경로값인 Root Path Cost
보내는 브리지의 BID인 Sender BID
어떤포트에서 보냈는지을 알게 해주는 PortID 정보등이 실려있다.

브리지나 스위치가 부팅을 하면 각각의 포트로 BPDU를 매 2초마다 내보내면서 서로의 스패닝트리 정보를 주고받게 된다.
즉, 브리지는 이 BPDU를 서로 주고받으면서 누가 루트브리지이고 어떤포트가 루트브리지가 될지, 어떤포트가 데지그네이티드 포트가 될지를 결정하게 된다.
다시말해 BPDU는 STP에서 우체부와 같은 아주 중요한 역할을 하게된다.

브리지나 스위치가 스패닝트리 정보를 서로 주고받기위해 BDPU를 사용하며, 어떤BDPU가 가장 좋은 BPDU인가를 결정하기 위해 3단계의 순서정하기를 사용한다.


#스위치에서 루트브리지 뽑는 기준

브리지나 스위치가 부팅된 후 매 2초마다 보내지는 BPDU정보에 담겨있는 각각 자신들이 가진 RootBID를 기준으로 비교하여
더 낮은값을 RootBridge로 인정되며 해당 브리지의 BID값으로 RootBID가 변경된다.

만약 더 낮은 BID를 꼭 RootBridge로 지정하고 싶다면 BridgePriority의 디폴트값 32768을 이보다 작은수로 만든다
다음은 시스코  스위치에서 BridgePriority값을 default 32768에서 100으로 변경하는 명령어이다.
spanning-tree vlan 1 priority 100
변경된 Bridge Priority를 확인하는 명령어는 show spanning-tree 이다.


# Non Root Bridge 루트포트 선출

루트포트는 루트브리지에서 가장 가까이 있는 포트 즉, Path Cost가 가장 적게드는 포트를 말한다.
Root Path Cost 값이 가장 낮은 스위치의 포트를 루트포트로 선정한다.


# 데지그네이티드 포트 선출

데지그네이티드 포트를 뽑아야 STP에서 어떤 포트를 풀어주고 어떤포트를 막을지가 결정된다.


STP의 세번째규칙 '세그먼트당 하나씩의 데지그네이티드 포트를 갖는다'
즉, 브리지 네트워크에서 브리지와 브리지로 연결된 세그먼트당 각각 한개의 데지그네이티드 포트를 뽑아야 한다.


루트브리지까지의 PathCost 즉, 각 세그먼트상에 있는 각 브리지의 Root Path Cost를 비교하여 더 낮은 Root Path Cost값을 가진 포트가 데지그네이티드 포트로 선출된다. 


이때 만약 서로연결된 두 포트의 Root Path Cost 값이 같다면 STP 순서 4단계 공식을 적용한다.

1단계 : 누가 더 작은 RootBID를 가졌는가
2단계 : 루트브리지까지의 PathCost값은 누가 더 작은가
3단계 : 누구의 BID(SenderBID)가 더 낮은가
4단계 : 누구의 포트ID가 더 낮은가

 

[Non Designated Port]
루트포트나 데지그네이티드 포트가 아닌 나머지 포트


#스패닝 트리 프로토콜 구성의 5가지 상태변화

▶Disabled

포트가 고장나서 사용할 수 없거나 네트워크 관리자가 포트를 일부로 ShutDown 시켜놓은 상태

 

-데이터 전송 불가

-맥어드레스 Leaning 불가

-BDPU 전송 불가

 

Blocking

스위치를 맨 처음 켜거나 Disabled되어 있는 포트를 관리자가 다시 살렸을 때 적용되는 상태

데이터 전송은 되지 않으며 오직 BPDU만 주고받을 수 있다. 이는 스위치가 켜졌을때 상태와 같다.

 

-데이터 전송 불가

-맥어드레스 Leaning 불가

-BDPU 전송 가능

 

Listening

블로킹 상태에 있던 스위치 포트가 루트포트나 데지그네이티드포트로 선정되면 포트는 바로 리스닝 상태로 넘어간다.

리스닝 상태에 있던 포트도 네트워크에 새로운 스위치가 접속했거나 브리지나 스위치의 구성값들이 바뀌면 루트포트나 데지그네이티브 포트에서 NonDesignated포트로 상황이 변할 수 있다. 이때는 다시 블로킹 상태로 돌아간다.

 

-데이터 전송 불가

-맥어드레스 Leaning 불가

-BDPU 전송 가능

 

Learning

리스닝 상태에 있던 스위치 포트가 포워딩 딜레이 디폴트 시간인 15초동안 그 상태를 계속 유지하면 리스닝 상태는 러닝상태로 넘어간다.

러닝상태에서야 비로소 맥어드레스를 배워 맥어드레스 테이블을 만들게 된다.

 

-데이터 전송 불가

-맥어드레스 Leaning 시작

-BDPU 전송 가능

 

Forwarding

스위치 포트가 러닝상태에서 다른 상태로 넘어가지 않고 (루트포트나 데지그네이티드 포트에서 Non Designated포트로 바뀌지 않았음을 의미) 다시 포워딩 딜레이 디폴트 시간인 15초동안 그 상태를 계속 유지하면 러닝상태에서 포워딩 상태로 넘어가게된다.

포워딩 상태가 되어야 스위치 포트는 드디어 데이터 프레임을 주고받을 수 있게 된다.

즉, 블로킹 상태에 있던 포트가 리스닝과 러닝을 거쳐 포워딩 상태로 오려면 디폴트 포워딩 딜레이인 15초가 두 번 지난 30초가 소요된다. 

 

-데이터 전송 시작

-맥어드레스 Leaning 시작후 브리지테이블 생성

-BDPU 전송 가능 

 

 

728x90
반응형