ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 허브와 스위치의 작동방식 차이를 OSI 7 Layer 랑 같이 알아보자.
    CS💻/Network🛰️ 2023. 12. 17. 12:54

    스위치는 기기들 사이에서 데이터의 전달을 중개해주는 기기이다.

    스위치

     
    서로 연결하고자하는 기기들에 아래와 같이 생긴 이더넷 케이블을 이용해 한쪽은 기기, 한쪽은 스위치의 구멍(포트)에 꽂으면 이제 스위치를 통해 연결된 기기들간의 통신이 가능해진다.

    스위치가 있기 전에는 기기간의 연결을 위해서는 허브라는 것을 사용했다.
    허브는 스위치와 겉모습은 아주 비슷하게 생겼지만 작동방식은 아주 멍청한 녀석이다.

    지금부터 허브와 스위치가 각각 어떻게 기기들 사이에서 데이터를 전달하는지 작동방식의 차이에 대해서 알아보자.
    허브와 스위치의 작동과정을 보기에 앞서 커맨드 프롬프트에 ping 명령어에 대해서 알아보자.
    ping 은 현재 네트워크에 통신하고자 하는 기기가 연결되어 있는지 확인하는 명령어로
    ping + ip address(통신하고자하는 기기의 ip 주소)를 명령 프롬프트에 입력해서
    “누구누구야 너 있니” 라고 요청 메시지를 네트워크에 띄운다.
    만약에 ip 주소와 일치하는 기기가 해당 메시지를 받으면 “나 지금 있어”하고 다시 응답 메시지를 보낸다.

     

    허브의 작동 방식

    짱구와 친구들의 컴퓨터는 현재 ‘허브’를 통해 연결되어 있다.

    짱구가 철수 ip 주소로 ping을 쏘면 ping 10.1.2.3

    1. 짱구가 메시지를 네트워크에 띄운다.
    2. 허브가 짱구 메시지를 받는다.
    3. 허브는 메시지를 보낸 기기외에 자신과 연결된 나머지 기기들에게 해당 메시지를 보낸다.
    4. 메시지를 받은 기기들은 자신의 ip 주소가 맞는지 확인한다.
    5. 받은 메시지의 주소가 자신 기기의 주소와 일치하는 것을 본 철수는 응답 메시지를 보낸다.
    6. 허브가 철수 메시지를 받는다.
    7. 허브는 메시지를 보낸 기기외에 자신과 연결된 나머지 기기들에게 해당 메시지를 보낸다.
    8. 메시지를 받은 기기들은 자신의 ip 주소가 맞는지 확인한다. 짱구는 철수에게 응답을 받았다.

    짱구와 철수는 네트워크 상에서 서로의 존재 여부를 확인했다.
    하지만 허브의 작동방식을 보면 가운데서 주소의 확인도 하지 않고 자기와 연결된 모든 기기에게 메시지를 뿌린다. 일반적인 상황에서는 허브와 연결된 기기들은 자신의 메시지를 받고 자신에게 온것이 아니면 무시하겠지만 만약에 악의를 품은 사용자가 끼어 있다면 자신에게 온게 아닌 메시지들도 받아서 악용할 가능성이 있다.

    허브는 ‘뇌’가 없다. 단지 전기적 신호를 받으면 이를 전달할 뿐이다.

     

    스위치의 작동 방식

    짱구네와 다르게 케로로와 친구들의 컴퓨터는 스위치를 통해 연결되어 있다.

    케로로가 타마마 ip 주소로 ping을 쏘면 ping 10.1.1.5

    1. 케로로가 메시지를 네트워크에 띄운다.
    2. 스위치가 케로로 메시지를 받는다.
    3. 스위치는 메시지에 Ip 주소를 보고 해당 ip 주소로 메시지를 보낸다.
    4. 타마마는 메시지를 확인한다.
    5. 타마마는 자신이 있다는 것을 케로로에게 알리기 위해 응답 메시지를 보낸다.
    6. 스위치가 타마마 메시지를 받는다.
    7. 스위치는 메시지에 Ip 주소를 보고 해당 ip 주소로 메시지를 보낸다.
    8. 케로로는 타마마에게 응답을 받았다.

    케로로와 타마마는 ping을 통해 네트워크 상에서의 서로의 존재를 확인했다.
    이전에 허브와 다르게 스위치는 중간에서 메시지의 ip 주소에 맞는 기기를 식별해서 해당 기기에만 메시지를 전달한다. 이로써 허브를 이용했을 때 메시지가 의도치 않은 사람들에게 노출될 가능성을 제거할 수 있다.

     

    스위치는 어떻게 이게 가능할까?

    포트란?

    기기를 이데넷 케이블을 이용해 스위치와 연결할 때 케이블을 꽂는 곳을 포트라고 한다.

    MAC 주소란?

    데이터 통신이 가능한 전자기기는 네트워크 상에서 기기의 식별을 가능하게 해주는 고유한 주소를 가지고 있다.
    일반적으로 해당 주소를 알면 네트워크 상에서 기기간의 구분이 가능하다.

    스위치는 Mac Address Table이라는 것을 내부에 가지고 있어 자신과 연결된 기기의 MAC주소를 각 포트번호와 매핑해둔다. 따라서 어떤 포트에 어떤 기기가 연결되어 있는지 식별이 가능하다.
    따라서 스위치는 허브와 다르게 MAC 주소를 통해 메시지의 도착지점을 알고 있기 때문에 해당 지점에 대해서만 메시지를 전달할 수 있다.


    OSI 7 LAYER

    허브와 스위치의 차이점을 좀더 명확히 알기 위해서 OSI 7 계층에 대해서 살짝만 살펴보자.

    • 레이어 1 (물리 계층) : 실제 기기간의 물리적 연결을 정의하는 계층이다. 이더넷 케이블 같은 물리적인 장치를 통해 전기적 신호의 송수신이 이루어진다. 해당 계층에서는 데이터를 전기적 신호로 변환하여 전달하는 역할만 한다.
    • 레이어 2 (데이터 링크 계층) : 네트워크 상에 있는 기기간의 데이터 전송 및 물리주소(MAC 주소)를 결정하는 계층이다. 물리 계층에 들어온 전기적 신호를 데이터 형태로 처리한다.
    • 레이어 3 (네트워크 계층) : 데이터 통신 과정 중에서 여러개의 노드를 거칠 때 경로를 찾아주는 역할을 하는 계층이다.

     
    이더넷 케이블이나 허브는 물리 계층에 속하는 장치로써 단지 데이터를 전기적 신호로 전달하는 역할만 하지 데이터의 내용이나 출발, 도착지에는 관련해서는 모른다. 그래서 허브를 통해서 기기간의 통신을 하면 허브는 자기가 받은 전기적 신호를 그대로 자신과 연결된 다른 기기들에게 전달하는 것이다.
    위와 다르게 스위치는 데이터 링크 계층에 속하는 장치로써 MAC 주소의 식별이 가능하다. 즉 자신과 연결된 기기들의 MAC 주소를 이용하여 메시지의 출발지와 도착지를 알 수 있다. 그래서 스위치를 통해서 기기간의 통신을 하면 스위치는 메시지에 적혀있는 MAC주소를 보고 알맞는 목적지에 전달이 가능하다.
    OSI 7 계층이 있다는 것을 알게 되었으니 메시지 전송과정에서 7계층이 어떻게 나타나는지 살펴보자.

    • 다시 케로로가 타마마에 ping을 쐈다. ping 10.1.1.5
    • 케로로의 컴퓨터로부터 메시지가 생성되서 스위치로 전달된다.
    • 스위치는 Layer 2 ( 데이터 링크 계층)에 속하는 기기다. 따라서 Layer 2까지 알 수 있다.
    • Layer 2에는 케로로 MAC 주소 >> 타마마 MAC 주소가 표시되어 있다.

     
     

    • 스위치에서 케로로가 보낸 메시지를 받았다.
    • 스위치에서 메시지를 열어보면 In - Layer 1에는 메시지가 들어온 포트번호 Out - Layer2에는 메시지가 나간 포트번호가 나타나있다.
    • Layer 2에서는 출발지, 도착지 MAC 주소가 나타나 있다.

     
     

    • 타마마가 최종적으로 메시지를 받았다.
    • 타마마 컴퓨터에서 메시지를 열어보면 layer 3계층 까지 확인할 수 있다.
    • 명령 프롬프트 창에서 IP 주소를 이용해 ping을 쏘는 것은 3계층을 이용한 것이다.
    • In Layers : 케로로 -> 타마마 메시지
    • Out Layers : 타마마 -> 케로로 메시지 (케로로 ping에 대한 응답)

     

    댓글

Designed by Tistory.