Prof. Young-Bae Ko in Ajou Univ., South Korea invites me to introduce ITEC Tokyo's recent projects on Wi-Fi Direct/Wi-Fi Display (a.k.a, Miracast) to the undergraduate students in his course.
[Oct./2012] WiFi : More Than Internet Connectivity
1. WiFi : More Than Internet Connectivity
Ph.D. HayoungYoon
hyyoon@itectokyo.com
Wi-Flus R&D Team Leader
ITEC Tokyo Corp.
Oct., 2012
Present to Ajou Univ.
2. Background (1)
Wi-Fi Evolutionary
• Floods of new tech. standards from IEEE fuels
to industrial standards driven by Wi-Fi Alliance
802.11
802.11b
802.11a
802.11g
802.11e
802.11i
802.11n
802.11r
802.11s
802.11k
802.11u
802.11ac
Wi-
Fi Direct
Wi-Fi Display
Wi-Fi
Wi-Fi WPS
Wi-Fi TDLS
Time
PHY MACWFA
Complexity
Performance
Hotspot
2.0
802.11ad
2
3. Background (2)
Wi-Fi in Mobile Market
to other
comebac
• No addit
network
• Average s
based im
802.11b 802.11a
802.11g
802.11e
802.11n
Wi-
Fi DirectWi-Fi
Today
miDLS
802.11b 802.11a
802.11g
802.11e
802.11n
Wi-
Fi Direct
Wi-Fi
Wi-Fi Display
Wi-Fi TDLS
802.11k
802.11u
1Q/2013 Concurrency
802.11ac
3
4. Background (3)
Wi-Fi Connectivity
• IEEE 802.11 is designed assuming that
single CH per BSS
• Switching only if local outgoing queues at
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
Today
DS
miDLS
• IEEE 802.11 is designed assuming that
single CH per BSS
• Switching only if local outgoing queues at
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
Direct-Link Communications
DS
• Localized communication with a neighbor
• Consumes double channel resource ion
infrastructure mode WiFi
• Possible solutions
• IEEE 802.11e DLS (Direct-Link Setup)
• H/W change needed at AP
• Can’t initiate DL across BSSs (Basic Service Set)
• We propose iDLS (inter-BSS DLS)
• S/W change at end-devices
• Can initiate DL across BSSs
Static
One
Way
Capacity Issue!
Still Poor Wi-Fi Direct Inter-
operability across
manufacturers
Concurrency
DS
with miDLS
Original
• IEEE 802.11 is
single CH per
• Switching only
both are empt
• Not to loo
• We propose a
support two m
to other chann
comeback
• No additional
network inter
• Average switc
based impleme
CHA CHA
CHB
DS
with miDLS
Original
•
•
•
•
•
CHA CHA
CHB
MOVi: Direct-Link Commun
DS
with iDLS
Original
• Localized commun
• Consumes double
infrastructure mod
• Possible solutions
• IEEE 802.11e DLS
• H/W change nee
• Can’t initiate DL
• We propose iDLS
• S/W change at end
• Can initiate DL ac
MOVi: Direct-Link Communicatio
DS
with iDLS
Original
• Localized communication with
• Consumes double channel reso
infrastructure mode WiFi
• Possible solutions
• IEEE 802.11e DLS (Direct-Link
• H/W change needed at AP
• Can’t initiate DL across BSSs (B
• We propose iDLS (inter-BSS D
• S/W change at end-devices
• Can initiate DL across BSSs
TDLS/WFD
Wi-Fi Direct
Wi-Fi
1Q/2013
Emerging Wi-Fi Direct capable Apps
Integration with AV Cores
4
5. Mobile Market Moves Quickly
1Q/2011 4Q/2012 1Q/2013
Wi-Fi PHY 802.11g
802.11n 802.11ac
(pre-ac)
Archivable
Throughput
10~15 Mbps 40~45Mbps
(dual-Band, CB)
>100Mbps
(Quad-CB, MIMO?)
Applications
Internet
Connectivity
Wi-Fi Direct
Miracast (WFD)
??? by TDLS
Wi-Fi/Direct Concurrency
expectedHost computing power were
even slower thanWi-Fi Speed!
NewWi-Fi apps emerge!
5
6. Who’s the Driver
GB ICS JB LP
Android Framework Release
Integration to JB
Expected!!
Integration to LP?
6
Integration to ICS
Wi-Fi Direct Concurrent Mode
Wi-Fi Display
GoogleManufacture
Manufacturers adopt first Google makes it popular
7. Wi-Fi Direct on Androids
7
Wi-Fi Device Driver
Native
Android Framework
Android APP
Wi-Fi Chipset
dependent
3rd party
developers
Manufacturer
dependent
Android
OpenSource
Wi-Fi Direct capable device
driver
Wi-Fi Direct Daemon
WiFi Direct UI
Ginger Bread
Interface
WiFi
Direct APPsWiFi
Direct APPs
Wi-Fi Direct capable device
driver
Wi-Fi Direct Daemon
WiFi
Direct APPs
WiFi Direct APIs
Since IC Sandwich
+ɑ
+ɑ
Android Framework
Wi-Fi
Direct
APP
Hard to Dev.APPs &
Poor inter-operability across
manufacturers
8. Wi-Fi Direct Overview: Discovery
• It’s not totally NEW connection methodology
• 802.11-based access, security and association management
• Wi-Fi Direct sits on top of Wi-Fi (MAC/PHY)
S
• Switching only if local outgoing queues at
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
DS
DLS
• Localized communication with a neighbor
• Consumes double channel resource ion
infrastructure mode WiFi
• Possible solutions
• IEEE 802.11e DLS (Direct-Link Setup)
• H/W change needed at AP
• Can’t initiate DL across BSSs (Basic Service Set)
• We propose iDLS (inter-BSS DLS)
• S/W change at end-devices
• Can initiate DL across BSSs
DS
ith miDLS
• Switching only if local outgoing queues
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migr
to other channel for short time and
comeback
• No additional H/W support by both t
network interface card (NIC) and the
• Average switching duration in MadWiF
based implementation < 20ms
CHA
HB
DS
with miDLS
Original
• Switching only if
both are empty
• Not to loose
• We propose and
support two mo
to other channe
comeback
• No additional H/
network interfac
• Average switchin
based implement
CHA CHA
CHB
DS
with iDLS
Original
• Localized commun
• Consumes double
infrastructure mod
• Possible solutions
• IEEE 802.11e DLS
• H/W change nee
• Can’t initiate DL
• We propose iDLS
• S/W change at end
• Can initiate DL acr
DS
with miDLS
Original
• S
b
•
• W
s
t
c
• N
n
• A
b
CHA CHA
CHB
scanscan scanscan
p2p scan
Legacy
Wi-Fi
Wi-Fi
Direct
8
9. Discover Non-AP P2P STA
• In scan phase, a Probe. Req is transmitted all supported channels
• In search phase, a Probe. Req is transmitted only to social channels
(CH#1, CH#6, CH#11)
• Q: How to find GO established in 5GHz band?
DS • Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
DS
with miDLS
• No
• We pr
suppo
to oth
comeb
• No ad
netwo
• Averag
based
CHA CHA
CHB
Listen Search or Scan
P2PWildcard SSID
P2P IE
Wildcasrd BSSID
Probe Req.
Probe Resp.
WPS/RSN/SR IE
P2PWildcard SSID
P2P IE
Wildcasrd BSSID
WPS/RSN/SR IE
Broadcast or Unicast
Unicast
9
10. Wi-Fi Direct Overview: ConnectionS
• Switching only if local outgoing queues at
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
DS
DLS
• Localized communication with a neighbor
• Consumes double channel resource ion
infrastructure mode WiFi
• Possible solutions
• IEEE 802.11e DLS (Direct-Link Setup)
• H/W change needed at AP
• Can’t initiate DL across BSSs (Basic Service Set)
• We propose iDLS (inter-BSS DLS)
• S/W change at end-devices
• Can initiate DL across BSSs
DS
ith miDLS
• Switching only if local outgoing queues
both are empty
• Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migr
to other channel for short time and
comeback
• No additional H/W support by both t
network interface card (NIC) and the
• Average switching duration in MadWiF
based implementation < 20ms
CHA
HB
DS
with miDLS
Original
• Switching only if
both are empty
• Not to loose
• We propose and
support two mo
to other channe
comeback
• No additional H/
network interfac
• Average switchin
based implement
CHA CHA
CHB
DS
with iDLS
Original
• Localized commun
• Consumes double
infrastructure mod
• Possible solutions
• IEEE 802.11e DLS
• H/W change nee
• Can’t initiate DL
• We propose iDLS
• S/W change at end
• Can initiate DL acr
DS
with miDLS
Original
• S
b
•
• W
s
t
c
• N
n
• A
b
CHA CHA
CHB
connectconnect connectconnect
p2p connect
Legacy
Wi-Fi
Wi-Fi
Direct
GO GC
Wi-Fi Wi-Fi Direct
Security WEP/WPA1.0/WPA2.0/”NULL” WPA2.0
Connection OPEN/WPS/WPS2.0 WPS1.0/WPS2.0
PHY 802.11abgn 802.11agn
10
11. WFD: It’s a Multiplayer Game
• AP (or GPU)Vendors
• Better performing AV processor
• Wi-Fi ChipsetVendors
• Fast/Reliable/Energy-efficient Wi-Fi
• Manufacturers
• Optimal deployment of
communication and AV processing
units
• Smooth UX designs
• WFD Solution Provider
• Cross-platform/Cross-chipset vendor
WFD Architecture and Requirements
3-1 illustrates the functional blocks in the Wi-Fi Display data and control planes. The data plane
s of video codec (section 3.4.2 and 3.4.4), audio codec (section 3.4.1), PES packetization (Annex-B),
CP system 2.0/2.1 (section 4.7), and MPEG2-TS over RTP/UDP/IP (section 4.10.2 and Annex-B).
ntrol plane consists of RTSP over TCP/IP (section 6), remote I2C Read/Write (section 7), UIBC
IDC and generic user input (section 4.11), and the HDCP session key establishment (section 4.7).
-Fi P2P/TDLS block forms the layer-2 connectivity using either Wi-Fi P2P or TDLS as described in
4.5.
TCP
Control
(RTSP)
CapabilityNegotiation,SessionEstablishment,
MaintenannceandManagement
L2SetupandDiscoveryAssist
RTP
UDP
IP
Wi-Fi P2P / TDLS and Wi-Fi Protected Setup
UIBC
Capsulation
UserInputData
Generic
HIDC
HDCP2.0ControlMessage
MPEG2-TS
PES
packetization
Audio
codec
Video
codec
HDCP 2.0 / 2.1
Remote
I2C
R/W
I2CData
Figure 3-1 : Logical Data and Control Plane Connections
WFD Source, Primary Sink, Secondary Sink and WFD11
13. Discover WFD Device
• WFD uses Wi-Fi Direct
• WFD IE carries
• device-type: SRC? or SINK?
• device-status: Busy? or Ready?
DS • Not to loose packets from AP
• We propose and implement miDLS
support two mobile WiFi devices migrate
to other channel for short time and
comeback
• No additional H/W support by both the
network interface card (NIC) and the AP
• Average switching duration in MadWiFi-
based implementation < 20ms
CHA
DS
with miDLS
• No
• We pr
suppo
to oth
comeb
• No ad
netwo
• Averag
based
CHA CHA
CHB
Listen Search or Scan
P2PWildcard SSID
P2P IE + WFD IE
Wildcasrd BSSID
Probe Req.
Probe Resp.
WPS/RSN/SR IE
P2PWildcard SSID
P2P IE + WFD IE
Wildcasrd BSSID
WPS/RSN/SR IE
Broadcast or Unicast
Unicast
13
14. Inside of WFD IE (1)
• TLV as other IEs
• 11 types of WFD Subelements are defined (D 1.44)
• WFD Device Information (Type=0) is the most useful for discovering
WFD Devices
WFD IE Header WFD Subelements
WFD IE
ID=0 Length=6
WFD Device
Information
Session Management
Control Port
WFD Device
Maximum Throughput
2 2 221Octets
15. Inside of WFD IE (2)
15
ID=0 Length=6
WFD Device
Information
Session Management
Control Port
WFD Device
Maximum Throughput
2 2 221Octets
...
Audio Only
supported bit @
SRC
Audio unsupported
bit @ SINK ... WFD Session
Availability ... Device Type
Bits 1 1 2 2
2Byte TCP Server Port @ SRC
WFD Device’s maximum
tolerable throughput
0b00 SRC
0b01 P-SINK
0b10 S-SINK
0b11 Dual
0b00 Not Avail.
0b01 Available
0b10 Reserved
0b11 Reserved
SRC can only
send Audio SINK can only
render video
16. WFD Session Establishment
• Use RTSP to exchange WFD Capability and setup streaming session
16
th miDLS
• We propose and implement miDLS
support two mobile WiFi devices migra
to other channel for short time and
comeback
• No additional H/W support by both th
network interface card (NIC) and the A
• Average switching duration in MadWiFi
based implementation < 20ms
CHA
HB
with miDLS
•
•
•
CHA CHA
CHB
Wi-Fi Direct Connected
GO
SRC SINK
TCP connect to {IP:Port from WFD IE}
GC
M1-REQ
M1-RESP
1. SRC gets SINK’s AV playout and
rendering capability (M3)
3. SRC choses the best configuration
5. SRC set SINK’s AV Processing
Configuration (M4)
7. Trigger AV Streaming (M6,M7)
.
.
.
M7-PLAY-REQ
M7-PLAY-RESP
Start AV Streaming
.
.
.
Q:Why SRC becomes GO?
17. WFD Session Management
17
• Use RTSP to Control Playback
th miDLS
• We propose and implement miDLS
support two mobile WiFi devices migra
to other channel for short time and
comeback
• No additional H/W support by both th
network interface card (NIC) and the A
• Average switching duration in MadWiFi
based implementation < 20ms
CHA
HB
with miDLS
•
•
•
CHA CHA
CHB
GO
SRC SINK
GCStart AV Streaming
M7-PLAY-REQ
M7-PLAY-RESP
AV Streaming
.
.
.
M9-PAUSE-REQ
M9-PAUSE-RESP
.
.
.
M5-TRIGGER-REQ {PLAY}
M5-TRIGGER-RESP-{PLAY}
• No RTSP specification to
control playback by SERVER
• WFD uses Trigger method with
playback control as a parameter
18. WFD Session Termination
18
• Teardown process is same to generic RTSP streaming
th miDLS
• We propose and implement miDLS
support two mobile WiFi devices migra
to other channel for short time and
comeback
• No additional H/W support by both th
network interface card (NIC) and the A
• Average switching duration in MadWiFi
based implementation < 20ms
CHA
HB
with miDLS
•
•
•
CHA CHA
CHB
GO
SRC SINK
GCStart AV Streaming
M8-TEARDOWN-REQ
M8-TEARDOWN-RESP
• It is “out-of-scope” that actions
after teardown process
• One may keep Wi-Fi Direct
connection to save connection time
for next session establishment
or
M5-TRIGGER-REQ {TEARDOWN}
M5-TRIGGER-RESP-{TEARDOWN}
M8-TEARDOWN-REQ
M8-TEARDOWN-RESP
Q: Keeping P2P connection is Good?
19. AV Streaming Format
19
• NAL / MPEG PES / MPEG2 TS / RTP /UDP
• Considering MTP size of Ethernet, 7 MPEG2 TS packets (188B) fits into single RTP payload
• Not the best but mostly accepted for the compatibility
Reference
RTP header PT field ‘33’ from [4], [6] for MPEG2-TS
Marker bit (M) ‘1’ whenever timestamp is discontinuous from [4]
RTP Timestamp 32-bit timestamp derived from a 90 kHz clock,
representing the target transmission time for the
first byte of the packet. This clock is
synchronized to the system stream PCR (TS) or
the SCR (PS), and represents the target
transmission time of the first byte of the packet
payload.
from [4]
Table B- 5- RTP encapsulation of MPEG-TS3488
3489
Figure B- 1 Example of Recommended Encapsulation of MPEG2-TS Packets3490
Reference
RTP header PT field ‘33’ from [4], [6] for MPEG2-TS
Marker bit (M) ‘1’ whenever timestamp is discontinuous from [4]
RTP Timestamp 32-bit timestamp derived from a 90 kHz clock,
representing the target transmission time for the
first byte of the packet. This clock is
synchronized to the system stream PCR (TS) or
the SCR (PS), and represents the target
transmission time of the first byte of the packet
payload.
from [4]
Table B- 5- RTP encapsulation of MPEG-TS3488
3489
Figure B- 1 Example of Recommended Encapsulation of MPEG2-TS Packets3490
Reference
RTP header PT field ‘33’ from [4], [6] for MPEG2-TS
Marker bit (M) ‘1’ whenever timestamp is discontinuous from [4]
RTP Timestamp 32-bit timestamp derived from a 90 kHz clock,
representing the target transmission time for the
first byte of the packet. This clock is
synchronized to the system stream PCR (TS) or
the SCR (PS), and represents the target
transmission time of the first byte of the packet
payload.
from [4]
Table B- 5- RTP encapsulation of MPEG-TS3488
3489
Figure B- 1 Example of Recommended Encapsulation of MPEG2-TS Packets3490
20. Key WFD Performance: Latency
• Require <100 msec glass-to-glass latency for fluent 3D Action gaming
20
FB
Capture
Scaling
a frame
H.264
Video
Encoding
Packetization
Audio
Sampling
Audio
Encoding
Packetization
glass-to-glass latency
UDP/RTP
Encapsulation
AV Mux
AV Packet
Transmit
SRC-side Video
Decoding
Audio
Decoding
Render
Video
Play
Audio
SINK-side
AV Packet
Reception
AV Demux
Kernel-to-Kernel Propagation
Good M.S.Topic:
Time to do research on how to minimize!
21. Key WFD Performance: Packet Loss
21
• Can’t avoid
• MAC retransmission is not enough
• UDP/RTP has no ACK/NAK feedback
• ARQ may not be employed for latency
• Conservatively chosen PHY Datarate?
(Again, good topic)
22. Key WFD Performance: Packet Loss
22
Wi-Fi Display Technical Specification D1.44
491
• Splitting single AV unit across packet chain for the error resilience
• Assuming that AV decoder performs sort of error mitigations
24. Interesting WFD Optional Features
• UIBC (User Input Back Channel)
• Control SRC Device by SINK
• Secondary SINK
• Seperating audio player from video renderer
• Remote I2C
• Do legacy IO on SINK Device by SRC
24
25. Summary
• Mobile computing devices quickly adopt new Wi-Fi
features
• Increasing Wi-Fi speed itself isn’t HOT enough
• Application specific supports @ Link/MAC are essential
• WFD is a perfect suit for evaluation of a traditional
research topic - A tussle between loss recovery and end-
to-end latency
25