 Multi-homing is a highly desired feature which has been provisioned in IP version 4, in IP version 6, now for NGN which is based in IP version 6. We are going to explore it and look at the formal definition of multi-homing, the horizontal and vertical variants of it. Multi-homing actually refers to having multiple connections from a given host, node, site, location to the network. This could involve the multi-homing or multi-connections to a single access network, core network or the transport network. The reliability of the link or node failures is a given path can be significantly reduced because we will have a failover. Once we have a failover link, it could also be utilized to achieve load sharing and the higher utilization of network resources could essentially be achieved. In IP version 4, at the transport layer, stream-controlled transmission protocol has been used to provide multi-homing. Similarly, at the network layer, we have the BGP paths which are advertised through EBGP between different autonomous systems or domains. We will quickly run down through the stream-controlled transmission protocol for multi-homing and multi-streaming. We have a host or a node on the left-hand side and we have one on the right-hand side. Three simultaneous streams are being established or being streamed between the two nodes through two different networks. SCTP is ensuring that the three streams are provisioned alternate paths at the transport layer. So it means the independent sockets are being created for the three streams which could possibly use more than one interface. So here we see that we have stream one and two both using network interface one, stream three using network interface two. We've got two access networks. So stream one and stream two are using network one, stream three is using network two. This actually means that there is a kind of orthogonality or exclusivity between these streams. So SCTP allows the multi-homing to be realized as such but this was the scope of IP version four. In IP version six, the goals are essentially the same to have failover, better throughput, reliability, etc. But here we have some added features. For instance, we've got multiple network interfaces and we have multiply connected IP version six addresses. By multiply connected, I mean that one IP address could be mapped to a single interface or more than one interfaces. Similarly, one interface could be mapped onto one IPv6 address or could be mapped onto multiple IPv6 addresses. So it means that there is a heavy massive parallel connectivity which is possible. This makes multi-homing not only exciting but the very header or the structure of IP version six packet format compliments it. We have the next header option in IP version six that allows multiple connections to have its own corresponding header in the IP packet IPv6 packet. And then we have enhanced addressing schemes because IP version four was tied to classful or the CIDR but in IP version six we could actually adopt any addressing scheme that is pertinent to a certain context. So once we have the options to multi-home in a variety of way, NGN allows us to have horizontal multi-homing or vertical multi-homing. So since NGN has multiple network interfaces at the transport stratum, multiple IPv6 addressing at the transport stratum at the network layer and we could have multiple network prefixes also that is multiple ISPs are connected. So this could allow the global routing scaling to take place. The NGN transport stratum could have multiple access technologies for instance wireless, wired or in 3G, LTE, LTEA, YMAX etc. Similarly, we could have multiple core networks also different NGNs could be connected to each other. So we have a lot of possibilities. So in horizontal multi-homing we could think about providing multi-homing to a site or to a host. As far as site is concerned it is straightforward where the site connects to same or another NGN provider through multiple network connections. In host multi-homing it is the host which is IPv6 capable so the host could simultaneously access multiple access networks. So this is the horizontal multi-homing. The scenario is for host multi-homing. Here you can see that we have multiple IPv6 addresses. So we have independent streams or connections which are based upon independent transport layer sessions each having its own distinct IPv6 IPv6 address which is binded on to a unique network interface and then correspondingly at the transport stratum on the access side we have different access technologies and we could have multiple core networks access as well. So on the left hand side we have a lot of provisions for multi-homing. On the right hand side we have a host which does not have provision for multi-homing. Now we look at the possibility of having vertical multi-homing. So vertical multi-homing is what? It is the systematic way of looking at how each layer starting from the lowest layer and going up how could we provide multi-homing at every layer. So vertical multi-homing is a feature that has to be provided at the OS because the operating system actually sits on top of the middleware and the hardware with a lot of network interfaces and addresses. So this enhances vertical multi-homing enhances the very concept of multi-homing from one to one which is done in traditional TCP IP because each TCP socket requires a unique IPv6 address to many to many mappings in IPv6. Now this is going to trigger a lot of complexities but vertically handling it as part of the OS is going to resolve the issues. So we could have multiple mappings or many to many mappings for IPv6 addresses at the sessions at the transport layer and the port numbers at the application layer. So this helps to dynamically update the relationship that is crisscross relationship between IPv6 addresses and port numbers. In order to look at it, as we said, we are assuming that the operating system is going to handle it. The application layer function is implemented in the OS on the user side, the host. On the network side, it is implemented in the transport stratum and the service stratum. At the transport stratum, the network attachment control function has to be cognizant or aware of the fact that vertical multi-homing is being desired or is being implemented on the host side which would in turn have an effect on the transport functions on the access edge and the core side. So this is going to help dynamically control the required quality of service expected in a certain SLA by the client for simultaneous connections. The vertical multi-homing could be seen as basic to most advanced evolution. If you look at the diagram, we have the application layer, transport layer, IPv6 network layer and MAC layer multi-homing. So this has to be addressed as an operating system or application layer perspective. So we could have very rudimentary number one physical or MAC layer multi-homing. That means career aggregation LTE, LTEA and YMAX, particularly mobile YMAX 2.0 provide this. Then we could have the multi-homing that includes the physical layer and the MAC and the network layer. The physical MAC layer, network layer and the transport layer. This could include the streaming control transmission protocol and the datagram congestion control protocol and then including the application layer as well.