Lecture 
              | 
          Title 
              | 
          References 
              | 
        
        
          Information Storage and Retrieval
                (Gossiping, P2P Networks, DHTs) 
           | 
        
        
          | 1 | 
          Epidemic
              Based Algorithms | 
          Epidemic
              Algorithms for Replicated Database Maintenance | 
        
        
          Gossip
              Based Algorithms 
           | 
          A
              Gossip-Style Failure Detection Service 
              YouTube
              video (gossip and epidemic based protocols) 
           | 
        
        
          | 2 | 
          Napster and Gnutella 
           | 
          Napster and Gnutella: A Comparison
              of Two Popular Peer to Peer Protocols 
              YouTube
              video 
           | 
        
        
          | 3  | Pastry
              DHT 
           | 
          Pastry:
              Scalable, decentralized object location and 
              routing for large-scale peer-to-peer systems 
             
               YouTube
              video | 
        
        
          | 4 | 
          Chord
              DHT 
           | 
          Chord:
              A Scalable Peer-to-peer Lookup Service for Internet
              Applications 
             YouTube
              video 
           | 
        
        
          | 5 | 
          Freenet 
           | 
          Freenet: A Distributed Anonymous
              Information Storage and Retrieval System  
             
             
            YouTube video 
           | 
        
        
          | 6 | 
          BitTorrent 
             | 
          1.
              Wikipedia page 
            2.
              Dissecting BitTorrent: Five Months in a Torrent's Lifetime 
            3.
              Kademlia: A Peer-to-Peer Information System Based on the
              XOR Metric 
             
            YouTube video 
              | 
        
        
          Distributed Algorithms 
           | 
        
        
          | 7 | 
          Logical
              Clocks, Physical Clocks, GPS 
           | 
          1.
              Time, Clocks, and the Ordering of Events in a Distributed
              System 
            Berkely
              algorithm link 
             
            YouTube video 
           | 
        
        
          | 8 | 
          Lamport's
              Mutual Exclusion Algorithm 
           | 
           
           | 
        
        
          Ricart
              Agarwala Algorithm 
              Maekawa's Algorithm 
           | 
          1.
              A root(N) Algorithm for Mutual Exclusion in Decentralized
              Systems (paper on Maekawa's Algorithm) 
           | 
        
        
          Token
              based Mutual Exclusion 
           | 
            YouTube video  | 
        
        
          | 9 | 
          Leader
              Election 
           | 
            YouTube video  | 
        
        
          | 10 | 
          Minimum
              Spanning Tree (GHS Algo.) 
           | 
          Refer
            to the book by Gerard Tel. 
             
            YouTube video 
             
           | 
        
        
          Chandy Lamport Algorithm 
           | 
        
        
          | 11 | 
          The FLP Result 
           | 
          1.
              Impossibility of Distributed Consensus with One Faulty
              Process 
            2. Simple explanation of the proof: link 
             
            YouTube video 
           | 
        
        
          | 12 | 
          The CAP Theorem |  Brewer's
              Conjecture and the Feasibility of Consistent, Available,
              Partition-Tolerant Web Services 
[Self study]  
              YouTube video
  | 
        
         |  13  | 
          Paxos
           | 
          1.
              The Part-Time Parliament 
            2.
              Paxos Made Simple 
               Youtube
              video 
           | 
        
        
          | 14 | 
          Raft
              consensus protocol 
           | 
          In
              Search of an Understandable Consensus Algorithm 
              Youtube video  
           | 
        
         |  15  | 
          Byzantine General's Problem 
           | 
          The
              Byzantine Generals Problem 
              Youtube video | 
        
        
          | 16 | 
          Virtual
              Synchrony, 2-Phase and 3-Phase Commits 
           | 
          Nonblocking
              Commit Protocols (1981 SIGMOD) 
              Youtube video  
           | 
        
         |  17  | 
          Bitcoin
 and Blockchains 
           | 
          1.
              Bitcoin and Cryptocurrency Technologies, 2016 
            2.
              Hashcash - A Denial of Service Counter-Measure 
            3.
              Bitcoin: A Peer-to-Peer Electronic Cash System 
            4.
              Architecture of the Hyperledger Blockchain Fabric  
            5.
              Comparison of Ethereum, Hyperledger Fabric, and Corda 
            6.
              Bitcoin's Academic Pedigree 
              Youtube video  
           | 
        
        
          | 18 | 
          Stellar Consensus Protocol | 
                        YouTube video | 
        
        
          | 19 | 
          Ethereum | 
          Wood,  Gavin. "Ethereum: A secure decentralised generalised  transaction ledger." Ethereum project yellow paper  151.2014 (2014) 
            
  YouTube video
  | 
        
        
          | Large-scale Distributed Systems | 
        
        
          | 20 | 
          Coda | 
           1.
              Coda: A Highly Available File System for a 
              Distributed Workstation Environment 
            2.
              Fallacies of Distributed Systems 
             Youtube video 
           | 
        
         |  21  | 
          Amazon
              Dynamo | 
          Dynamo:
              Amazon’s Highly Available Key-value Store 
              Youtube video 
           | 
        
        
          | 22 | 
          Google Percolator 
           | 
          Large
              Scale Incremental Processing Using Distributed
              Transactions and Notifications 
             Youtube video 
             | 
        
         |  23  | 
          Corona | 
          A
              High Performance Publish-Subscribe System for 
              the World Wide Web 
              Youtube video 
                     Notes used
            along with the video (link) 
           | 
        
        
          | 24 | 
          Facebook: Cassandra | 
          Cassandra:
              A Decentralized Structured Storage System 
               Youtube video 
             | 
        
         |  25  | 
          Facebook: Photo Storage | 
          Finding
              a Needle in a Haystack: Facebook's Photo Storage 
               Youtube video 
             | 
        
        
          | 26 | 
          Voldemort (LinkedIn) 
             | 
          Project
              Voldemort -- Distributed Key-Value Storage 
               Youtube video 
             | 
        
         |  27  | 
          Condor | 
          Distributed
              Computing in Practice: 
              The Condor Experience 
              Youtube video | 
        
        
          | 28 | 
          DryadLINQ | 
          DryadLINQ:
              A System for General-Purpose Distributed  
              Data-Parallel Computing Using a High-Level Language 
              Youtube video |