
A DISTRIBUTED APPROACH TO MULTICAST SESSION DISCOVERY MDNS - A GLOBALLY SCALABLE MULTICAST SESSION DIRECTORY ARCHITECTURE By PIYUSH HARSH A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2010 °c 2010 Piyush Harsh 2 I dedicate this to my parents who always supported my decisions and all my teachers who made me the person I am today. 3 ACKNOWLEDGMENTS I would like to extend my gratitude to my adviser, Dr. Richard Newman, who has been more of a father figure and a friend for me than just an adviser. His thoughts on life and the numerous discussions I have had with him over the number of years on almost everything under the sun has helped me a lot become a person that I am today. Special thanks to Dr. Randy Chow who guided me and took time out of his very busy schedule when Dr. Newman took a sabbatical break. His meticulous approach to scientific quest and his knowledge of how the system works was an eye opener. I would also like to thank all my friends that I made over the period of my stay at University of Florida, including Pio Saqui, Jenny Saqui, InKwan Yu, Mahendra Kumar and others (you know who you are) for keeping me sane and grounded. All of you have been a very pleasant distraction. You all will always be in my heart and mind. I would like to thank all of CISE office staff especially Mr. John Bowers for taking care of administrative details concerning my enrollment and making sure things proceed smoothly for me. I would like to thank CISE administrators with whom I had numerous discussions on intricacies of managing a large computer network. Notable among them are Alex M. Thompson and Dan Eicher. Lastly I would like to acknowledge UF Office of Research, ACM, College of Engineering, and UF Student Government for providing me with numerous travel grants for attending conferences held all over the world. 4 TABLE OF CONTENTS page ACKNOWLEDGMENTS .................................. 4 LIST OF TABLES ...................................... 8 LIST OF FIGURES ..................................... 9 ABSTRACT ......................................... 12 CHAPTER 1 GENERAL INTRODUCTION ............................ 14 1.1 IP Multicast ................................... 14 1.1.1 Why Multicast? ............................. 15 1.1.2 Requirements for Enabling/Using Multicast .............. 18 1.1.2.1 Multicast addressing ..................... 18 1.1.2.2 Multicast routing ....................... 20 1.1.2.3 IGMP/MLD: Internet group management protocol .... 21 1.1.2.4 Users perspective: low usability .............. 24 1.1.2.5 ISPs perspective: network complexity ........... 25 1.2 What This Dissertation Tries to Solve? .................... 26 1.3 Conclusion ................................... 27 2 TOWARD SEAMLESS MULTICAST SESSION DISCOVERY .......... 28 2.1 Design Goals .................................. 28 2.2 Distributed Hash Table ............................. 29 2.2.1 Records Structure ........................... 29 2.2.2 DHT Hierarchy Construction ...................... 31 2.2.3 DHT Operations ............................ 34 2.2.3.1 Addition of a domain ..................... 34 2.2.3.2 Removal of a domain .................... 35 2.2.3.3 Addition of session record .................. 36 2.2.3.4 Deletion of a session record ................ 37 2.2.4 DHT Stability .............................. 38 2.3 Supporting Multicast Session Discovery ................... 39 2.3.1 Database Design ............................ 39 2.3.1.1 Global records database .................. 39 2.3.1.2 Local records database ................... 41 2.3.1.3 Geo-tagged database .................... 41 2.3.2 Associated Algorithms ......................... 44 2.3.2.1 Session registration ..................... 44 2.3.2.2 Session search ........................ 46 2.3.2.3 Recovering from parent node failures ........... 49 5 2.4 Related Work .................................. 52 2.4.1 Multicast Session Search Strategies ................. 52 2.4.1.1 mbone sdr - session directory ............... 52 2.4.1.2 Multicast session announcements on top of SSM ..... 53 2.4.1.3 The next generation IP multicast session directory .... 54 2.4.1.4 Harvest ............................ 54 2.4.1.5 Layered transmission and caching for the multicast session directory service ....................... 55 2.4.1.6 Towards multicast session directory services ....... 55 2.4.1.7 IDG: information discovery graph .............. 55 2.4.2 Peer-2-peer DHT Schemes ...................... 56 2.4.2.1 Chord ............................. 56 2.4.2.2 OpenDHT ........................... 57 2.4.2.3 Tapestry ........................... 57 2.4.2.4 Pastry ............................. 58 2.4.2.5 Kademlia ........................... 58 2.4.2.6 CAN: a scalable content addressable network ...... 59 2.5 Conclusion ................................... 59 3 TACKLING USABILITY ............................... 61 3.1 IP Unicast vs Multicast ............................. 61 3.2 Domain Name Service ............................. 62 3.2.1 DNS Hierarchy ............................. 62 3.2.2 DNS Name Resolution ......................... 63 3.2.3 DNS Records .............................. 63 3.3 URL Registration Server ............................ 64 3.3.1 URS Internals .............................. 65 3.3.2 mDNS Name Resolution ........................ 66 3.3.3 Additional Usage ............................ 67 3.4 Conclusion ................................... 68 4 BRINGING USABILITY AND SESSION DISCOVERY TOGETHER ....... 69 4.1 Revisiting Objectives .............................. 69 4.2 Integrating ‘mDNS’ DHT and URL Scheme ................. 70 4.2.1 A Complete Picture ........................... 70 4.2.2 System Setup in Various Network Environment ........... 72 4.3 Use of Caching ................................. 74 4.4 Domain Specific Search ............................ 76 4.5 Managing Faults ................................ 76 4.5.1 Failure in Portions of DNS Infrastructure ............... 76 4.5.2 Failure of URS ............................. 77 4.5.3 Failure of MSD Server ......................... 78 4.6 Goals Achieved ................................. 78 4.6.1 Global Scalability and Distributed Design ............... 78 6 4.6.2 Existence in Present Network Environment ............. 79 4.6.3 Real Time Session Discoverability .................. 79 4.6.4 Ability to Perform a Multi-Parameter Search ............. 79 4.6.5 Fairness in Workload Distribution ................... 80 4.6.6 Plug-n-Play Design With Low System Administrator Overhead ... 80 4.6.7 Partial and Phased Deployment .................... 80 4.6.8 Self Management ............................ 81 4.6.9 Multicast Mode Independence ..................... 81 4.7 Looking Back - High Level Assessment of the ‘mDNS’ Service Framework 81 4.8 Conclusion ................................... 82 5 ARCHITECTURE VALIDATION: SIMULATION AND ANALYSIS ......... 83 5.1 Introduction ................................... 83 5.2 Simulation Environment and Strategy Description .............. 83 5.2.1 Starting the Simulation ......................... 85 5.2.2 Validity .................................. 86 5.2.3 Simulation Domain Hierarchy Setup ................. 86 5.3 Simulation Results ............................... 87 5.3.1 Latency Experiment Results ...................... 95 5.4 Qualitative Analysis and Comparison ..................... 101 5.4.1 Geo-Tagged Database - Complexity Analysis ............ 101 5.4.2 Hash-Based Keyword Routing - Fairness Analysis ......... 103 5.4.3 A Comparison with Other DHT Schemes ............... 105 5.5 Conclusion ................................... 107 6 CONCLUDING REMARKS ............................. 108 APPENDIX: SIMULATION CONFIGURATION PARAMETERS ............. 113 REFERENCES ....................................... 127 BIOGRAPHICAL SKETCH ................................ 134 7 LIST OF TABLES Table page 1-1 IANA assigned multicast addresses (few examples) ............... 19 3-1 Common DNS record types ............................. 64 4-1 Typical cache structure ............................... 75 5-1 Partial simulation data for scenario 1 hierarchy for permutation list [10, 4, 5, 6, 1, 2, 7, 8, 9, 3] .................................... 89 5-2 Partial simulation data for scenario 2 hierarchy for permutation list [10, 4, 5, 6, 1, 2, 7, 8, 9, 3] .................................... 92 5-3 Partial simulation data for scenario 3 hierarchy for permutation list [10, 4, 5, 6, 1, 2, 7, 8, 9, 3] .................................... 93 5-4 Latency measurements summary .......................... 96 5-5 DHT feature comparison ............................... 106 8 LIST OF FIGURES Figure page 1-1 Data transmission in unicast v multicast ...................... 15 1-2 Perceived data rate in unicast v multicast ..................... 16 1-3 Bandwidth requirements vs number of recipients in unicast and multicast ... 17 1-4 Multicast address format in IPv6 .......................... 19 1-5 IGMP v3 packet format - membership query .................... 22 1-6 IGMP v3 packet format - membership report ................... 23 2-1 Local and global session records structure .................... 30 2-2 A general domain hierarchy ............................. 32 2-3 Example routing table structure ........................... 35 2-4 Steps in DHT domain addition ........................... 36 2-5 DHT record insertion example ........................... 37
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages134 Page
-
File Size-