Multipeer Connectivity는 분명 필요에 따라 다양한 네트워킹 방식을 제공하는 편리한 방식이라고 했는데, 실제로 우리 앱을 통해 테스트했을 때는 와이파이 공유기를 연결하지 않은 채로 연결을 시도했을 때 원하는 만큼의 퍼포먼스를 얻을 수 없었다. 이러한 문제를 개선하고 와이파이 공유기에 연결되지 않은 상태로도 앱을 사용하는 것을 목표로 개선을 시도하였다.
멀티피어 커넥티비티의 특징 중 하나는 하이브리드 로컬 네트워크라는 점이다.
MPC는 위 3개 네트워크 연결 방식 중 가장 빠르게 통신할 수 있는 네트워크를 선택하여 통신을 제공한다.
각각에 대해 간단히 설명을 해보면 Infrastructure Wi-Fi는 공유기라는 AP를 통해 네트워크에 접근하는 가장 Wi-Fi의 이미지에 어울리는 연결 방식이다. P2P Wi-Fi는 이름 그대로 기기간 와이파이를 연결하는 것이며, AWDL(Apple Wireless Direct Link) 프로토콜을 사용한다. 다른 널리 알려진 기술, Wi-Fi Direct의 애플 버전이라고 볼 수 있다.
여기서 몇 가지 의문점이 생긴다. P2P 와이파이가 존재하는 이상, 이것이 가장 빠른 연결 방식이고 로컬 네트워크를 연결하기에 제약도 가장 적은 방식인데 다른 네트워크를 왜 고려할까? 이는 P2P Wi-Fi를 연결하기 위한 준비 단계 때문이다.
AWDL과 같은 P2P와이파이는 항상 켜놓기에는 기기적으로 제약이 따른다.
배터리
와이파이 칩셋을 사용하는 것은 다른 대체 네트워크에 비해 배터리 소모가 극심하다. 블루투스를 사용할 때와 비교하면 10배 이상이라고 한다. (블루투스 약 10~15mA, Wi-Fi 200~300mA, 대략적인 값)
단일 와이파이 칩셋
인프라 와이파이를 사용할 때는 기존에 연결되어 있는 와이파이를 사용할 수 있기 때문에 멀티피어에서 적극적으로 사용된다. 연결 자체는 인프라 와이파이보다 P2P와이파이가 이론상 빨라야하지만, 기계에 내장된 와이파이 칩셋은 하나이고, 인프라 와이파이는 이미 연결 되어 있는데 P2P 와이파이가 추가된다는 부분에서 채널 혼잡이 야기되는 것이다.
따라서 MPC 연결 단계에서는 P2P 와이파이가 사용되지 않고, 우선적으로 인프라 와이파이, 블루투스를 통해 연결을 한 뒤, 필요시 P2P 와이파이로 승격하는 방식이 적용된다.
Advertise/Browse 단계에서는 인프라 와이파이나 블루투스라는 자원 소모가 적은 방법을 통해 연결이 이루어진다. 세션이 연결된 이후에는 가장 안정적인 통신 방법으로 통신을 진행한다.