Super Kawaii Cute Cat Kaoani

네트워크

네트워크 - 6

zozni 2021. 1. 9. 23:07
728x90
반응형
SMALL

[링크 계층, LANs]

[MAC addresses and ARP]

MAC: media access control

ARP: address resolution protocol)

IPv432비트 주소이다.

네트워크 계층의 주소로 각 인터페이스 카드별로 IP주소 하나씩 매핑 된다.

MAC은 이 네트워크 인터페이스 카드가 제조될 때 할당받는 주소이다.

32비트 IP주소는 네트워크 계층의 주소로 포워딩(데이터 평면)과 라우팅(제어 평면)에 사용된다.

 

[MAC 주소]

링크 계층 주소는

랜 주소, 물리 주소, MAC 주소라고도 알려져 있다. 가장 대표적인 것은 MAC 주소.

링크 계층은 하나의 물리적으로 연결된 두 노드 사이에서 하나의 인터페이스로부터 또 다른 물리적으로 연결된 인터페이스로 프레임을 보낼 때 내부적으로 사용되는 주소이다.

=> MAC 주소는 48비트 주소이다.

대부분의 LAN에서 사용되는데 NICROM에 처음에 만들 때 들어간다. 또는 소프트웨어로 세팅이 가능하다.

 

MAC 주소는 원래 영구적이도록 설계되었으나, 이제는 소프트웨어를 사용해서 어댑터의 MAC 주소를 변경할 수 있다.

(여기서는 고정되어 있다고 가정)

ex) 1A-2F-BB-76-09-AD

16진수 1개가 4비트를 나타내는데 12개의 16진수니까 12*4=48. 48비트이다.

 

 

 

 

 

랜에 연결된 각 어댑터는 유일한 MAC 주소를 가진다.

어떻게 대한민국 회사에서 제조된 어댑터가 대만 회사에서 제조된 어댑터와 다른 주소를 사용하는지 확신할 수 있을까?

답은 IEEEMAC 주소 공간을 관리하기 때문이다.

어떤 회사에서 어댑터를 제조하려면 224개의 주소로 이루어진 주소 영역을 구매해야 한다.

IEEE에서는 MAC 주소의 첫 24비트를 고정하고, 나머지 24비트는 회사로 하여금 각 어댑터에게 유일하게 부여하는 방식으로 224개 주소를 할당한다.

(48비트중 앞의 24비트는 IEEE가 할당주소

뒤의 24비트는 회사마다 각 주소)

 

어댑터(=NIC)MAC 주소는 평면 구조를 가지며 어댑터의 위치에 따라 변경되지 않는다.

어댑터의 IP 주소는 계층적 구조(네트워크 부분과 호스트 부분)이다. 호스트의 IP 주소는 호스트가 이동하면 변경되어야 한다.

 

MACIEEE에서 관리한다.

NIC를 만드는 제조사는 MAC 주소 공간을 사야 한다. 그렇게 유일함을 보장한다.

 

-MAC 주소 : SSN 같은거임

-IP 주소 : 우편 주소 같은거임

[ARP, address resolution protocol]

네트워크 계층 주소(IP)와 링크 계층 주소(MAC)가 있으므로 이들 주소 사이에 변환이 필요하다. 그게 ARP.

각 호스트와 라우터는 자신의 메모리에 ARP 테이블을 가지고 있다.

ARP 테이블은 IP주소와 MAC 주소 간의 매핑 정보를 포함한다.

ARP 테이블은 또한 테이블에서 각 매핑이 언제 삭제되는지를 나타내는 TTL을 포함한다. (Time To Live)

어떤 노드들에 대해서는 종료된 엔트리를 갖고 있을 수 있는 반면에 다른 노드들에 대한 엔트리는 테이블에 전혀 없을 수도 있다.

일반적인 엔트리의 종료 시간은 엔트리가 ARP 테이블에 들어간 후 20분이다.

(IP주소와 MAC 주소의 매핑을 얼만큼 유지할 것인지)

 

=> ARP 테이블 = IP주소, MAC주소, TTL

 

 

 

 

 

 

 

 

 

[같은 LAN상에 있는 ARP]

<AB에게 데이터그램을 보내고자 함>

1. BMAC 주소는 AARP테이블에 없다. (BIP주소는 알지만 MAC 주소는 모름)

2. ABIP주소를 포함한 ARP 쿼리 패킷을 방송한다. (나를 뺀 나머지에게 다)

방송을 하기 위해서는 항상 목적지의 주소를 1로 세팅한다. 이렇게.

3. 그러면 LAN상에 있는 모든 노드들이 ARP 쿼리를 받는다.

BARP 쿼리를 받는다. 보니까 엥 IP주소가 내꺼네? 아 나한테 보내려는 거구나 하고 A에게 자신(B)MAC 주소를 알려준다.

나머지 노드들은 다 이 ARP 쿼리를 무시한다. B만 대답함.

기본적으로 이 ARP도 신뢰성이 있다고 가정. 누군가가 B인척을 하지 않는다는 것.

 

BAMAC 주소로 자기의 ARP대답을 ‘unicast’로 보낸다.

4. ABMAC 주소를 알게 되고 BIP주소와 MAC 주소를 ARP테이블에 저장한다. TTL까지. AB한테 또 보내면 그만큼 TTL이 또 늘어나게 되는 것.

 

소프트 상태 : 새로 고치기 전까지 가지고 있는 정보. 사라지는 정보.

 

없으면 방송해서 답을 받아서 IP, MAC, TTL 세팅해서 넣게 된다. TTL20이면 20분동안 사용이 안되면 사라진다. 이게 사라지기 전까지 가지고 있는 상태를 소프트 상태라고 하는 것이다.

 

 

 

 

 

<ARP의 흥미로운 점 2가지>

질의 ARP 메시지는 브로드 캐스트 프레임으로 전송되는 반면에, 응답 ARP 메시지는 표준 프레임으로 전송된다는 점이다.

ARP는 플러그 앤 플레이다.

, 노드의 ARP 테이블이 자동으로 구축 된다. 시스템 관리자가 테이블을 구성하지 않아도 된다.

그리고 호스트가 서브넷으로부터 연결이 끊어지면 이 호스트에 대한 엔트리는 그 서브넷의 다른 ARP 테이블에서 결국은 제거된다.

 

=>ARP 패킷은 링크 계층 프레임에 캡슐화되며, 따라서 구조적으로 링크 계층보다 위에 있다. 네트워크 계층 주소도 포함하고 있다.

(결론적으로, ARP는 링크 계층과 네트워크 계층의 경계에 있는 프로토콜이다.)

 

[서브넷에 없는 노드로의 데이터그램 전송]

(routing to another LAN) A->B

다른 랜상이기 때문에 중간에 라우터 있음

 

지금까지는 같은 서브넷에 있을 때 ARP의 동작이었다.

이런 상황이면 IP주소와 MAC 주소 둘다 필요하다. 중간에 R을 거쳐간다.

IP주소 : 네트워크 계층 (datagram)

MAC 주소 : 링크 계층 (frame)

ABIP 주소를 알고 있다.

AB로 갈 때 첫 번째 거쳐야 하는 RIP주소를 알고 있다. (라우팅 테이블을 통해)

ARMAC 주소를 알고 있다.

(broadcast을 해서 알게 됨)

 

AIP 데이터 그램을 만든다.

출발지 A: 111.111.111.111

목적지 B: 222.222.222.222

2. 프레임을 만든다.

A에서 R까지가 .

R에서 B까지가 .

MAC src에는 AMAC 주소가 들어가게 된다.

MAC dest에는 R의 받는 쪽 MAC 주소가 들어가게 된다.

3. MAC src에는 R의 보내는 쪽 MAC 주소가 들어가게 된다.

MAC dest에는 BMAC 주소가 들어가게 된다.

4. BMAC 주소와 IP주소가 같으니까 목적지에 도착.

 

 

RARP (reverse ARP)

MAC 주소는 알고 있는데 IP 주소를 몰라.

그럴 때 사용하는 것.

 

[이더넷, Ethernet]

가장 우위를 선점한 유선 LAN 기술이다.

하나의 칩에 다양한 속도가 지원된다.

(10Mbps ~ 10Gbps)

인터넷이 글로벌 네트워킹에 대한 것이라면, 이더넷은 근거리 네트워킹에 대한 것이다.

-> 이더넷 하드웨어(어댑터, 스위치)는 상당히 저렴하다.

 

<이더넷, 물리적 연결도>

bus 형태 - star 형태

[bus]

90년대에 인기

모든 노드들이 같은 도메인에 묶여 있음

충돌이 일어남.

 

[star]

오늘날 사용.

각각의 분리된 이더넷 프로토콜을 사용.

충돌이 일어나지 않게 할 수 있다.

가운데 스위치는 layer 2 계층.

스위치 on/off 기능이 있어서 도착지만 겹치지 않으면 동시에 각각의 프레임을 전송하는 게 가능하다.

 

 

<이더넷 프레임의 구조> 437p @@@중요

data(payload)IP 데이터그램 부분이다.

데이터 필드는 IP 데이터그램을 운반하는데 이더넷의 최대 전송단위(MTU)1,500바이트이다. 데이터그램을 단편화해야 한다. 최소크기는 46바이트이다. 네트워크 계층은 임의로 채운 부분을 제거하기 위해 IP 데이터그램 헤더에 있는 길이 필드를 사용한다.

어댑터가 IP 데이터그램을 캡슐화하는 것이다.

헤더에서 가장 중요한

dest.add, source.add 근데 이게 IP 주소가아니라 48비트의 MAC 주소이다.

프리엠블8바이트이다.

프리엠블의 첫 7바이트는 10101010 값을 가진다. 마지막 바이트는 10101011이다.

프리엠블의 첫 7바이트는 수신 어댑터를 깨우고 수신자의 클록을 송신자의 클록에 동기화시키는 역할을 한다.

프리앰블의 8번째 바이트의 마지막 두 비트(뒤에 11이면) B에게 중요한 게 오고 있다고 알려주는 것이다.

프리엠블 부분은 오버헤드이다.

CRC (순환중복검사) 필드의 목적은 수신 어댑터인 어댑터 B로 하여금 프레임에 오류가 생겼는지 검출할 수 있게 하는 것이다.

address: 출발지, 목적지의 MAC 주소

각각 48비트. 6바이트를 차지한다.

type : 타입 필드는 이더넷으로 하여금 네트워크 계층 프로토콜을 다중화하도록 허용한다. 호스트가 IP 이외의 다른 네트워크 계층 프로토콜을 사용할 수 있다.

ex) 타입 필드가 0806이면 ARP이다.

 

@@@@@@@@@@@@@@@중요!!!

 

 

 

<이더넷, 비신뢰적, 비연결형>

모든 이더넷 기술은 네트워크 계층에게 비연결형 서비스를 제공해준다.

즉 어댑터 A가 데이터그램을 어댑터 B로 전송할 때 A는 먼저 B와 핸드쉐이킹 하지 않고 이더넷 프레임에 데이터그램을 캡슐화해서 그 프레임을 랜으로 전송한다.

(2계층 비연결형 서비스)

이더넷 기술은 네트워크 계층에게 비신뢰적인 서비스를 제공한다.

예를 들어, 어댑터 BA로부터 프레임을 수신했을 때 BCRC를 통해 프레임을 검사하지만, 프레임이 CRC 검사를 통과하더라도 응답을 보내지 않으며, 프레임이 CRC 검사에서 실패했을 때도 부정확인 응답 메시지를 보내지 않는다. 프레임이 CRC 검사에서 실패하면, B는 그 프레임을 폐기한다. 그래서 A는 전송된 프레임이 B에 도착해서 CRC 검사를 통과했는지에 대해 알 수 없다. 그래서 비신뢰적.

이 사실에 대해서는 TCP에서 알 수 있다.

TCP에서 잘 못받았다고 하면 다시 재전송 되야 한다.

 

데이터링크 계층과 TCP 계층의 신뢰적 전송의 차이점은 뭐냐?

-> 순서대로 도착하고 데이터의 도착을 보장하는 것은 TCP에서 추가적으로 이루어져야 한다.

 

=>이더넷에서 사용되는 MAC 프로토콜은

binary backoff가 있는 슬롯이 없는

CSMA/CD이다.

=>유선 랜에서 가장 많이 사용되는 기술이

이더넷이다.

 

 

 

 

 

 

[802.3 이더넷 표준, 링크/물리 계층]

많은 다양한 이더넷 표준이 존재.

unslotted CSMA/CD를 가장 많이 사용.

그리고 프레임 포맷은 프리엠블, 목적지 주소, 출발지 주소, 타입, 페이로드, CRC로 이루어져 있다.

다른 속도를 지원(실제 지원하는 NIC의 속도를 말한다.)

2Mbps, 10Mbps, 100Mbps, 1Gbps,

10Gbps, 40Gbps

다른 물리 계층 매체 : 광섬유, 케이블

이 그림은 100Mbps를 지원한다.

F-> 광섬유

T-> 꼬임쌍선(구리선)

 

10BASE-T, 10BASE-2, 10GBASE-T

=> 첫 부분은 표준 속도! @@@중요!

=> BASE는 베이스밴드 이더넷을 나타냄

물리 매체가 이더넷 트래픽만 전달함을 뜻함.

=> 약어의 마지막 부분은 물리 매체를 나타 냄.

 

이더넷은 링크 계층과 물리 계층 모두에 대한 명세이며 동축케이블, 동선, 광섬유와 같은 다양한 물리 매체상으로 전달한다.

 

802.3은 데이터링크 계층의 이더넷의 표준이다. 워킹 그룹에 의해 표준화되었다.

 

 

[링크 계층 스위치]

[이더넷 스위치]

2계층 스위치

바로 근접해있는 노드 간에 보내는 데에 사용되는게 프레임이고 그게 링크 계층에서 하는 역할이다.

스위치의 역할은 들어오는 링크 계층 프레임을 수신해서 출력링크로 전달하는 것이다.

호스트는 스위치의 존재를 인식하지 못한다. (transparent)

(즉 호스트/라우터는 프레임을 스위치가 아닌 다른 호스트/라우터를 목적지로 해서 랜상으로 보내며, 중간에 스위치가 프레임을 받아서 다른 노드에게 전달하는 것을 알지 못한다.)

모든 프레임을 다 받아서 저장했다가 output 포트로 포워딩해주는 역할을 한다.

들어오는 프레임에 대해서 MAC 주소를 검사하고, 프레임이 세그먼트에서 전달될 때 하나 이상의 나가는 링크로 선택적으로 프레임을 전달하고, CSMA/CD를 사용하여 세그먼트에 엑세스한다.

스위치는 plug-and-play 장치이다. 새롭게 붙어서 역할을 수행한다. (=self-learning

자가학습)

스위치는 자신의 테이블을 자동으로 구축하는 특징이 있다. 즉 자가학습을 한다.

 

<스위치 포워딩 테이블>

스위칭은 포워딩 테이블을 스스로 배운다.

스위치 AA’가 어떻게 4번 인터페이스에 있는지 어떻게 알게될까? (자가학습 어떻게 하는걸까?

스위치 테이블 처음엔 비어있음.

인터페이스로 수신한 각 프레임에 대해 스위치는

(1) 프레임의 출발지 주소 필드에 있는 MAC 주소

(2) 프레임이 도착한 인터페이스

(3) 현재 시간

을 테이블에 저장한다.

 

[스위치: 동시에 여러 전송]

A->A’ B->B’

출발지와 목적지가 다 다름.

서로 각각 다른 인터페이스를 사용함.

그래서 동시에 여러개를 전송할 수 있는 것이다. 각 호스트는 스위치에게 전용선으로 할당받은 연결이 있다.

이 스위치들은 버퍼를 가지고 있다. 받은 프레임을 저장해서 포워딩하기 때문이다.

이더넷 프로토콜은 출발지에서 들어오는 링크가 있고 충돌이 없고 전이중방식(full duplex)으로 주고받는 것을 동시에 할 수 있다. (각 링크는 자기 자신만의 충돌 도메인을 가지고 있다.)

만약 AB가 둘 다 B’로 보내고자 하면 충돌이 생김.

A에서 A’, B에서 B’로 보낼 때 겹치는게 없기 때문에 동시에 보내는 게 가능하다.

 

 

이런 식으로 스위치는 테이블에 송신 노드가 상주하는 랜 세그먼트를 기록한다. 랜에 있는 모든 호스트가 프레임을 송신하면, 결국 모든 호스트에 대한 정보가 테이블에 기록되게 된다.

3. 일정 시간(수명 시간:aging time)이 지난 후에도 스위치가 해당 주소를 출발지 주소로 하는 프레임을 수신하지 못하면 테이블에서 이 주소를 삭제한다. 이런 식으로 PC가 다른 PC로 대체되면, 원래 PCMAC 주소가 스위치 테이블에서 결국 삭제되게 된다.

(라우팅 테이블처럼!)

스위치는 어떤 인터페이스를 통해 도달할 수 있는 호스트를 학습한다.

 

프레임이 스위치에 도착하면 AMAC 주소는 1번 인터페이스에 연결되어 있구나를 알게 된다.

그 알게된 것을 스위치 테이블에 기록한다.

받는 순간 60분을 카운트하기 시작함.

목적지가 A’인데 현재 스위치는 A’의 주소를 모른다.

 

[스위치의 프레임 필터/포워딩]

스위치가 프레임을 받으면

수신링크, 송신 호스트의 MAC 주소 기록.

스위치 테이블에서 A’MAC 주소를 찾는다. (MAC, 인터페이스번호, TTL) 이렇게 3개의 열로 이루어져 있다.

if 목적지가 그 엔트리에 있으면

if 목적지가 프레임이 들어온 세그먼트와 같은 쪽에 있으면

then 그 쪽에서 처리할 거기 때문에

프레임을 drop 한다.

else 엔트리에 있는 인터페이스로 프레임을 포워딩한다.

else (목적지가 엔트리에 없으면)

플러딩 해야 한다.

스위치와 스위치가 연결이 되어있는데 찾았을 때 같은 인터페이스라는 것은 출발지와 목적지가 같으면 더 이상 다른 애한테 보낼 필요가 없기 때문에 그냥 버리는 것이다.

 

[Self-Learning, 포워딩 예제]

목적지 A’는 아직 모르는 상태.

플러드는 항상 온데는 빼고 나머지한테 다 돌리는 것이다.

A빼고 나머지 모두에게 플러드 시킨다.

그래서 A’ 빼고 나머지 애들은 자기게 아니니까 drop 시킨다.

A’는 응답을 한다. 그래서 스위치가 A’4번 인터페이스에 있다는 것을 자가 학습하게 되고 TTL60으로 세팅을 한다.

A’가 응답할 때는 A’가 출발지가 되고 A가 목적지가 된다.

단 하나의 링크로 선택적으로 보낸다.

(A’1번 링크로 A에게 응답.)

 

 

[스위치 간의 상호작용]

이 숫자들은 인터페이스 번호!

출발지가 A, 목적지가 G

A-> S1-> S4-> S3-> G 이렇게 가야함

어떻게 보낼까?

self-learning

앞에서 예와 같은 경우이다.

S1으로 A가 보내니까

S1은 아 A1번 인터페이스에 있구나 하고 TTL60으로 세팅해 놓는다. 근데 지금 G의 주소가 없으니까 broadcast한다.

S3A가 이렇게 왔다는 것을 알게 된다.

근데 자기도 G를 모르니까 들어온 인터페이스 빼고 나머지 2, 3인터페이스로 브로드캐스트한다.

S4A가 자기의 4번 인터페이스로 나가야 한다는 것을 안다. 그리고 브로드캐스팅한다. 모르니까. 그러면 D,E,F는 자기가 아니니까 다 drop 시킨다.

그리고 S3은 자기의 4번 인터페이스에 있구나 하고 60으로 TTL을 세팅한다.

그리고 S3도 모르니까 브로드캐스트한다.

그러면 G가 그 사실을 알게 된다.

G 1 60 이렇게 세팅을 하게 된다.

이렇게 온 경로대로 다시 A에게 간다.

S4G가 자기의 3번 인터페이스에 있구나 하고 G 3 60 이렇게 세팅한다.

 

즉 테이블은 각각

S1 : A 1 60

G 4 60

S2 : A 1 60

G 3 60

S3 : A 4 60

G 1 60 이렇게 세팅된다.

<링크 계층 스위치의 특성>

충돌 제거

이질적인 링크들

관리

 

-> 만약 이 예에서 출발지가 A고 목적지가 C이면 S1이 브로드캐스트를 해서 S4도 받았는데 그 인터페이스 번호가 다시 1이면 S4는 받을 필요 없이 그냥 drop 시켜버린다.

그래서 S1에서 다시 인터페이스 3으로 가는 것. (C)

 

인터페이스 번호만 있고 각각 스위치들에는 MAC 주소 없다. 왜냐하면 스위치들은 투명하기 때문에. on/off만 시켜서 이 인터페이스로 보낼건지 말건지만 따진다.

*MAC 주소 없다!

 

[조직 네트워크]

 

회사의 네트워크

라우터-3계층

스위치-2계층

ARP테이블을 통해서 각 IPMAC 주소가 매핑된다. 여기도 TTL있음.

이럴 때 ARP테이블 필요하다.

 

 

[스위치 vs 라우터]

라우터는 네트워크 계층 주소를 사용해서 패킷을 전달하는 저장 후 전달 패킷 스위치 이다. (3계층, 네트워크 계층)

스위치도 저장 후 전달 패킷 스위치이지만 MAC 주소를 사용해서 패킷을 전달한다는 측면에서 라우터와 다르다. (2계층, 링크 계층)

[스위치와 라우터의 공통점]

저장 후 전달 패킷 스위치이다.

포워딩 테이블을 가지고 있다.

(라우터 : IP주소, 라우팅 알고리즘)

(스위치 : MAC주소, 플러딩, 자가학습)

 

 

[가상 근거리 네트워크, VLAN]

현대 기관 랜의 경우 부서별로 별도의 스위치 랜을 갖고 부서들간의 스위치 랜은 스위치 계층 구조를 이용해서 연결되는 형태로 계층적으로 구성되어있다고 했다. 하지만 이러한 구성은 실제로 잘 동작하지 않는다.

세 가지 단점이 있기 때문이다.

트래픽 격리의 부족

스위치의 비효율적인 사용

사용자 관리

 

이러한 어려움을 VLAN을 지원하는 스위치를 통해서 해결!

 

CS 유저하나가 EE로 옮겼는데 아직도 CS 스위치에 붙어있길 원할 때

-> 모든 링크 계층에서 브로드 캐스트 트래픽(ARP, DHCP, 대상 MAC 주소의 알 수 없는 위치)은 전체 LAN을 통과해야 한다.

이거는 보안 등의 문제가 있다. 그래서 불가능한데 이걸 가상으로 CS에 붙어있는 것처럼 동작하게 할 수 있다.

 

VLAN을 지원하는 스위치는 하나의 물리적 근거리 네트워크 기반구조 상에서 여러개의 가상 근거리 네트워크들을 정의할 수 있게 한다. (실제로 LAN의 스위치는 1개인데 마치 여러개의 LAN이 존재하는 것처럼)

VLAN에 속한 호스트들은 마치 스위치에 자신들만 연결된 것처럼 서로 통신한다.

 

 

 

 

[Port-based VLAN]

16개 포트를 가진 하나의 물리 스위치

이렇게 2개의 가상 LAN을 하나의 물리 스위치에 구성한 것이다.

스위치 관리 소프트웨어를 사용해서 스위치 포트를 그룹화한다.

그러면 이렇게 동작하는 것처럼 된다.

스위치가 2개 있는 것처럼.

 

 

트래픽 격리 : 하나의 스위치에 있지만 2개로 저렇게 나누는 것이 가능하다.

ex) 1~8 포트로 온 것은 단지 1~8포트로 만 간다.

VLAN based 방법도 있음. MAC 주소로 그룹핑을 하는 것이다.

동적 멤버십 : EE에서 CS로 포트만 바꾸면 된다. 포트가 동적으로 VLAN에 할당을 할 수 있다는 것이다.

VLAN 사이에서의 포워딩 : 마치 다른 스위치처럼 라우터가 길을 찾아준다.

(실제로 공급 업체는 결합된 스위치와 라 우터를 판매한다.)

 

[여러 개의 스위치에 VLAN]

이럴 때는 어떻게 VLAN을 사용하는가?

<VLAN 트렁킹>

VLAN 트렁킹 방법에서는 스위치마다 하나의 특수 포트가 2개의 VLAN 스위치를 연결하는 트렁크 포트(trunk port)로 구성되어 있다.

위 그림에서 16번 포트와 1번 포트는 아무에게도 할당하지 않았다. 이걸 트렁크 포트라고 부른다.

트렁크 포트: 서로 떨어져 있는 여러 개의 스위치들을 연결해서 프레임들을 전달.

이걸 연결함으로써 마치 1개의 스위치처럼 동작하는 것이다.

802.1 프레임 포맷만으로는 트렁크 포트를 지원할 수 없다. 그래서 VLAN ID가 필요하고 802.1Q라는 트렁크 포트를 지원하는 새로운 프로토콜이 필요하다.

트렁크 포트는 모든 VLAN에 속하며, VLAN에서 전송한 프레임들을 트렁크 링크를 통해 다른 스위치로 전달해 준다.

 

스위치가 어떻게 트렁크 포트로 온 프레임이 어떤 VLAN에 속하는지 알 수 있는가?

이 문제를 802.1로는 해결할 수 없음

그래서 802.1Q를 새롭게 정의함.

 

[802.1Q VLAN 프레임 포맷]

프리엠블 8바이트

목적지 MAC 주소 6바이트

출발지 MAC 주소 6바이트

타입: 네트워크 링크 계층이 어떤 타입이냐, IPIPX냐 이런거

CRC : 에러체크

 

<802.1Q>

출발지주소와 타입 사이에 2바이트, 2바이트 총 4바이트가 추가됨.

- 앞의 2바이트 (태그 프로토콜 식별자):

16진수 81-00으로 세팅된다.

뒤의 2바이트 (태그 제어 정보) :

16비트 중에

처음 12비트가 VLAN ID 필드이고

뒤의 3비트가 IP TOP (우선순위) 필드이다.

 

 

프레임이 속한 VLAN을 식별해주는 4바이트 VLAN 태그(tag)가 헤더에 추가된다.

 

VLAN 태그는 VLAN 트렁크의 송신 측에 있는 스위치에 의해서 프레임에 추가되며, 트렁크의 수신 측에 있는 스위치에 의해서 파싱되고 제거된다.

 

 

VLAN 태그는 2바이트의 태그 프로토콜 식별자(TPID) 필드와 2바이트의 태그 제어 정보 필드와 3비트의 우선순위 필드로 구성되어 있다.

 

CRC는 다시 계산된다.

 

 

 

 

 

728x90
반응형
LIST

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

네트워크 - 7  (1) 2021.01.09
네트워크 - 5  (0) 2021.01.09
네트워크 - 4  (1) 2021.01.09
네트워크 - 3  (0) 2021.01.09
네트워크 - 2  (0) 2021.01.09