-
Notifications
You must be signed in to change notification settings - Fork 176
router: afpacket udp underlay #4763
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jiceathome
wants to merge
156
commits into
scionproto:master
Choose a base branch
from
jiceathome:router_raw_socket2
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
156 commits
Select commit
Hold shift + click to select a range
429e89f
Checkpointing.
jiceathome bad6172
Merge branch 'master' into router_raw_socket2
jiceathome 05bf0b7
Checkpointing.
jiceathome 0e75647
Checkpoint.
jiceathome 532bbc1
Checkpoint. Presumably code-complete for IPv4. Need to add IPv6 support.
jiceathome a7f808f
Checkpoint.
jiceathome 1a7216e
Removed leftover printks.
jiceathome ed60148
Sorted out libebpf objects life cycle issues.
jiceathome e6f1520
Give required capability in the router's container. Enable afpacket u…
jiceathome bb0c07e
Merge branch 'master' into router_raw_socket2
jiceathome 515522a
Restored ability to run router_benchmark in three steps (setup/run/te…
jiceathome 7fd83d9
Minor cleanup
jiceathome 99dc941
Fix assorted trivial bugs.
jiceathome 05a1cc7
Lintify etc.
jiceathome b2834e7
Clarify role of the Priority() method of the Underlay interface.
jiceathome 14ef830
Trigger new build from scratch
jiceathome 2665de6
Delete dummy comment
jiceathome 1e779ba
Merge branch 'master' into router_raw_socket2
jiceathome 7d70a22
Make test portfiter test a native_test.
jiceathome 1f344c3
Lintify etc.
jiceathome bc49771
Attempt to work around new buildkite issue of unsifficient disk cleanup.
jiceathome a6f85b2
Fix bug in WithHeader. Was making all output packets 8K long.
jiceathome 37dfdbc
Increase the router benchmark's packet blaster's batch size.
jiceathome 3f4da2e
For now be less demanding interms of router saturation.
jiceathome 2b5e781
Add ipv6 support to the afpudpip underlay.
jiceathome ef87482
Missing space.
jiceathome 4cdefda
Cleanup. Split the afp underlay in 4.
jiceathome efea026
Added ARP support.
jiceathome a1b3c8c
Cleanup.
jiceathome 1e1bd9c
Add ipv6 NDP support.
jiceathome f441cb2
Fixed filtering for v6 packets.
jiceathome 3bfa830
Experiment with giving more cpus to the router in thr benchmark test.
jiceathome 5d6f850
Experiment with a different number of cores.
jiceathome c21e108
Another CI test for MAX_CPUS
jiceathome b43a257
Reverting to the std cpu count.
jiceathome 281c363
Improve dropped packets metrics and give one more cpu to the traffic …
jiceathome 20df900
Make sure our raw sockets don't receive their own outgoing traffic.
jiceathome 57d719b
Improve the router_multi test. Small fix in router underlay.
jiceathome e9b0f38
Finish arp handling in the router_multi test.
jiceathome b1b0d86
In router_multi honor the ignoreNoneMatching test flag in all relevan…
jiceathome 30c2cbd
Try giving the necessary caps to the development router.
jiceathome 59e3221
Fix some V6-specific bugs and enable supervisord tests.
jiceathome 5e3aa5f
Simpleminded attempt at making this test less flaky.
jiceathome f6257b7
Add support for arp/ndp annoucements.
jiceathome f0ccdba
Fix arp annoucement in ptp links.
jiceathome 626a2d2
Improved arp cache and moved to its own file.
jiceathome 623424c
Take mutex while ticking the cache.
jiceathome a821592
lintified
jiceathome 7db81ce
Factor more arp/ndp out to neighbors.go
jiceathome d9d6441
Don't forget to sleep between ticks.
jiceathome e77c8ed
Cleanup some docker-compose config.
jiceathome cce0a20
Arrange to give proper capabilities to routers installed as packages.
jiceathome 7ffda73
Simplified neighbor management and made more permissive.
jiceathome fb828b0
Assortment of bug fixes.
jiceathome 32fe60c
Fix NDP handling.
jiceathome 91574fd
Lintify.
jiceathome a39416f
Tweak retries and timeouts.
jiceathome a022a22
Roundtriper unit test now expects SetReadDedline and SetWriteDeadline.
jiceathome d4c5783
Lintify and remove the writeDeadline in resolver.
jiceathome 76991d7
Add trace for issue unique to the CI system.
jiceathome 644c8b4
Improve port filtering.
jiceathome 7a28063
Address resolution improvements.
jiceathome bb21f66
Lintify
jiceathome 02b12cc
Assorted bug fixes and small improvements.
jiceathome d1c6a5f
delete reference to unused module.
jiceathome edd9344
Add IP address to kfilter key. Do not try to resolved v6 addrs on loo…
jiceathome 99e3284
Finally implement a non-lossy ARP/NDP.
jiceathome c2d5945
Fix raw socket underlay latency.
jiceathome e82995c
Delete another unnecessary work-around.
jiceathome 3b83d41
sysadmin cap isn't necessary.
jiceathome c75f880
Remove unused import
jiceathome 5329dde
Further reduce latency. Do not populate cache with NDP dup-address de…
jiceathome cca2dcc
Add back a little slack to the hidden_paths test.
jiceathome 614f22e
Slight cleanup of the neighbor management. Make the supervisor mode w…
jiceathome a6629b1
Try a cleaner way of setting systcl flags.
jiceathome f4593b1
Make the systcl command more robust.
jiceathome 1389c77
Make address-based filtering more efficient.
jiceathome 719fd15
Reduce GC pressure caused by passing src address to internal link.
jiceathome 4fc7eff
Rolling back previous change. That was broken.
jiceathome 4befb94
Try and make the supervisor-based tests not so slow on CI.
jiceathome 1c97657
Reduce cost of link mapping and src address handling.
jiceathome b060040
Undo the tentative sysctl changes. It doesn't help a bit.
jiceathome ab11eb7
Cheaper link mapping. (and hopefully correct too).
jiceathome 108d267
Experiment with docker configuratoin for the scion_integration test.
jiceathome 51d3bf5
Fix the ping test so it doesn't spend a minimum of one second per rou…
jiceathome d8df7ad
Revert scion_integration test to using the supervisor.
jiceathome 09a2ecf
Renounce the retries in the router_multi tests.
jiceathome fbc6dd2
Attempt to solve what appears to be a latency issue.
jiceathome ef9faac
Add an rtt check in the router benchmark.
jiceathome 0602ebd
All of a sudden buildkit doesn't like "key:" after "group:".
jiceathome 43644e3
Trying to start the bazel remote cache LAST (we exit if we can't).
jiceathome 00860d9
Tracing the pipeline generation.
jiceathome 32312b1
more traceing
jiceathome e925a62
Undo previous 3 comits. Got what I needed.
jiceathome 04b7738
trace bazel's whereabouts.
jiceathome 240b1cc
more bazel scrutiny.
jiceathome 76b801b
Export PATH?
jiceathome f7b3f76
Move path setting to environment hook.
jiceathome e4b5189
more fiddling
jiceathome f0757fa
more grasping at strwas in the dark.
jiceathome c984e72
can't make that one work.
jiceathome 051d85f
Reverting all my prior junk.
jiceathome bde899f
Give 20 minutes for the longuest end2end test to complete on CI.
jiceathome 4d72ce2
Lintify.
jiceathome 7854726
Merge branch 'master' into router_raw_socket2
jiceathome 3609047
Delete useless diff.
jiceathome 6f89e9a
Fix merge fail.
jiceathome 3ab2086
Delet blank space changes and remove unnecessary cap_sys_admin capabi…
jiceathome 840147b
Lintify.
jiceathome 2146bbd
Roll back retry in dameon rpc.
jiceathome 2e45295
Long-shot experiments to try and find the cause of the new failures.
jiceathome 7f11f36
Spaces not tabs.
jiceathome 6a2872a
Try and suppress connectrpc use.
jiceathome e614fad
Try and increase the happy-eyeballs delay.
jiceathome b06a52e
Restoring happy.go as it was.
jiceathome f0c171a
Fix the happy eyeballs error collection.
jiceathome 449cad4
Merge branch 'master' into router_raw_socket2
jiceathome 3785654
Merge branch 'master' into router_raw_socket2
jiceathome 043bcec
Retrying with a slightly longer timeout
jiceathome b0ed723
Merge branch 'master' into router_raw_socket2
jiceathome 9b1c232
Unbreak benchmark.py.
jiceathome 6f1d1d7
Minor fixes to brload and benchmark.py.
jiceathome ca1d4e9
Fix the handling of the debug_run and log_level flags.
jiceathome aaab0ca
enable profiling while running the real-machine benchmark.
jiceathome 81c62e2
Make sure we run the profiler in the background rather than Before th…
jiceathome 09c1e05
Make it easier to get two kinds of profiling data when running the st…
jiceathome 323a4be
Make packet sending asynchronous. Cleanup sendAll() errors handling.
jiceathome 6531ec1
appease lint.
jiceathome 4d3b3d8
Minor improvements to the benhcmark scripts.
jiceathome 238480f
Make the traffic generator sender asynchronous too.
jiceathome c297d94
Replace the underlay priority by a name and a preference map.
jiceathome 39fa33d
Bypass queueing discpline when sending with SEND_MMSG.
jiceathome 1a57a4a
log.Warn -> log.Info
jiceathome 1b09e97
Delete commented-out change.
jiceathome c59523c
Implement anumber of reviewrs suggestions.
jiceathome 544b7b0
Fix naming of underlay interfaces. They were confusing.
jiceathome f6c01e3
Fix spelling.
jiceathome 41bb676
Lintify
jiceathome 47bac4a
Minor tweaks to brload and the standalone benchmark instructions.
jiceathome bed5de5
Minor tweak.
jiceathome 27e65cb
Lintify
jiceathome 182dc52
Merge branch 'master' into router_raw_socket2
jiceathome fdc963f
Unbreak the standalone benchmark for the regular inet router underlay.
jiceathome 11987bc
Lintify
jiceathome 2aaca25
Enable overriding the noral IP addresses of the benchmark.
jiceathome 2421155
Handle IP overrides properly.
jiceathome cedc24a
Enable the IP overrides flags in the test harness.
jiceathome 3270c16
Minor fix to benchmark to enable running on aws.
jiceathome 2e0d28a
Supply new fields required by benchmarklib.
jiceathome 8d632c1
Clear the UDP checksum *before* sending the first packet.
jiceathome b433b38
Remove the need to allocate src addresses in the afpacket underlay.
jiceathome 2587025
Merge branch 'master' into router_raw_socket2
jiceathome b4cacff
Implement reviewers suggestion of additional link options.
jiceathome ed4096f
Address reviewer's comments.
jiceathome cc838cb
Merge branch 'master' into router_raw_socket2
jiceathome a9ec125
Merge branch 'master' into router_raw_socket2
katyatitkova File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this file intentionally in the repository?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. For now that's the least bad solution. It's supposed to be in the repo to ensure the locking, but on the other hand it is updated automatically. It's all silly and nobody at bazel seems to know what the right thing to do is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. For now that's the least bad solution. It's supposed to be in the repo to ensure the locking, but on the other hand it is updated automatically. It's all silly and nobody at bazel seems to know what the right thing to do is.