检测电脑传输时间的问题
现在用两个模型在一台电脑上模拟三台电脑传输文件,要检测出来这三台相互传输文件的传输/接收时间。
模型一:电脑1传输文件给电脑2的同时,电脑2只要一接受到文件的部分数据,就开始往电脑3上接收到的文件数据;
模型二:电脑1传输文件给电脑2完了以后,再向电脑3传输相同的文件。
按照理论的设定,模型一的传输时间应该是要少于模型二的传输时间。我在一台电脑上做实验,为什么检测出来的模型二时间少于模型一的时间,而有人用和我相类似的程序做出的数据结论是模型一时间少于模型二? 是我用的算法不够简练,还是一台电脑的内部本身问题?(因为一台电脑模拟出来的网络环境应该可以认为是理想的网络环境)。我认为传输文件的时间大小,应该和所处的网络环境、电脑配置关系更紧密,不知道这样理解对不对,或者说还和什么有紧密的关系?我用插件直接编出来的网络通信程序和用C直接编出来的通信程序,如果设计理念是相同的,传输效率、时间上会有差别吗?
另外想知道是不是如果把传输/接收缓存区buffer设定的越大,理论上的传输速率就越高,时间就越短,如果这样那我能设定最到的最大buffer是多少呢?如果我不设定buffer的值,有没有个直观的方法或者函数检测传输的速度?
问题有点菜,希望大家能详细回答,不甚感激!