Recent Commits to NES-Open-Switch:master

Monday, November 30, 2015

GMPLS update - 46: optimizing standard extended GMPLS tunnel actual-path entries

Hard-linked #standard #extended GMPLS #tunnel #actual-path through #standard MPLS #tunnel actual-path #entries in GMPLS module. This will indicate the #extended #path-hop #attributes like flags indicating whether #hop-forward-label and #hop-reverse-label are present or not, pointers to these respective labels and #hop-protection status as in whether #local-protection is available in the hop and whether they are using it or not. This will reduce the memory requirement associated with the GMPLS actual-path entries. The hard-linked GMPLS actual-path entries enables accessing them directly from the standard MPLS actual-path entries.

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

Sunday, November 29, 2015

Platform module update - 2: module control API support

Added changes in #platform module for platform #module-control handle API. This will enable the necessary #platform #modules to #perform #module-init and #module-start operation in sequence. The specific platform #module can optionally define the #init operations in the module-control handle and register the control handle on module #registration. The platform will execute the init operation before executing the #start operation, through the control handle. This generalizes and reduces the future platform API changes by defining a #unified #API for all module control operations from the platform.

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

Saturday, November 28, 2015

GMPLS update - 45: upgrading standard MPLS tunnel configuration entries

Upgraded #standard MPLS #tunnel #configuration entries in GMPLS module. The #tunnel-name and #tunnel-description has been set to #limited #size in-line with commonly used #max-limit. The #cross-connect #pointer and #resource-pointer has been removed and the #cross-connect-index and #resource-index defined in #custom MPLS #tunnel #configuration entries will be used instead. This removes the long (and memory hogging) pointer format and uses light weight integer indexes in to the respective configuration entries.

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

Friday, November 27, 2015

LAG upgrade - 11: updating member port list agent mapper routines

Updated #member #port #list agent routines in LAG module. The agent #iterator routines and #mapper #routine has been updated to use #aggregator #based #indexing. This will access the member list embedded in the aggregator and there by removing the redundant indexing.

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

Thursday, November 26, 2015

GMPLS update - 44: optimizing standard extended tunnel configuration entries

Hard-linked #standard #extended GMPLS #tunnel #configuration through #standard MPLS #tunnel #entries in GMPLS module. This will indicate the #extended #tunnel #attributes like #reverse-lsp-pointer to the LSP carrying the traffic in the reverse direction, also when the reverse LSP is part of altogether different tunnel the #reverse-tunnel-index and #reverse-tunnel-instance. This covers the different cases involved in the #associated-bidirectional-tunnel. The #co-routed-bidirectional-tunnels are constructed with a single LSP having cross-connects for both the directions. The associated bidirectional tunnels can be constructed utilizing 2 different LSPs and they can be either part of same tunnel or they can be part of different tunnels.

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

Wednesday, November 25, 2015

GMPLS update - 43: adding external API for GMPLS tunnel create

Added changes for #create / #removal of #GMPLS #tunnel #hierarchical #entries in GMPLS module. This involves the #creation of #dependent #configuration #entries as part of #tunnel / #LSP #create operation and #removal of these #cross #references which were created for maintenance of #dynamic #tunnel #state. On creating a tunnel entry, the #statistics entries are created for both #forward and #reverse traffic directions, the #GMPLS #configuration entry, the #extended #configuration entry and the #custom #configuration entry is created. A tunnel specific #error #entry is created to track the detailed tunnel state and the cause for the state.

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

Tuesday, November 24, 2015

LAG upgrade - 10: optimizing member port configuration entries

Hard-linked #member #port #list #configuration in LAG module. The member port list has been #embedded in the #standard #aggregator configuration #entries. This removes the redundant indexing scheme and optimizes the memory used by the member port list entries. The member port list is a #single #entry corresponding to each #aggregator #port, it contains a #bit-map of member port #interface-indexes. For #scalability reasons this data-structure is #not #used any more and the #custom #member #port list is used which can be used in all cases.

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

Monday, November 23, 2015

LAG upgrade - 9: member port API update

Updated #external #create / #remove #API for #member #ports in LAG module. Removed references to augmented data-structures from these routines. The external #create API creates the member port configuration entry and it's #associated #data-structures like port #statistics and #debugging parameters. The #custom member port parameter entries and #extended configuration entries are also #instantiated along with the create operation. On the #remove call these #dependent #structures are #removed first followed by the member port itself.

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

Sunday, November 22, 2015

LAG upgrade - 8: optimizing standard member port parameter entries

Added #new #indexing for #member #ports in LAG module. Updated #native #create / #remove #routines for the new indexing. Removed dependency on the augmented data-structure on these routines and updated for #default #indexing.

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

Saturday, November 21, 2015

LAG upgrade - 7: aggregator framework update

Updated #aggregator #framework in accordance with the #data-structure #changes in LAG module. Updated the aggregator #create / #remove #routines according to the latest changes. Corrected the #indexing in the #agent #mapper routine.

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

Thursday, November 19, 2015

GMPLS update - 42: updating custom GMPLS in-segment configuration entries

Updated #indexing information for #custom #in-segment #configuration in GMPLS module. Updated #agent #traversal routines and #mapper routine respectively for the indexing update. These changes access the custom in-segment entries directly from the #standard #in-segment entries. This will access the in-segment entries by using the #native #indexing. This removes references to the custom in-segment indexing used earlier. The custom MPLS in-segment #entries add support for #media #specific labels ( #Ethernet / #SONET / #SDH / #OTN ) by maintaining the GMPLS #label-type and #label-value #attributes.

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

Wednesday, November 18, 2015

GMPLS update - 41: optimizing out-segment statistics entries

Hard-linked #out-segment #statistics through #standard #out-segment #entries in GMPLS module. This will indicate the #out-segment #attributes like #bytes sent, #packets sent, #erroneous packets, #discarded packets,  etc ... This will reduce the memory requirement associated with the out-segment statistics. The hard-linked out-segment statistics entries enables accessing them directly from the standard out-segment instance entries.

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

Tuesday, November 17, 2015

GMPLS update - 40: adding in-segment activation handler

Added #in-segment #activation #handler in GMPLS module. On activating the in-segment it #enables the #LSP #segment operations on it. i.e. It #starts #receiving the #LSP #labelled #data on the interface. When cross-connect is also activated the received data will switched to the respective out-segments - with the respective out-going labels. And further passed to the out-going interfaces, thus completing the #label-switched #data-path.

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

Monday, November 16, 2015

LAG update - 6: optimizing standard aggregator parameter entries

Added #time #clock information in LAG module. On configuration changes the timestamps are internally logged for reference. This is useful to #log #last #modification on data-structures. Removed redundant data-structures from the module. Added new indexing for aggregator ports. This removes dependency on the augmented data-structures.

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

Saturday, November 14, 2015

LAG update - 5: starting framework upgrade

#Upgrading the #agent #framework for #aggregator and #member #ports in LAG module. Added new upgraded data-structures for aggregator and member ports for upgrade.

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

Friday, November 13, 2015

LAG update - 4: agent cleanup

#Cleaning up the #agent #framework in LAG module. Corrected #agent #identifier for custom LAG configuration parameters. Correcting the overall #aggregated #port #speed as overall #bandwidth.

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

Thursday, November 12, 2015

GMPLS update - 39: adding out-segment interface index

Added #mpls-interface based #indexing on #out-segment configuration entries in GMPLS module. This will help in doing #search #operations among the out-segment entries for #specific #interfaces in a #quick and #efficient manner. On #interface #changes the events are #forwarded to all the segments created on the interface. From segments the events will be #chained to #cross-connects and then further to the parent #tunnel #LSPs. On maintaining the interface index on segments expedite the event chaining process. The mpls-interface is used as an index in to the segment.

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

Wednesday, November 11, 2015

TED update - 17: adding new TE-Link parameters

Added #new #parameters on the #TE-Link in the TED module. The new #attribute #indicates whether the #TE-Link #crosses an #autonomous-system or an #area - i.e. AS / Area #border #link. An #admin-flag parameter has been added to the TE-Link to mark this information. Also the existing #te-adjacency-enable and #te-distribution-scope parameters has been added as #admin-flags to compact the parameters. When computing a path which crosses AS / Area boundaries these changes helps to specifically search and find border links in the network. This helps in faster and efficient path computation.

#TED update 17 ...
[commit 04e98690cba9a4a2a7a0d70870f913f5c3803006] (https://github.com/nes-repo/NES-Open-Switch/commit/04e98690cba9a4a2a7a0d70870f913f5c3803006)

Tuesday, November 10, 2015

GMPLS update - 38: adding in-segment interface index

Added #mpls-interface based #indexing on #in-segment configuration entries in GMPLS module. This will help in doing #search #operations among the in-segment entries for #specific #interfaces in a #quick and #efficient manner. On #interface #changes the events are #forwarded to all the segments created on the interface. From segments the events #chained to #cross-connects and then further to the parent #tunnel #LSPs. On maintaining the interface index on segments expedite the event chaining process. The mpls-interface is used as an index in to the segment.

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

Monday, November 9, 2015

GMPLS update - 37: adding in-segment create/remove API

Added #in-segment #create / #remove routines in GMPLS module. These #routines #handles the #hierarchical dependency between the different variants of in-segment configuration #entries. On creating the #standard #in-segment entries they automatically creates the in-segment #statistics entries, in-segment #standard #GMPLS entries and in-segment #extended #custom entries as well. On removing the standard entries the related entries also will be removed.

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

Sunday, November 8, 2015

GMPLS update - 36: updating standard in-segment statistics entries

Updated #standard #in-segment #statistics entries in GMPLS module. Updated statistics #iterator routines and #mapper #routine used by the agent framework with the standard #in-segment #indexing. This will remove the redundant indexing schemes and reduce the memory requirement of the statistics entries.

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

Saturday, November 7, 2015

TED update - 16: adding extended addressing parameters in TE-Link address entries

Added #extended #addressing #parameters with #link-address entries in TED module. The address information has been extended by including the #address #prefix length and the #un-numbered address support. The address #prefix allows to represent #ranges of #address in link-address entries. The #address-prefix holds the #prefix #length of the specified address in the entries. The #un-numbered addresses are represented by #address-unnum parameter. Along with the un-numbered address the #parent #IPv4 #address is also included in the entries. The new parameters allows to represent wide range of address in a compact way and variety of address types are added in the link-address entries.

#TED update 16 ...
[commit 555863ef0a1f24731846ba9340de72b4b458a223] (https://github.com/nes-repo/NES-Open-Switch/commit/555863ef0a1f24731846ba9340de72b4b458a223)

Friday, November 6, 2015

TED update - 15: adding new parameters in custom TE-Node entries

#Added new parameters in #custom #TE-Node entries in the TED module. This include the #node-type for indicating the type of the node as #node, #area or the #autonomous-system, the #node-area which identify the area of the local node in a #multi-area #network, the #node-xc-type to indicate that the node has only a #fixed #cross-connect and can not be #reconfigured, and the #node-label-distribution-enable which identify whether or not to #signal the #label related node #capabilities to other nodes. The area and autonomous-system level #summarization #nodes uses the #node-type to indicate the summarization level. The nodes which has a #fixed #connectivity #matrix will limits the way in which the #input port can be connected to the #output #ports. For these kind of nodes the #node-xc-type is set as fixed. Also it is possible to convey the node level #label #constraints to the neighboring nodes to assist in better #path #computation operation. On setting the #node-label-distribution-enable flag the node passes the label constraints to the respective signaling modules.

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

Thursday, November 5, 2015

TED update - 14: adding standard TE-Node ASN/ICC based look-up methods

#Added #standard #TE-Node #ASN / #ICC address based #look-up methods in the TED module. This enables to access the #TE-Nodes in the network based on the #ASN based addressing or the #ITU-T based #ICC #addressing scheme. The #ASN based address scheme involves an #autonomous-system-number ( #ASN ) and the #node-id. This is also referred as the #IP-compatible addressing scheme. In the #ICC addressing scheme the TE-Nodes are addressed by #country-code ( #CC ), #itu-t-carrier-code ( #ICC ) and the #node-id. The new look-up mechanism uses #independent ASN address and ICC #address #mapping methods. This enables to access the TE-Nodes in either of the addressing schemes.

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

Wednesday, November 4, 2015

GMPLS update - 35: updating custom GMPLS tunnel parameter agent mapper routines

#Updated #custom #GMPLS #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 custom tunnel entries #embedded #in the standard #MPLS #tunnel entries and there by removing the redundant indexing. The standard GMPLS tunnel reverse statistics entries contain attributes like the #call-id, #cross-connect-index, #resource-index, #path-computation-model, #re-optimization-enable, #diffserv-type, etc ...

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

Tuesday, November 3, 2015

GMPLS update - 34: updating standard GMPLS tunnel reverse statistics agent mapper routines

#Updated #standard #GMPLS #tunnel #reverse #statistics 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 GMPLS reverse statistics entries #embedded #in the standard #MPLS #tunnel entries and there by removing the redundant indexing. The standard GMPLS tunnel reverse statistics entries contain attributes like #LSP #counters for #packets and #bytes #forwarded, #packet #errors during #forwarding, etc ...

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

Monday, November 2, 2015

GMPLS update - 33: adding standard extended TE tunnel parameters

#Added #standard #extended #TE #tunnel parameters in the GMPLS module. This include the #extended #tunnel #parameters for #bi-directional operation as well as parameters to specify the #TE-Node #identifiers as the #head and #tail #nodes for #mpls-tunnels. The #opposite-dir-tunnel pointer is used to refer the tunnel in the #reverse #direction for co-routed bi-directional or associated bi-directional tunnels. The #reverse #LSP could be a #different #LSP of the #same #tunnel in #co-routed #bi-directional use-case or the #same #LSP could function for #both the #directions. For #associated #bi-directional tunnel the #reverse #LSP will be part of an entirely #different #tunnel. The #tunnel-index and the #tunnel-instance parameters specify the respective indexes in the #reverse #tunnel for an associated bi-directional tunnel.

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

Sunday, November 1, 2015

GMPLS update - 32: updating standard extended cross-connect parameters agent mapper routines

#Updated #standard #extended #cross-connect parameters agent routines in GMPLS module. The agent #iterator routines and #mapper #routine has been updated to use standard #cross-connect #based #indexing. This will access the GMPLS in-segment entries #embedded #in the standard #MPLS #cross-connect entries and there by removing the redundant indexing. The specific tunnel which uses the cross-connect is referenced through the #tunnel #pointer and the cross-connect for the opposite direction is referenced through the #opposite-cross-connect #pointer. The cross-connect pointer is used for the #co-routed #bi-directional #tunnels and #associated #bi-directional #tunnels.

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