91
UNIT – V MOBILE IP NETWORK LAYER Ramesh Babu Palepu Amrita Sai Institute of Science & Technology

Mobile computing unit-5

Embed Size (px)

DESCRIPTION

IV B.Tech I Sem CSE&IT JNTUK R10 regulation students have Mobile computing paper. This slides especially contains UNIT - 5 total material required for end exams

Citation preview

Page 1: Mobile computing unit-5

UNIT – VMOBILE IP NETWORK LAYER

Ramesh Babu Palepu Amrita Sai Institute of Science & Technology

Page 2: Mobile computing unit-5

Objective:We know that OSI is the basic model for networking which has seven layers and TCP/IP is the most prominent one today with five layers. One of the layer in both the models is the networks layer, which has Internet Protocol (IP). This IP used in this layer governs the way of networking in the Internet and provides global internet connectivity. In mobile communications the mobile systems can also utilize Mobile Internet Protocol for identification of nodes as well as reliable packet transmission.

Page 3: Mobile computing unit-5

OSI FUNCTIONALITIES • First we consider the basic model of networking OSI. Here the data transmitted between the nodes is suitably encoded and decoded at the both ends. The following are OSI layers functions.1.Physical Layer: It is used to sending and receiving the data in the form of signals, over the wire or fiber optics or wirelessly.2.Data Link Layer: It is used to link source and destination computers by using MAC address.

Page 4: Mobile computing unit-5

These two layers in OSI is usually associated with physical communication media or radio interface and switching infrastructure. 3. 3. 3. Network Layer: It facilitates the routing of data through chain of routers. This layer choosing a path among the large number of paths available between source and destination.4. Transport Layer: It facilitates the sequencing of data packets and enabling the repeat transmission if required.

Page 5: Mobile computing unit-5

5. Session Layer: It is used to define the transaction and session to establish end-to-end connectivity.6. Presentation Layer: It defines the data encoding formats.7. Application Layer: It support various user applications over the network, such as web browsers, mail transfer, file transfer etc. This layer may also defines the application content and data of a port. Here each port may support different applications.

Page 6: Mobile computing unit-5

• In the service point of view, we know that to transmit the data we should establish the connection.• Sender side in OSI, the physical network transmit the data from one application to another application through various intermediate layers.• At each layer the data is suitably encoded by adding the headers and then transmitted into the lower layers.• At the receiver side, the encoded bits in the header field are decoded at each layer before the data passing to the next upper layer.

Page 7: Mobile computing unit-5

so at the both ends the corresponding layers is take care of encoding, dividing, and assembling of the data.

USER DATAGRAM PROTOCOL (UDP) • The User Datagram Protocol (UDP) is a connectionless, unreliable transport protocol. It does not add any thing to the services of IP except providing process-to-process communication. It also poor in error checking. It is very simple protocol with minimum overhead, and takes less interaction between the sender and receiver.

Page 8: Mobile computing unit-5

•UDP packets are called user datagrams, which are having fixed size header of 8 bytes. The following diagram shows format of user datagram.

•Source port Number: This port number used by the process running on the sender system. It is 16 bit long and ranges from 0 to 65,535. if the sender is a client then the port number is a ephemeral port number.

Page 9: Mobile computing unit-5

• Suppose the sender is a server it port number is well known port number.

• Destination Port Number: This port number used by the process running on the destination system. It also 16 bit. If the destination system is a server, the port number is well known port number, otherwise it is a ephemeral port number.

• Length: It is also a 16 bit field that defines total length of the packet including header and data. The length of the packet from 0 to 65,535 bytes.

Page 10: Mobile computing unit-5

Actually the length of UDP packet is always less than 65,535 bytes because UDP datagram stored in IP datagram whose total length also 65,535 bytes.• Checksum: This field is used to detect errors over the entire user datagram including header and data.

Page 11: Mobile computing unit-5

UDP Operation: The User Datagram Protocol supports the following services;Connectionless services: We know that UDP provide connectionless service, it means each packet sent by UDP is an independent one. There is no relationship between the different user datagrams even if they are coming from the same source process and going to the same destination process.

Page 12: Mobile computing unit-5

• The user datagrams are not numbered and there is no connection establishment and connection termination mechanism. So the datagrams between source and destination can travel on different paths.Flow and Error Control: The UDP is a very simple and unreliable protocol. There is no flow control and hence there is no window mechanism. Sometimes the receiver may overflow with incoming packets.There is no error control mechanism in UDP except checksum. So the sender does not know whether the data is lost or duplicated.

Page 13: Mobile computing unit-5

• Suppose if the receiver detects the errors through the checksum then simply that packet is discarded. Encapsulation and Decapsulation: To send the data from one process to another process the UDP encapsulate and deccapsulates the packets in IP datagram.Queuing: In UDP queues are associated with ports. The following diagram shows queues in UDP.

Page 14: Mobile computing unit-5

• At the client side when a transmission process starts, it request a port number from the operating system, at the time the OS creates incoming and outgoing queues and associate with that process.

Page 15: Mobile computing unit-5

• Suppose if a process wants to communicate with multiple processes, it obtain only one port number and finally use one outgoing and incoming queue.• The queues are opened by the client are identified by ephemeral port numbers. The queues functions as long as process running, when the process terminates, the associate queues are destroyed.

Page 16: Mobile computing unit-5

Uses of UDP: The following are some of the uses of UDP protocol.1.UDP is suitable for the processes that request and response communication.2.UDP is suitable for the processes with internal flow and error control mechanisms.3.UDP is a suitable transport protocol for multicasting.4.UDP is used for management processes such as SNMP5.UDP is used for some route updating protocols.

Page 17: Mobile computing unit-5

Transmission Control Protocol• Transmission Control Protocol (TCP) is a process-to-process connection oriented protocol. It creates virtual connection between two TCPs which are in sender and receiver. It also supports error control and flow control mechanisms in transport level.TCP Services: The following are the different services offered by the TCP to its above layer (Application Layer).Process-to-Process communication: TCP provides process-to-process communication by using port numbers.

Page 18: Mobile computing unit-5

Stream Delivery Service: TCP is a stream oriented protocol. It allows the sending process to deliver the as a stream of bytes and allows receiving process to obtain data as a stream of bytes.• TCP creates an environment in which the two processes seem to be connected by an imaginary tube that carries their data across the internet. The following diagram show stream delivery.

(Diagram 23.13)

Page 19: Mobile computing unit-5

Sending and Receiving Buffers: The sending and receiving process may not happen at the same speed in data transmission. So the TCP need buffers for storage.• There are two buffers, one is sending buffer and another one is receiving buffer in each direction.• These buffers may also useful in error control and congestion control.• one of the method to implement the buffers is circular array, each location capacity is one byte. The following diagram shows sending and receiving buffers.

Page 20: Mobile computing unit-5

• (Diagram 23.14) • The above diagram shows movement of data in one direction. At the sending side the buffers has three kinds of chambers. Some of the chambers are empty, which can be filled by the sending process. Some of the chambers have data that has been sent but not yet acknowledged. TCP keep the data in this chambers until it receives an acknowledgement. Some of the chambers have data that has to be sent by the TCP.• Once the bytes are acknowledged, then the chambers are recycled and available for use of sending process.

Page 21: Mobile computing unit-5

• The buffers at the receiving side has two parts, some of the chambers are empty to be filled by data received from the network. Other chambers have data that can be read by the receiving process. TCP Segment: TCP groups number of bytes together into a packet called segment. TCP adds header to each segment and send the segment to IP layer for transmission. The segments are encapsulated in IP datagram and then transmitted.• If the segments may be received out of order, lost, corrupted and resent, all these are handled by TCP.

Page 22: Mobile computing unit-5

• In TCP all the segments should not necessarily same size.Full duplex communication: TCP offers full duplex service, in which data can flow in both directions at the same time.Connection oriented service: We know that TCP is a connection oriented protocol. When transmitting the data the following activities occur;1.The two TCPs establish a connection between them.2.Data are exchanged in both directions.3.The connection is terminated.

Page 23: Mobile computing unit-5

Reliable Service: TCP is a reliable transport protocol. It uses acknowledgement mechanism to check safe arrival of data.

TCP FEATURESThe TCP has several features, the following are some of them;Numbering system: The TCP keep track the segments being transmitted or received, for this purpose TCP has two fields, one is sequence number and other is acknowledgement number, these two numbers refer the byte numbers but not segment numbers.

Page 24: Mobile computing unit-5

• TCP numbered all the data bytes that are transmitted. The numbering is independent in each direction. The numbers does not start from 0. instead TCP generates random numbers between 0 to 232–1 for assign number of first byte.• After the bytes have been numbered, TCP assigns a sequence number to each segment that is being sent. The sequence number is the number of the first byte carried in that segment.• If the segment carries use data and control information it has sequence number. If the

Page 25: Mobile computing unit-5

segment does not carry user data, it does not logically define sequence number.• Some segments only carry the control information need a sequence number to allow an acknowledgement from the receiver.• In TCP the nodes are used acknowledgement number to conform the data has been received. Here the acknowledgement number is the number of next byte that a node expect to receive and acknowledgement number is cumulative, that is the receiver successfully received last byte with some number then it adds 1 to it.

Page 26: Mobile computing unit-5

Flow control: TCP provides flow control. The receiver controls, the volume of data to be sent by the sender. This prevents the receiver from the overflow. The TCP numbering system may also used for byte oriented flow control.Error control: To provide reliable services, TCP has error control mechanism. During error detection total segment is considered as a single data unit. Error control is byte oriented.Congestion control: TCP considers the congestion of network into account.

Page 27: Mobile computing unit-5

The amount of data sent by the sender not only controlled by the receiver but also determined by the level of congestion over the network.

TCP SEGMENT• A packet in TCP is called a segment. The segment consists of 20 to 60 bytes header, followed by data from application layer. If the header is 20 bytes, there are no options, suppose the header is 60 bytes it contains options. The following diagram shows the header format of TCP.

Page 28: Mobile computing unit-5

• (Diagram 23.16) Source port address: This is a 16 bit field that defines the port number of the application program at the sender side.Destination port address: This is a 16 bit field that defines the port number of the application program at the receiver side.Sequence number: This is a 32 bit field that represents number assigned to the first byte of the segment.• We know that TCP is a stream oriented protocol, to ensure the connectivity each transmitted byte has a number.

Page 29: Mobile computing unit-5

• During the connection establishment, each party in use a random number generator to create an initial sequence number (ISN), which is different in each direction.Acknowledgement number: This is a 32 bit field represents the byte number that the receiver is expecting to receive from the source.• suppose the receiver successfully received byte number x from the source, then it sends x+1 as the acknowledgement number.

Page 30: Mobile computing unit-5

Header length: This is a 4 bit field indicates the number of 4 byte words in TCP header. We know that the length of TCP header is 20 to 60 bytes so the value of the field ranges from 5 to 15.Reserved: This is a 6 bit field reserved for future.Control: This field contains six different control bits or flags. One or more flags can set at a time.• These control bits are used for flow control, connection establishment, termination, connection abortion and mode of data transfer in TCP.

Page 31: Mobile computing unit-5

• (Diagram 23.17) Window size: This field defines the size of the window, in bytes that the sender should maintain. The length of this filed is 16 bits, so the maximum size of the window is 65,535 bytes. This is the size of the receiving window determined by the receiver.Checksum: This 16 bit field contains checksum to identify and correct the transmission errors.Urgent pointer: This 16 bit field is valid when urgent flag is set. This flag is used when the segment contains urgent data.

Page 32: Mobile computing unit-5

Options: There can be up to 40 bytes of optional information in TCP header.

TCP CONNECTION• TCP is a connection oriented protocol. It establishes a virtual path between the source and destination. All the segments belongs to a message are sent through this virtual path. Using the single virtual path facilitates acknowledgement process as well as retransmission of damaged or lost segments. If the segments arrives out of order TCP holds it until the missing one arrive.

Page 33: Mobile computing unit-5

Connection establishment: TCP transmits the data in full duplex mode. When two TCPs in two machines are connected those can transmit the data simultaneously. It mean that the both parties in communication get approval from one another before transmitting the data.• Connection establishment in TCP is done through three way handshaking. Let us consider a client wants to communicate with server by using TCP.• Now the process starts with the server. The server tells its TCP that is ready to accept the connection, this is called passive open.

Page 34: Mobile computing unit-5

• Now the client program issues a request to the server, is known as active open. It represent, the client wish to connect to the open server. Now the TCP starts the three way handshaking.• To implement the three way handshaking few fields of TCP segment are necessary, such as sequence number, acknowledgement number, control flags, and window size.• The following diagram shows the three way handshaking process.

(Diagram 23.18)

Page 35: Mobile computing unit-5

1. The client sends the first segment, a SYN segment, in which SYN flag is set. This segment is for synchronization of sequence numbers. It consumes one sequence number. When data transmission starts the sequence number is incremented by 1.2. The server sends second segment SYN+ACK by setting the two flag bits, this segment has dual purpose, it servers as a SYN for communication in other direction and ACK for previous SYN segment. It consumes one sequence number.

Page 36: Mobile computing unit-5

3. Now the client sends the third segment, it just acknowledgement (ACK). It acknowledges the receipt of second segment. The ACK segment does not consume any sequence number.Simultaneous Open: It is a rare situation occur when both sender and receiver issue an active open. In this case both TCPs transmit SYN+ACK segments to each other, then a single connection established between them.Synchronization Flooding Attack: One more problem occur during connection establishment is SYN flood attack.

Page 37: Mobile computing unit-5

• This happen when an attacker sends a large number of SYN segments to a server and pretending them those are from different client by using the fake IP address.• Now the server allocate the necessary resources and creating communication tables for each fake request. This leads to the server run out of the service. This attack is known as the denial of service.Data Transfer in TCP:After the connection establishment, bidirectional data transfer can takes place. The client and server send and receive data and acknowledgements.

Page 38: Mobile computing unit-5

• The following diagram shows data transfer in TCP

(Diagram 23.19) • Let we explain this concept with an example, here the client sends the 2000 bytes of data in two segments, each one have 1000 bytes and the server sends 2000 bytes of data in a single segment. Here we should carefully observe the sequence and acknowledgement numbers.• In TCP data transmission acknowledgements are piggybacked.

Page 39: Mobile computing unit-5

• The data segments send by the client have set the PUSH flag, so that the server knows to deliver the data to the server process as soon as they are received.• There are many methods to terminate the TCP connection;1.Three way handshaking.2.Four way handshaking.3.Half close.TCP Flow Control: TCP uses sliding window protocol to handle the flow control. We know that in sliding window there are two methods;

Page 40: Mobile computing unit-5

• One is Go-Back-N and other is selective repeat.• Some times TCP sliding window looks like Go-Back-N because TCP does not have any negative acknowledgements and some time it follow selective repeat because the receiver holds the out of order segments until missing one arrives.• The following diagram shows working of sliding window in TCP.

•(Diagram 23.22)

Page 41: Mobile computing unit-5

• The window has three activities, open, closed and shrunk, these activities are in the control of the receiver, the sender should obey the commands of the receiver in this situation.• Open window means moving the window’s right wall to the right. This operation allows more data bytes are eligible for sending.• Closing the window means moving the left wall of the window to the right. This means, the sender already acknowledge some bytes of data, so those are removed from the window.

Page 42: Mobile computing unit-5

• Shrunk means moving the window’s right wall to the left. This action is generally not allowed because it reject the eligibility of byte for sending and left wall cannot moves left because already send bytes again get the eligibility for sending. (Data duplication may happen).• The size of the sliding window is determined by the two parameters receiver window size and congestion window size. Here receiver window size is determined by the receiver and congestion window size is determined by the network.

Page 43: Mobile computing unit-5

Congestion Control: • First we discuss general congestion control mechanisms in the Network. The congestion is a situation in which the network is unable to deliver the data to the destination.• Congestion control refers techniques and mechanisms that can either prevent the congestion before it happens or remove the congestion after it has happened.• In broad sense we can divide the congestion control in two categories;1.Open loop congestion control.2.Closed loop congestion control.

Page 44: Mobile computing unit-5

Open loop congestion control: The open loop congestion control policies are applied to prevent the congestion before it happens. In this situation congestion control is handled by either sender or receiver.Retransmission Policy: We know that retransmission is an unavoidable situation in the networks. The sender retransmits the data when a packet is lost or corrupted. The retransmission may also increase the congestion over the network. So we choose good retransmission policy. In the retransmission policy, retransmission timers are adjusted to optimize the efficiency and prevent the congestion.

Page 45: Mobile computing unit-5

Window policy: The type of window used at the sender side is also effect the congestion. To prevent the congestion selective repeat the window is best one. Acknowledgement policy: The acknowledgement policy imposed by the receiver may also effect the congestion.• There are several mechanisms in acknowledgement policy;1. The receiver not immediately acknowledge each and every packet send by the sender, it may slow down the sender and prevent the congestion.

Page 46: Mobile computing unit-5

2. The receiver send an acknowledgement only if it has a packet to be sent or special timer expires.3. The receiver may acknowledge only N packets at a time.Discarding policy: The good discarding policy may prevent the congestion as well as keep the integrity of the data. For example, discarding less sensitive packets in audio transmission when congestion is likely to happen, is not harmful to audio quality and the congestion is alleviated.

Page 47: Mobile computing unit-5

Admission policy: In this policy switches in the network, first check the resource requirement and current flow of the network and then admit the future transmissions. The admission policy give much importance to the quality of service.Closed loop congestion control: Closed loop congestion control mechanism try to alleviate congestion after it happens.Backpressure: In this technique, a congestion node stops receiving data from the immediate upstream node, it may cause the upstream nodes become congested.

Page 48: Mobile computing unit-5

• so the upstream nodes reject the data from their upstream nodes. Now the backpressure is propagates in opposite direction of data flow finally reaches the source. Now the source node identifies the congestion the suspends the data transmission.

(Diagram 24.6)Choke Packet: The drawback in the backpressure is delay of intimation regarding the congestion. • In Choke packet method a packet is sent by the congested node to the source directly.

Page 49: Mobile computing unit-5

•(Diagram 24.7) Implicit signaling: In this method, no communication between the congested node and the source. Here the source guesses that there is a congestion in the network from other symptoms.For example, suppose the source sends the packets and there is no acknowledgement for a while indicates the congestion over the network.Explicit signaling: This method is different from choke packet but explicitly send a congestion signal to the source or destination.

Page 50: Mobile computing unit-5

• In explicit signaling, the signal may also carry the data. The signaling is two types;1.Backward signaling: A signal bit sent in the direction opposite to the data flow. The bit can warn the sender and slow down the data transmission.2.Forward signaling: A signal bit sent in the direction of data packet. This bit inform about the congestion to the destination. Now the receiver slow down the acknowledgements or follow some other policies to mitigate the congestion.

Page 51: Mobile computing unit-5

TCP Congestion Control:Congestion Window: We know that the size of the sender window is determined by the receiver and we also consider the current transmission state of the network. Now the sender has two pieces of information, that is receiver advertize window size and congestion window size. So the actual size of the sender window is the minimum of these two.

Actual window size = Minimum(rwnd, cwnd)

Page 52: Mobile computing unit-5

Congestion policy: TCPs congestion handling policy is implemented in three phases; Slow start, Congestion detection, and Congestion avoidance.• At first the sender starts with very slow rate of transmission, but increases the rate rapidly to reach threshold. When threshold is reached, the data rate is reduced to avoid congestion. Finally if congestion is detected, the sender goes back to slow-start or congestion avoidance phase based on how congestion is detected.

Page 53: Mobile computing unit-5

Slow Start : Exponential Increase: One of the TCP congestion control algorithm is slow start. In this method the size of the congestion window starts with one maximum segment size (MSS). The size of MSS determined during the connection establishment time.The following diagram shows slow start, exponential increase;

(Diagram 24.8)

Page 54: Mobile computing unit-5

• Here the size of window increases one MSS each time, an acknowledgement is received. That is the window starts slowly but grows exponentially.• we will explain with an example, initially the sender starts with one segment, after getting the acknowledgement of segment-1, the congestion window size is incremented by 1. which mean now the congestion window size is 2 now these two segments can be sent. When acknowledgement is received the size of window increased by 4 segments and soon.

Page 55: Mobile computing unit-5

• The slow start not continue indefinitely, a threshold is stop this phase. The sender maintain ‘ssthresh’ variable, when window size reached threshold, slow start stops and next phase starts.Congestion avoidance: To avoid congestion before it happen, we should slow down the exponential growth, this is done by congestion avoidance algorithm.• The congestion avoidance algorithm makes additive increase instead of exponential increase. After the slow start phase the additive increase phase starts.

Page 56: Mobile computing unit-5

Congestion Detection: Multiplicative Decrease: If congestion occurs, the congestion window size must decreased. Now the sender should retransmit the particular segment. However the retransmission occurs in two cases;

1.When timer times out.2.When three ACKs are received.In both cases the size of threshold is

dropped to half.

Page 57: Mobile computing unit-5

MOBILE IP• We know that the host or node within the

network should not get any packet if it moves out of the network.

• In mobile environment the nodes are always in moving between several areas, and our goal is, where ever the node is, should get the services of the network. To make it possible the node should have a topologically correct address (IP).

• There are several ways to assign a topologically correct address (IP) to a mobile node.

Page 58: Mobile computing unit-5

• One quick solution to assign topologically correct IP to the mobile node use of DHCP. So, the mobile node visits the new location it gets the new IP. Here the problem is, no body knows the new IP, it is impossible to find a node on network, which just changed its address.

• The next solution is use of Dynamic DNS, which maps the logical name with IP address. But as per the considerations of the DDNS, the IP has no special interest for services offering.

Page 59: Mobile computing unit-5

• The DNS should take certain time to map the logical name to an IP address. This approach does not work, because, the mobile node moves quit often and DNS not designed for frequent updates of routing tables.

• There is one more sever problem, that is changing of the IP address causes breaking of TCP connection. We know that a TCP connection is identified by a socket address.

• Another solution for assigning topologically correct address is, creation of specific routers for mobile nodes.

Page 60: Mobile computing unit-5

• But it is possible, theoretically only-changing routing tables all over the world to create specific routes to a mobile node. Here we does not scale how many routers to be fit, because large volumes of nodes day by day connected to the network.

• One more basic problem with this approach is, the routers are basically designed for fast forwarding the packets, but not for updating of routing tables.

• So the above trails are not working to assign a correct IP address to a mobile node, now we can design a new standard with following requirements.

Page 61: Mobile computing unit-5

Specifications (Requirements) of Mobile IP:1. Compatibility: We know that today all

the computers that connects to the internet are working on the TCP/IP. The new standard cannot change the applications or network protocols are already in use and it should work with current operating system. It should not introduce new software for the routers, but it may propose enhancement of router capabilities. It should not require special media or MAC/LLC protocols, it should compatible with non mobile IP addresses.

Page 62: Mobile computing unit-5

2. Transparency: We know that the mobility is invisible for the many higher layer protocols, so higher layers should continue its work even if the mobile node change its point of attachment to the network. Suppose the interruption of service (disconnection) is too long, TCP is unable to procure the connectivity. The new technology should aware the higher layers about the changing the point of attachment of a mobile node as per the requirements.

Page 63: Mobile computing unit-5

3. Scalability and efficiency: The new technology should not vulnerable the efficiency of the network. It may not generate too many messages flooding the network and special care should taken on lower bandwidths. The mobile IP should scalable for large number of participants in the whole network.

4. Security: We know that mobility has many security problems, here the minimum requirement is all the information regarding mobile IP management should authenticate. The IP layer sure that if it forward a packet to a mobile host this host should receive the packet.

Page 64: Mobile computing unit-5

• The IP layer should guarantee that the IP address of a receiver is correct. It should preventing the fake IP addresses or attacks.

Entities and Terminology:Mobile Node (MN): A Mobile node is an end

system or a router that can change its point of attachment with the network from time to time. The MN keeps its IP address and can continuously communicate with other systems within the network.

Correspondent Node (CN): The communication partner of MN is correspondent node. It is fixed or mobile.

Page 65: Mobile computing unit-5

Home Network: The home network is subnet the MN belongs to with respect of its IP address. No mobile IP support is needed in home network.

Foreign Network: The foreign network is the current subnet the MN visits and which is not the home network.

Foreign Agent (FA): The FA can provide all the services to the MN during its visit to the foreign network. The FA has COA (Care Of Address) act as a tunnel end point for forwarding packets to the MN. It also provide security to MN because it is a default router.

Page 66: Mobile computing unit-5

Care of Address (COA): The COA defines the current location of the MN from IP point of view. All the IP packets to the MN are delivered to the COA, not directly to the MN. Here the packet delivery takes through tunneling method, so COA is act as a tunnel endpoint. There are two types of COAs;

Foreign Agent COA: This COA is located at FA. It mean the COA is an IP address of FA. Now FA acts as a tunnel endpoint and then forward the packets to MN.

Page 67: Mobile computing unit-5

Co-located COA: When MN in the foreign network, suppose it obtain temporary additional IP address, which act as COA is known as co-located COA. If this address is topologically correct, then the MN acts as a tunnel endpoint.

Home Agent (HA): The HA provides several services to MN and is located in the home network. Actually the tunneling of packets to MN starts at HA. The HA maintains a location register has an information of MN’s current location. There are three alternatives for the implementation of HA.

Page 68: Mobile computing unit-5

• HA can be implemented on a router, which is responsible for home network. Really it is a best position, because without optimizing the IP all the packets for MN go through the router.

• Generally changing of router software is not possible, so HA can implemented on any arbitrary node in the subnet. One disadvantage of this method is if the MN is the foreign network, the packets are double crossing the router.

• Home network is not necessary at all. The HA could again on router, but only act as a

Page 69: Mobile computing unit-5

manager for MN belonging to a virtual home network. With this solution all the MNs are always in foreign network.

IP packet Delivery (Working of IP):Let us consider an example network as

shown in the diagram.(Diagram 8.2)

Here correspondent node wants to send IP packets to MN and it does not know anything about MN’s current location and sends the packets as usual to the IP address of MN. It mean CN sends IP packets containing MN’s IP address is des-

Page 70: Mobile computing unit-5

-tination address and CN’s IP address as source address.

• Now as usually, the router at correspondent network forward the packets to the home agent which is in the home network.

• The HA intercepts the packet, and identifies that the MN is currently not in home network.

• Now the packet is encapsulated by COA and tunneled to foreign network. Here new IP is put in front of the old IP with new destination IP (COA).

Page 71: Mobile computing unit-5

• The foreign agent now decapsulate the packet, it removes the additional header and forward the packet with CN as source address and MN as destination address to the MN.

• Now transmitting the data from MN to CN is very simple, MN sends the packet with its own IP address as source address and CN’s address as destination address. Here the router in foreign network (FA) act as a default router and forward the packets.

Page 72: Mobile computing unit-5

Packet Delivery & Handover Management:• Here we consider, during the

communication in between the correspondent node (CN) and the mobile node (MN) which are moving around different networks and the CN may be the fixed or mobile, how the services are handed over between the different networks.

CASE-1: CN is a fixed node and MN in home network.

• Let we consider CN is a fixed node in its own network, (corresponding network) and

Page 73: Mobile computing unit-5

MN is also in home network, now CN transmits the connection establishment message using IP protocol, through CA (corresponding agent) to the home agent (HA) of MN.

• In this message source IP address is the IP address of CN and destination IP address is the IP address of MN.

• Now the HA receives and then delivers it to the MN, the HA also receives the response from MN and send back to CN.

Page 74: Mobile computing unit-5

CASE-2: CN is a mobile node in its home network, and MN is also in its home network.

• In this case the CN transmit the packet for connection establishment to HA of MN through CA.

• Here source IP address is the IP address of CN, and destination IP address is the IP address of MN.

• Now the HA receives and then delivers it to the MN, the HA also receives the response from MN and send back to CN.

Page 75: Mobile computing unit-5

CASE-3: CN is fixed in its home network and MN is in the foreign network.

• CN transmits the connection establishment message using IP protocol, through CA (corresponding agent) to the home agent (HA) of MN. In this message source IP address is the IP address of CN and destination IP address is the IP address of MN.

• Now HA of MN receives the packet for MN and identifies that the MN is not available in home network. So HA encapsulate the receiving packet with new IP header which

Page 76: Mobile computing unit-5

source address is IP address of CN and destination address is the care of address (COA) of MN in the foreign network.

• Now the foreign agent (FA) receives the packet with new header and decapsulate it, then deliver to the MN.

• To send back the information from MN to CN, the MN is able to directly transfers the data to CN through FA, because the IP address of CN is available at MN after decapsulating the packet – That is the source address is turned as destination address in reply.

Page 77: Mobile computing unit-5

CASE-4: CN is mobile node at foreign network and MN is at the home network.

• In this case the CN sends the connection establishment message to the HA of MN through the FA where it is located.

• Once the connection established, the data is exchanged between the HA and FA.

CASE-5: CN is mobile node at foreign network and MN is at the foreign network.

• In this case, we carefully considered that the CN is at the foreign network FA1 and MN is at another foreign network FA2.

Page 78: Mobile computing unit-5

• Now the CN sends the connection establishment packet through FA1 to the HA of MN. But MN recognizes that MN is not available in home network, so it encapsulate the packet with new header and then transmit to the FA2.

• Now the data transmissions are carried in between the FA1 and FA2.

CASE-6: CN is mobile node in its home network and MN is the at the foreign network.

• This case is similar to CASE-3 except the CN is mobile node in its home netwrok.

Page 79: Mobile computing unit-5

Location Management:• We know that the mobile node always

moving between the different network, here one of the initial problem is, how to find out a mobile node when it is moved into other networks. The mobile IP describes two procedures to discover the MN in foreign networks; one is agent advertisement and other is agent solicitation.

Agent Advertisement: In this method, the home and foreign agents advertise their presence periodically using special advertisement message.

Page 80: Mobile computing unit-5

• This advertisement message can broadcast into the entire subnet. To frame this message we use Internet Control Message Protocol (ICMP) with some mobility extensions.

• The routers in the fixed network can also obey this protocol and advertise their routing services periodically to the attached links. The following diagram shows the agent advertisement packet with mobility extension

(Diagram 8.3)

Page 81: Mobile computing unit-5

• Here the upper part represents the ICMP packet and the lower part consists extensions needed for mobility.

• Here TTL field of the IP packet is set to 1, to avoid forwarding the packet to the next node. The IP destination address is set according to standard router advertisement, it may be a multicast address or broadcast address.

• The type field of ICMP is set to 9. The code field is 0, if the agent route the packets from non mobile nodes, or code is 16 it means the agent route the traffic only from mobile nodes.

Page 82: Mobile computing unit-5

• # address field represents, the number of addresses advertised with the packet. The Life time field indicates the length of the time this advertisement is valid. Preference levels for each address help a node to choose the router that is most eager to service to a new node.

• In the extension field contains, type is set to 16, length is depending on the number of COA (care of addresses) advertise with the message, sequence number indicates, the total number of advertisements sent since initialization. The registration life time shows, maximum life time in seconds

Page 83: Mobile computing unit-5

a node can request during registration.• The bit R shows, the registration with the

agent is required even when MN using colocated COA. B bit shows, the agent is currently too busy to accept the new registration. The bit H indicates, the agent works as a home agent, F indicates the agent works as foreign agent. The bits M and G specifies the method of encapsulation, G represents generic encapsulation, M represents minimal encapsulation. The V bit specified use of header compression ‘r’ bit set to 0, and ignored. T bit indicates reverse tunneling.

Page 84: Mobile computing unit-5

• Now a mobile node in the subnet an receive agent advertisement from either its home agent or a foreign agent. This is one way for MN to discover the location.

Agent Solicitation: If no agent advertisement is present or the MN has not received a COA, or the inter arrival time is too high, then the mobile node sends the agent solicitation.

• The solicitations are based on the RFC 1256 protocol and we must ensure that the solicitation messages do not flood the network.

Page 85: Mobile computing unit-5

• In agent solicitation, the MN search for FA endlessly sending out solicitation messages. Generally a mobile node send three solicitations per second.

• If the node does not receive an answer to its solicitations it must decrease the rate of solicitations exponentially to avoid flooding the network unit it reaches a maximum interval between solicitations.

Page 86: Mobile computing unit-5
Page 87: Mobile computing unit-5
Page 88: Mobile computing unit-5
Page 89: Mobile computing unit-5
Page 90: Mobile computing unit-5
Page 91: Mobile computing unit-5