2014년 10월 20일 월요일

Computer Networking A top-down approach 정리 6

wireless and mobility network

  • wireless host: smart phone, laptop etc.
  • wireless link: host는 wireless link를 통해 base station 이나 다른 wireless host에 연결된다.
  • base station(기지국): data(packet) 송수신에 대한 책임을 갖음. 셀룰러 network에서는 cell tower와 802.11 wireless network에서의 Access Point가 base station 이다.
  • base station을 통해 host가 연결되어 있는 network가 기존의 모든 network service(주소할당, routing)를 제공하므로, base station에 접속된 host는 infrastructure mode로 동작한다고 할수 있다. 
  • ad hoc network: wireless host는 연결할 수 있는 기반구조 없이 hosts 스스로 routing, 주소할당, DNS같은 이름변환 등을 수행함.
  • handoff: 다른 base station area로 이동하는 경우.
  • MANET: 이동성 있는 node들이 서로 연결되는 형태, message를 보내기 위해 다른 노드들의 중계를 거침.
  • wireless network의 고려사항
    1. 신호 세기의 감소: path loss라고 하며, 거리가 증가함에 따라 신호세기의 감소.
    2. interference from other sources: 동일 주파수 대역으로 전송하는 무선 전파 출발지들의 간섭
    3. multi-path propagation: 물체, 지표등에 부딪혀서 송신자와 수신자 간의 경로 길이가 다른 여러 경로를 거쳐가는 경우 다중 경로 전파 현상이 생김
    4. 따라서, wireless link protocol은 CTC 오류검출 코드, 손상된 frame을 재전송해주는 link level ARQ protocol을 사용함.
  • hidden terminal problem: base station A, B, C가 있을때, A와 C 사이에 산이 하나 있다. A가 B로 data를 전송하고, C가 B로 data를 전송할때, A와 C의 전송이 실제로 목적지 B에서 간섭됨에도 불구하고, 물리적인 장애물 때문에 A와 B가 상대방의 전송을 수신하지 못하여 감지를 못하는 문제.
  • fading: 신호가 무선 매체를 통과 함에 따라 전파의 강도가 시간에 따라 변하는 현상. 수신측에서 충돌을 검출하지 못할 수도 있다.
  • CDMA(Code Division Multiple, Access, 코드분할 다중 접속): 무선 랜 및 셋룰러 기술에서 많이 사용되는 공유 매체 접속 프로토콜.
    송신자가 전송하는 각 bit에 원래 data bit들 보다 훨씬 빠른 속도(chipping rate, 칩핑률)로 변하는 신호를 곱하는 방식으로 encoding.
  • wifi: 802.11
    현재 IEEE 802.11 무선랜을 많이 사용한다. CSMA/CA라는 매체접속 프로토콜을 사용한다.
    802.11은 BSS(basic service set, 하나 이상의 무선 station과 base station(AP)로 구성됨)를 기본 구성단위로 한다.
    Ethernet 장치처럼, 802.11 무선 base station은 6 byte의 MAC address를 가진다. AP를 가진 무선랜을 infrastructure wireless LAN 이라고 한다.
  • network 관리자가 AP를 설치할 때, AP에게 하나의 SSID(Service Set Identifier)를 할당한다. 그리고 AP에게 채널 번호를 할당한다. 802.11이 2.4~2.485GHz 주파수 범위에서 동작하는 것과 관련있다.
  • WIFI jungle: 무선 station이 둘 이상의 AP로부터 충분히 강한 신호를 받을수 있는 모든 지역
    AP가 주기적으로 beacon frame을 전송하며, beacon frame에는 AP의 SSID와 MAC address가 포함된다. 무선 station은 AP로부터의 beacon frame을 찾기위해 채널을 살펴보고 가능한 AP와 결합한다.
  • 802.11 MAC protocol
    802.11 무선랜에서 사용되는 랜덤 접속 protocol은 CSMA/CA(CSMA with collision avoidance)이다. CSMA는 Carrier Sense Multiple Access를 의미한다.
    station이 전송전 채널을 sense하고, 채널이 사용중이면 전송을 하지 않는다.
  • 802.11은 충돌 검출을 하지 않고, 충돌 회피를 한다. 무선 채널의 비트 오류율이 상대적으로 크므로, ethernet과는 다르게 link layer ARQ(ACK/재전송)방식을 사용한다.

    - 충돌 검출을 하려면 동시에 송신과 수신이 가능해야 한다. 수신된 시호의 세기는 802.11 adapter에 의해 전송되는 신호의 세기에 비해 보통 아주 작으므로 충돌을 검출하는 hardware를 만드는데 돈이 많이 든다.

    - hidden terminal problem문제와 fading 때문에 충돌 검출이 안될수도 있다.
  • 802.11 무선 랜은 충돌 검출을 사용하지 않으므로, station이 frame을 전송하면 그 frame을 모두 전송한다. 중간에 멈출수 없다.
    따라서, 충돌이 심하면 전체 다중 접속 프로토콜의 성능이 상당히 떨어질수 있으므로, 충돌을 회피하는 기술이 사용된다.
    • link layer ACK 방법: 무선랜 station이 frame을 전송하면, 목적지 station에 제대로 전송이 안될수도 있다. 따라서 ACK를 사용하는데, 목적지 base station은 CRC 검사를 통과한 frame을 수신하면 SIFS(Short Inter-Frame Spacing)이라는 짧은 시간을 기다린 후에 ACK frame을 송신자에게 보낸다.
      만일 송신base station에서 일정 시간동안 ACK를 수신하지 못하면, 재전송한다. 일정 횟수만큼 재전송 후 ACK를 수신 못하면 해당 frame은 폐기한다.
    • CSMA/CA protocol: 채널이 사용되지 않음을 감지하면 DIFS(Distributed Inter-Frame Space) 시간동안 기다린 후에 frame을 전송한다.
      채널이 사용되면 임의의 backoff 시간을 선택해서 채널이 사용되지 않는 동안 이값을 감소시킨다. 채널 사용이 감지되면 카운터 값을 그대로 고정시킨다.
      카운터가 0이 되면 station은 frame을 전송하고, ACK를 기다린다.
    • hidden terminal solution : RTS and CTS
      숨은 터미널이 있을때도 충돌을 회피하는 방법.
      base station이 짧은 RTS(request to send) control frame과 짧은 CTS(clear to send) control frame을 사용하여 채널 접근을 예약할 수 있게 한다.

      송신자는 frame을 전송하기 위해 먼저 RTS frame을 AP에게 보내고, frame와 ACK frame을 전송하는 데 필요한 전체 시간을 보낸다. AP가 RTS를 수신하면 CTS frame을 broadcast함으로써 응답한다. CTS는 다른 station이 예약된 시간동안 전송하지 못하게 한다.

      위와 같은 RTS/CTS frame을 사용하면, hidden station 문제가 완화된다. 하지만 이로인해 지연과 채널 자원의 낭비가 생긴다. 실제로 RTS/CTS 방법은 긴 frame을 전송하기 위해 사용되며, frame의 길이에 대한 threshold가 정해져 있다. 하지만 보통 threshold 값이 최대 frame보다 더 길게 설정되어 있어 RTS/CTS 절차는 생략된다.
  • 셀룰러
    wifi hot spot이 없다면 셀룰러 network를 사용한다. 보통 하나의 cell에 하나의 base station이 존재한다. 기본적으로 base station은 WAN이나 유선 기반 구조를 통해 internet에 직접 연결되며, base station은 MSC(mobile switching center)에 연결되어 있다. MSC는 이동 사용자와의 call 설정을 하거나 해제한다.
    • 무선 통신을 위한 스팩트럼 공유 방법
      1. FDM and TDM의 혼합: FDM은 채널을 여러 개의 주파수 대역으로 나누고 각 주파수 대역마다 하나의 call을 할당한다. TDM은 시간을 frame 단위로 나누고, 다시 frame을 slot으로 나눈후 각 call을 frame과 slot으로 분할 한다.
      FDM과 TDM의 혼합 방식은 채널을 다수의 주파수 sub-band로 나누고, 각 sub-band에서 time 을 frame과 slot으로 분할한다. 따라서, 채널을 F개의 sub-band로 나누고, 시간을 T개의 slot으로 나누면 F*T개의 call을 동시에 지원한다.

      2. CDMA(Code division multiple access): 모든 사용자가 동시에 주파수를 공유하는데, 한 셀안의 사용자는 chipping sequence라는 비트열을 받는다. 이 비트열을 다르게 함으로서 각각의 사용자를 구분한다.
  • mobility management
    mobility node(like smart phone)의 영구적인 집을 home network라고한다.
    이동 노드를 관리하는 home network의 개체를 home agent 라고 한다.
    이동 노드가 현재 머무는 network를 foreign network or visited network 이라고 한다.
    foreign network에서 이동 노드를 관리하는 개체를 foreign agent라고 한다.
    이동 노드와 통신하려는 개체를 correspondent 라고 한다.

    • address system: mobile node가 foreign network에 있을때, 어떻게 이 node에 data가 전해지는가?

      mobile node의 home network(HN)에 있는 home agent(HA)가 mobile node가 있는 foreign network(FN)을 추적한다.
      foreign network의 foreign agent(FA)의 역할은 mobile node를 위한 COA(care-of-address)를 생성하는 것이다. COA는 mobile node의 영구적인 주소(permanent address)와 결합된다.
      FA의는 또한 HA에게 mobile node가 자신의 network에 있고 해당 mobile node의 COA를 갖고 있을음 알려준다.
      FA를 통해 datagram을 mobile node로 reroute 해준다.
    • 어떻게 mobile node로 routing이 되는가?
      1. indirect routing
      correspondent가 mobile node로 datagram을 보내면, mobile node의 HN로 전송이 된다.
      HA는 자신에게 온 datagram이 자신의 network에 속하면서 현재 다른 network에 있는 것인지 알아보고 , 만일 그렇다면 mobile node의 COA를 이용하여 FA에게 전달하고, FA는 이 datagram을 mobile node에게 전달한다.

      이러한 rerouting에서 HA의 mobile node의 COA 전송시 datagram을 수신한 application에서 rerouting을 알지 못하게 하기 위해 correspondent에게서 온 datagram을 변경하지 않고, 더큰 새로운 datagram 내에 encapsulate(캡슐화) 시킨다. 이렇게 만들어진 datagram은 mobile node의 COA를 관리하는 FA로 가서 decapsulate(역캡슐화) 과정을 통해 본래의 datagram을 추출하고 mobile node에게 전달 된다.

                  

      2. direct routing
      indirect routing의 경우 triangle routing problem이 발생한다. mobile node를 목적지로하는 datagram 전송시, 더 효율적인 path가 존재함에도 불구하고, HA를 거쳐서 FA로 전달되는 것이다.

      direct routing의 경우 correspondent가 있는 network agent가 mobile node의 COA를 아는 방식을 취한다. 문제는 mobile node의 위치를 파악하는 protocol이 필요하다. 또한 COA의 변경시 이것을 correspondent에게 알려주는 protocol이 필요하다.
      이를 위해 anchor foreign agent라는 것이 추가되었다.

댓글 없음:

댓글 쓰기