implementation of file node ring
rebased