Presentation is loading. Please wait.

Presentation is loading. Please wait.

Miscellaneous NBT Team. 2 1. Naming (1/2) Client: global, unique identifier PM: global, unique identifier –This is the policy identifier DIM: global,

Similar presentations


Presentation on theme: "Miscellaneous NBT Team. 2 1. Naming (1/2) Client: global, unique identifier PM: global, unique identifier –This is the policy identifier DIM: global,"— Presentation transcript:

1 Miscellaneous NBT Team

2 2 1. Naming (1/2) Client: global, unique identifier PM: global, unique identifier –This is the policy identifier DIM: global, unique identifier –This is the data item identifier Chunk: unique identifier within a data item –Can be identified by its position in the chunk Stream/Stripe: unique identifier within a data item Block: unique identifier within a chunk –Can be identified by its position in the chunk

3 3 1. Naming (2/2) In the Database, clients, data items (i.e., DIMs) and policies (PMs) are identified by their IDs DIMs, PMs, Data Item Directory and the Database are globally reachable via their IDs (i.e., through i3 that stores their ID  IPaddr mappings) Clients are not globally reachable via their IDs –Instead DIMs and PMs maintain the list of active/available clients

4 4 2. Data Plane Naming How does the receiver know to which data item, chunk, stream, or chunk does the data in a packet belongs to? Proposal: –Identify data using control packets –At any given time a TCP connection carries the data from a single finest-granularity data object: chunk, in the case of VoD and file-sharing stream, in the case of live streaming Advantages: –Simple, flexible Disadvantages: –Inefficiency: A TCP connection for each stream, even though streams are downloaded from the same parent Note: no need to create a TCP connection for a chunk/block downloaded from the same parent, as long as only one chunk/block is downloaded at a time

5 5 3. Data Item Grouping Examples: –All Disney channels –All sport channels Proposal: –Allow grouping Data Items in arbitrary groups –Use a globally unique ID to identify a Data Item (DI) group –Have an entity similar to PM manage each DI group; call this Data Item Group Manager (DIGM) –Each data item should have a list of groups it belongs to –The group membership can be periodically requested from the database (the same way clients periodically request the policy they belong to) Alternative: –Instead of PMs and DIGMs have GOs (group of objects), where objects can be either (1) clients or (2) data items –Generalize PM semantics to include data items as well Question: what is the role of DIGM?

6 6 4. Client Control on Library Buffer Can the client control the library buffer, and if yes how? Proposal: No; not clear how much the client will benefit, while the downside is obvious (see below) Advantages: –Simplicity –Better control on client resources; if clients were allowed to chose the library buffer size, we would need to build distribution trees for clients with different delay requirements  seems very difficult Disadvantages: –Lack of flexibility

7 7 5. VoD: To Stripe or Not to Stripe? Are stripes needed in the case of VoD or is the block-level parallelism enough? Proposal: use only chunk level parallelism –A client requests the DIM to download a particular chunk c –The DIM returns a set of parents that store or have requested chunk c –Each client periodically sends the list of blocks it misses (from chunk c) to its neighbors –A client sends the rarest block to a neighbor; ties are broken as follow Smallest sequence number Neighbor that has fewest blocks Advantages: –Simplicity Disadvantages: –(Slightly?) more complex client code –Larger delay, less parallelism?

8 8 5. VoD Example Assume node “1” stores an entire chunk consisting 8 blocks and all other nodes want to download the entire block Assume that during a time unit, a client can send at most one block and receive two blocks 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 0

9 9 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 1 1

10 10 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 2 1 2 1

11 11 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 3 1 2 1 3 1 1 2

12 12 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 4 1,4 2 1 1,2,3 1,2 1

13 13 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 5 1,4 1,2,5 1,3,4 1,2,3 1,2

14 14 5. VoD Example Blocks transmitted during this time unit are in red 1 1 2 2 4 4 7 7 5 5 3 3 6 6 8 8 1,2,3,4,5,6,7,8 Time = 6 1,4,6 1,2,3,5 1,3,4 1,2,3 1,2,4 1,2,5


Download ppt "Miscellaneous NBT Team. 2 1. Naming (1/2) Client: global, unique identifier PM: global, unique identifier –This is the policy identifier DIM: global,"

Similar presentations


Ads by Google