Skip to content

zhuha0yu/netchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project group15(NetChain)

Authors

* Francisco Dumont ([email protected])
* Haoyu Zhu ([email protected])

Introduction

This is the cource project of Advanced Topics in Communication Networks. The project is to reproduce a paper: NetChain: Scale-Free Sub-RTT Coordination.

This project contains 4 folders:

  • src/* contains our implementation files and testing scripts.
  • evaluation/* contains evaluation log and result.
  • report/* contains report of the project.
  • presentation contains presentation slide.

NetChain basis

NetChain is a switch based distributed key-value storage system to archive a quick and reliable key-value storage. The consistent hashing is used to keep scalaibility and virtual nodes is used to keep load balanced. A chain replication is used to boost the sync between switches. A fast fail-over and recovery method is implemented in the project to make it robust.

The Netchain packet is structed using UDP payload and have some special structure to routing through the chain.

NetChain UDP messgae frame stracture

Basic Headers

  • Ethernet Header, 14Bytes.
  • IPv4 Header, 20Bytes.
  • UDP Header, 8Bytes.

NetChain Headers and payloads

  • SC(Chain node counts), 2Bytes, maximum 32.
  • S0...Sn(Chain node ip addresses), variable length, maximum 32 nodes, 128Bytes.
  • OP(Operation of this queue), 2Bytes.
  • SEQ(Sequence number), 4Bytes.
  • KEY(Queue key), 2Bytes.
  • VALUE(Queue return value), default 0 for read and delete, 8Bytes.

Topology

alt Topology

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published