lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <cb00fa210911051616o186b30cau527f7d92e4ad121f@mail.gmail.com>
Date:	Thu, 5 Nov 2009 21:16:21 -0300
From:	Ivo Calado <ivocalado@...edded.ufcg.edu.br>
To:	Gerrit Renker <gerrit@....abdn.ac.uk>, dccp@...r.kernel.org,
	Ivo Calado <ivocalado@...edded.ufcg.edu.br>,
	netdev@...r.kernel.org
Subject: Re: dccp-test-tree [PATCH 1/1]: Count lost data packets in a burst 
	loss

On Mon, Oct 19, 2009 at 02:16, Gerrit Renker <gerrit@....abdn.ac.uk> wrote:
> dccp: Generalise data-loss condition
>
> This patch is thanks to Ivo Calado who had integrated this function into one
> of the TFRC-SP patches.
>
> It generalises the task of determining data loss from RFC 43430, 7.7.1.
>
> Let S_A, S_B be sequence numbers such that S_B is "after" S_A, and let
> N_B be the NDP count of packet S_B. Then, using module-2^48 arithmetic,
>  D = S_B - S_A - 1  is an upper bound of the number of lost data packets,
>  D - N_B            is an approximation of the number of lost data packets
>                    (there are cases where this is not exact).
>
> The patch implements this as
>  dccp_loss_count(S_A, S_B, N_B) := max(S_B - S_A - 1 - N_B, 0)
>
> Signed-off-by: Gerrit Renker <gerrit@....abdn.ac.uk>
> ---
>  net/dccp/dccp.h |   21 +++++++++++++++------
>  1 file changed, 15 insertions(+), 6 deletions(-)
>
> --- a/net/dccp/dccp.h
> +++ b/net/dccp/dccp.h
> @@ -153,18 +153,27 @@ static inline u64 max48(const u64 seq1,
>  }
>
>  /**
> - * dccp_loss_free  -  Evaluates condition for data loss from RFC 4340, 7.7.1
> - * @s1:         start sequence number
> - * @s2:  end sequence number
> + * dccp_loss_count - Approximate the number of lost data packets in a burst loss
> + * @s1:  last known sequence number before the loss ('hole')
> + * @s2:  first sequence number seen after the 'hole'
>  * @ndp: NDP count on packet with sequence number @s2
> - * Returns true if the sequence range s1...s2 has no data loss.
>  */
> -static inline bool dccp_loss_free(const u64 s1, const u64 s2, const u64 ndp)
> +static inline u64 dccp_loss_count(const u64 s1, const u64 s2, const u64 ndp)
>  {
>        s64 delta = dccp_delta_seqno(s1, s2);
>
>        WARN_ON(delta < 0);
> -       return (u64)delta <= ndp + 1;
> +       delta -= ndp + 1;
> +
> +       return delta > 0 ? delta : 0;
> +}
> +
> +/**
> + * dccp_loss_free - Evaluate condition for data loss from RFC 4340, 7.7.1
> + */
> +static inline bool dccp_loss_free(const u64 s1, const u64 s2, const u64 ndp)
> +{
> +       return dccp_loss_count(s1, s2, ndp) == 0;
>  }
>
>  enum {
>


Agree

-- 
Ivo Augusto Andrade Rocha Calado
MSc. Candidate
Embedded Systems and Pervasive Computing Lab - http://embedded.ufcg.edu.br
Systems and Computing Department - http://www.dsc.ufcg.edu.br
Electrical Engineering and Informatics Center - http://www.ceei.ufcg.edu.br
Federal University of Campina Grande - http://www.ufcg.edu.br

PGP: 0x03422935
Putt's Law:
       Technology is dominated by two types of people:
               Those who understand what they do not manage.
               Those who manage what they do not understand.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ