- 论坛徽章:
- 0
|
原帖由 platinum 于 2005-12-7 15:28 发表
这个是谁负责的?从哪看到的?可否有资料贴一下?
我看了rfc3074,由于涉及到太多算法和数据位的东西,我没有看仔细,按照我的粗劣理解,多个server都收到request,然后一起响应.在优化的情况下,dhcp server会计算哪个server响应,在某个时期可能是一个server响应多些,但从长期趋势来看是平均的,做到了load balance的效果
Because DHCP clients use UDP broadcasts to contact DHCP servers, a
client DHCPDISCOVER message may be received by more than one server.
All servers receiving such a broadcast may respond to the client,
letting the client choose which server it will use.
When a BOOTP relay agent is used, it typically forwards or
rebroadcasts client broadcasts to all configured servers, so a
similar inefficiency is present.
The optimization described allows a server to be chosen for each such
transaction by performing a "serve" / "do not serve" computation. A
forwarding agent can perform the same computation to choose a
forwarding destination.
In either case, the choice of server can be computed, without the
participants having to negotiate who is to respond.
The approach is probabilistic in nature, because it is nearly
impossible to foresee which client will request service next. For
short periods of time, the actual percentage of clients served by a
given server will likely deviate from the desired percentage. As the
number of requests grows, the actual percentage of the load being
handled by each server will approximate the configured percentage.
参考:http://www.ietf.org/rfc/rfc3074.txt
根据IETF上DHC working group发布的网页,rfc3074没有被obsolete掉,也就是还在用的,所以这个load balance的算法应该在广泛使用
参考http://www.ietf.org/html.charters/dhc-charter.html
根据我以前的工作经验,在使用dhcp relay的情况下(用foundry BigIron 8000中的relay), 多个aix上dhcpcd(不同的server)都收到request,虽然我没有抓包,但看到是只有一台的server会产生log,也就是只有一台dhcp server响应.也就是使用了load balance算法优化过了
我想linux下的isc dhcpd程序也应该是遵守rfc3074规范的
[ 本帖最后由 bingosek 于 2005-12-9 13:49 编辑 ] |
|