• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openconfig / kne / 31640337968
44%

Build:
DEFAULT BRANCH: main
Ran 12 Aug 2026 09:02PM UTC
Jobs 1
Files 62
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

12 Aug 2026 08:58PM UTC coverage: 42.194% (-0.008%) from 42.202%
31640337968

push

github

web-flow
[meshnet] multiplex tcp streams for a node pair (#733)

* [meshnet] multiplex tcp streams for a node pair

  1. Created nodeStreamManager (stream_manager.go):
      • Keyed by nodeStreamKey{ topoNs string, peerIP string }.
      • Opens only one gRPC connection (grpc.Dial) and only one SendToStream bidirectional streaming RPC per (peerIP,
      topoNs) pair.
      • Includes reference counting (GetOrCreateStream / ReleaseStream). When the last wire for a topology targeting a
      peer node is removed, the shared stream and gRPC connection close gracefully.
      • Features a high-capacity buffered channel (10,000 packet queue) and dedicated sender worker loop with automatic
      reconnect logic.
  2. Updated TAP Reader Threads (grpcwire.go):
      • Modified RecvFrmLocalPodThread so TAP readers no longer execute individual grpc.Dial or SendToStream calls.
      • Each TAP reader now acquires the shared topology stream via nodeStream := streamMgr.GetOrCreateStream(wire.
      TopoNamespace, wire.PeerNodeIP) and multiplexes packets into nodeStream.Send(payload).
  3. Per-Topology Isolation:
      • Topology topo-A and topology topo-B running between the same pair of physical nodes maintain completely
      separate gRPC connections and streams.

* [meshnet] Reduce startup time for large meshes

The base design had a lot of single-interface RPCs
to update k8s and remote meshnets. For large numbers
of links it costs a lot of serial round trip wait time.
This batches things and pipelines them so that we avoid
a lot of unnecessary overhead delay at start time.

* Review comments - multi-topology and general dead code cleanup

  ### 1. Unused getEnvString in sys_tune.go

  • Removed the unused private helper sys_tune.go.
  ──────
  ### 2. Remove gwire_recon.go

  • Removed the obsolete single-wire gwire_recon.go function, as all updates are now handled by gwire_recon.go.
  • Updated the gwire_recon.go doc comment.
  ──────
  ### 3. Namespace Isolation in S... (continued)

5416 of 12836 relevant lines covered (42.19%)

0.48 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
67.26
-0.3% topo/node/arista/arista.go
Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/186116564 31640337968.1 12 Aug 2026 09:02PM UTC 62
42.19
GitHub Action Run
Source Files on build 31640337968
  • Tree
  • List 62
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 20bd60e3 on github
  • Prev Build on main (#31512101666)
  • Next Build on main (#31644954226)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc