Patent ID: 7492708

Claim:
An IP packet forwarding method performed in a network forwarding apparatus for forwarding IP packets in different networks employing two or more IP protocols comprising IPv4 protocol and IPv6 protocol, the network forwarding apparatus comprising an edge router and supporting the two or more IP protocols and holding a routing table for storing routing information employing one of the IP protocols as a direct path toward a destination address, said IP packet forwarding method comprises the steps of: determining, for the destination address employing the one of the IP protocols in the routing table of said network forwarding apparatus, one or more routing information employing other IP protocols, as tunnel paths toward the destination address wherein the routing information comprises the next hop IP address; monitoring traffic in said different networks to judge whether the traffic among said different networks is balanced or not, wherein the judgment as to whether the traffic is balanced or not is made by monitoring bandwidth; determining, for the IP packet to be forwarded containing the destination address, a forward path from said direct path and said tunnel paths, to balance the traffic among said different networks, when it is judged that traffic imbalance occurs among the different networks, wherein the step of determining the tunnel paths comprises the steps of: determining, for the destination address employing the one of the IP protocols in said routing table of the network forwarding apparatus, one or more routing information employing other IP protocols, as candidate tunnel paths towards the destination address; detecting the link transmission qualities of said determined candidate tunnel paths; determining priorities of the candidate tunnel paths based on the detected link transmission qualities of the candidate tunnel paths; and determining the tunnel paths from the candidate tunnel paths according to the determined priorities; and converting the IP packet to be forwarded into the packet of the IP protocol employed by the determined forwarding path, when the IP protocol employed by the determined forwarding path is different from the IP protocol employed by the IP packet to be forwarded.