허브

  • 허브 = mutiport + repeater
  • 10Mbps, 100Mbps 허브가 있음(최근에는 기가비트도 있음)
  • 동작방식
    • 5개의 단말이 한 허브에 연결되어있는 상태를 가정하고
    • 1번 단말이 2번 단말에 데이터를 보내고 싶은 경우
    • 모든 단말에 데이터를 허브가 보내고
    • 이를 단말은 수신 MAC을 보고 필터링을 한다
  • 이더넷 허브에서는 각기다른 단말이 데이터를 보내고 있을때 콜리전이 발생할 수 있습니다.
  • 따라서 같은 허브에 연결된 단말을 같은 콜리전 도메인(Collision domain)이라고 합니다.
  • Dummy hub, Intelligent hub, Semi-Intelligent hub
    • Auto Partition: 터미널에 문제가 발생해서 회선을 이상하게 계속 사용한다면 문제의 터미널의 포트를 자동으로 찾아내서 Isolation 시키는 기능이 있음
      • 더미 허브에도 종종 있음
    • NMS 기능이 있는가 없는가가 가장 큰 관건으로 작용함
      • 원격에서 허브의 동작을 감시 조정할 수 있고 데이터를 패킷을 제어할 수 있는 기능이 포함되어 있습니다.
    • Semi-intelligent hub는 dummy hub와 같이 동작할때는 dummy hub같이 intelligent hub와 같이 동작할 때는 intelligent 허브같이 동작할 수 있음.
  • Stackable vs Standalone
    • 허브를 쌓아서 여러개의 허브를 한대의 장비처럼
    • standalone을 서로 연결한것 보다 좀더 빠르게 동작할 수 있음.(Backplane이라는 대용량 데이터 전송케이블이 있음)
    • 한개의 장비가 고장나도 전체 인터넷에 영향을 주지 않음(Standalone 장비는 영향이 있음.)

스위치

  • 콜리전 도메인은 회선의 성능을 저하시킴으로 switch와 bridge 같은 콜리전 도메인을 분할 해줄 수 있는 장비가 나옴
  • 각 노드가 노드별로 연결되어 있어 충돌이 발생하지 않음
  • 허브에 비해 비싸지만 상황에 따라 장점이 될수도 있고 허브와 비슷한 성능을 낼 수도 있음
    • 노드가 쌍방향 통신이 많은 경우에는 스위치의 사용량이 많아지지만, 나머지가 전부 client고 server가 하나만 있다면 처리량은 비슷해짐

브릿지

  • 콜리전 도메인을 n등분하는 장비
  • Lerning: 패킷이 전송될때 출발지의 MAC 어드레스를 MAC 어드레스 테이블에 저장해두어서 어느 세그먼트에(분할된 콜리전 도메인) 어떤 장비가 있는지 저장해둠
  • Flooding: MAC 어드레스 테이블에 없는 경우 모든 세그먼트로(분할된 콜리전 도메인) 프레임을 전송함, 브로드 캐스팅 패킷도 flooding 시킴
  • Fowarding: MAC 어드레스 테이블에서 세그먼트를 찾을 수 있으면 해당 세그먼트로만 프레임을 전송함
  • Filtering: 한 세그먼트에서 같은 세그먼트로 프레임이 이동될 때에는 다른 세그먼트로 접근이 안되게 막음
  • Aging: MAC 어드레스테이블에서 타이머를 두고 이를 기록이 오래되면 invalidate 시킴, 만약 이 타이머 시간 내에 한번 더 기록된다면 타이머를 연장함(refresh 라고 부름).

브릿지와 스위치의 차이점

  1. 가격과 인지도가 다름
  2. 스위치는 하드웨어적으로 처리하고 브릿지는 소프트웨어 적으로 처리합니다. 따라서 속도가 스위치가 빠름(스위치는 ASIC을 사용함.)
  3. 포트수가 switch가 더 많음
  4. 스위치는 서로 다른 속도를 연결해 줄 수 있는 기능이 있음(10메가 포트 100메가 포트 따로 있음)
  5. 스위치는 cut-through, store-and-forward방식을 사용하는데 비해서 브리지는 오로즈 store-and-forward방식만을 지원함
    • store-and-forward: 모든 프레임을 다 받아드린뒤 스위치나 브릿지가 이를 분석해 오류가 없는지 목적지는 어디인지 파악해서 처리함, 보내기전에 에러를 검출하여 에러 복구능력이 뛰어남
    • cut-through: 스위치에 들어오는 프레임의 목적지 주소만 본 다음(처음 48비트) 바로 전송하여 훨씬 빠른 처리 속도를 제공함
    • fragment-free: 모든 프레임을 다 확인하지 않고 처음 512비트만을 확인해서 오류검출까지 하고 전송함
    • 하드웨어 속도가 빨라져서 cut-throuch에 비해 store-and-forward가 그렇게 큰 차이가 나지는 않음

Looping 현상

  • 네트워크 프레임이 회선상에서 무한정으로 뱅뱅 도는 현상
  • 인터넷 환경을 stall 시킴
  • fault tolerant/load balancing을 위해서 스위치/브릿지간 연결을 다수의 회선으로 해두는 경우에 발생함.
  • 발생 순서
    • 1번 스위치에 A 터미널이 연결되어 있고 2번 스위치에 B터미널이 연결되어 있고 1번 스위치와 2번 스위치가 2개 이상 회선으로 연결되어 있을때
    • A가 브로드캐스팅을 하면 1번 스위치에 연결되고 브로드 캐스팅 신호임으로 신호가 온 포트인 A를 제외한 모든 포트로 신호가 옴
    • 위의 신호를 2번이 받고 같은 브로드캐스팅임으로 1번 스위치에게서 왔던 포트를 제외하고 모든 포트로 신호를 전송함
    • 1번 스위치에 아까 보낸 포트가 아닌 다른 포트로 2번 스위치의 브로드 캐스팅 신호를 받고 이를 다시 브로드캐스팅함
    • 2번 스위치에 아까 보낸 포트가 아닌 다른 포트로 1번 스위치의 브로드 캐스팅 신호를 받고 이를 다시 브로드캐스팅함
    • 무한루프
  • 이를 해결하기 위해 Spanning Tree algorithm을 도입함
    • 스위치/브릿지에서 발생할 수 있는 루핑방지를 위해 2개 이상의 경로가 확인되면 한 경로를 막아두고, 그 경로가 만약 문제가 생기면 막아둔 경로를 풀어서 전송함.
    • 복구에 1분이상 걸림 Uplink Fast 기술을지원하는 장비라면 2-3초 안에 복구가 가능함
  • 시스코에는 ether-cahnnel이란걸 지원해서 여러개의 링크를 하나의 링크처럼 인식해주는 기술도 있음

라우팅과 스위칭

  • 사실상 스위칭으로 모든 인터넷을 구현해도 상관은 없음
  • 스위치로만 구성하면 문제는 ARP(브로드캐스팅)가 작동되면 모든 네트워크 단말에 브로드캐스팅이 됨 -> 회선의 사용량이 너무 높음
    • 물론 이런 문제를 해결함 L3 switch도 있음
  • 브로드캐스팅 영역을 나눌때는 프로토콜이나 애플리케이션에 따라서 나누는데 보통 권고 사항은
    • IP일 경우에는 500노드
    • IPX인 경우에는 300노드
    • AppleTalk인 경우에는 200노드가 적당하다고함
    • 하지만 이의 절반정도가 적당함
  • 라우터는 패킷필터링 기능, QoS 기능, 경로탐색을 통한 로드밸런싱등을 지원합니다
    • 스위치도 로드밸런싱은 되지만 극히 제한적임