Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
R
railgun-routing-client
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Railgun
railgun-routing-client
Commits
bfc663da
Commit
bfc663da
authored
Jan 06, 2026
by
nanamicat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
f2b4f3d2
Pipeline
#42430
passed with stages
in 2 minutes and 59 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
2 additions
and
4 deletions
+2
-4
src/router.rs
src/router.rs
+2
-4
No files found.
src/router.rs
View file @
bfc663da
...
...
@@ -7,8 +7,6 @@ use std::net::{IpAddr, Ipv4Addr, SocketAddr};
use
std
::
time
::
SystemTime
;
use
tokio
::
time
::
Instant
;
const
WINDOW_SIZE
:
u32
=
64
;
// 用于计算丢包率的窗口大小(通常64或128)
pub
struct
Router
{
pub
link_address
:
SocketAddr
,
seq
:
u32
,
...
...
@@ -47,10 +45,10 @@ impl Router {
pub
fn
on_message
(
&
mut
self
,
data
:
&
Hello
)
{
let
delay
=
(
SystemTime
::
now
()
.duration_since
(
SystemTime
::
UNIX_EPOCH
)
.unwrap
()
.as_millis
()
as
u32
)
.wrapping_sub
(
data
.time
)
as
i32
;
self
.delay
+=
(
delay
-
self
.delay
)
/
16
;
self
.delay
+=
(
delay
-
self
.delay
)
/
8
;
let
d
=
(
delay
-
self
.prev_delay
)
.abs
();
self
.jitter
+=
(
d
-
self
.jitter
)
/
16
;
self
.jitter
+=
(
d
-
self
.jitter
)
/
8
;
self
.prev_delay
=
delay
;
let
delta
=
data
.seq
.wrapping_sub
(
self
.seq
)
as
i32
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment