만약 single access point가 fail하면, 전체 클러스터 서비스가 unavailable해진다. (SPF 문제)
그래서 단일이 아닌 여러 access point를 제공하면서, client에게는 static/stable한 하나의 access point만 노출시켜야 한다.
첫번째 방법은 주소를 공개적으로 제공하는 것이다.
ex) DNS : 같은 host name에 여러 ip address를 둔다.
하지만 이러한 접근은 client에게 여러 access point가 있다는 점을 노출시키는 것이다.
다음 방법은 flexible한 서버 클러스터를 구성하는 법이다.
하나의 AP가 고장나면 다른 AP를 사용하는 방법이다.
서버 클러스터를 flexible하게 구성이 되게해 확장하면 이를 분산 서버라고 할 수 있다.
distributed servers : 분산 서버
서버머신들의 구성이 동적으로 구성될 수 있는 서버를 말한다. (쉬운 교체도 가능)
client는 stable한 AP를 가지고 robust하고 고성능의 서버를 사용할 수 있다.
어떻게 stable한 AP를 얻을 수 있을까?
ex) mobility support for IPv6 (MIPv6) - ip 프로토콜
: target ip address를 보고 그 ip address를 가지고 있는 서버머신 쪽으로 패킷을 라우팅해주는 라우팅 알고리즘을 돌리는 프로토콜이다.
MIPv6 설명
node가 mobile, 움직이는 node이다.
이 환경에는 mobile node와, home network안에서 돌아갈 수 있는 home address를 할당받아 사용한다.
home network 밖에 mobile node와 통신하고 싶어하는 client node가 존재할 때
이 client는 통신하기 위해 mobile node의 home address를 가지고 연결을 한다.
그런데 home address는 home network 안에 있을 때만 의미가 있다.
mobile node가 움직이다보면 home network를 벗어날 때, home address(HoA)는 의미가 없어지게 된다.
그러면 mobile node는 다른 network로 옮겨갈 수 있다. 이 network는 Foreign network, 새로 할당된 address를 care-of address라고 한다.
client 입장에서는 원래의 home address를 가지고, care-of address(CoA)로 접근하고 싶어한다.
이 상황을 해결하기 위해
home network에는 special router인 home agent가 존재한다. 서버 클러스터에서의 switch 역할!
이 home agent는 home 안에 있는 노드에 대한 정보를 tracking한다.
만약 node가 foreign network로 넘어간다면 care-of address도 테이블에 저장해 둔다.
패킷이 들어온다면 home agent에서 CoA로 패킷을 보내준다.
이 방법을 사용한다면 분산서버에서 Stable AP를 제공할 수 있다?
: client가 cluster에 접근할 때 서버에 있는 하나의 contact address로 접근하게 한다.
서버 클러스터에 있는 노드들 중 AP로 동작할 서버를 하나 선택한다.
AP로 선택된 서버는 자신의 원래 address를 care-of address로 home-agent(switch)에 등록한다.
client가 contact address로 패킷을 날리면 그 패킷이 home-agent로 들어와 AP로 간다.
AP가 실패할 경우, 새로운 서버를 선택해 home-agent의 AP주소를 바꾼다....
home agent를 모두 거쳐가기 때문에 bottlenectk 현상이 발생한다.
이 문제를 해결하기 위해 route optimization을 사용한다.
간단하게 트래픽을 분산시키자는 것이다.
CoA를 home agent도 가지고 있고, client에게도 알려준다. -> home agent를 거치지않고 CoA로 바로 보낸다.
그럼 access transparency가 깨지지 않나?
mobile에서는 layer가 나눠져 있어서 application은 여전히 home address로 알고 있고,
IP 프로토콜 단(low level)에서 주소가 HoA -> CoA로 바뀐다.
'협동분산시스템' 카테고리의 다른 글
Code migration - 2 (0) | 2019.04.16 |
---|---|
Code migration - 1 (0) | 2019.04.16 |
Servers : Server clusters-3 (0) | 2019.04.16 |
Servers : Server clusters-1 (0) | 2019.04.15 |
Introduction (0) | 2019.04.09 |