A tunnel establishes a virtual pipe for data packets between a tunnel entry and a tunnel endpoint. Packets entering a tunnel are forwarded inside the tunnel leave the tunnel unchanged. Tunneling, that is, sending a packet through a tunnel, is achieved by using encapsulation.
Encapsulation is the mechanism of taking a packet consisting of a packet header And data and putting it into the data part of a new packet. The reverse operation, taking a packet out all the data part of another packet, is called decapsulation.
Encapsulation and decapsulation are the operations typically executed when a packet is transferred from a higher protocol layer to a lower layer respectively. Here these functions are handled within the same layer.
The HA takes the original packet with the MN as the destination, puts it into the data of a new packet, and sets the new IP header in such a way that the packet is routed to the COA. The new header is also called the outer header for obvious reasons. Additional, there is an inner header that can be identical to the original header as this is the case for IP-in-IP encapsulation or inner header computed during encapsulation.
There are several ways of doing the encapsulation required for the tunnel between HA and COA. The fields obey the standard term of the IP protocol as specified in RFC 791. Fields of the outer header are this set as follows. The version field ver is for IP version 4, the internet header length indicates the length of the outer header in 32-bit news. TOS is simply copied from the inner header, the length field includes the entire encapsulated packet.
Fields up to TTL have no special sense for mobile IP and are set according to RFC 791. TTL needs to be high enough so the packet can arrive at the tunnel endpoint. The next field, here denoted with IP-in- IP is the type of protocol used in the IP payload. Here this feel is set to 4, the protocol Type for ipv4 because again an ipv4 packet follows after this outer header. IP checksum is calculated as usual. The next fields are the tunnel entry as the source address.
If no options follow the outer header, the inner header starts with the same fields just explained. This header remains almost unchanged during encapsulation, thus showing the original sender CN and the receiver MN of the packet. The only difference is TTL which is managed by one. This means that the whole tunnel is estimated as a single hop from the original packet's point of view.
This is a very important characteristic of tunneling for it obeys the MN to act as if it has to take in the Tunnel, it is just one hop away for the MN. Finally, the payloads follow the two headers.
As seen with IP-in- IP encapsulation, several fields are redundant. For example, TOS is just copied, fragmentation often not needed, etc. Again, the tunnel entry point and endpoint are specified. In this case, the field for the type of the following header contains the value 55 for the minimal encapsulation protocol. The inner header is different for minimal encapsulation. Still, the type of the following protocol and the address of the MN are needed.
If the S bit is set, the original sender address of the CN is included. No field for fragmentation offset is left in the inner header and, therefore, minimal encapsulation doesn't work with already fragmented packets.
Generic routing encapsulation
While IP-in- IP encapsulation and minimal encapsulation work only for IP, the following and conservation scheme also supports other network layer protocols in addition to IP. Generic routing encapsulation allows the encapsulation of packets of one protocol suite into the payload portion of a packet of another protocol suite.
The packet of one protocol suite with the original packet header and data is taken and a new GRE header is prepended. Together this forms the new data part of the new packet. Finally, the header of the second protocol suite is put in front.
The GRE header starts with several flags indicating if certain fields are present or not. A minimal GRE header uses only 4 bytes; nevertheless, GRE is flexible enough to include several mechanisms in its header. The C bit indicates if the checksum field is present and contains valid information.
The standard header of the original packet follows with the source address of the correspondent node and the destination address of the mobile node.
Software quality assurance Software quality is described as conformance to explicitly state functional and performance requirements, explicitly documented standards and implicit features that are anticipated of all professionally developer software ... Read More
A tunnel establishes a virtual pipe for data packets between a tunnel entry and a tunnel endpoint. Packets entering a tunnel are forwarded inside the tunnel leave the tunnel unchanged. Tunneling, that is, sending a packet through a tunnel, is achieved by using encapsulation ... Read More
The overall structure of the software components and how the success provides a conceptual integrated file system. In other words, architecture is the hierarchical structure of program components, how these components interact, and the structure of data that are used by the components ... Read More
Real-time and distributed system design The real-time system is a software system the correct functioning of the system depends on the results produced by the system the time at which these results are produced ... Read More
Waterfall Model The waterfall model also called classic life cycle requirements is well defined and stable. It suggests a systematic, sequential approach to software development. It begins with customer specification of requirements and processes through planning, modeling, instruction, and deployment ... Read More
Software Design A software design is an essential engineering description of some software product that is to be established. A design can be determined to the customer's requirements and can be assessed for quality against predefined patterns ... Read More