今天在无盘资源网看到果子自言自语说DHCP时狂发26个包速度会快些,于是就自己写了个简单的程序测试一下.
我用Delphi做了个DHCP+TFTP服务器,准备在VPC虚拟机上做试验,并用CommView抓包检查.
首先用抓包工具看了下,从请求DHCP到接到DHCP回应这个很正常,但接收到回应后它还在那里转啊转,过了一会才开始用TFTP下载PXE启动文件,在这一步就很快了,没有停顿时间.看来这个慢就慢在接收到回应后没有马上应用上了.
接着测试了下常规方法,就是接收到一个包再回复一个包,这样的确很慢,从发包到TFTP下载花了差不多4秒的时间.
然后测试接收到DISCOVER包狂发回应(观察到REQUEST包没必要狂发,因为这一步是很快的),结果压根启动不了...
就在我准备放弃的时候突然想到,是不是发的太快了造成的呢?于是就Sleep一下再发,还是发26个包,结果一闪就过去了,从Commview上看用了还不到一秒的时间!