스위치 근거리 네트워크
스위치
- 링크 계층에서 동작한다.
- 링크 계층 프레임을 교환하고, 네트워크 계층 주소를 인식하지 않음
- 링크 계층 프레임을 전달하기 위해 IP 주소가 아닌 링크 계층 주소를 사용한다.
링크 계층 주소체계와 ARP
호스트와 라우터
- 링크 계층 주소를 갖는다.
- 네트워크 계층 주소도 갖는다.
MAC 주소
링크 계층 주소를 가진 것은 호스트나 라우터가 아닌 호스트나 라우터의 어댑터(네트워크 인터페이스)다.
링크 계층 스위치는 호스트나 라우터를 연결해주는 인터페이스에 링크 계층 주소를 할당받지 않음
- 링크 계층 스위치는 호스트와 라우터간에 데이터그램을 전달하는 일을 할 뿐이다.
링크 계층 주소는 MAC 주소(MAC address)라고 알려져 있다.
- 랜 주소(LAN address), 물리 주소(physical address) 라고도 불림
대부분의 랜(이더넷과 802.11 무선랜 등)의 경우 MAC 주소의 길이는 6바이트이다.(2^48개의 주소 사용 가능)
- 16진수로 표기법으로 표시되며 2개의 16진수로 표시된다.
- MAC 주소는 어떤 어댑터와도 동일한 주소를 갖지 않음(유일하다)
MAC 주소와 IP 주소 비교
- MAC 주소는 평면 구조를 가지며 어댑터의 위치에 따라 변경되지 않음
- IP 주소는 계층 구조(네트워크 부분과 호스트 부분)를 가지고 있으며 호스트가 이동하면 IP 주소도 변경된다.
어댑터가 프레임을 목적지 어댑터로 전송할 떄, 송신 어댑터는 프레임에 목적지 어댑터의 MAC 주소를 넣고 그 프레임을 전송한다.
- 스위치는 프레임을 자신의 모든 인터페이스로 브로드캐스트 할 때가 있음
- 어댑터는 자신을 목적지로 하지 않는 프레임을 수신할 수도 있다.
- 프레임을 수신한 어댑터가 자신의 주소를 목적으로 한 프레임을 수신하면(목적지 MAC 주소가 자신의 MAC 주소와 일치) 프레임에서 데이터 그램을 추출해서 프로토콜 스택 위쪽으로 전달한다.
- 프레임이 자신을 목적지로 않으면 프레임을 폐기한다.
랜상의 다른 모든 어댑터가 프레임을 수신하기 원한다면 송신 어댑터는 프레임의 목적지 주소 필드에 MAC 브로드캐스트 주소(broadcast address)를 넣는다.
- 48개의 1로된 비트열이다.(FF-FF-FF-FF-FF-FF)
ARP
ARP(Address Resolution Protocol)
- 네트워크 계층 주소를 링크 계층 주소로 변환해준다.(ex, IP -> MAC)
222.222.222.220 IP 주소를 가진 호스트가 222.222.222.222 IP 주소를 가진 호스트에게 IP 데이터그램을 전송하려면 IP 주소뿐만 아니라 MAC 주소도 필요하다.
- ARP는 IP 주소를 MAC 주소로 변환해준다.
- ARP는 동일한 서브넷상에 있는 호스트나 라우터 인터페이스의 IP 주소 변환을 해결해준다.
ARP의 동작 방식
- 각 호스트와 라우터는 자신의 메모리에 ARP테이블(ARP table)을 갖고 있다.
- ARP 테이블에는 TTL(time-to-live) 값을 포함한다.(언제 매핑이 삭제되는지를 나타낸다)
- 테이블은 서브넷상의 모든 호스트와 라우터의 엔트리를 가지고 있지 않아도 된다.
- 각 테이블마다 가지고 있는 엔트리 값이 다름
222.222.222.220이 같은 서브넷의 다른 IP 주소로 가는 데이터그램을 전송한다고 가정
- ARP 테이블에 엔트리가 있는경우
- 테이블에서 MAC 주소 값을 얻으면 된다.
- ARP 테이블에 엔트리가 없는 경우
- ARP 프로토콜을 사용한다.
- 송신 노드는 ARP 패킷을 구성한다.
- ARP 질의 패킷을 어댑터에 전달하면 어댑터는 MAC 브로드캐스트 주소(FF-FF-FF-FF-FF-FF)로 패킷을 전송하도록 지시한다.
- ARP 질의 패킷을 포함하는 프레임을 수신한 각 어댑터는 ARP 패킷에 들어있는 목적지 IP 주소가 자신의 IP 주소와 일치하는지 확인한다.
- 일치하는 노드는 응답 ARP 패킷을 질의한 노드로 돌려보냄
- 송신노드는 자신의 ARP 테이블을 갱신하고 자신의 IP 데이터그램을 링크 계층 프레임을 캡슐화해서 전송한다.
- 이때 프레임의 목적지 MAC 주소는 ARP 질의에 대한 응답을 보낸 호스트나 라우터의 MAC 주소가 된다.
ARP 프로토콜의 특징
- 질의 ARP 메시지는 브로드캐스트 프레임으로 전송되고, 응답 ARP 메시지는 표준 프레임으로 전송된다.
- 노드의 ARP 테이블은 자동으로 구축된다.
ARP는 링크 계층과 네트워크 계층의 경계에 있는 프로토콜이다.
서브넷에 없는 노드로의 데이터그램 전송
호스트 A에서 라우터 R을 통해 호스트 B에 데이터그램을 전송하는 시나리오
- A는 출발지 주소를 A의 IP 주소, 목적지 주소를 B의 IP 주소로하는 데이터그램을 만든다.
- A는 A에서 B로 향하는 IP 데이터그램을 포함하는 링크 계층 프레임을 만든다.
- R의 111.111.111.110에 대한 어댑터 주소(MAC 주소)를 프레임의 목적지로 설정한다.
- 프레임은 A에서 R로 전달된다.
- R은 프레임을 전달받고 네트워크 계층으로 전달한다.
- R은 라우터의 포워딩 테이블을 이용해서 데이터그램이 전달될 인터페이스를 결정한다.
- R은 링크 계층 프레임을 만든다.
- A에서 B로 향하는 IP 데이터그램, B의 MAC 주소를 목적지로 하는 프레임을 포함한다.
- 링크 계층 프레임을 전달한다.
- B는 프레임을 받고 IP데이터그램을 추출한다.
- B는 데이터그램을 네트워크 계층(IP)으로 전달한다.
이더넷
이더넷이 널리 사용된 이유
- 처음으로 널리 사용된 고속랜이다.
- 토큰 링, FDDI, ATM보다 덜 복잡하고 저렴하다.
- 다른 랜 기술이 높은 데이터율을 가지고 나오면, 이더넷은 그와 같거나 그 이상의 데이터율로 동작하는 버전을 만들어서 경쟁했다.
이더넷의 토폴로지 구조 변화
- 버스 토폴로지
- 1980년대와 1990년대 중반까지 사용
- 브로드캐스트 랜으로, 전송되는 모든 프레임은 버스에 연결된 모든 어댑터를 거치며 이들에 의해 처리됨
- 허브 기반의 스타 토폴로지
- 1990년대 후반에 사용
- 허브는 프레임이 아닌 비트(0,1)을 사용한다.
- 허브는 비트가 인터페이스에 도착하면 비트를 재생하고 에너지 세기를 증가시킨 후 다른 모든 인터페이스로 전송한다.
- 브로드캐스트 랜이라고 할 수 있음
- 허브가 한 인터페이스로 비트를 수신하면 그 비트의 복사본을 다른 모든 인터페이스로 전송한다.
- 동시에 다른 두 인터페이스로부터 프레임을 수신하면 충돌이 발생한다.
- 스위치
- 오늘날 사용된다.
- '충돌 없는' 장치이다.
- 저장-후-전달 패킷 스위치이다.
이더넷 프레임 구조
- 데이터 필드(46 ~ 1,500 바이트)
- IP 데이터 그램을 운반한다.
- 최대 전송 단위(maximum transmission unit, MTU)는 1,500 바이트다.
- IP 데이터그램이 1,500 바이트를 초과하면 호스트는 데이터그램을 단편화 해야 한다.
- 최소 크기는 46바이트이다.
- IP 데이터그램이 46바이트보다 작으면 데이터 필드를 채워서 46바이트로 만들어야 한다.
- 목적지 주소(6바이트)
- 목적지 어댑터의 MAC 주소
- ex)BB-BB-BB-BB-BB-BB
- 목적지 어댑터의 MAC 주소
- 출발지 주소(6바이트)
- 춟발지 어댑터의 MAC 주소
- 타입 필드(2바이트)
- 상위 계층의 프로토콜을 나타낸다.
- 이더넷으로 하여금 네트워크 계층 프로토콜을 다중화하도록 허용한다.
- 목적지 어댑터에 이더넷 프레임이 도착하면 어댑터는 어떤 네트워크 계층 프로토콜로 데이터 필드의 내용을 전달(역다중화) 해야 할지 구분할 필요가 있음
- 대부분 IP이지만, Novell IPX나 AppleTalk와 같은 프로토콜도 존재하며, 이들도 자신만의 표준 타입 번호를 가지고 있다.
- 순환 중복 검사(cyclic redundancy check, CRC, 4바이트)
- 수신 어댑터가 프레임에 오류가 생겼는지 검출할 수 있게 한다.
- 프리앰블(8바이트)
- 첫 7바이트는 10101010 값을 갖는다.
- 마지막 바이트는 10101011이다.
- 수신자의 클록을 송신자의 클록과 동기화하는 역할을 한다.
이더넷은 비신뢰적이고 비연결형 서비스를 제공함
- 비연결형 서비스(connectionless service)
- 핸드셰이킹을 하지 않고 이더넷 프레임에 데이터그램을 캡슐화해서 랜으로 전송한다.
- 비신뢰적(unreliable)
- CRC 검사를 통과해도 응답을 보내지 않음
- CRC 검사에서 실패해도 부정확인 응답을 보내지 않음
- 단순히 프레임을 폐기할 뿐이다.
이더넷 기술
이더넷 기술은 수년에 걸쳐 IEEE 802.3 CSMA/CD(이더넷) 워킹그룹에 의해 표준화되었다.
이더넷의 약어에는 특별한 순서가 있다.
- 다양한 물리 매체(광섬유, 케이블) 및 표준 속도에 따라 약어가 정해짐
링크 계층 스위치
스위치의 역할
- 들어오는 링크 계층 프레임을 수신해서 출력 링크로 전달한다.
스위치는 서브넷의 호스트와 라우터들에게 투명(transparent)하다.
- 호스트와 라우터는 프레임을 스위치가 아닌 다른 호스트와 라우터를 목적지로 하여 랜상으로 보내며, 중간에 스위치가 프레임을 받아서 다른 노드에게 전달하는 것을 알지 못한다.
포워딩과 필터링
- 필터링(filtering)
- 프레임을 인터페이스로 전달할지 또는 폐기(drop)할지 결정하는 기능
- 포워딩(forwarding)
- 프레임이 전송될 인터페이스를 결정하고 프레임을 해당 인터페이스로 보내는 기능
스위치의 필터링과 포워딩은 스위치 테이블(switch table)을 이용한다.
- 일부 노드(호스트, 라우터)에 대한 엔트리가 포함되어 있음
- 엔트리에 포함되는 정보
- MAC 주소
- MAC 주소로 가게하는 스위치 인터페이스
- 엔트리가 만들어진 시점
스위치의 필터링과 포워딩 동작의 예시
- 목적지 주소 DD-DD-DD-DD-DD-DD를 가진 프레임이 스위치의 인터페이스 x에 도착했다고 가정
- 테이블에 목적지 주소에 대한 엔트리가 없으면 프레임의 복사본을 인터페이스 x를 제외한 모든 인터페이스의 앞에 있는 출력 버퍼로 전송한다.
- 테이블에 목적지 주소가 인터페이스 x에 연관된 엔트리가 있다면
- 다른 인터페이스로 전달할 필요가 없으므로 프레임을 제거한다.
- 목적지 주소가 y(x가 아닌)와 연관된 엔트리가 있다면
- 프레임을 인터페이스 y앞에 있는 출력 버퍼에 넣음으로써 포워딩 기능을 수행
자가학습
스위치는 자신의 테이블을 자치적으로 구축한다. 스위치는 자가학습(self-learning)을 한다.
자가학습이 이루어지는 과정
- 스위치 테이블은 초기에 비어있다.
- 인터페이스로 수신한 프레임에 대해 스위치는 다음과 같은 정보를 저장한다.
- 프레임의 출발지 주소 필드에 있는 MAC 주소
- 프레임이 도착한 인터페이스
- 현재 시간
- 일정 시간이 지난 후에도 스위치가 해당 주소를 출발지 주소로 한느 프레임을 수신하지 못하면 테이블은 이 주소를 삭제한다.
스위치는 네트워크 관리자나 사용자의 개입을 요구하지 않으므로 플러그 앤 플레이 장치(plug-and-play device)다. 스위치를 설치하려는 네트워크 관리자는 랜 세그먼트를 스위치 인터페이스에 연결하는 것 이외의 일은 하지 않는다.
링크 계층 스위치의 특성
- 충돌 제거
- 스위치는 프레임을 버퍼링하여 어느 시점이든 세그먼트에 하나 이상의 프레임을 전송하지 않음
- 브로드캐스트 링크를 사용하는 랜보다 성능이 좋다.
- 이질적인 링크들
- 스위치는 링크들을 별개로 분리하기 때문에 랜의 각 링크는 상이한 속도로 동작할 수 있으며 상이한 매체를 사용할 수 있다.
- 관리
- 향상된 보안을 제공하며 네트워크 관리를 쉽게 할 수 있게 해준다.
- 오동작하는 어댑터의 연결을 의도적으로 끊을 수 있음
- 케이블이 단절된 경우 이 케이블을 이용해서 스위치에 연결된 호스트의 연결만 끊어진다.
스위치 대 라우터
스위치와 라우터는 모두 저장 후 전달 방식을 사용한다.
- 스위치는 링크 계층의 장치이다.(MAC 주소 사용)
- 라우터는 네트워크 계층의 장치이다.
라우터는 3계층 패킷 스위치인 반면에, 스위치는 2계층 패킷 스위치이다.
스위치와 라우터 모두 포워딩 테이블을 갖는다.
- 스위치는 자가 학습을 통해 테이블을 구성한다. MAC 주소를 사용한다.
- 라우터는 라우팅 알고리즘을 통해 테이블을 구성한다. IP 주소를 사용한다.
스위치와 라우터의 장단점
스위치
- 장점
- 플러그앤 플레이 장치이다. 네트워크 관리자는 크게 신경 쓸 필요가 없다.
- 높은 패킷 필터링 및 전달률을 가진다.
- 단점
- 실제 사용되는 토폴로지는 스패닝 트리로 제한된다.
- 브로드캐스트 프레임의 순환이 발생하기 때문에 이를 방지해야 함
- 하나의 패킷이 브로드캐스팅 되고 이를 다시 하나 이상의 수신자에 의해 또다시 브로드캐스팅 되는 폭주 상태(브로드캐스트 폭풍)
- 브로드캐스트 프레임의 순환이 발생하기 때문에 이를 방지해야 함
- 대규모 스위치 네트워크에서는 호스트와 라우터가 커다란 ARP 테이블을 갖게 되며, 상당한 양의 ARP 트래픽이 생성되고 처리된다.
- 브로드캐스트 트래픽의 폭주에 대비한 방안을 제공하지 않음
- 실제 사용되는 토폴로지는 스패닝 트리로 제한된다.
라우터
- 장점
- 계층 구조 이므로 네트워크에 중복된 경로가 있을 때조차도 패킷은 라우터를 따라 순환하지 않는다.
- 스패닝 트리와 같은 제한이 없으므로 인터넷 토폴로지가 자유롭게 구축될 수 있게 한다.
- 브로드캐스트 폭풍에 대비한 방화벽 보호 기능이 존재한다.
- 단점
- 플러그 앤 플레이가 아니다.
- 3계층 필드까지 처리해야 하므로 스위치보다 패킷당 처리 시간이 더 크다.
'네트워크' 카테고리의 다른 글
링크 계층 소개 (2) | 2024.04.01 |
---|---|
인터넷에서의 AS 내부 라우팅: OSPF (0) | 2024.03.12 |
네트워크 계층 : 제어 평면 (1) | 2024.03.07 |
인터넷 프로토콜(IP) : IPv4, 주소체계, IPv6 (0) | 2024.03.04 |
네트워크 계층 개요 (0) | 2024.02.23 |