随笔分类 -  Byzantine Fault Tolerance

For Paper Reading
安装PBFT to red hat 7.2
摘要:1.安装Red Hat 7.2 物理机:ubuntu 12.04+虚拟机:kvm 使用虚拟机管理程序virt-manager安装red hat 7.2(ISO文件:enigma-i386-disc1.iso+enigma-i386-disc2.iso) 在建立虚拟机的步骤5的高级选项的网络模式中选择"Specify shared device name",使用网桥br0.在ubuntu中设置网桥auto lo iface lo inet... 阅读全文
posted @ 2012-08-24 11:44 york_hust 阅读(1661) 评论(0) 推荐(0) 编辑
bft的config_private不一致导致的segment fault
摘要:在运行bft的时候bft_2,bft_3出现segment fault.只运行一台的时候并没有这个错误,而是在收到别的replica或client的new_key_tag msg时出现segment fault查明出错语句为:node->decrypt(dst, dst_len, (char *)k, Nonce_size);将libbyz和simple替换为正确的replica的无效,于是问题只可能出在config_private和config上,检查了一下,所以无错的node的config_private是相同的,于是把出错的也改成相同的,问题解决 阅读全文
posted @ 2012-07-26 09:21 york_hust 阅读(282) 评论(0) 推荐(0) 编辑
batch size自适应log(2)
摘要:1.上午对Req_queues.cc进行了修改,将其原本只能为每个client存储一个request改成了可以存储多个requests.queue是一个双向链表原本的queue是按照先入先排的顺序进行排列的.如果新来的request对应的client在queue中没有比新来的request大的request存在,则将新来的request入队,并把其它的request删除(这个为什么要删除其实我还不懂).而我的修改其成为如果有新的request来,则把新的request插入到对应client的request后面,如果还没有这样的request在队列中,就append到队尾.然而在执行的时候出错了 阅读全文
posted @ 2012-06-29 15:47 york_hust 阅读(147) 评论(0) 推荐(0) 编辑
batch size自适应log(1)
摘要:1.首先要知道每一次发送的batch size的值的大小修改pre_prepare.cc中的函数Pre_prepare::Pre_prepare(View v, Seqno s, Req_queue &reqs) :Message(Pre_prepare_tag, Max_message_size){}在其中加入一行:printf("reqs.size: %d",reqs.size());以查看reqs.size,但在运行时并没有打印出信息在你要寻找一个函数时就应该找使用这个函数的对象或类,在哪里有这个对象的定义,在哪里就会有这个函数的使用在replica.cc中发 阅读全文
posted @ 2012-06-28 11:11 york_hust 阅读(450) 评论(0) 推荐(0) 编辑
bft安装log(4)
摘要:1.因为运行replica时出现"unable to join group",进入replica,打印group等的信息在函数Replica::join_mcast_group() 加入1951 //change by york1952 struct in_addr addr_test;1953 addr_test.s_addr =req.imr_multiaddr.s_addr;1954 printf("req.imr_multiaddr: %s\n", inet_ntoa(addr_test));1955 printf("\nreq.imr 阅读全文
posted @ 2012-06-15 11:32 york_hust 阅读(224) 评论(0) 推荐(0) 编辑
bft安装log(3)
摘要:1.应该修改的rabin.h不是在安装目录下的,而是在/usr/local/include/sfs-0.6/rabin.h的这个,继续修改.因为sfs,gmp都是已经安装好了的,所以安装目录已经没有太大的用处了,那么...我做的链接sfs,gmp是不是也不对?2.在运行simple/server时出现"Could not find my principal",于是在Node.cc中node的构造函数中加入以下内容,查看运行结果118 //change by york119 //printf("\nmy_address.s_addr: %256c",my_ 阅读全文
posted @ 2012-06-14 11:36 york_hust 阅读(320) 评论(0) 推荐(0) 编辑
bft安装log(2)
摘要:1.安装redhat7.22.修改开机等待时间(/etc/grub.conf)3.配置网络:使用netconfig命令配置,把ip地址和网桥同一个网段即可,修改主机名(/etc/sysconfig/network)4.传输bft_source.tar.gz到guest上,记得要使用非root用户进行操作(创建文件夹,传输文件)这样非root用户才有使用文件的权限5.配置redhat上的ssh,没有c编译器!!!!!!,重装系统6.发现groupadd所在文件夹没有加入环境变量中,这是因为提权(su)进入root时不会有/sbin路径.使用su -就可以了7.先安装gmp,很顺利8.再安装sfs 阅读全文
posted @ 2012-06-13 09:21 york_hust 阅读(320) 评论(0) 推荐(0) 编辑
bft安装log(1)
摘要:环境:freebsd4.11_mini+bft-base-src-rh72.tar.gz+gmp-5.0.5.tar.bz2+sfs-0.5.tar.gz1.安装freebsd4.112.把tar文件移到系统中(scp)[网络:br0+tap0]3.修改ip(/etc/rc.conf)4.修改启动等待时间:在 /boot/loader.conf 中加上以下这一行autoboot_delay="秒数" ,如autoboot_delay="3" 代表3秒5.出现rl0: watchdog timeout 阅读全文
posted @ 2012-06-12 10:26 york_hust 阅读(252) 评论(0) 推荐(0) 编辑