Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
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
linux
linux-davinci
Commits
89560b53
Commit
89560b53
authored
Mar 20, 2007
by
Gerrit Renker
Committed by
David S. Miller
Apr 25, 2007
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[DCCP]: Sample RTT from SYN exchange
Function:
parent
7dfee1a9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
18 additions
and
0 deletions
+18
-0
include/linux/dccp.h
include/linux/dccp.h
+2
-0
net/dccp/input.c
net/dccp/input.c
+8
-0
net/dccp/options.c
net/dccp/options.c
+8
-0
No files found.
include/linux/dccp.h
View file @
89560b53
...
@@ -481,10 +481,12 @@ struct dccp_ackvec;
...
@@ -481,10 +481,12 @@ struct dccp_ackvec;
* @dccps_hc_rx_insert_options -
* @dccps_hc_rx_insert_options -
* @dccps_hc_tx_insert_options -
* @dccps_hc_tx_insert_options -
* @dccps_xmit_timer - timer for when CCID is not ready to send
* @dccps_xmit_timer - timer for when CCID is not ready to send
* @dccps_syn_rtt - RTT sample from Request/Response exchange (in usecs)
*/
*/
struct
dccp_sock
{
struct
dccp_sock
{
/* inet_connection_sock has to be the first member of dccp_sock */
/* inet_connection_sock has to be the first member of dccp_sock */
struct
inet_connection_sock
dccps_inet_connection
;
struct
inet_connection_sock
dccps_inet_connection
;
#define dccps_syn_rtt dccps_inet_connection.icsk_ack.lrcvtime
__u64
dccps_swl
;
__u64
dccps_swl
;
__u64
dccps_swh
;
__u64
dccps_swh
;
__u64
dccps_awl
;
__u64
dccps_awl
;
...
...
net/dccp/input.c
View file @
89560b53
...
@@ -300,6 +300,14 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
...
@@ -300,6 +300,14 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
if
(
dccp_parse_options
(
sk
,
skb
))
if
(
dccp_parse_options
(
sk
,
skb
))
goto
out_invalid_packet
;
goto
out_invalid_packet
;
/* Obtain RTT sample from SYN exchange (used by CCID 3) */
if
(
dp
->
dccps_options_received
.
dccpor_timestamp_echo
)
{
struct
timeval
now
;
dccp_timestamp
(
sk
,
&
now
);
dp
->
dccps_syn_rtt
=
dccp_sample_rtt
(
sk
,
&
now
,
NULL
);
}
if
(
dccp_msk
(
sk
)
->
dccpms_send_ack_vector
&&
if
(
dccp_msk
(
sk
)
->
dccpms_send_ack_vector
&&
dccp_ackvec_add
(
dp
->
dccps_hc_rx_ackvec
,
sk
,
dccp_ackvec_add
(
dp
->
dccps_hc_rx_ackvec
,
sk
,
DCCP_SKB_CB
(
skb
)
->
dccpd_seq
,
DCCP_SKB_CB
(
skb
)
->
dccpd_seq
,
...
...
net/dccp/options.c
View file @
89560b53
...
@@ -563,6 +563,14 @@ int dccp_insert_options(struct sock *sk, struct sk_buff *skb)
...
@@ -563,6 +563,14 @@ int dccp_insert_options(struct sock *sk, struct sk_buff *skb)
dccp_insert_options_feat
(
sk
,
skb
))
dccp_insert_options_feat
(
sk
,
skb
))
return
-
1
;
return
-
1
;
/*
* Obtain RTT sample from Request/Response exchange.
* This is currently used in CCID 3 initialisation.
*/
if
(
DCCP_SKB_CB
(
skb
)
->
dccpd_type
==
DCCP_PKT_REQUEST
&&
dccp_insert_option_timestamp
(
sk
,
skb
))
return
-
1
;
/* XXX: insert other options when appropriate */
/* XXX: insert other options when appropriate */
if
(
DCCP_SKB_CB
(
skb
)
->
dccpd_opt_len
!=
0
)
{
if
(
DCCP_SKB_CB
(
skb
)
->
dccpd_opt_len
!=
0
)
{
...
...
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