Recent Commits to NES-Open-Switch:master

Thursday, May 5, 2016

GMPLS update - 85: updating standard GMPLS actual-path agent mapper routines

Updated #standard GMPLS #actual-path agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #actual-path entry based #indexing. This will access the actual-path entries by using the #native #indexing. This removes references to the custom actual-path indexing used earlier. This will reduce the memory requirement associated with the custom actual-path entries. The custom actual-path #entries add support for #attributes like #hop-forward-label and #hop-reverse-label. The #label-type attribute adds support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) through the #label-type and #label-value attributes.

#GMPLS update 85 ...
[commit 5fb2cc40376e5a87bc687b5f958728ad8578efab] (https://github.com/nes-repo/NES-Open-Switch/commit/5fb2cc40376e5a87bc687b5f958728ad8578efab)

Wednesday, May 4, 2016

GMPLS update 84: optimizing GMPLS Tunnel configuration entries

Updated the #GMPLS #Tunnel configuration #entries in GMPLS module. The GMPLS Tunnel configuration entries has been #optimized to use shorter #variable #names and removed the #length variable for many #multi-size #parameters. This makes uses of short & easier variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#GMPLS update 84 ...
[commit e76006145eec1bff3c3ef0b3a9786f72817f236e] (https://github.com/nes-repo/NES-Open-Switch/commit/e76006145eec1bff3c3ef0b3a9786f72817f236e)

Friday, April 29, 2016

TED update 22: updated TE-Link cross-connect configuration

Updated #TE-Link #cross-connect configuration in #TED module. The new update indicates whether the #direction of cross-connect in #uni-directional cases. i.e It indicates the direction as #ingress / #egress corresponding to the #order of from-to #port #tuple specified in the cross-connect. This enables to specify either the #incoming / #outgoing port as the #first in the from-to tuple. This will be #relevant when conveying this information through the #signaling modules, as the operator may specifically want to specify the order of ports in from-to tuple. In addition to it is also possible to indicate the cross-connect as uni-directional/bi-directional. The above property is specifically used when the cross-connect is in #simplex mode.

#TED update 22 ...
[commit 64ac777acc8e75c0c8ad2e129d02bd16295f7de7] (https://github.com/nes-repo/NES-Open-Switch/commit/64ac777acc8e75c0c8ad2e129d02bd16295f7de7)

Thursday, April 28, 2016

TCP-UDP update 1: optimizing agent framework

Updated the #agent #framework in TCP-UDP module. The #generic #TCP-UDP #framework has been #optimized to use shorter #variable #names and removed the #length variable for many #multi-size #parameters. This makes uses of short & easier variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#TCP-UDP update 1 ...
[commit 762b2f8898c9d55cd2289da33c19ea5176d02bc3] (https://github.com/nes-repo/NES-Open-Switch/commit/762b2f8898c9d55cd2289da33c19ea5176d02bc3)

Tuesday, April 26, 2016

SNMP update 7: optimizing agent framework

Updated the #agent #framework in SNMP module. The #generic #SNMP #framework has been #optimized to use shorter #variable #names and removed the #length variable for many #multi-size #parameters. This makes uses of short & easier variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#SNMP update 7 ...
[commit 3a9909aa0941fc012cdd201877e514f3defef43d] (https://github.com/nes-repo/NES-Open-Switch/commit/3a9909aa0941fc012cdd201877e514f3defef43d)

Monday, April 25, 2016

IS-IS update 4: optimizing agent framework

Updated the #agent #framework in IS-IS module. The #generic #IS-IS #framework has been #optimized to use shorter #variable #names and removed the #length variable for many #multi-size #parameters. This makes uses of short & easier variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#IS-IS update 4 ...
[commit 253a05a0c60371b2864f3d631461404b5e347d7e] (https://github.com/nes-repo/NES-Open-Switch/commit/253a05a0c60371b2864f3d631461404b5e347d7e)

Thursday, April 21, 2016

CFM update - 3: optimizing agent framework for VLAN & Component support

Updated the #agent #framework in CFM module for #VLAN & #Component support. The VLAN & Component aware #CFM #framework has been #optimized to use proper #variable #names and removed the #length variable for many #multi-size #parameters. All the VLAN aware part of CFM framework has been upgraded this way. This makes uses of straight forward variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#CFM update 3 ...
[commit 2e30049df1e797bfd5acb793bb3e75da36732fbf] (https://github.com/nes-repo/NES-Open-Switch/commit/2e30049df1e797bfd5acb793bb3e75da36732fbf)

Tuesday, April 19, 2016

CFM update - 2: optimizing agent framework

Updated the #agent #framework in CFM module. The #generic #CFM #framework has been #optimized to use proper #variable #names and removed the #length variable for many #multi-size #parameters. All the non-VLAN aware part of CFM framework has been upgraded this way. This makes uses of straight forward variable names. The memory size of many multi-size variables have been made static and length support has been removed reducing the memory requirement.

#CFM update 2 ...
[commit 8cf80de977aef3b4ed96b5311a75664ceecdb706] (https://github.com/nes-repo/NES-Open-Switch/commit/8cf80de977aef3b4ed96b5311a75664ceecdb706)

Monday, April 18, 2016

GMPLS update - 83: updating custom actual-path agent mapper routines

Updated #custom #actual-path agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #actual-path entry based #indexing. This will access the actual-path entries by using the #native #indexing. This removes references to the custom actual-path indexing used earlier. This will reduce the memory requirement associated with the custom actual-path entries. The custom actual-path #entries add support for #attributes like #hop-forward-label and #hop-reverse-label. The #label-type attribute adds support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) through the #label-type and #label-value attributes.

#GMPLS update 83 ...
[commit 7ed47f8af6348d2d9dfa61ac9d6e0a7f771e1844] (https://github.com/nes-repo/NES-Open-Switch/commit/7ed47f8af6348d2d9dfa61ac9d6e0a7f771e1844)

Friday, April 15, 2016

GMPLS update - 82: adding new parameters in custom computed-path configuration

Adding new #attributes in custom #computed-path configuration GMPLS module. The new attributes #node-id and #link-id adds support for specifying the #path #segment with respect to the #TE-Node and #TE-Link. This helps in describing the tunnel path using the nodes and links along the way. The #address information of the individual links are #automatically #populated based on the specified node-id and link-id configuration. This adds support for specifying the tunnel computed-path without knowing the address information, but using only the links on the way.

#GMPLS update 82 ...
[commit bd3f992063bcfb377c765dd1f0626fafb9d99910] (https://github.com/nes-repo/NES-Open-Switch/commit/bd3f992063bcfb377c765dd1f0626fafb9d99910)

Thursday, April 14, 2016

GMPLS update - 81: reducing explicit-path configuration parameters

Updated #MPLS-Tunnel #explicit-path configuration entries in GMPLS module to #reduce the necessary #parameters. The parameters #hop-as-number, #hop-lsp-id and #hop-path-computation-type have been removed. Instead of these parameters the #hop-address-type and #hop-address parameters are used. On specifying the #AS-Number or the #LSP-Id the hop-address-type is marked specifically for it and the hop-address will contain the value. The hop-path-computation-type is not used as it was marked obsolete by GMPLS framework and #tunnel-path-computation-type is used. The #path-computation-type is only specified in the tunnel level.

#GMPLS update 81 ...
[commit 8755c8b719aaae75a924f0c67fd6b52b9d1b2e37] (https://github.com/nes-repo/NES-Open-Switch/commit/8755c8b719aaae75a924f0c67fd6b52b9d1b2e37)

Tuesday, April 12, 2016

GMPLS update - 80: optimizing tunnel session attribute

Updated #session-attribute parameter for #MPLS-Tunnel in GMPLS module. The parameter size has been fixed to specific bytes and hence the #length variable for the parameter has been removed. The agent handler for this parameter has been updated to remove the variable length from use. This reduces the memory required to hold the session-attribute parameter. The session-attribute will keep track of the parameters like #fast-reroute-enabled, #merging-permitted, #persistence-enabled, #route-pinned, #record-route, etc... The fast-reroute-enabled parameter enables the upstream node to safely reroute the tunnel on a downstream link or node failure using a local-repair mechanism. The merging-permitted parameter enables the transit routers to merge the tunnels with the same destination, this is used on a resource crunch or better scaling of the network. The persistence-enabled parameter causes to automatically retry to reestablish the tunnel on a failure. The route-pinned parameter causes the dynamically computed path to be used permanently as an explicit-path. The record-route parameter causes the transit routes to be recorded and send back to the tunnel head-node.

#GMPLS update 80 ...
[commit a4073c75ca03c7747e816a49fcf17ed5643f9b1c] (https://github.com/nes-repo/NES-Open-Switch/commit/a4073c75ca03c7747e816a49fcf17ed5643f9b1c)

Friday, April 8, 2016

GMPLS update - 79: updating custom computed-path agent mapper routines

Updated #custom #computed-path agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #computed-path entry based #indexing. This will access the computed-path entries by using the #native #indexing. This removes references to the custom computed-path indexing used earlier. This will reduce the memory requirement associated with the custom computed-path entries. The custom computed-path #entries add support for #attributes like #hop-forward-label and #hop-reverse-label. The #label-type attribute adds support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) through the #label-type and #label-value attributes.

#GMPLS update 79 ...
[commit e92ceeff58fa946cdedc2686bdbb5c121f97c9c5] (https://github.com/nes-repo/NES-Open-Switch/commit/e92ceeff58fa946cdedc2686bdbb5c121f97c9c5)

Thursday, April 7, 2016

GMPLS update - 78: optimizing custom actual-path agent mapper routines

Updated #custom #actual-path agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #actual-path entry based #indexing. This will access the actual-path entries by using the #native #indexing. This removes references to the custom actual-path indexing used earlier. This will reduce the memory requirement associated with the custom actual-path entries. The custom actual-path #entries add support for #attributes like #hop-forward-label and #hop-reverse-label. The #label-type attribute adds support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) through the #label-type and #label-value attributes.

#GMPLS update 78 ...
[commit ae725a449ea0886f8dd7e7f5a17ad90d893a1b8f] (https://github.com/nes-repo/NES-Open-Switch/commit/ae725a449ea0886f8dd7e7f5a17ad90d893a1b8f)

Tuesday, April 5, 2016

LACP upgrade - 13: cleaning up LAG module

Cleaned up #LAG and #LACP modules with #miscellaneous #changes. Corrected the #PDU #handler in LACP module. Reordered PDU buffer data-structure. Removed definitions of the old module data-structures in LAG module. Corrected #aggregator #member-port #list iterator routine. Corrected #member-port #statistics iterator routines with direct references from member-port configuration entries. Updated #custom #aggregator configuration entries with direct reference from the aggregator configuration entries.

#LACP update 26 ...
[commit a64084632d865d7e2dbbbe553d7bc4d64f4bea43] (https://github.com/nes-repo/NES-Open-Switch/commit/a64084632d865d7e2dbbbe553d7bc4d64f4bea43)

Monday, April 4, 2016

GMPLS update - 77: adding new set of custom tunnel configuration parameters

Added new set of #custom #configuration #parameters for #tunnels in #GMPLS module. The new parameters are #reroute_upstream_enable, #upstream_resource_index, #crankback_model, #crankback_enable, #crankback_list_index, #softpreemption_enable, #oam_enable and #oam_status. The reroute_upstream_enable controls the capability to reroute the tunnel from upstream node and procedures to request reroute. The crankback_model indicates the specific model being followed by the stack e.g. end-to-end-rerouting, boundary-rerouting or segment-rerouting and crankback_enable controls whether crankback operations are permitted or not. The softpreemption_enable parameter enables the soft-preemption procedures - when needed. The oam_enable enables/disables OAM procedures on the tunnel.

#GMPLS update 77 ...
[commit ae3b5d5823e92b3f3d841456a74486a2468a223b] (https://github.com/nes-repo/NES-Open-Switch/commit/ae3b5d5823e92b3f3d841456a74486a2468a223b)

Friday, April 1, 2016

LACP upgrade - 12: updating member port selection handler

Updated #member-port #selection #handler in #LACP module. This handler checks and #verifies whether the #peer #partner and the #peer #port #attributes are not changing. The peer port info is recorded while LACP PDU is received. While there is an #administrative #configuration change from the peer side or a #physical #connectivity #changes happens from the remote side, it has to be decided whether the #member-port can still be part of #aggregation or not. The handler reads out the attributes passed in the LACP PDU and compare them against the peer port info recorded earlier. When the attributes differ in the PDU the member-port is marked as not part of the aggregation and #member-port #selection #procedures are executed.

#LACP update 25 ...
[commit d9276967f49544b9bdec8921911edf9f52286aa3] (https://github.com/nes-repo/NES-Open-Switch/commit/d9276967f49544b9bdec8921911edf9f52286aa3)

Thursday, March 31, 2016

LACP upgrade - 11: updating member port distribution and collection handler

Updated #distribution and #collection #handler for #member-ports in #LACP module. The handler #enables the collection and distribution operations #sequentially on each port. After an #aggregator port is selected to be #attached with the member port member port moves to the #synchronized #state with the peer port. i.e. both peer agrees that same aggregator link is used for attaching from both peer systems. Once the synchronization is attained the handler #enables #collection operation on the member port and the #HAL #calls will be done for enabling collecting operation in the #hardware as well. Once this is done, informs the peer about this with an updated LACP PDU. Once both the peers are collecting data from each side of the link for the same aggregator port the #distribution operation will be started on the member port by the handler in the next step. The #HAL call will be done and the updated LACP PDU will be sent to peer to inform them as well. Once both collection and distribution operations are enabled on the member ports the link will be fully participating in the aggregation operation.

#LACP update 24 ...
[commit 10442a8c8cd0bf6e7bba44a62cf01c3fda3a99d3] (https://github.com/nes-repo/NES-Open-Switch/commit/10442a8c8cd0bf6e7bba44a62cf01c3fda3a99d3)

Wednesday, March 30, 2016

LACP upgrade - 10: updating LACP PDU partner info handler

Updated the LACP #PDU #handler in #LACP module. This handler will #process the #PDU while #received on port. The #peer #partner #info of the received port is #updated from the info received in the LACP PDU. The info in the PDU is checked against the actor port specific info to #decide whether the #peer port is in #sync with the received port. The partner info like oper-port, oper-priority, oper-system-id, oper-system-priority, oper-key and oper-stat are populated according to the values received from LDU. The actor specific info like port, port-priority, system-id, system-priority and oper-key are cross checked with the info in PDU to decide whether synchronization has been attained with the peer port.

#LACP update 23 ...
[commit 4b8005f9df419c5b8f573ca219af71cc45c67a10] (https://github.com/nes-repo/NES-Open-Switch/commit/4b8005f9df419c5b8f573ca219af71cc45c67a10)

Tuesday, March 29, 2016

GMPLS update - 76: adding new parameters in custom actual-path configuration

Adding new #attributes in custom #actual-path configuration GMPLS module. The new attributes #node-id and #link-id adds support for specifying the #path #segment with respect to the #TE-Node and #TE-Link. This helps in describing the tunnel path using the nodes and links along the way. The #address information of the individual links are #automatically #populated based on the specified node-id and link-id configuration. This adds support for specifying the tunnel actual-path without knowing the address information, but using only the links on the way.

#GMPLS update 76 ...
[commit 92d0937aef9875c5c567a439870f698f91555c63] (https://github.com/nes-repo/NES-Open-Switch/commit/92d0937aef9875c5c567a439870f698f91555c63)

Monday, March 28, 2016

GMPLS update - 75: updating custom explicit-path agent mapper routines

Updated #custom #explicit-path agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #explicit-path entry based #indexing. This will access the explicit-path entries by using the #native #indexing. This removes references to the custom explicit-path indexing used earlier. This will reduce the memory requirement associated with the custom explicit-path entries. The custom explicit-path #entries add support for #attributes like #hop-forward-label and #hop-reverse-label. The #label-type attribute adds support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) through the #label-type and #label-value attributes.

#GMPLS update 75 ...
[commit 9ec61638981ef073c8465a146aa2b84ebea969ad] (https://github.com/nes-repo/NES-Open-Switch/commit/9ec61638981ef073c8465a146aa2b84ebea969ad)

Thursday, March 24, 2016

GMPLS update - 74: adding new parameters in custom explicit-path configuration

Adding #new #attributes in custom #explicit-path configuration GMPLS module. The new attributes #node-id and #link-id adds support for specifying the #path #segment with respect to the #TE-Node and #TE-Link. This helps in describing the tunnel path using the nodes and links along the way. The #address information of the individual links are #automatically #populated based on the specified node-id and link-id configuration. This adds support for specifying the tunnel explicit-path without knowing the address information, but using only the links on the way.

#GMPLS update 74 ...
[commit 37d335c7865164d7d1a7b2d968e91a301d48866d] (https://github.com/nes-repo/NES-Open-Switch/commit/37d335c7865164d7d1a7b2d968e91a301d48866d)

Wednesday, March 23, 2016

GMPLS update - 73: updating custom out-segment agent mapper routines

Updated #custom #out-segment agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to #use standard #out-segment entry based #indexing. This will access the out-segment entries by using the #native #indexing. This removes references to the custom out-segment indexing used earlier. This will reduce the memory requirement associated with the custom out-segment entries. The custom label-stack #entries add support for #out-segment #attributes like GMPLS #top-label, #swap-label, etc ... The custom out-segment #entries add support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) by maintaining the GMPLS #label-type and #label-value #attributes.

#GMPLS update 73 ...
[commit f7a57600c601adeed30f95c5f47c79bc86c1ec25] (https://github.com/nes-repo/NES-Open-Switch/commit/f7a57600c601adeed30f95c5f47c79bc86c1ec25)

Tuesday, March 22, 2016

LACP upgrade - 9: updating LACP PDU transmit handler

Updated the #PDU #transmit #handler in the #LACP module. Whenever updated LACP packets has to be sent to the #peer #partner node, the PDUs are #composed from the internal data-structures in this routine. This routine access the member port data-structures for #creating the individual #TLVs in the LACP PDU. The data-structure references has been corrected to the native member port structures. This routine passes the created PDUs to the appropriate #platform #handlers to send them out of the actual port.

#LACP update 22 ...
[commit 3a79dce87f1ea9b2225c02fea5d33a08a22e7d0b] (https://github.com/nes-repo/NES-Open-Switch/commit/3a79dce87f1ea9b2225c02fea5d33a08a22e7d0b)

Friday, March 18, 2016

LACP upgrade - 8: updating the LACP PDU processing routine

Updated the internal #LACP #PDU #processing routine in LACP module. This handler #disects the LACP #packet in to individual #TLVs and do the respective handling. The LACP PDU receive handler passes the incoming PDUs to this routine for processing. The routine has been upgraded to use the native member port level data-structures for it's internal processing.

#LACP update 21 ...
[commit 71ff8fe16a341f52e8887bb8abb5648f3ab1bebb] (https://github.com/nes-repo/NES-Open-Switch/commit/71ff8fe16a341f52e8887bb8abb5648f3ab1bebb)

Thursday, March 17, 2016

LACP upgrade - 7: updating the received LACP PDU handler

Updated incoming #LACP #PDU #handler in LACP module. The PDU handler has been updated to use native member port structures. The #peer #partner #data-structures on the particular member port are updated and internal LACP state on the port is updated in the handler. The routine to update the peer partner data-structures with the #administratively configured #default #values has been updated to remove references to the augmented data-structures. The #partner #info #expire #handler also has been updated in the same lines.

#LACP update 20 ...
[commit 1e4f29e70604d243bb4d80becf1e76e91007504b] (https://github.com/nes-repo/NES-Open-Switch/commit/1e4f29e70604d243bb4d80becf1e76e91007504b)

Wednesday, March 16, 2016

GMPLS update - 72: optimizing custom explicit-path parameter entries

Updated #GMPLS #custom #explicit-path #parameter agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #explicit-path entry based #indexing. This will access the custom explicit-path entries by using the #native #indexing. This removes references to the custom explicit-path indexing used earlier. The custom explicit-path parameter entries has been embedded in the standard explicit-path entries. The custom explicit-path parameter entries holds the #attributes like #hop-forward-label and #hop-reverse-label.

#GMPLS update 72 ...
[commit 7ddb605fe1b09b77521479133548c56cc4342bae] (https://github.com/nes-repo/NES-Open-Switch/commit/7ddb605fe1b09b77521479133548c56cc4342bae)

Tuesday, March 15, 2016

GMPLS update - 71: updating custom cross-connect agent mapper routines

Updated #custom #cross-connect agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #cross-connect entry based #indexing. This will access the cross-connect entries by using the #native #indexing. This removes references to the custom cross-connect indexing used earlier. This will reduce the memory requirement associated with the custom cross-connect entries. The custom cross-connect #entries add support for #label-stack #attributes like #cross-connect-type which indicate the cross-connect as part of LSP/pseudo-wire, also it indicates whether cross-connect is used in #HLSP or #SLSP modes.

#GMPLS update 71 ...
[commit feed37bae874c1fa5f8623fe0f9b1384892d61b1] (https://github.com/nes-repo/NES-Open-Switch/commit/feed37bae874c1fa5f8623fe0f9b1384892d61b1)

Monday, March 14, 2016

GMPLS update - 70: updating custom label-stack agent mapper routines

Updated #custom #label-stack agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #label-stack entry based #indexing. This will access the label-stack entries by using the #native #indexing. This removes references to the custom label-stack indexing used earlier. This will reduce the memory requirement associated with the custom label-stack entries. The custom label-stack #entries add support for #label-stack #attributes like GMPLS #label-type and #label-value, etc ...

#GMPLS update 70 ...
[commit 48da86fd34b3d887109f1759c4120340e02cd808] (https://github.com/nes-repo/NES-Open-Switch/commit/48da86fd34b3d887109f1759c4120340e02cd808)

Friday, March 11, 2016

GMPLS update - 69: optimizing custom cross-connect parameter entries

Updated #GMPLS #custom #cross-connect #parameter agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #cross-connect entry based #indexing. This will access the custom cross-connect entries by using the #native #indexing. This removes references to the custom cross-connect indexing used earlier. The custom cross-connect parameter entries has been embedded in the standard cross-connect entries. The custom cross-connect parameter entries holds the #attributes like the #cross-connect-type which indicate the cross-connect as part of LSP/pseudo-wire, also it indicates whether cross-connect is used in #HLSP or #SLSP modes.

#GMPLS update 69 ...
[commit f90dcca56b542f51afb50d61631aa545ec1d691c] (https://github.com/nes-repo/NES-Open-Switch/commit/f90dcca56b542f51afb50d61631aa545ec1d691c)

Wednesday, March 9, 2016

LACP upgrade - 6: updating member port aggregator attach handler

Updated #member #port #attach #handler with the aggregator in the #LACP module. This handler make the #hardware calls to #attach the member port with the selected aggregator and mark the member port state as attached. The #remote #peer is informed of this by sending a #new #LACP #PDU and peer is marked as #synchronized. Later, when peer responds with it's PDU the actual #distribution and #collection operations will be #started for member ports. On attaching the member port with the aggregator the LAG distribution and collection operations will be started in hardware. i.e. The traffic sent out on the aggregator port will be distributed to the member ports and traffic received on the member ports will be collected on to the combined aggregator port.

#LACP update 19 ...
[commit c4c8b0875ce3ca180a3982e850131b58f15a1451] (https://github.com/nes-repo/NES-Open-Switch/commit/c4c8b0875ce3ca180a3982e850131b58f15a1451)

Tuesday, March 8, 2016

LACP upgrade - 5: updating aggregator port state update handler

Updated #aggregator #port #status #handler in #LACP module. The data structure has been updated to use the new updated structure. This routine #updates the aggregator status as part of the #administrative or #operational #changes. The #LAG module uses this to #convey the aggregator #status #change to LACP module. When the aggregator port status changes to DOWN current aggregator selection is marked to be cleared. The remote information is marked as expired. This will cause the remote peer information to be gathered fresh again on port UP change. When port state comes as UP, the peer synchronization is marked as lost and expired and a timer is set to start operation on this port again.

#LACP update 18 ...
[commit 8eb97ea8c7dfb9c391f358e309df5bdc1f86b976] (https://github.com/nes-repo/NES-Open-Switch/commit/8eb97ea8c7dfb9c391f358e309df5bdc1f86b976)

Thursday, March 3, 2016

GMPLS update - 68: adding asymmetric bandwidth parameter in custom tunnel entries

Added #new #parameters in #custom #MPLS-tunnel #configuration in #GMPLS module. The #reverse-resource-index optional parameter has been added to tunnel configuration. When present it specify the #resource #requirement for the #reverse #direction, other wise resource requirement is assumed to be same for both directions as the normal #resource-index parameter. This enables to specify #asymmetric #bandwidth for #forward and #reverse #tunnel directions. In normal cases forward and reverse directions shares the same resource requirements. But in specific scenarios it is necessary to specify unequal bandwidths for forward and reverse directions. The new parameter caters this requirement and enables to specify different resource configuration for each directions.

#GMPLS update 68 ...
[commit 60e7e722f8659c6f9b4c78cf1546f4443b4a225f] (https://github.com/nes-repo/NES-Open-Switch/commit/60e7e722f8659c6f9b4c78cf1546f4443b4a225f)

Tuesday, March 1, 2016

GMPLS update - 67: optimizing custom computed-path parameter entries

Updated #GMPLS #custom #computed-path #parameter agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #computed-path entry based #indexing. This will access the custom computed-path entries by using the #native #indexing. This removes references to the custom computed-path indexing used earlier. The custom computed-path parameter entries has been embedded in the standard computed-path entries. The custom computed-path #entries add support for #attributes like GMPLS #forward-label, #reverse-label, etc ...  These labels are computed and populated as part of the path-computation operation. The custom computed-path #entries add support for #media specific labels ( #Ethernet / #SONET / #SDH / #OTN ) by maintaining the GMPLS #label-type and #label-value #attributes.

#GMPLS update 67 ...
[commit babc88764b1d830576fe24cf7c9d0f6a161a9dca] (https://github.com/nes-repo/NES-Open-Switch/commit/babc88764b1d830576fe24cf7c9d0f6a161a9dca)

Thursday, February 25, 2016

GMPLS update - 66: adding out-segment create/remove API

Added #create / #remove #API for #standard MPLS #out-segment #configuration in GMPLS module. These APIs will be used by the other module procedures to create out-segment entries in the #MPLS-LSR #framework. This will #create the other #dependent #objects of the out-segment. For each standard out-segment entry, one out-segment #statistics entry, one #GMPLS #configuration entry and a #custom #out-segment configuration entry will be created along with it. The create API makes sure that these #hierarchical #entries are in place. The remove API will handle the #cleanup operation of the standard out-segment entry. On removing the standard out-segment entry the related #hierarchical #entries will be #removed from the framework #automatically.

#GMPLS update 66 ...
[commit 64ffc89c6a3b77f5f5b884aa5a8e05c96bd9a02d] (https://github.com/nes-repo/NES-Open-Switch/commit/64ffc89c6a3b77f5f5b884aa5a8e05c96bd9a02d)

Tuesday, February 23, 2016

GMPLS update - 65: optimizing custom out-segment parameter entries

Updated #GMPLS #custom #out-segment #parameter agent mapper routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #out-segment entry based #indexing. This will access the custom out-segment entries by using the #native #indexing. This removes references to the custom out-segment indexing used earlier. The custom out-segment parameter entries has been embedded in the standard out-segment entries. The custom label-stack #entries add support for #out-segment #attributes like GMPLS #top-label, #swap-label, etc ... The custom out-segment #entries add support for #media specific labels ( #Ethernet / #SONET / #SDH / #OTN ) by maintaining the GMPLS #label-type and #label-value #attributes.

#GMPLS update 65 ...
[commit 2a01dba44fa45bf0e30e12687c8dd0df871dfd77] (https://github.com/nes-repo/NES-Open-Switch/commit/2a01dba44fa45bf0e30e12687c8dd0df871dfd77)

Monday, February 22, 2016

GMPLS update - 64: hard-linking standard GMPLS out-segment entries

Hard-linked standard #GMPLS #out-segment entries with #standard #out-segment #entries in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #out-segment entry based #indexing. This will access the out-segment entries by using the #native #indexing. This removes references to the GMPLS out-segment indexing used earlier. This will reduce the memory requirement associated with the GMPLS out-segment entries. The GMPLS out-segment #entries add support for #attributes like #segment-direction, #ttl-decrement, #pointer to external parameters, etc ...

#GMPLS update 64 ...
[commit 46fc507239bfa9657fbf98a81c001fb6b0bb199f] (https://github.com/nes-repo/NES-Open-Switch/commit/46fc507239bfa9657fbf98a81c001fb6b0bb199f)

Wednesday, February 17, 2016

LACP upgrade - 4: updated LACP member port detach handler

Updated #member-port #detach #handler in #LACP module. This handler #detaches the #port from the #hardware #aggregator and #inform the #remote #peer of the same. After this a wait timer is set for later processing. This procedure is executed as part of #protocol #state #changes or as a side effect of a management operation. The aggregator is detached from the member-port in hardware and the peer is informed that local end is not in sync anymore. The #collection and #distribution procedures are #disabled in #hardware and the peer will be known of the same when it receives the updated LACP PDU from local end.

#LACP update 17 ...
[commit 246b3ed5760ddcf5cf0765586213084eff6fd177] (https://github.com/nes-repo/NES-Open-Switch/commit/246b3ed5760ddcf5cf0765586213084eff6fd177)

Tuesday, February 16, 2016

LACP upgrade - 3: updated LACP member port initialization and reset routines

Updated #member-port #init and #reset routines in #LACP module. These routine the initialization and reset operation as part of the #LACP #protocol #operation. On init for the member-port the LAG initialization routine is also called for setting defaults for the LAG parameters. The init also causes the #member-port to be #detached from the #aggregator as well. Hence the selection process starts over again and #elects the #aggregator again.

#LACP update 16 ...
[commit 1a5e11fea1f11448ca06d1e44b62971268b366d3] (https://github.com/nes-repo/NES-Open-Switch/commit/1a5e11fea1f11448ca06d1e44b62971268b366d3)

Friday, February 12, 2016

LACP upgrade - 2: updated LACP member port initialization parameters

Updated the #member-port #initialization values in #LAG module. The member-port initialization resets the operational parameters. These parameters include the #actor-key, #partner-sys-id, #partner-sys-priority, #partner-key, #partner-port, #partner-port-priority, #actor-state and #partner-state. The member-ports are initialized on newly activating the port or when LACP state is reset during the protocol state changes.

#LACP update 15 ...
[commit 0465f3a629b1c5ec87d88e36ee0d5d2230633487] (https://github.com/nes-repo/NES-Open-Switch/commit/0465f3a629b1c5ec87d88e36ee0d5d2230633487)

Thursday, February 11, 2016

LACP upgrade - 1: updated LACP aggregator and member port activation handler

Updated the port status #activation #handler for both #aggregator and the #member-port in #LACP module. The data type references has been corrected to use the new updated type. The activation handlers #cascade the #configuration #state #changes from the #LAG module to LACP module. On moving the port to #active state from LAG module, the #LACP #protocol specific procedures will be #started for these ports. Similarly on putting these ports in to #not-in-service or #not-ready state, the #protocol procedures are #stopped and #cleanup is done for these ports.

#LACP update 14 ...
[commit d726911bd75d0e80a7a65e4274f06bde3c4fc806] (https://github.com/nes-repo/NES-Open-Switch/commit/d726911bd75d0e80a7a65e4274f06bde3c4fc806)

Wednesday, February 10, 2016

GMPLS update - 63: updating standard GMPLS tunnel error agent mapper routines

Updated #standard #extended GMPLS #tunnel #error agent routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #tunnel #based #indexing. This will access the extended tunnel error entries #embedded in the standard #MPLS #tunnel entries and there by removing the redundant indexing. The extended tunnel error entries contain attributes like the #error-type - the kind of error happened on the tunnel (e.g. local configuration error, local dynamic state - shortage of resources, path not found - issues, network protocol failures, etc ...), #error-time, #error-reporter, related #error-tlvs and #error-description, etc ...

#GMPLS update 63 ...
[commit 9b37b1ff1c96d1367928925588dc15381b7b86b4] (https://github.com/nes-repo/NES-Open-Switch/commit/9b37b1ff1c96d1367928925588dc15381b7b86b4)

Tuesday, February 9, 2016

GMPLS update - 62: optimizing standard GMPLS computed-path entries

Optimized #standard #extended GMPLS #tunnel #computed-path #entries in GMPLS module. This removes the #extended #path-hop #attributes like flags indicating whether #hop-forward-label and #hop-reverse-label are present or not, the #labels them selves and the #pointers to the external labels. This will reduce the memory requirement associated with the #GMPLS #computed-path-hop entries. The hard-linked #custom GMPLS #computed-path-hop entries provides #alternate custom #parameters which satisfies the same requirement.

#GMPLS update 62 ...
[commit 06d5c4c6f8cf822242d0cf2e77cfecd906c24eae] (https://github.com/nes-repo/NES-Open-Switch/commit/06d5c4c6f8cf822242d0cf2e77cfecd906c24eae)

Monday, February 8, 2016

LAG upgrade - 28: added LAG interface OPER-STATUS handler

Added #aggregator logical-interface ( #lag-interface ) #OPER-STATUS #handler routine in LAG module. This enables to #perform the #support #procedures for #lag-interfaces on OPER-STATUS change. The handler is registered with the IF module and #IF #module will #execute this #call-back on respective #parameter #change in IF module. This helps to perform the necessary procedures in LAG module when the OPER-STATUS is changed from IF module. The references to the augmented custom aggregator data-structures has been updated to the standard aggregator data-structures.

#LAG update 36 ...
[commit 53be9578d6d937bfe18fad3d7c1efffc69722550] (https://github.com/nes-repo/NES-Open-Switch/commit/53be9578d6d937bfe18fad3d7c1efffc69722550)

Friday, February 5, 2016

LAG upgrade - 27: updating member port activation handler

Updating the #member #port #activation handler in LAG module. The references to the augmented custom member port data-structures has been updated to the standard member port data-structures. This allows to directly use the #standard #member #port data-structure and use the #embedded custom member port data-structure for internal operations. The #status related parameters are kept in the custom data-structure and on member port status #change these are updated as #active / #not-in-service. When ports are not ready to participate in the normal operations because of inconsistency in the applied configuration the state is set as #not-ready.

#LAG update 35 ...
[commit f0301884d9fabadfd09736b26fa5fc3c63f3bcf9] (https://github.com/nes-repo/NES-Open-Switch/commit/f0301884d9fabadfd09736b26fa5fc3c63f3bcf9)

Thursday, February 4, 2016

LAG upgrade - 26: cleaning up LAG management framework for data-structure changes

Added miscellaneous changes in #management #framework in LAG module. #Cleaned up #aggregator #activation handler and added #initialized aggregator #parameters with their #default values. Corrected standard #extended #member #port #iterator routine to provide reference to the standard member port, so that extended parameters embedded in them can be accessed in the mapper routine. Corrected #member #port #create #API to create #statistics, #debug and #extended port #data-structures as part of the member port creation. Corrected #aggregator #create #API to create the #member port #list as part of aggregator creation.

#LAG update 34 ...
[commit 3302d18556d2f6e7652b93118f9ecd186e3451fe] (https://github.com/nes-repo/NES-Open-Switch/commit/3302d18556d2f6e7652b93118f9ecd186e3451fe)

Wednesday, February 3, 2016

GMPLS update - 61: adding cross-connect out-segment based indexing

Added #out-segment based #index for #cross-connects in GMPLS module. This will enable to #access the #cross-connect entry based on it's #out-segment, #in-segment #index pair. This will help to look-up cross-connect entries from the out-segment information. This is used to #pass the #trigger to the #cross-connect on #out-segment level #changes. This helps to efficiently map the cross-connect entries from the out-segment index.

#GMPLS update 61 ...
[commit 32be6656d2cedf45d469e942264c96e22755d745] (https://github.com/nes-repo/NES-Open-Switch/commit/32be6656d2cedf45d469e942264c96e22755d745)

Tuesday, February 2, 2016

GMPLS update - 60: optimizing standard label stack entries

Optimized #standard #label #stack #entries in GMPLS module. This #removes the #attributes like #label and #pointer to label. The hard-linked #custom #label #stack entries provides the label information of the stack which satisfies the same requirement. The custom out-segment entry is capable of maintaining the label of any media type, hence this will be more useful than the standard entries - which is quite limited. This will reduce the memory requirement associated with the label stack entries.

#GMPLS update 60 ...
[commit e744cbbee2f0ae3b3d88d1bba4034da0629278ff] (https://github.com/nes-repo/NES-Open-Switch/commit/e744cbbee2f0ae3b3d88d1bba4034da0629278ff)

Monday, February 1, 2016

GMPLS update - 59: optimizing standard out-segment entries

Optimized #standard #out-segment #entries in GMPLS module. This #removes the #attributes like #pointer to #extra #parameters. The hard-linked #custom #out-segment entries provides the extra #parameters on the segment which satisfies the same requirement. The custom out-segment entry holds attributes like #swap-label and #top-label. This will reduce the memory requirement associated with the out-segment entries.

#GMPLS update 59 ...
[commit 5fa265b017cb2bc96c629cebc705635a876173dc] (https://github.com/nes-repo/NES-Open-Switch/commit/5fa265b017cb2bc96c629cebc705635a876173dc)

Thursday, January 28, 2016

GMPLS update - 58: optimizing standard in-segment entries

Optimized #standard #in-segment #entries in GMPLS module. This #removes the #attributes like #pointer to #extra #parameters. The hard-linked #custom #in-segment entries provides the extra #parameters on the segment which satisfies the same requirement. The custom in-segment entry holds attributes like in-label. This will reduce the memory requirement associated with the in-segment entries.

#GMPLS update 58 ...
[commit f33ba928d0f83db848881c9fd6264d77415288ee] (https://github.com/nes-repo/NES-Open-Switch/commit/f33ba928d0f83db848881c9fd6264d77415288ee)

Friday, January 22, 2016

LAG upgrade - 25: removing custom aggregator create API

Removed #custom #aggregator #create / #remove API in LAG module. The custom aggregator entries are #embedded in the #standard #aggregator entries and the standard aggregator create / remove API already handles the required functionality. Hence the redundant external API is being removed.

#LAG update 33 ...
[commit 0a76fda1aa99caf3fb55c5658b71bc4fb6f406ae] (https://github.com/nes-repo/NES-Open-Switch/commit/0a76fda1aa99caf3fb55c5658b71bc4fb6f406ae)

Thursday, January 21, 2016

LAG upgrade - 24: removing custom member port create API

Removed #custom #member #port #create / #remove API in LAG module. The custom member port entries are #embedded in the #standard #member #port entries and the standard member port create / remove API already handles the required functionality. Hence the redundant external API is being removed.

#LAG update 32 ...
[commit a494870f8213e5784c9f97e77db46899151af7e4] (https://github.com/nes-repo/NES-Open-Switch/commit/a494870f8213e5784c9f97e77db46899151af7e4)

Wednesday, January 20, 2016

LAG upgrade - 23: updating custom member port parameters agent mapper routines

Updated #custom #member #port parameters agent routines in LAG module. The agent #iterator routines and #mapper #routine has been updated to use standard #member #port #based #indexing. This will access the member list embedded in the member port and there by removing the redundant indexing. The custom member port entries holds the attributes like the #port-aggregator-group, #LACP-enable, #LACP-passive-enable, #LACP-slow-timer-enable, #dynamic-key-management-enable, etc ...

#LAG update 31 ...
[commit 6b0684762704ec6761239fa553fd50fda10d7fe0] (https://github.com/nes-repo/NES-Open-Switch/commit/6b0684762704ec6761239fa553fd50fda10d7fe0)

Tuesday, January 19, 2016

GMPLS update - 57: optimizing standard out-segment entries

Optimized #standard #out-segment #entries in GMPLS module. This #removes the #attributes like #top-label, #pointer #to top #label and #pointer to #traffic #parameter. The hard-linked #custom #out-segment entries provides #alternate #parameters which satisfies the same requirement and the traffic parameters are derived from the associated tunnel LSP. The custom out-segment entry holds attributes like #swap-label and #top-label. The removed standard attributes support only few media types, but the custom attributes supports #label-types for different media types. This will reduce the memory requirement associated with the out-segment entries.

#GMPLS update 57 ...
[commit cf9f530dd23d57563b2933c49ce9c7f76d082cf0] (https://github.com/nes-repo/NES-Open-Switch/commit/cf9f530dd23d57563b2933c49ce9c7f76d082cf0)

Monday, January 18, 2016

GMPLS update - 56: optimizing standard GMPLS actual-path entries

Optimized #standard #extended GMPLS #tunnel #actual-path #entries in GMPLS module. This removes the #extended #path-hop #attributes like flags indicating whether #hop-forward-label and #hop-reverse-label are present or not, the #labels them selves and the #pointers to the external labels. This will reduce the memory requirement associated with the #GMPLS #actual-path-hop entries. The hard-linked #custom GMPLS #actual-path-hop entries provides #alternate custom #parameters which satisfies the same requirement.

#GMPLS update 56 ...
[commit c6535beee559512359feea3d58fa18536f0ff86d] (https://github.com/nes-repo/NES-Open-Switch/commit/c6535beee559512359feea3d58fa18536f0ff86d)

Thursday, January 14, 2016

GMPLS update - 55: adding standard tunnel activation handler

Added the #tunnel #activation #handler in GMPLS module. This will change the #tunnel #state as #active / #not-in-service effectively #enabling / #disabling the tunnel operation. On activating the tunnel depending on the tunnel type further actions will change. For a #static tunnel, the #bandwidth #reservation will be performed on the lower links and the #external #paths will be found in that process. The #cross-connects and the #segments will be created and they will be further made active, effectively cascading the activation operation. For #dynamically #signaled #tunnels the signaling modules will take over the further operations.

#GMPLS update 55 ...
[commit 43fbc1683644f5b2fba96ab5dde255d140e50345] (https://github.com/nes-repo/NES-Open-Switch/commit/43fbc1683644f5b2fba96ab5dde255d140e50345)

Wednesday, January 13, 2016

GMPLS update - 54: updating standard extended tunnel agent mapper routines

Updated #standard #extended #tunnel #parameter agent routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #tunnel #based #indexing. This will access the extended tunnel entries #embedded in the standard #MPLS #tunnel entries and there by removing the redundant indexing. The extended tunnel entries contain attributes like the #opposite-dir-tunnel pointer, #tunnel-index and the #tunnel-instance for the reverse tunnel, etc ...

#GMPLS update 54 ...
[commit de853288644aaeacaa5c9c5d2a45a40aa6ca1df6] (https://github.com/nes-repo/NES-Open-Switch/commit/de853288644aaeacaa5c9c5d2a45a40aa6ca1df6)

Wednesday, January 6, 2016

LAG upgrade - 22: updating aggregator activation handler

Updating the #aggregator #activation handler in LAG module. The references to the augmented aggregator data-structures has been updated to the standard aggregator data-structures. This allows to directly use the #standard #aggregator data-structure and use the #embedded custom aggregator data-structure for internal operations. The #status related parameters are kept in the custom data-structure and on aggregator status #change these are updated as #active / #not-in-service. When aggregator are not ready to participate in the normal operations because of inconsistency in the applied configuration the state is set as #not-ready.

#LAG update 30 ...
[commit e0fd07fb4b43c2c956e2d465b5383fef93871f06] (https://github.com/nes-repo/NES-Open-Switch/commit/e0fd07fb4b43c2c956e2d465b5383fef93871f06)

Monday, January 4, 2016

LAG upgrade - 21: updating custom aggregator agent mapper routines

Updated #custom aggregator agent routines in LAG module. The agent #iterator routines and #mapper #routine has been updated to use standard #aggregator #based #indexing. This will access the custom aggregator entries #embedded in the standard #aggregator entries and there by removing the redundant indexing. The custom aggregator entries contain attributes like the #aggregator-group, #max-bandwidth, etc ...

#LAG update 29 ...
[commit 09b87ee92cf898c0f940626591f89ff4dc27faec] (https://github.com/nes-repo/NES-Open-Switch/commit/09b87ee92cf898c0f940626591f89ff4dc27faec)