Add ability to load balance to different Grantors#438
Add ability to load balance to different Grantors#438AltraMayor merged 6 commits intoAltraMayor:masterfrom
Conversation
AltraMayor
left a comment
There was a problem hiding this comment.
fib: add set of Grantors for Grantor rules
AltraMayor
left a comment
There was a problem hiding this comment.
fib: reflect multiple Grantors in FIB dump
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
Please add an example of calling add_grantor_entry_lb() in file lua/examples/example_of_dynamic_config_request.lua.
We are still missing a function to update the grantors of a Grantor fib. This could come in a new patch to simplify the review.
|
I can add a function for explicitly updating the entry, although I have just been calling Now that I'm looking at this aspect though, I am noticing that updating the FIB table using this method leaves dangling entries in the FIB. The new FIB entry gets added and the LPM table gets updated to reference the new FIB entry, while the old FIB entry still exists. This is an issue even before this patch -- calling Should |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
|
I'm aligned with your preference of making For this pull request, we will need a function to only update the grantor-gateway pairs of a Grantor entry. One can delete and add a new entry, but given that, for a brief moment, there would be no entry in the fib that protects the given network prefix. Moreover, the overhead to remove a Grantor fib entry is high (i.e. all GK blocks have to scan their flow tables to drop the associated flow entries). It's better to support the update of the grantor-gateway pairs with a dedicated function. |
64cb487 to
3480181
Compare
|
Ready for another review. |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow Grantor entries to be updated
8e6a9cd to
76b2d64
Compare
|
Ready for another review. |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
|
OK, ready for another review. |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
AltraMayor
left a comment
There was a problem hiding this comment.
fib: add set of Grantors for Grantor rules
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
AltraMayor
left a comment
There was a problem hiding this comment.
fib: add set of Grantors for Grantor rules
AltraMayor
left a comment
There was a problem hiding this comment.
fib: separate prefix existence and security check
AltraMayor
left a comment
There was a problem hiding this comment.
fib: clean up FIB initialization code
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow Grantor entries to be updated
AltraMayor
left a comment
There was a problem hiding this comment.
fib: add set of Grantors for Grantor rules
AltraMayor
left a comment
There was a problem hiding this comment.
fib: reflect multiple Grantors in FIB dump
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
|
Ready for another review. |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
AltraMayor
left a comment
There was a problem hiding this comment.
fib: separate prefix existence and security check
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow Grantor entries to be updated
|
Ready for another review. |
AltraMayor
left a comment
There was a problem hiding this comment.
fib: allow multiple Grantors per entry
|
A rebase is needed. |
To prepare for a patch that allows existing Grantor entries to be updated, this patch separates (1) the checking of whether a prefix already exists in the table from (2) the checking of whether the prefix would insert a security hole. Updating an entry that already exists doesn't require checking (2), so these should be separate.
Replace the return types of the FIB initialization functions to remove unnecessary variables, and add style fixes.
Allow an existing Grantor FIB entry to be updated. To do so, this patch keeps add_fib_entry_numerical() mostly the same and adds a separate function update_fib_entry_numerical(). Although there is some overlap between these functions, they are kept separate because (1) add_fib_entry_numerical() is exposed and has callers in cps/kni.c, and therefore adding more parameters (int overwrite) to its prototype is undesirable, and (2) it has different requirements than *updating* an entry, which doesn't need to check for security holes and neighbor FIB entries.
|
Ready for review. |
No description provided.