2010-02-05 3 views
0

서버 측 클라이언트가 서버 측에서 거의 또는 전혀 도움을받지 않고 수행 할 수있는 클라이언트 공유에 대해 생각해 보았습니다. 이 -이 바보 소리 경우클라이언트 측에서 서버에 대한로드 공유를 구현하는 순수한 방법에 대한 의견

실례, BU 여기에 내가 간다 -

  1. 서버는 서버 이름, 서버 IP 주소의 필드와 해당 IP가 MAC ID의를 해결를 저장하는 테이블이 있습니다 (예, 이것은 매우 Windows 중심 접근 방식입니다.)
  2. 클라이언트가 주 서버에 로그온 할 때마다 서버에 모든 서버 엔트리의 IP 주소를 반환하는 질의를 보낸다. 하나의 서버가 여러개의 rsynced 복사본을 가지고 있다고 가정 할 때 각각의 MAC ID는
  3. 이다. 클라이언트는 각각에 대해 traceroute를 구현한다. 이러한 IP 주소 중 하나를 선택하여 증가하는 호프 (hopcount) 순서로 배열에 저장합니다.
  4. 이 배열을 반복하고 arp를 구현하여 IP 주소를 MAC ID로 확인합니다. 그런 다음이 MAC ID를 1 단계에서 주 서버에서 가져온 ID와 비교하십시오. 일치하는 경우 연결할 서버 선택은 홉 수 + MAC ID 일치 +로드를 나타내는 메트릭 (그 순간에 해당 서버에 대한 연결).

이 아이디어가 어떻게 들릴지에 대한 의견을 환영합니다.

답변

1

로드 공유가 홉 수에만 기반 할 수 있다고 생각하지 않습니다. MAC 주소가 필요한 이유는 무엇입니까? 한 서버가 빨리 도달하지만 사용량이 많으면 최상의 선택이 아닐 수도 있습니다. 어쩌면 주 서버에 서비스를 추가하여 모든 서버에 대한 클라이언트 수를 추적하여이를 기준으로 사용할 수 있습니다. 그러나 이는 오래되고 간단하고 일반적인로드 균형 조정과 비슷합니다.

+0

내가 생각한 부분 이었지만 추가하는 것을 잊어 버렸습니다. :) – ping

관련 문제