컴퓨터망
7. Mobile IP
mobile은 지난 10년 동안 많은 관심을 받았다
인터넷에서의 mobile에 대한 관심은 원래 고정 장치를 위해 설계된 IP 프로토콜이 한 네트워크에서 다른 네트워크로 이동하는 컴퓨터인 모바일 컴퓨터를 사용할 수 있도록 향상되어야 한다는 것을 의미한다
Addressing
IP 프로토콜을 사용하여 이동통신을 제공함에 있어 주소문제는 해결되어야 한다
Stationary Host
IP주소는 정적 호스트를 위해 디자인되었다 이는 주소의 일부가 호스트가 연결된 네트워크를 정의하기 때문
Mobile Host
- 호스트가 다른 네트워크로 움직일때 IP 주소는 수정되어야한다
Mobile IP는 2개의 주소를 가진다
- home address
- care-of address
- 호스트가 외부 네트워크에 있다면, care of address를 받는다
Agents
주소 변경을 다른 인터넷에서도 transparent하게 하려면 home agent와 foreign agent가 필요
Home agent
- home network에 있는 라우터
- 다른 호스트가 모바일 호스트에 패킷을 보낼 때 홈 에이전트는 모바일 호스트를 대신하여 작동.
- 홈 에이전트는 패킷을 수신하여 foreign 에이전트로 보냄
Foreign agent
모바일 호스트와 foreign 에이전트가 같으면 care of address는 colocated care of address라고 한다
- colocated care of address를 사용하면 모바일 호스트가 외부 에이전트의 가용성에 대해 걱정하지 않고 모든 네트워크로 이동할 수 있다
- 단점은 모바일 호스트가 자체 foreign 에이전트 역할을 하기 위해 추가 소프트웨어가 필요하다는 것
Three phase
- 외부 호스트와 통신하기 위해 모바일 호스트는 에이전트 검색, 등록 및 데이터 전송을 거침
- 에이전트 검색은 모바일 호스트, foreign 에이전트 및 홈 에이전트를 포함.
- 등록에는 모바일 호스트와 두 에이전트도 포함
- 전송에서는 원격 호스트도 포함
Agent discovery
- 2단계로 구성되어있다
- mobile host는 home network를 벗어나기 전에 home agent를 찾아야한다
- 모바일 호스트는 foreign network를 벗어나기전에 foreign agent를 찾아야한다
- 이 검색은 foreign 에이전트의 주소뿐만 아니라 care of 주소도 얻는다
- 검색은 2개의 메시지를 포함한다
- advertisment
- solicitation
Agent advertisment
- 라우터가 ICMP 라우터를 사용하여 네트워크에서 자신의 존재를 알릴 때, 라우터가 에이전트 역할을 하는 경우에는 패킷에 Agent advertisment를 추가할 수 있다
모바일 IP는 agent advertisment에 새 패킷 유형을 사용하지 않는다
ICMP의 라우터 advertisement 패킷을 사용하고 이곳에 agent advertisment 메시지를 추가한다
Agent Solicitation
- 모바일 호스트가 새로운 네트워크로 이동해 agent advertisment를 못받았을 때, agent solicitation을 할 수 있다
- ICMP solicitation 메시지를 사용할 수 있다
Mobile IP는 agent solicitaiton에 새 패킷 유형을 사용하지 않는다
ICMP의 solicitation 부분을 사용한다
Registration
- 모바일 호스트가 외부 네트워크로 이동 후 외부 에이전트를 찾았다면, 이를 등록해야한다
- 4가지 측면이 있다
- 모바일 호스트는 외부 에이전트에 등록해야 한다
- 모바일 호스트는 홈 에이전트에 등록해야 한다. 일반적으로 모바일 호스트를 대신하여 외부 에이전트가 이 작업을 수행
- 모바일 호스트가 만료된 경우 등록을 갱신
- 모바일 호스트는 홈으로 가면 등록을 취소해야 한다
Request, reply
- 에이전트들에 등록을 위해 모바일 호스트는 요청과 응답을 사용한다
request reply는 UDP로 보내지며 포트번호 434를 사용한다
Registration request
모바일 호스트에서 외부 에이전트로 등록 요청이 전송되어 care of 주소를 등록하고 홈 주소와 홈 에이전트 주소를 알린다
외부 에이전트는 요청을 수신하고 등록한 후 메시지를 홈 에이전트로 보낸다
이에 사용되는 IP 패킷은 외부 에이전트의 IP 주소를 원본 주소로 가지고 있기 때문에 홈 에이전트는 이제 외부 에이전트의 주소를 알고 있다
Registration request format
Registration reply
reply는 홈 에이전트에서 외부 에이전트로 전송된 다음 모바일 호스트로 릴레이 된다 reply는 등록 요청을 확인하거나 거부한다
Registration reply format
Data transfer
- 에이전트 discovery, registration 이후 모바일 호스트는 remote 호스트와 통신할 수 있다
- remote 호스트에서 홈 에이전트로
- remote 호스트가 모바일 호스트로 패킷을 보내려고 할 때 remote 주소를 source 주소로 사용하고 모바일 호스트의 홈 주소를 destination 주소로 사용
- 즉 원격 호스트는 모바일 호스트가 홈 네트워크에 있는 것처럼 패킷을 보냄
- 홈 에이전트에서 외부 에이전트로
- 패킷을 수신한 후 홈 에이전트는 패킷을 외부 에이전트로 보냄
- 외부 에이전트에서 모바일 호스트로
- 모바일 호스트에서 remote 호스트로
모바일 호스트의 이동은 인터넷의 나머지 부분에 대해 transparent하다
- remote 호스트는 위의 과정을 알 수 없다
- 외부 호스트는 패킷을 모바일 호스트의 홈 주소로 destination을 설정한다
- 외부 호스트는 모바일 호스트의 홈 주소를 source 주소로 하는 패킷을 수신
Inefficiency in mobile ip
모바일 IP를 포함하는 통신은 비효율적일 수 있다
비효율성은 심각하거나 중간 정도일 수 있다
심각한 경우를 double crossing 또는 2X라고 한다
중간 정도의 경우를 triangle 라우팅 또는 dog leg 라우팅이라고 한다
Double crossing
- remote 호스트가 remote 호스트와 동일한 네트워크(또는 사이트)로 이동한 모바일 호스트와 통신할 때 이중 교차가 발생
- 모바일 호스트가 remote 호스트로 보낼때는 상관 없다
- 그러나 remote 호스트가 모바일 호스트에 패킷을 보낼 때 패킷은 인터넷을 두 번 통과해 비효율 적이다
Triangle routing
- remote 호스트가 모바일 호스트와 동일한 네트워크에 연결되지 않은 모바일 호스트와 통신할 때 발생
- 모바일 호스트가 원격 호스트로 패킷을 보낼 때는 상관 없다
- 그러나 remote 호스트가 모바일 호스트로 패킷을 보낼 때 패킷은 remote 호스트에서 홈 에이전트로 이동한 다음 모바일 호스트로 이동