Computer Science/네트워크

[컴퓨터네트워크] 03. Network Layer Protocols(3) - Mobile IP

lumana 2024. 4. 10. 23:25

Network Layer Protocols(3) - Mobile IP


Mobile IP

  • 노크북이나 스마트폰의 보급이 확대됨에 따라 Mobile IP가 중요해짐
  • Mobile IP는 IP 프로토콜의 확장으로서, 인터넷 연결이 가능한 곳이라면 어디든지 접속을 가능하게 한다.

Addressing

  • 모바일 통신을 해결하기 위한 가장 중요한 문제임
    • 고정된 IP를 쓰는 경우 이동했을 때 그 connection을 어떻게 유지하는가에 대한 solution
  • Stationary Host : IP 불변
  • Mobile Host : 위치에 따라 변경됨
    • Home address : 원래의 주소 (Home Network에서)
      • home address is permanent
      • GPT : 모바일 호스트가 원래 네트워크(Home Network)를 벗어나더라도 이 주소는 변하지 않습니다.
    • Care-of-address : 새로운 위치에서 받은 주소 (Foreign Network에서)
      • the care-of address changes as the mobile host moves from one network to another
      • GPT : Foreign Network: 모바일 호스트가 임시로 연결하는 다른 네트워크
      • GPT : 모바일 호스트가 외부 네트워크(예: 이동 중이나 다른 위치에서)에 연결할 때 임시로 할당받는 주소입니다. 이 주소는 모바일 호스트가 해당 네트워크에 머무르는 동안만 유효합니다.

Agents

  • Agent : 대리인
    • 나를 대신해서 일을 대신해 주는 software적인 기능
  • 주소의 변경이 다른 인터넷 이용자에게 투명하게(transparent) 하기 위해 home agent와 foreign agent가 필요
    • Home agent : home network의 에이젼트
    • Foreign agent : foreign network의 에이젼트
      • Foreign agent가 Mobile host 안에 내재되어 있을 수도 있다.

3단계 (Phases)

  • 리모트 호스트와 통신을 위해 3단계의 절차 필요
    • Agent discovery
    • Registration
    • Data transfer

Figure19.14: Remote host and mobile host communication

  • Phase 1: Agent Discovery
    • Agent Solicitation: 모바일 호스트가 자신이 속한 네트워크의 에이전트(Home Agent)를 찾기 위해 Agent Solicitation 메시지를 보냅니다.
    • Agent Advertisement: Home Agent가 모바일 호스트에게 Agent Advertisement 메시지를 보내어 자신의 존재를 알립니다.
  • Phase 2: Registration
    • 모바일 호스트가 이동 후 외부 네트워크에 도착하면, 새로운 네트워크의 에이전트(Foreign Agent)를 찾기 위해 다시 Agent Solicitation 메시지를 보냅니다.
    • Agent Advertisement: Foreign Agent가 Agent Advertisement 메시지로 응답하여 자신의 존재를 알립니다.
    • Registration Request: 모바일 호스트가 Foreign Agent에게 자신의 Home Address와 Care-of Address를 등록하도록 Registration Request를 보냅니다.
    • Foreign Agent는 Home Agent에게 Registration Request를 전달합니다.
      Registration Reply: Home Agent가 Registration Request를 승인하고, 모바일 호스트와 Foreign Agent에게 Registration Reply를 보냅니다.
  • Phase 3 : Data transfer
    • 원격 호스트(Remote Host)로부터의 데이터는 모바일 호스트의 Home Address로 전송되고, Home Agent는 이 데이터를 모바일 호스트의 Care-of Address로 전달합니다.
    • Data Transfer: 이제 모바일 호스트는 외부 네트워크에서도 데이터를 주고받을 수 있습니다
  • ex1) by gpt
예를 들어, 당신이 여행 중에 다른 도시로 이동했다고 가정해 봅시다. 
여러분의 랩톱(모바일 호스트)은 원래 속해 있는 네트워크(Home Network)를 떠나 
새로운 도시의 네트워크(Foreign Network)에 연결됩니다. 
여러분의 랩톱은 새로운 네트워크에 도착하자마자 
새로운 네트워크의 에이전트(Foreign Agent)를 찾아 통신을 시도하고, 
해당 에이전트는 여러분의 랩톱을 네트워크에 등록합니다. 
이 과정이 끝나면, 여러분은 인터넷을 사용하거나, 
원격 호스트(예를 들어, 회사의 서버)와 데이터를 주고받을 수 있게 됩니다. 
이 모든 과정은 Mobile IP 프로토콜 덕분에 무리 없이 이루어집니다.
  • ex2)
1, 2: (Home) Agent discovery
domain 안에서 agent를 찾기 위해 packet을 뿌리고 응답을 받아 agent를 찾는 과정
3, 4: (Foreign) Agent discovery
5, 6 : registration
나 광운대(home)에 있다가 고려대에 왔어 라고 알리는
--> 모바일 호스트가 Foreign Agent에게 자신의 Home Address와 Care-of Address를 등록
9: data transfer
그렇게 되면 고려대에 있어도 광운대 IP를 가진 애는 다른 remote host와 data를 주고 받을 수 있게 된다.
고려대 우체국아 광운대 우체국에 오는 거 있음 좀 알려줄래?

Agent Advertisement, Discovery

  • Mobile IP는 agent advertisement를 위한 새로운 유형의 packet을 따로 사용하지 않음.
    • ICMP의 라우터 advertisement packet을 사용하고, agent advertisement message를 추가한다
  • Mobile IP는 agent solicitation(간절히 청함)에 대한 새로운 유형의 packet을 따로 사용하지 않음.
    • ICMP의 라우터 solicitation packet을 사용
  • router advertisement, router solicitation과 같은 ICMP query message를 통해서 agent discovery를 한다.

Mobile IP에서의 비효율성

  • 모바일 IP 통신에서는 비효율적인 경우가 존재
  • 심각(severe)한 비효율성
    • double crossing (2X)
      • GPT : 더블 크로싱은 모바일 호스트가 Home Network와 가까운 위치에 있음에도 불구하고, 모든 데이터 트래픽이 Home Agent를 거쳐야 하는 상황을 말합니다
      • Figure 19.19 :
      • 모바일 호스트가 자신의 Home Network에서 물리적으로 멀지 않은 곳에 있는 Foreign Network에 연결되어 있고, Remote Host가 Home Network와 가깝다면, 패킷은 먼저 Home Agent로 가고, 다시 Foreign Network에 있는 모바일 호스트로 가야 합니다. 이 경우, 데이터는 불필요하게 Home Network를 두 번 거치게 됩니다.

  • 약간의(moderate) 비효율성
    • triangle routing (dog-leg routing)
      • GPT : 패킷이 모바일 호스트의 현재 위치로 직접 가지 않고, 항상 Home Agent를 경유하는 라우팅 방식입니다.
      • GPT : 이는 모바일 호스트가 자신의 Home Network에서 물리적으로 멀리 떨어진 곳에 있을 때 문제가 될 수 있습니다
      • ex)
      • 예를 들어, 모바일 호스트가 유럽에 있고, 통신하고자 하는 Remote Host도 유럽에 있는데, 모바일 호스트의 Home Agent가 미국에 있다고 가정해 봅시다. 이 경우, 유럽 내에서의 통신임에도 불구하고 모든 패킷이 미국의 Home Agent를 거쳐야 하므로 효율적이지 않은 경로를 사용하게 됩니다.

 

  • Using the update binding packet
      • remote host에게 자기가 foreign network에게 받은 care-of-address를 remote에게 알려줘서 remote host가 home address가 아닌 내가 새로운 mobile 환경에서 받은 care-of-address로 직접 보내도록 binding 시켜주는 것!
        • 기존 : Remote host -> home -> mobile host
        • binding 이후 : remost host -> mobile host(care-of-address)

 

참조) https://cdragon.tistory.com/entry/네트워크-19-Network-Layer-Protocols