|Publication number||US6914907 B1|
|Application number||US 09/368,651|
|Publication date||Jul 5, 2005|
|Filing date||Aug 5, 1999|
|Priority date||Aug 5, 1999|
|Publication number||09368651, 368651, US 6914907 B1, US 6914907B1, US-B1-6914907, US6914907 B1, US6914907B1|
|Inventors||Rajeev Bhardwaj, Pawan Singh, Curt Moffitt, Paul Grepps, Medhavi Bhatia, Sanjay Khanna|
|Original Assignee||Alcatel Canada Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (5), Referenced by (63), Classifications (11), Legal Events (4)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This invention relates generally to data networks and more particularly to multi-cast transmissions within a data network.
As is known, a data network includes a plurality of routers interoperably coupled to provide communication paths between a plurality of sub-networks. The sub-networks include end users such as personal computers, work stations, telephones, facsimile machines, etc. Within a sub-network, end users may communicate directly over a shared communication link.
For an end user in one sub-network to communication with an end user in another sub-network, the sending end user generates a message, which is provided via a physical interface to a router. The router interprets the message to determine whether the message is to be forwarded to another router or to the addressed end user. Each router that receives the message, which is typically formatted as data packets in accordance with a data transport protocol such as ATM, frame relay, IP, interprets the message and makes a similar determination. As such, the message propagates through the data network from router to router until it eventually reaches the targeted end user. Routers determine how to forward the received data packets based on forwarding information. The forwarding information is generated in response to communicating with other routers utilizing a routing protocol. As such, once the forwarding information is generated, the router, upon receiving a packet, forwards the packet according to the forwarding information.
In legacy routers, the forwarding components, forwarding engines, and the route computational engine were in the same physical device. As such, a router typically supported a sub-network in a local geographic area. For example, the data network having many sub-networks may be owned and operated by a university, which has several buildings. Note that the sub-networks may correspond to departments such as engineering, finance, administration, etc. Accordingly, each sub-network in each building had its own router, which was coupled to other routers in the same building and to routers in other buildings. Thus, for an end-user in one subnetwork to communicate with another end-user in a different subnetwork, a communication path, supported by the routers, would be established. This was the case, even if both end-users were in the same department, e.g., engineering, but in different buildings.
To more efficiently service a data network, distributed routers were created. A distributed router includes a routing server and a plurality of edge devices, or forwarding engines. The edge devices may be located in physically diverse areas from each other and from the routing server. For example, in the data network operated by a university, the engineering department may be located in several buildings. Utilizing distributed routers, the edge devices coupled to the engineering departments in separate buildings may be lumped into a single virtual network. As such, when a member of the engineering group needs to communicate with other members of the engineering group, it sends a message to the group, which is interpreted by the distributed router. In response, the distributed router causes data packets of the message to be provided to the diverse locations via the physical separate edge devices.
In data communications, conveying messages from one to many is done by either multi-cast transmissions or in broadcast transmissions. In a multi-cast transmission, the message is sent to targeted members of the group while in a broadcast transmission, the message is sent to all members in the group. In data networks that include distributed routers, multi-cast transmissions for a virtual network are treated as broadcast. As such, each memory of the virtual sub-network receives the message whether they need it or not. As such, unnecessary data transmission occurs.
Another limitation of current data networks for multi-cast transmissions occurs when members of the group are in different virtual subnetworks. As mentioned, multi-cast transmissions are currently treated as broadcast transmissions. As such, only the end users in the same virtual network as the sending end user will receive it. Thus, members within the sending end units virtual network will receive a message when they don't need it and members of the group that are affiliated with a different sub-network will not receive the message.
In data networks that include legacy routers, multi-cast transmissions are processed in accordance with standardized protocols. For example, multi-cast routing is typically done in accordance with a distance vector multi-cast routing protocol (DVMRP), multi-cast group management is done utilizing inter-network group management protocol (IGMP), and multi-cast traffic forwarding is handled utilizing a multi-cast server approach (MSC). Alternatively, the multi-cast routing may be done by utilizing a standard protocol of M-OSPF or PIM, while multi-cast traffic forwarding may be done by using a VC mesh. While these protocols work well with legacy routers, when the data network includes distributed routers, application of these standardized protocols do not work and/or produce a substantial amount of unnecessary data traffic.
Therefore a need exists for a method and apparatus for providing multi-cast transmissions within a data network including distributed routers utilizing the standardized protocols designed for legacy routers without unnecessary data traffic.
Generally, the present invention provides a method and apparatus that includes processing for providing multi-cast transmissions within a data network having at least one distributed router. Such processing begins by determining, for a source virtual network, a list of downstream virtual sub-networks for multi-cast traffic based on a multi-cast routing protocol. Such a multi-cast routing protocol may be DVMRP. The processing then continues by determining multi-cast group membership on as per downstream virtual sub-network, edge device, and port basis. Such multi-cast group membership may be determined by utilizing an IGMP protocol. The process continues when a data packet is received via the source virtual network. The source virtual network is the sub-network to which the sending end user is affiliated with. The processing then continues by generating a multi-cast session table entry based on the list of downstream virtual sub-networks and the multi-cast group membership. In essence, the multi-cast session group table entry identifies where the data packets should be sent. The process continues by establishing virtual connections between the source virtual network and edge devices coupled to virtual sub-networks identified in the list of downstream virtual sub-networks. Having generated the virtual connections, the processing continues by downloading the multi-cast session table to the edge devices. The edge devices utilize the multi-cast session table entry to determine where the received data packets are to be forwarded. With such a method and apparatus, multi-cast transmissions within a data network that includes at least one distributed router maybe done on a multi-cast basis, i.e., only to targeted members of a group, wherein the members of the group span across multiple virtual sub-networks without unnecessary data traffic.
The present invention can be more fully described with reference to
Router 14 is shown as a distributed router that includes a route server 56, a plurality of edge devices 58-62, each including a plurality of ports 66. The edge devices 58-62 are operably coupled to the route server 56 via a coupling network fabric 64. The coupling network fabric 64 may be the public telephone switch network, an asynchronous transfer mode network, and/or any means for communicating between distributed locations. Routers 12, 16-22 may be legacy routers, i.e., containing the route server and edge devices within a single physical device, or distributed routers. In either case, the routers utilize a standardized routing protocol to communicate with each other to determine the topology of the data network 10.
To support communications within a virtual sub-network, router 14 establishes the virtual connections 76, which may be established as switched virtual connections, or permanent virtual connections. Once the virtual connections 76 are established, data traffic between the host of the virtual sub-network may commence. However, for a multi-cast group transmission, for example the group 1 transmission, which spans multiple virtual sub-networks, merely coupling virtual sub-network 1 to virtual sub-network 2 to virtual sub-network 3 would send the message to many more users than needed. In other words, by merely coupling the three subnetworks together, the message is being broadcast as opposed to a multi-cast, which is inefficient.
The router server 56 includes a processing module 70 and memory 72. The processing module 70 may be a single processing device or a plurality of processing devices. Such a processing device may be a microprocessor, microcomputer, digital signal processor, microcontroller, state machine, logic circuitry, and/or any device that manipulates signals, analog or digital, based on operation instructions. The memory 72 may be a single memory device or a plurality of memory devices. Such a memory device may be a read-only memory, random access memory, floppy disk memory, hard drive memory, system memory, and/or any device that stores operational instructions. Note that if the processing module 70 implements one or more of its functions via state machine or logic circuitry, the memory 72 storing the corresponding operational instructions is embedded within the circuitry comprising the state machine or logic circuit. The operational instruction stored in memory and executed by processing module 72 will be discussed in greater detail with reference to
To provide a more efficient multi-cast transmission, i.e., to only the members of the group, the distributed router 14 first determines a list of downstream virtual sub-networks based on the virtual sub-network of the sending, or initiating group, member. In this example, host 24 of virtual sub-network 1 is the sending host. As such, the sending sub-virtual network is virtual network 1. The router 14 utilizes the routing table 74 to determine the downstream virtual sub-networks. In this example, the downstream virtual sub-networks are 2 and 3. As such, the list of downstream virtual sub-networks 80 is generated, as shown in FIG. 3.
Having done this, the router 14 then generates a multi-cast group membership table 82. This is done by transmitting a management protocol message to other routers within the data network. Such a management protocol may be a GMP. The multi-cast group membership is determined on a per downstream virtual sub-network, edge device and port basis. As such, for the example of
The router 14 utilizes the multi-cast session table entry 86 to generate virtual connections 88. As shown, the virtual connection 88 establishes a single connection between the ports of the edge devices that support members of this multi-cast group. In addition, this virtual connection 88 excludes other ports of the virtual sub-networks that are not supporting members of the group. Having established the virtual connections 88, the routing server 56 forwards the multi-cast session table entry 86 to each of the edge devices 58-62. The edge devices utilize the multi-cast session table entry 86 to generate forwarding information such that when it receives packets, it determines the particular edge devices for subsequent forwarding of data packets.
The process then proceeds to step 92 where a multi-cast group membership is determined on a per downstream virtual sub-network, edge device, and port basis. This may be accomplished by providing a membership query, such as an IGMP message on a virtual sub-network. As ports of the edge devices receive a report which is in accordance with the IGP message from hosts affiliated therewith, they are provided to the routing server. The router server suppresses forwarding of the report to the other virtual sub-networks, thereby reducing traffic. As one of average skill in the art will appreciate, in a data network that includes only legacy routers, the establishment of the group membership is done by providing the IGMP membership query between the routers. If a router receives a report from a host that is a member, it transmits an indication that it has received a report via that virtual sub-network such that other hosts that are affiliated with the group do not also respond, i.e., provide a report. In the distributed router environment, however, since multiple ports may be supporting a single virtual subnetwork, it is undesirable to provide a response indicating that a report has been received. As such, the present invention suppresses forwarding of a report to other ports in the virtual network such that those ports may respond individually. The routing server, however, does provide the report received message via the port that it received the message from.
The determination of a multi-cast membership group may be done in a different manner when a legacy router has querying responsibilities. In this instance, a query is received from a legacy router. The query is requesting whether the router has any members of a group affiliated therewith. Upon receiving the query, it is forwarded to the plurality of virtual sub-networks via the edge devices support the plurality of virtual sub-networks. Reports are received from the ports for each of the plurality of virtual sub-networks and are forwarded up to a given number of reports to the legacy router. As such, the legacy router is determining whether the distributed router, e.g., router 14, needs to receive data packets for group communications. Since the distributed router may have multiple members of the group associated therewith, it may receive multiple reports indicating the affiliations. Utilizing the standard IGMP protocols, each report would be provided to the querying legacy router. However, this would create unnecessary data traffic. As such, the present invention only provides a given number, e.g., two, reports to the legacy router. This also enables the legacy router to flag the distributed router within the forwarding information. Note that reports received in access of the given number are suppressed, i.e., not provided to the legacy router.
The process then proceeds to step 94 where a data packet is received from a sending host via the source virtual network. The source virtual network is the virtual sub-network supporting the sending host. The process then proceeds to step 96 where a multi-cast session table entry is generated based on the list of downstream virtual sub-networks and the multi-cast group membership. The multi-cast session table entry includes ports of edge devices that are coupled to legacy routers and/or hosts.
The process then proceeds to step 98 where virtual connections are established between the source virtual sub-network and edge devices coupled to virtual sub-networks identified in the list of downstream virtual sub-networks. This was illustrated in FIG. 4. The process then proceeds to step 100 where the multi-cast session table entry is downloaded to the edge devices. The edge devices utilize this information to forward packets thereby supporting the multi-cast transmission.
The process may proceed to step 102 where a determination is made as to whether a leave message is received via a port of one of the edge devices. In other words, is one of the host devices that is a member of the group providing information that it is leaving the group. If not, the process repeats at step 94. If, however, the leave message has been received the process proceeds to step 104 and 106. At step 104, the group affiliation of the port is immediately switched in accordance with the leave message. This immediate switching can be quite beneficial when the data network is utilized for on-demand video, cable broadcasts, television broadcast, etc. As such, the leave message may be a channel change message. Accordingly, the user would prefer that the channel change request be processed immediately as opposed to traditional processing of leave messages in a data network.
For other types of data transmissions within a data network, the process would proceed to step 106. At step 106, a group-specific membership query is provided to the port. This query is determining whether the host providing the leave message is the only host supported by this port. The process then proceeds to step 108 where a determination is made as to whether a report has been received in response to the specific query. In other words, is there at least one other host still being supported by this port. If so, the process proceeds to step 110 where the port is maintained within the multi-cast group membership.
If there are no hosts still being supported by this port, the process proceeds to step 112. At step 112, a determination is made as to whether at least one port of a virtual subnetwork is supporting the multi-cast group. In other words, does the distributed router have at least one other port which has at least one other host still a member of this group. If not, the process proceeds to step 114 where a leave message is provided to a legacy router having query responsibilities. If, however, the distributed router has a port that is supporting at least one host of the group, the process reverts to step 94.
The process then proceeds to step 122 where a group affiliation table is generated based on multi-cast group affiliation. In other words, the group affiliation table is identifying members of the group and which ports of which edge devices of which of the distributed routers are supporting the group. This may be done by utilizing a membership query protocol such as IGMP. The process then proceeds to step 124 where a multi-cast session table entry is generated from the routing table and the group affiliation table when a packet is detected for the group. The multi-cast session table includes ports that are coupled to at least one of a legacy router supporting a membership of the group or a host, wherein the host includes a computer that is a member of the group. The process then proceeds to step 126 where virtual connections are established based on the multi-cast session table entry to transport data packets to members of the group.
The preceding discussion has presented a method and apparatus for providing multi-cast transmissions within a distributed network that includes distributed routers. By modifying utilization of multi-cast protocols for data networks that include legacy routers, the present invention provides an efficient mechanism for multi-cast group transmission. In addition, the present invention overcomes the previous embodiments of data networks that included distributed routers wherein multi-cast transmission were treated as broadcasts. As one of average skill in the art will appreciate, the other embodiments may be derived from the teachings of the present invention without deviating from the scope of the claims or the spirit of the invention.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5926463 *||Oct 6, 1997||Jul 20, 1999||3Com Corporation||Method and apparatus for viewing and managing a configuration of a computer network|
|US6216167 *||Jun 29, 1998||Apr 10, 2001||Nortel Networks Limited||Efficient path based forwarding and multicast forwarding|
|US6331983 *||May 6, 1997||Dec 18, 2001||Enterasys Networks, Inc.||Multicast switching|
|US6343326 *||May 18, 1998||Jan 29, 2002||Nec Usa, Inc.||System and method of transferring internet protocol packets using fast ATM cell transport|
|US6654371 *||Apr 15, 1999||Nov 25, 2003||Nortel Networks Limited||Method and apparatus for forwarding multicast data by relaying IGMP group membership|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7263099 *||Aug 14, 2002||Aug 28, 2007||Juniper Networks, Inc.||Multicast packet replication|
|US7313596 *||Apr 5, 2002||Dec 25, 2007||Nippon Telegraph & Telephone Corporation||Multicast data communication method, multicast data communication system, repeater, repeating method, and medium for storing repeating programs|
|US7420972||Aug 3, 2007||Sep 2, 2008||Juniper Networks, Inc.||Multicast packet replication|
|US7860016 *||Aug 25, 2005||Dec 28, 2010||Emc Corporation||Method and apparatus for configuration and analysis of network routing protocols|
|US7864769||Aug 18, 2008||Jan 4, 2011||Juniper Networks, Inc.||Multicast packet replication|
|US7881309 *||Nov 6, 2001||Feb 1, 2011||Nokia Corporation||Controlling service stream|
|US7908354||Nov 12, 2009||Mar 15, 2011||Media Patents, S.L.||Method and device for managing multicast groups|
|US7912055 *||Aug 25, 2005||Mar 22, 2011||Emc Corporation||Method and apparatus for configuration and analysis of network multicast routing protocols|
|US7921198||Nov 12, 2009||Apr 5, 2011||Media Patents, S.L.||Method and device for managing multicast groups|
|US7986641||Sep 10, 2007||Jul 26, 2011||Nippon Telegraph And Telephone Corporation||Multicast data communication method, multicast data communication system, repeater, repeating method, and medium for storing repeating programs|
|US8014398 *||May 31, 2006||Sep 6, 2011||Fujitsu Limited||Method and apparatus for managing delivery of stream data|
|US8064449||Jul 28, 2009||Nov 22, 2011||Media Patents, S.L.||Methods and apparatus for managing multicast traffic|
|US8086716||Nov 12, 2009||Dec 27, 2011||Media Patents, S.L.||Methods and devices for managing multicast groups|
|US8094602||Aug 24, 2009||Jan 10, 2012||Media Patents, S.L.||Methods and apparatus for managing multicast groups|
|US8184630||Dec 17, 2007||May 22, 2012||Media Patents, S.L.||Method for managing multicast traffic in a data network and network equipment using said method|
|US8189584||Dec 17, 2009||May 29, 2012||Media Patents, S. L.||Multicast traffic management in a network interface|
|US8325753 *||Aug 19, 2008||Dec 4, 2012||Meru Networks||Selective suppression of 802.11 ACK frames|
|US8340095||Sep 7, 2010||Dec 25, 2012||Media Patents, S.L.||Equipment in a data network and methods for monitoring, configuring and/or managing the equipment|
|US8422499||Mar 16, 2010||Apr 16, 2013||Media Patents, S.L.||Methods and apparatus for managing multicast traffic|
|US8565140||Jul 29, 2010||Oct 22, 2013||Media Patents, S.L.||Methods and apparatus for managing multicast traffic through a switch|
|US8571028||Mar 16, 2010||Oct 29, 2013||Media Patents, S.L.||Methods and apparatus for managing multicast traffic|
|US8582572||Mar 16, 2010||Nov 12, 2013||Media Paents, S.L.||Methods and apparatus for managing multicast traffic|
|US8606890||Jan 14, 2011||Dec 10, 2013||International Business Machines Corporation||Managing communication between nodes in a virtual network|
|US8644310||Apr 8, 2010||Feb 4, 2014||Media Patents, S.L.||Method for managing multicast traffic between equipment in a multicast data network|
|US8644311 *||Apr 24, 2011||Feb 4, 2014||Fortinet, Inc.||Hardware-accelerated packet multicasting in a virtual routing system|
|US8953513||Jan 31, 2013||Feb 10, 2015||Fortinet, Inc.||Scalable IP-services enabled multicast forwarding with efficient resource utilization|
|US8953618 *||Oct 10, 2012||Feb 10, 2015||Telefonaktiebolaget L M Ericsson (Publ)||IP multicast service leave process for MPLS-based virtual private cloud networking|
|US9014186||Feb 4, 2014||Apr 21, 2015||Fortinet, Inc.||Hardware-accelerated packet multicasting|
|US9019833||Jul 24, 2013||Apr 28, 2015||Fortinet, Inc.||Service processing switch|
|US9031068||Nov 3, 2010||May 12, 2015||Media Patents, S.L.||Methods and apparatus for managing multicast traffic through a switch|
|US9124555||Feb 11, 2014||Sep 1, 2015||Fortinet, Inc.||Tunnel interface for securing traffic over a network|
|US9143351||Jun 25, 2012||Sep 22, 2015||Fortinet, Inc.||Identifying nodes in a ring network|
|US9160716||Nov 17, 2014||Oct 13, 2015||Fortinet, Inc.||Tunnel interface for securing traffic over a network|
|US9185050||Aug 5, 2013||Nov 10, 2015||Fortinet, Inc.||Heterogeneous media packet bridging|
|US9305159||Nov 18, 2014||Apr 5, 2016||Fortinet, Inc.||Secure system for allowing the execution of authorized computer program code|
|US9331961||Dec 31, 2014||May 3, 2016||Fortinet, Inc.||Heterogeneous media packet bridging|
|US9391964||Jan 27, 2016||Jul 12, 2016||Fortinet, Inc.||Tunnel interface for securing traffic over a network|
|US9407449||Feb 27, 2015||Aug 2, 2016||Fortinet, Inc.||Hardware-accelerated packet multicasting|
|US9509638||Mar 16, 2016||Nov 29, 2016||Fortinet, Inc.||Heterogeneous media packet bridging|
|US9667604||Jun 16, 2016||May 30, 2017||Fortinet, Inc.||Tunnel interface for securing traffic over a network|
|US20020001310 *||Jun 29, 2001||Jan 3, 2002||Khanh Mai||Virtual multicasting|
|US20020169833 *||Apr 5, 2002||Nov 14, 2002||Nippon Telegraph And Telephone Corporation||Multicast data communication method, multicast data communication system, repeater, repeating method, and medium for storing repeating programs|
|US20040028062 *||Nov 6, 2001||Feb 12, 2004||Jouni Pirhonen||Controlling service stream|
|US20070165639 *||May 31, 2006||Jul 19, 2007||Fujitsu Limited||Method and apparatus for managing delivery of stream data|
|US20090310609 *||Aug 24, 2009||Dec 17, 2009||Alvaro Fernandez Gutierrez||Method and device for managing multicast groups|
|US20100014519 *||Jul 28, 2009||Jan 21, 2010||Media Patents, S.L.||Methods for managing multicast traffic between sources sending data and hosts requesting data and network equipment used to implement the methods|
|US20100046516 *||Nov 9, 2009||Feb 25, 2010||Media Patents, S.L.||Methods and Devices for Managing Multicast Traffic|
|US20100054247 *||Nov 12, 2009||Mar 4, 2010||Media Patents, S.L.||Method and device for managing multicast groups|
|US20100054248 *||Nov 12, 2009||Mar 4, 2010||Media Patents, S.L.||Method and device for managing multicast groups|
|US20100054249 *||Nov 12, 2009||Mar 4, 2010||Media Patents, S.L.||Method and device for managing multicast groups|
|US20100172351 *||Mar 16, 2010||Jul 8, 2010||Media Patents, S.L.||Methods for managing multicast traffic between sources sending data and hosts requesting data and network equipment used to implement the methods|
|US20100172352 *||Mar 16, 2010||Jul 8, 2010||Media Patents, S.L.||Methods for managing multicast traffic between sources sending data and hosts requesting data and network equipment used to implement the methods|
|US20100172353 *||Mar 16, 2010||Jul 8, 2010||Media Patents, S.L.|
|US20100183008 *||Dec 17, 2007||Jul 22, 2010||Fernandez Gutierrez Alvaro||Method for managing multicast traffic in a data network and network equipment using said method|
|US20100254383 *||Apr 8, 2010||Oct 7, 2010||Media Patents, S.L.||Method for managing multicast traffic between equipment in a multicast data network|
|US20110010441 *||Sep 7, 2010||Jan 13, 2011||Media Patents, S.L.||Equipment in a data network and methods for monitoring, configuring and/or managing the equipment|
|US20110058548 *||Jul 29, 2010||Mar 10, 2011||Media Patents, S.L.||Methods and apparatus for managing multicast traffic through a switch|
|US20110058551 *||Nov 3, 2010||Mar 10, 2011||Media Patents, S.L.||Methods and apparatus for managing multicast traffic through a switch|
|US20110149960 *||Mar 12, 2010||Jun 23, 2011||Media Patents, S.L.||Method and apparatus for filtering multicast packets|
|US20110200044 *||Apr 24, 2011||Aug 18, 2011||Fortinet, Inc.||Hardware-accelerated packet multicasting in a virtual routing system|
|US20140098815 *||Oct 10, 2012||Apr 10, 2014||Telefonaktiebolaget L M Ericsson (Publ)||Ip multicast service leave process for mpls-based virtual private cloud networking|
|US20150128260 *||Nov 6, 2014||May 7, 2015||Telefonaktiebolaget L M Ericsson (Publ)||Methods and systems for controlling communication in a virtualized network environment|
|CN101304389B||Jun 20, 2008||Dec 7, 2011||成都市华为赛门铁克科技有限公司||报文处理方法、装置和系统|
|U.S. Classification||370/432, 370/390|
|International Classification||H04L12/18, H04J3/26, H04L12/56|
|Cooperative Classification||H04L45/16, H04L12/1886, H04L45/04|
|European Classification||H04L45/04, H04L45/16, H04L12/18T|
|Oct 12, 1999||AS||Assignment|
Owner name: NEWBRIDGE NETWORKS, CORP., CANADA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BHARDWAJ, RAJEEV;KHANNA, SANJAY;BHATIA, MEDHAVI;AND OTHERS;REEL/FRAME:010308/0825;SIGNING DATES FROM 19990819 TO 19990904
|Jan 2, 2009||FPAY||Fee payment|
Year of fee payment: 4
|Dec 28, 2012||FPAY||Fee payment|
Year of fee payment: 8
|Dec 28, 2016||FPAY||Fee payment|
Year of fee payment: 12