[kocw 이미정]21. Wireless and Mobile Networks
- wireless 와 mobile 네트워크는 비슷하지만 차이가 있다.
- wireless 는 링크가 무선인 네트워크고 moblity는 사용자가 움직이는 것을 의미한다.
- wireless는 wired link와 비교되는 여러가지 특성이 있다.
- 먼저 path loss로 시그널의 세기가 점진적으로 감소해나간다.
- 또 시그널 소스들 간의 간섭이 심하다
- 시그널이 진행 중에 어떤 오브젝트에 부딪히면 multipath로 시그널들이 propagate 되어, 작은 시간차를 두고 목적지에 도착해 시그널의 명확도가 떨어질 수 있다.
- wireless 는 본질적으로 shared link이다. 서로 지역에서 avaliable 한 무선링크를 공유하는 것이다.
- 동시에 여러 사용자가 접근하면서 생기는 문제가 collision인데, 이를 어떻게 해결하는지 살펴보겠다.
- wired link에서도 한 링크에 여러 사용자가 접근하면 collision이 발생하므로 순차적으로 데이터를 내보내야 한다.
- shared wired link에서는 데이터를 실으면 시그널이 링크 전체에 퍼지고 다시 나에게 오는 round trip 시간동안 데이터를 보내지 않고 데이터를 보내도 문제가 없는지 listen 한다. 이 과정에서 다른 링크에서 데이터가 나오지 않으면 본인이 데이터를 보낸다. 이를 CSMA라 한다.
- wireless의 경우 역시 한 링크에 여러 사용자가 접근할 수 있는 shared link이다.
- 가령 A B C 노드가 있을 떄 ac는 중간 장애물 때문에 직접적으로 시그널을 주고 받을 수 없다.
- 중간에 있는 b의 간섭 때문에 path loss로 시그널 세기가 감소되어 서로 시그널 교환이 되지 않는다.
- wired link 가 shared link인 경우 충돌이 없기 위해 CSMA를 하고, wireless의 경우 collision detection이 불가능하므로 CSMA를 하고 충돌이 일어나 시그널을 받았는지 못 받았는지 알기 위해 ack을 주고받는다. csma와 더불어 원천적 충돌 방지를 위해 avoid collisions를 한다.
- avoid collisions는 프레임을 내보내기 전에 채널을 예약하는 것이다. 무엇을 내보내고자 하는 센더는 RTS라는 짧은 컨트롤 메세지 패킷을 만들어 내보낸다. 이는 CSMA 방식으로 내보낸다.
- RTS는 매우 작으므로 손실돼도 문제가 아니다. 와이파이 네트워크는 ap가 영역의 유저 호스트를 컨트롤 하는데 유저 호스트가 메세지를 보낼때 항상 ap를 거친다. 따라서 rts가 ap로 가는 것이다. rts가 목적지에 도착하면 ack을 보낸다. ack을 CTS라는 짧은 프레임으로 보내는데 이는 얼마동안 누가 이 채널을 예약했는지 말해주는 것이다. 이 CTS를 네트워크 전체에 브로드캐스팅하는데, 이를 통해 센더는 메세지를 보낼 준비가 있음을 알고 다른 호스트들은 자신의 메세지 전송을 연기해야 함을 알 수 있다.
- 위 사진은 collision avoidance를 설명한 그림이다.
- 셀룰러(전화) CDMA 방식을 사용한다. 멀티플 유저의 동시 전송을 허용한다. 그런데 각 시그널 소스가 유니크한 chipping sequence를 이용해 내보내는 데이터를 encoding 한다. 리시버는 chipping sequence를 이용해 decoding 한다. 이러면 여러 사용자가 동시에 내보내도 섞이지가 않는다. 각 데이터를 다른 언어로 만들어 저장하기 때문이다. 이 경우 데이터가 커지므로 시간이 오래 걸리는 단점이 있다.
- wireless 네트워크는 유저 호스트가 있어야 하는데 애플리케이션을 실행한다. 이는 모바일일 수도 정적일 수도 있다.
- 또 일정 영역의 유저 호스트를 네트워크 코어에 연결시키는 base station이 있다.
- 마지막으로 유저 호스트와 base station을 연결하는 wireless link가 있다. shared link 이므로 link acccess에 사용하기 위한 multiple access protocol이 필요하다.
- wireless는 infrastructure 모드로 사용 가능한데 이는 base station이 모바일을 wired 네트웤에 연결시키는 것이다.
- 모바일이 wired 네트웤에 연결되기 위해 연결된 base station을 바꾸는 handoff 가 일어날 수 있다.
- 또 ad hoc 모드로 사용 가능한데 이는 base station이 없는 것이다. 그러므로 유저 호스트는 자신의 시그널이 도달하는 범위 내의 유저 호스트와만 연락이 가능하다. 따라서 유저 호스트가 본인의 데이터가 아닌 남의 데이터를 전달하는 라우팅 기능을 하는 생소한 경우가 발생한다. 따라서 각 노드들이 그들 스스로를 네트워크로 구성한다.
- wireless를 infrastructure를 사용하는지, hop을 싱글로 사용하는지에 대해 나눌 수 있다.
- wifi나 셀룰러는 infrastructure를 사용하는 싱글 홉이다. base station에 모든 유저들이 1 홉 거리에 있다.
- 블루투스는 1 홉 거리지만 base station 없이 차-핸드폰처럼 둘 사이에서 바로 통신한다.
- infrastructure가 있으면서 홉이 여러개면 base station과 유저 사이에 중간 유저나 릴레이가 있다.
- infrastructure가 없으면서 홉이 여러개면 유저 호스트들이 중구난방하게 연결되어 있다. 그들 만의 릴레이를 형성하여 데이터를 주고받는다. 재난 지역에서 주고받는 구조대원끼리의 장비 통신이 이런 경우다.
- wireless link 의 종류다. 802.11는 보통 wifi의 경운데, 10~30m 정도의 실내 좁은 범위를 지원한다. 802.15 는 블루투스다.
- 오른쪽에 있는 링크들은 셀룰러 네트워크를 위한 wireless link 들이다. 2G~4G LTE로 발전하며 지원할 수 있는 대역폭이 커졌다.
- 네트워크 코어가 아닌 네트워크 엣지에서 Mobility를 서포트 한다. 모든 모바일 네트워크가 갖는 home network는 자신의 permanent한 access address를 할당 받는다. home agent는 자신의 홈 네트웤으로부터 permanent한 access address를 할당받은 모바일 노드의 모빌리티를 서포트 한다.
- 모바일 노드가 홈 네트워크를 떠나 방문하는 새로운 네트워크를 visited newwork라 하고 여기의 foreign agent는 자신에게 방문한 홈 네트워크의 에이전트와 협력해 모바일 노드에 모빌리티를 서포트 한다. 또 visited 네트웤에서 모바일 노드가 visited의 주소인 care of address를 할당받아 두 가지 주소를 갖게 된다. 또 이동하는 사용자가 통신하려는 것을 correspondent 노드라 부른다.