SlideShare a Scribd company logo
IPv4 IPv6 Multi Protocol
Media Player
- APNIC 50 -
Masaaki NABESHIMA
Sep 9, 2020
Copyright (c) kosho.org 1v9-9-2020
◼ Use IPv4 and IPv6
◼ Calculate speeds
◼ Do
• Display speeds
• Choose protocol
Copyright (c) kosho.org 2
IPv4 IPv6 Multi Protocol Media Player
◼ Over 1 / 4 requests are IPv6
• IPv6 Connection rate
• Akamai Report (Dec 2019) *1
• The United States: 45.8%
• Japan: 31.3%
• IIJ Koshien Report (Aug 2019) *2
• Japan : 24%
◼ IPv4 will never disappears
• We will have to keep using both protocols for a long period !
Copyright (c) kosho.org 3
Background: IPv6 is REAL
*1:https://www.akamai.com/us/en/resources/our-thinking/state-of-the-internet-report/state-of-the-internet-ipv6-adoption-visualization.jsp
*2: https://eng-blog.iij.ad.jp/archives/4183
◼ Protocol itself
• Almost the same for performance
◼ Network Implementations are different
• e.g. Base protocols and Aggregation boxes are different
• IPv4: PPPoE
• IPv6: IPoE
• Each aggregation boxes have different capacities
◼ Network Speeds are different
• Many people say IPv6 is faster than IPv4
• IPv4 aggregation boxes are generally full
• IPv6 Aggregation boxes have some margin
Copyright (c) kosho.org 4
Background: IPv4 and IPv6 are different
◼ Recent Media Players
• Players download media chunks by HTTP (HLS, Dash)
• Media chunk: fragments of a movie
• Players reassemble the chunks and generate a full movie
Copyright (c) kosho.org 5
Background: Media Player
Chunk 1 Chunk 2 Chunk 3 Chunk 4 Chunk 5 Chunk 6 Chunk 7 Chunk 8
◼ Basic idea
1, Media Player can use IPv4 and IPv6 in a movie stream
• e.g. one by one
2, Also the Media player can calculate download speeds of each chunks
3, And then, the Media Player can choose the preferable protocol
Copyright (c) kosho.org 6
IPv4 IPv6 Multi Protocol Media Player
IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 IPv4
9.1 Mbps 5.4 Mbps 9.8 Mbps 6.4 Mbps 9.9 Mbps 4.8 Mbps 5.8 Mbps 8.7 MbpsDownload Speeds
IPv6 IPv6 IPv6 IPv4 IPv6 IPv6 IPv6 IPv4
Media chunks
◼ Initial Implementation
• My own Player with MSE (Media Source Extensions)
• Many restrictions ( e.g. no trick play, no m3u8, …)
◼ Current Implementation
• Base player: Hls.js (Popular media player for browser)
• https://github.com/video-dev/hls.js/
• Plugin (hls46.js)
• https://github.com/kosho-org/hls-46-plugin/
Copyright (c) kosho.org 7
Implementation
◼ Sample
Copyright (c) kosho.org 8
Plugin Usage <html>
<script src="https://cdn.jsdelivr.net/npm/hls.js@0.14.1"></script>
<video id="video" controls preload="none"></video>
<script src="hls-46.js"></script>
<script src="hls-customload.js"></script>
<script src="cb-2-filesize.js"></script>
<script>
var video = document.getElementById('video');
var videoSrc = 'cb-2.m3u8';
var customLoader = function() {};
customLoader.prototype = new Hls.DefaultConfig.loader();
customLoader.prototype.loadInternal = customLoadInternal;
hls46init(0,"http://ipv4.example.com/","http://ipv6.example.com/",
"https://ipv4.media.example.com/hls/","https://ipv6.media.example.com/hls/");
var hls = new Hls({loader: customLoader});
hls.loadSource(videoSrc);
hls.attachMedia(video);
hls46TextShow();
</script>
</html>
Plug-in Initialization
Subtitle (for speed display)
Initialization
Custom (media) Loader
Initialization
◼ IPv4 IP6 handling
• Need separate URLs
• e.g.
• https://ipv4.example.com/hls/xxx.ts
• https://ipv6.example.com/hls/xxx.ts
• Player determines protocol by (URL) string
◼ Internal Key functions
• urlHandler
• modifies media URLs. It's called by customLoadInternal
• speedHandler
• calculates download speeds. It's called by urlHandler and
ontimeUpdate of html5 video
Copyright (c) kosho.org 9
Current Implementation (hls.js plugin)
◼ Statistics Handling
Copyright (c) kosho.org 10
Current Implementation
Media Server (IPv4)
Media Server (IPv6)
beacon.php (Beacon/POST)
Statistics Server (IPv6)
sid.php (session ID/GET)
uid.php (user ID/GET)
ip.php (IPv6 Address/GET)
Statistic Server (IPv4)
ip.php (IPv4 Address/GET)
◼ Speed Comparison
• IPv4 IPv6 One by one
◼ Protocol Selection
• Initial check mode
• Continuous check mode
Copyright (c) kosho.org 11
Plugin Mode
Use the faster protocolInitial check
Initial check Use both protocols to check speed
Copyright (c) kosho.org 12
Demo: Speed Comparison
IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 IPv4
Subtitle
Browser Developer Tools (F12)
Copyright (c) kosho.org 13
Demo
• All Chunk size
• 271KB* / 2sec
• Speeds
• Not the same
• Stable speed needs bigger chunks (like 4K videos)
• 4K demo: https://www.kosho.org/tools/v6speed-check-by-movie/
*The first chunk is 272KB
◼ Data
• Sessions: 955
• Nov 20 2019 – Sep 3 2020
• Filter
• Client GeoIP: Japan
• IPv4 chunks > 1, IPv6 chunks > 1
Copyright (c) kosho.org 14
Statistics
Hour Session# IPv6/IPv4
1 16 1.01
2 8 1.14
3 22 0.92
4 4 0.70
5 13 1.83
6 8 1.02
7 11 0.82
8 56 1.23
9 45 0.87
10 55 1.07
11 74 1.19
12 49 1.06
13 59 1.36
14 58 1.29
15 55 1.20
16 62 0.91
17 57 1.08
18 32 1.14
19 37 0.98
20 23 3.24
21 44 1.21
22 69 3.21
23 69 1.79
24 0 2.02
Copyright (c) kosho.org 15
Stat: Speed Ratio by Hour
• Generally IPv6 is faster than IPv4 !
• Especially night peak
0.00
0.50
1.00
1.50
2.00
2.50
3.00
3.50
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
IPv6 / IPv4 Speed Ratio
Copyright (c) kosho.org 16
Stat: Speed Ratio Distribution
Speed Ratio Session # Session %
IPv6 faster (> 4) 41 4.29 %
IPv6 faster (4 ~ 2) 70 7.33 %
IPv6 faster (2 ~ 1.2) 191 20.00 %
Almost same 363 38.01 %
IPv4 faster (2 ~ 1.2) 200 20.94 %
IPv4 faster (4 ~ 2) 58 6.07 %
IPv4 faster (> 4) 32 3.35 %
• IPv6 is not always faster than IPv4
• Reason:
• Old style IPv6 tunneling over IPv4
• Need more study
◼ Most of cases
• We should use IPv6 (Default behavior)
◼ However, some remaining cases we should use IPv4
• This plug-in will work
◼ Note
• Currently, IPv6 users are minor -> IPv6 is faster
• However, the number of IPv6 users increases -> IPv4 can be faster
Copyright (c) kosho.org 17
Summery: IPv4 vs IPv6
◼ New fun way to compare IPv4/IPv6 speeds
• Realtime speed display
• Realistic measurement of streaming video
• Mobile, HD, 4K videos
• Probably work on another player (video.js…)
◼ Work as a player side multi CDN (CDN selection by player,
original goal)
• Without any modification, you can use this plugin as a selector
• CDNs (e.g. Akamai vs Cloudfront)
• Other Protocol (e.g. QUIC vs TCP+HTTP)
Copyright (c) kosho.org 18
Summery: IPv4 IPv6 media player
◼ Plug-in development
• IPv6 native support, Trick play support, Chunk size correction, Transfer
size handling, …
◼ Speed comparison
• Detailed analysis
• ASN, IPoE, PPPoE, …
◼ Protocol selection
• Better continuous check algorithm
Copyright (c) kosho.org 19
Future work
◼ I need partners
• I would like to realize them with partners
• If you are interested in, please let me know
Copyright (c) kosho.org 20
Future work (collaboration)
◼ Player Home (Demo) Page
• https://www.kosho.org/blog/net/ipv4ipv6-mediaplayer/
◼ Speed Comparison (Demo) Page
• https://www.kosho.org/tools/v6speed-check-by-movie/
◼ Source Code
• https://github.com/kosho-org/hls-46-plugin/
Copyright (c) kosho.org 21
Reference

More Related Content

PPTX
Accelerating forensic and incident response workflow: the case for a new stan...
PPTX
Accelerating forensic and incident response workflow: the case for a new stan...
PPTX
AFF4: The new standard in forensic imaging and why you should care
PDF
Trying and evaluating the new features of GlusterFS 3.5
PPTX
Performance analysis with_ceph
PPTX
Ceph Day Tokyo - Bring Ceph to Enterprise
PDF
FDW-based Sharding Update and Future
PDF
Build a High Available NFS Cluster Based on CephFS - Shangzhong Zhu
Accelerating forensic and incident response workflow: the case for a new stan...
Accelerating forensic and incident response workflow: the case for a new stan...
AFF4: The new standard in forensic imaging and why you should care
Trying and evaluating the new features of GlusterFS 3.5
Performance analysis with_ceph
Ceph Day Tokyo - Bring Ceph to Enterprise
FDW-based Sharding Update and Future
Build a High Available NFS Cluster Based on CephFS - Shangzhong Zhu

What's hot (17)

PDF
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
PDF
inwinSTACK - ceph integrate with kubernetes
PPTX
Ceph on 64-bit ARM with X-Gene
PPTX
Nuevo Portafolio QNAP 2017
PDF
Ceph Day Tokyo - Bit-Isle's 3 years footprint with Ceph
PPTX
openSUSE storage workshop 2016
PPTX
Не так страшен терабит / Вячеслав Ольховченков (Integros)
PDF
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
PDF
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
PDF
Ceph Day Beijing - Welcome to Beijing Ceph Day
PDF
All Zones
PDF
Intel - optimizing ceph performance by leveraging intel® optane™ and 3 d nand...
PDF
Ceph Day Beijing - SPDK for Ceph
PDF
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
PPTX
Qnap Product Selection Guide 2016
PDF
GlusterFS As an Object Storage
PDF
Ceph Day Beijing - Storage Modernization with Intel and Ceph
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
inwinSTACK - ceph integrate with kubernetes
Ceph on 64-bit ARM with X-Gene
Nuevo Portafolio QNAP 2017
Ceph Day Tokyo - Bit-Isle's 3 years footprint with Ceph
openSUSE storage workshop 2016
Не так страшен терабит / Вячеслав Ольховченков (Integros)
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph Day Beijing - Welcome to Beijing Ceph Day
All Zones
Intel - optimizing ceph performance by leveraging intel® optane™ and 3 d nand...
Ceph Day Beijing - SPDK for Ceph
Gluster Cloud Night in Tokyo 2013 -- Tips for getting started
Qnap Product Selection Guide 2016
GlusterFS As an Object Storage
Ceph Day Beijing - Storage Modernization with Intel and Ceph
Ad

Similar to IPv4 IPv6 Multi Protocol Media Player (20)

PDF
IPv4 IPv6 Media Player
PDF
170 azimov.latency-i pv4-vs-ipv6-understanding-the-difference
PDF
Review of IPv4 and IPv6 and various implementation methods of IPv6
PPTX
Comparative study of IPv4 and IPv6 on Windows and Linux.
PDF
Latency i pv4 vs ipv6
PDF
A Survey On Next Generation Internet Protocol IPv6
PDF
A010630103
PDF
Performance Evaluation and Comparisons for IPv4&IPv6 using mpls Technologies
PPT
Internet Protocol Version 6 By Suvo 2002
PPTX
I pv4 vs ipv6
PPT
Direccionamiento_Internet_Protocol_version_6_b.ppt
PPTX
Compatibility between IPv4 and IPv6
DOCX
RASHMI VT REPORT
PDF
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
PPT
I pv4 and ipv6
PPTX
Ipv4 over ipv6 by Jigar Tarsariya
PPTX
module 4.pptx
PPTX
APNIC Update
DOCX
IPv4 IPv6 Media Player
170 azimov.latency-i pv4-vs-ipv6-understanding-the-difference
Review of IPv4 and IPv6 and various implementation methods of IPv6
Comparative study of IPv4 and IPv6 on Windows and Linux.
Latency i pv4 vs ipv6
A Survey On Next Generation Internet Protocol IPv6
A010630103
Performance Evaluation and Comparisons for IPv4&IPv6 using mpls Technologies
Internet Protocol Version 6 By Suvo 2002
I pv4 vs ipv6
Direccionamiento_Internet_Protocol_version_6_b.ppt
Compatibility between IPv4 and IPv6
RASHMI VT REPORT
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
I pv4 and ipv6
Ipv4 over ipv6 by Jigar Tarsariya
module 4.pptx
APNIC Update
Ad

More from Masaaki Nabeshima (20)

PDF
通信・放送インフラの議論におけるOTT(プラットフォーム)視点の必要性/情報通信学会2024年秋季大会
PDF
ビジネス基礎講座:統計学入門 introduction to statistics
PDF
最新プロジェクトマネージメント PMBOK6から7への変更点とその理由 introduction to recent project management
PDF
プロジェクトマネージメント入門:1時間で理解するPMBOK introduction to project management
PDF
ビジネス基礎講座:プレゼンテーション資料作成の実際 Presentation Material
PDF
ビジネス基礎講座:プレゼンテーション資料作成の基本 Presentation Material
PDF
ビジネス基礎講座:ライティング入門(明文作成のテクニック) Technical Writing
PDF
ネットワークインフラの議論におけるOTT視点の必要性:公益事業学会関東支部2024年度第1回関東部会
PDF
vMVPDの動向について
PDF
Open Caching Update
PDF
ストリーミングサービス研究グループ
PDF
通信と放送の融合を考えるBoF 5
PDF
セキュリティ管理 入門セミナ
PDF
ATSC 3.0, MMT, Multicast
PDF
国内トラフィックエンジニアリングの現状
PDF
サイマルキャスト コストと可能性についての考察
PDF
ストリーミング視聴解析の基本とその応用 IPv4・IPv6デュアルソース
PDF
IPv6 Survey 2019 Dec Update
PDF
JP Web Sites IPv6 Survey
PDF
IPv6 Survey 2019
通信・放送インフラの議論におけるOTT(プラットフォーム)視点の必要性/情報通信学会2024年秋季大会
ビジネス基礎講座:統計学入門 introduction to statistics
最新プロジェクトマネージメント PMBOK6から7への変更点とその理由 introduction to recent project management
プロジェクトマネージメント入門:1時間で理解するPMBOK introduction to project management
ビジネス基礎講座:プレゼンテーション資料作成の実際 Presentation Material
ビジネス基礎講座:プレゼンテーション資料作成の基本 Presentation Material
ビジネス基礎講座:ライティング入門(明文作成のテクニック) Technical Writing
ネットワークインフラの議論におけるOTT視点の必要性:公益事業学会関東支部2024年度第1回関東部会
vMVPDの動向について
Open Caching Update
ストリーミングサービス研究グループ
通信と放送の融合を考えるBoF 5
セキュリティ管理 入門セミナ
ATSC 3.0, MMT, Multicast
国内トラフィックエンジニアリングの現状
サイマルキャスト コストと可能性についての考察
ストリーミング視聴解析の基本とその応用 IPv4・IPv6デュアルソース
IPv6 Survey 2019 Dec Update
JP Web Sites IPv6 Survey
IPv6 Survey 2019

Recently uploaded (20)

PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Electronic commerce courselecture one. Pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Spectroscopy.pptx food analysis technology
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Getting Started with Data Integration: FME Form 101
“AI and Expert System Decision Support & Business Intelligence Systems”
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology
Advanced methodologies resolving dimensionality complications for autism neur...
Electronic commerce courselecture one. Pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Big Data Technologies - Introduction.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation_ Review paper, used for researhc scholars
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Empathic Computing: Creating Shared Understanding
Spectroscopy.pptx food analysis technology
SOPHOS-XG Firewall Administrator PPT.pptx
Machine learning based COVID-19 study performance prediction
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Assigned Numbers - 2025 - Bluetooth® Document
Getting Started with Data Integration: FME Form 101

IPv4 IPv6 Multi Protocol Media Player

  • 1. IPv4 IPv6 Multi Protocol Media Player - APNIC 50 - Masaaki NABESHIMA Sep 9, 2020 Copyright (c) kosho.org 1v9-9-2020
  • 2. ◼ Use IPv4 and IPv6 ◼ Calculate speeds ◼ Do • Display speeds • Choose protocol Copyright (c) kosho.org 2 IPv4 IPv6 Multi Protocol Media Player
  • 3. ◼ Over 1 / 4 requests are IPv6 • IPv6 Connection rate • Akamai Report (Dec 2019) *1 • The United States: 45.8% • Japan: 31.3% • IIJ Koshien Report (Aug 2019) *2 • Japan : 24% ◼ IPv4 will never disappears • We will have to keep using both protocols for a long period ! Copyright (c) kosho.org 3 Background: IPv6 is REAL *1:https://www.akamai.com/us/en/resources/our-thinking/state-of-the-internet-report/state-of-the-internet-ipv6-adoption-visualization.jsp *2: https://eng-blog.iij.ad.jp/archives/4183
  • 4. ◼ Protocol itself • Almost the same for performance ◼ Network Implementations are different • e.g. Base protocols and Aggregation boxes are different • IPv4: PPPoE • IPv6: IPoE • Each aggregation boxes have different capacities ◼ Network Speeds are different • Many people say IPv6 is faster than IPv4 • IPv4 aggregation boxes are generally full • IPv6 Aggregation boxes have some margin Copyright (c) kosho.org 4 Background: IPv4 and IPv6 are different
  • 5. ◼ Recent Media Players • Players download media chunks by HTTP (HLS, Dash) • Media chunk: fragments of a movie • Players reassemble the chunks and generate a full movie Copyright (c) kosho.org 5 Background: Media Player Chunk 1 Chunk 2 Chunk 3 Chunk 4 Chunk 5 Chunk 6 Chunk 7 Chunk 8
  • 6. ◼ Basic idea 1, Media Player can use IPv4 and IPv6 in a movie stream • e.g. one by one 2, Also the Media player can calculate download speeds of each chunks 3, And then, the Media Player can choose the preferable protocol Copyright (c) kosho.org 6 IPv4 IPv6 Multi Protocol Media Player IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 9.1 Mbps 5.4 Mbps 9.8 Mbps 6.4 Mbps 9.9 Mbps 4.8 Mbps 5.8 Mbps 8.7 MbpsDownload Speeds IPv6 IPv6 IPv6 IPv4 IPv6 IPv6 IPv6 IPv4 Media chunks
  • 7. ◼ Initial Implementation • My own Player with MSE (Media Source Extensions) • Many restrictions ( e.g. no trick play, no m3u8, …) ◼ Current Implementation • Base player: Hls.js (Popular media player for browser) • https://github.com/video-dev/hls.js/ • Plugin (hls46.js) • https://github.com/kosho-org/hls-46-plugin/ Copyright (c) kosho.org 7 Implementation
  • 8. ◼ Sample Copyright (c) kosho.org 8 Plugin Usage <html> <script src="https://cdn.jsdelivr.net/npm/hls.js@0.14.1"></script> <video id="video" controls preload="none"></video> <script src="hls-46.js"></script> <script src="hls-customload.js"></script> <script src="cb-2-filesize.js"></script> <script> var video = document.getElementById('video'); var videoSrc = 'cb-2.m3u8'; var customLoader = function() {}; customLoader.prototype = new Hls.DefaultConfig.loader(); customLoader.prototype.loadInternal = customLoadInternal; hls46init(0,"http://ipv4.example.com/","http://ipv6.example.com/", "https://ipv4.media.example.com/hls/","https://ipv6.media.example.com/hls/"); var hls = new Hls({loader: customLoader}); hls.loadSource(videoSrc); hls.attachMedia(video); hls46TextShow(); </script> </html> Plug-in Initialization Subtitle (for speed display) Initialization Custom (media) Loader Initialization
  • 9. ◼ IPv4 IP6 handling • Need separate URLs • e.g. • https://ipv4.example.com/hls/xxx.ts • https://ipv6.example.com/hls/xxx.ts • Player determines protocol by (URL) string ◼ Internal Key functions • urlHandler • modifies media URLs. It's called by customLoadInternal • speedHandler • calculates download speeds. It's called by urlHandler and ontimeUpdate of html5 video Copyright (c) kosho.org 9 Current Implementation (hls.js plugin)
  • 10. ◼ Statistics Handling Copyright (c) kosho.org 10 Current Implementation Media Server (IPv4) Media Server (IPv6) beacon.php (Beacon/POST) Statistics Server (IPv6) sid.php (session ID/GET) uid.php (user ID/GET) ip.php (IPv6 Address/GET) Statistic Server (IPv4) ip.php (IPv4 Address/GET)
  • 11. ◼ Speed Comparison • IPv4 IPv6 One by one ◼ Protocol Selection • Initial check mode • Continuous check mode Copyright (c) kosho.org 11 Plugin Mode Use the faster protocolInitial check Initial check Use both protocols to check speed
  • 12. Copyright (c) kosho.org 12 Demo: Speed Comparison IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 IPv6 IPv4 Subtitle Browser Developer Tools (F12)
  • 13. Copyright (c) kosho.org 13 Demo • All Chunk size • 271KB* / 2sec • Speeds • Not the same • Stable speed needs bigger chunks (like 4K videos) • 4K demo: https://www.kosho.org/tools/v6speed-check-by-movie/ *The first chunk is 272KB
  • 14. ◼ Data • Sessions: 955 • Nov 20 2019 – Sep 3 2020 • Filter • Client GeoIP: Japan • IPv4 chunks > 1, IPv6 chunks > 1 Copyright (c) kosho.org 14 Statistics
  • 15. Hour Session# IPv6/IPv4 1 16 1.01 2 8 1.14 3 22 0.92 4 4 0.70 5 13 1.83 6 8 1.02 7 11 0.82 8 56 1.23 9 45 0.87 10 55 1.07 11 74 1.19 12 49 1.06 13 59 1.36 14 58 1.29 15 55 1.20 16 62 0.91 17 57 1.08 18 32 1.14 19 37 0.98 20 23 3.24 21 44 1.21 22 69 3.21 23 69 1.79 24 0 2.02 Copyright (c) kosho.org 15 Stat: Speed Ratio by Hour • Generally IPv6 is faster than IPv4 ! • Especially night peak 0.00 0.50 1.00 1.50 2.00 2.50 3.00 3.50 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 IPv6 / IPv4 Speed Ratio
  • 16. Copyright (c) kosho.org 16 Stat: Speed Ratio Distribution Speed Ratio Session # Session % IPv6 faster (> 4) 41 4.29 % IPv6 faster (4 ~ 2) 70 7.33 % IPv6 faster (2 ~ 1.2) 191 20.00 % Almost same 363 38.01 % IPv4 faster (2 ~ 1.2) 200 20.94 % IPv4 faster (4 ~ 2) 58 6.07 % IPv4 faster (> 4) 32 3.35 % • IPv6 is not always faster than IPv4 • Reason: • Old style IPv6 tunneling over IPv4 • Need more study
  • 17. ◼ Most of cases • We should use IPv6 (Default behavior) ◼ However, some remaining cases we should use IPv4 • This plug-in will work ◼ Note • Currently, IPv6 users are minor -> IPv6 is faster • However, the number of IPv6 users increases -> IPv4 can be faster Copyright (c) kosho.org 17 Summery: IPv4 vs IPv6
  • 18. ◼ New fun way to compare IPv4/IPv6 speeds • Realtime speed display • Realistic measurement of streaming video • Mobile, HD, 4K videos • Probably work on another player (video.js…) ◼ Work as a player side multi CDN (CDN selection by player, original goal) • Without any modification, you can use this plugin as a selector • CDNs (e.g. Akamai vs Cloudfront) • Other Protocol (e.g. QUIC vs TCP+HTTP) Copyright (c) kosho.org 18 Summery: IPv4 IPv6 media player
  • 19. ◼ Plug-in development • IPv6 native support, Trick play support, Chunk size correction, Transfer size handling, … ◼ Speed comparison • Detailed analysis • ASN, IPoE, PPPoE, … ◼ Protocol selection • Better continuous check algorithm Copyright (c) kosho.org 19 Future work
  • 20. ◼ I need partners • I would like to realize them with partners • If you are interested in, please let me know Copyright (c) kosho.org 20 Future work (collaboration)
  • 21. ◼ Player Home (Demo) Page • https://www.kosho.org/blog/net/ipv4ipv6-mediaplayer/ ◼ Speed Comparison (Demo) Page • https://www.kosho.org/tools/v6speed-check-by-movie/ ◼ Source Code • https://github.com/kosho-org/hls-46-plugin/ Copyright (c) kosho.org 21 Reference