Re: [icnrg] New Version Notification for draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt
홍정하 <jhong@etri.re.kr> Thu, 02 October 2014 08:49 UTC
Return-Path: <jhong@etri.re.kr>
X-Original-To: icnrg@ietfa.amsl.com
Delivered-To: icnrg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0B7C91A01E7 for <icnrg@ietfa.amsl.com>; Thu, 2 Oct 2014 01:49:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.386
X-Spam-Level:
X-Spam-Status: No, score=-102.386 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, MIME_8BIT_HEADER=0.3, RP_MATCHES_RCVD=-0.786, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qt-LgT1FiX4f for <icnrg@ietfa.amsl.com>; Thu, 2 Oct 2014 01:49:03 -0700 (PDT)
Received: from smtpeg.etri.re.kr (smtpeg2.etri.re.kr [129.254.27.142]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5B5EE1A002D for <icnrg@irtf.org>; Thu, 2 Oct 2014 01:49:02 -0700 (PDT)
Received: from SMTP3.etri.info (129.254.28.73) by SMTPEG2.etri.info (129.254.27.142) with Microsoft SMTP Server (TLS) id 14.1.355.2; Thu, 2 Oct 2014 17:49:02 +0900
Received: from SMTP1.etri.info ([169.254.1.215]) by SMTP3.etri.info ([10.2.6.32]) with mapi id 14.01.0355.002; Thu, 2 Oct 2014 17:48:58 +0900
From: 홍정하 <jhong@etri.re.kr>
To: Christian Esteve Rothenberg <chesteve@dca.fee.unicamp.br>
Thread-Topic: [icnrg] New Version Notification for draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt
Thread-Index: AQHP0g4+gbwFbOdbOEG9cjdNBhruHJwGBxAwgAnUxgCABBho14AAFw0AgABjEQCAAqbaAIAC3BQc//+muYCAAv3vcA==
Date: Thu, 02 Oct 2014 08:48:57 +0000
Message-ID: <F8EFC212DF9A004DA18AA8FB011E42331D6115DF@SMTP1.etri.info>
References: <20140917002758.31365.13695.idtracker@ietfa.amsl.com> <F8EFC212DF9A004DA18AA8FB011E42331D610CB8@SMTP1.etri.info> <8A63F6C6-4361-4105-B1AD-04B3DCE99F6E@ericsson.com> <F8EFC212DF9A004DA18AA8FB011E42331D611152@SMTP1.etri.info> <3F24F5B9-BEDB-4C25-AFAB-F4DA368789A0@ericsson.com> <CAC2HzvS92mQXrr2c_u7jNGhb9JOjgXmvYdHi1En6cL-s8bAhbw@mail.gmail.com> <869157B6-617A-4D31-929C-616CF1F7BE33@ericsson.com> <F8EFC212DF9A004DA18AA8FB011E42331D61143A@SMTP1.etri.info> <CAEj5p9T6joUD4Kk1tKmQyfouv5oAhfuOXpG-Ysr8AmHr1RXZ6Q@mail.gmail.com>
In-Reply-To: <CAEj5p9T6joUD4Kk1tKmQyfouv5oAhfuOXpG-Ysr8AmHr1RXZ6Q@mail.gmail.com>
Accept-Language: ko-KR, en-US
Content-Language: ko-KR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [129.254.72.169]
Content-Type: multipart/alternative; boundary="_000_F8EFC212DF9A004DA18AA8FB011E42331D6115DFSMTP1etriinfo_"
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/icnrg/w9rrdw4IN5-bNwrEdpdaM6EW1ws
Cc: "woojikchun@gmail.com" <woojikchun@gmail.com>, Konstantinos Katsaros <ntinos@aueb.gr>, "icnrg@irtf.org" <icnrg@irtf.org>, Petri Jokela <petri.jokela@ericsson.com>
Subject: Re: [icnrg] New Version Notification for draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt
X-BeenThere: icnrg@irtf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Information-Centric Networking research group discussion list <icnrg.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/icnrg>, <mailto:icnrg-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/icnrg/>
List-Post: <mailto:icnrg@irtf.org>
List-Help: <mailto:icnrg-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/icnrg>, <mailto:icnrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Thu, 02 Oct 2014 08:49:07 -0000
Dear Christian, Thanks for the references and comments. We will take a look. Jungha Hong -----Original Message----- From: chesteve@gmail.com [mailto:chesteve@gmail.com] On Behalf Of Christian Esteve Rothenberg Sent: Wednesday, October 01, 2014 5:03 AM To: 홍정하 Cc: Petri Jokela; Konstantinos Katsaros; woojikchun@gmail.com; icnrg@irtf.org Subject: Re: [icnrg] New Version Notification for draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt Nice discussion! Petri, good to hear from you :) and your love–hate relationship with Bloom filters ;) Just trying to a few cents to the conversation: Traditional bloom filters as an array of bits is a convenient representation (out of many possible along multiple variations [1]) for the data structure but probably not the best one for many implementations (e.g., m >>> 1) and certainly not optimized for different SW/HW implementations. For instance, fingerprint compressed filter (FCF) as we played with some time ago in the early discussions on ICN forwarding alternatives [2], yield a BF-like data structure with very interesting properties on a per entry basis (e.g. deletion?) and amenable to optimized HW/SW implementations (including a hierarchical cache-like multi-memory design) [1] S. Tarkoma, C. Esteve Rothenberg and E. Lagerspetz. "Theory and Practice of Bloom Filters for Distributed Systems." In IEEE Communications Surveys and Tutorials. Vol. 14, Number 1, 2012 http://dl.dropboxusercontent.com/u/15183439/pubs/bloom-filter-ieee-survey-preprint.pdf [2] C. Esteve Rothenberg, F. Verdi and M. Magalhães. "Towards a new generation of information-oriented internetworking architectures" ACM CoNext, First Workshop on Re-Architecting the Internet (Re-Arch08). Dec. 2008, Madrid, Spain. https://dl.dropboxusercontent.com/u/15183439/pubs/ccngi-rearch08-spswitch-esteve-camera-ready.pdf Christian On Tue, Sep 30, 2014 at 1:52 PM, 홍정하 <jhong@etri.re.kr<mailto:jhong@etri.re.kr>> wrote: > Hi, > > Thanks a lot for your interesting and good comments on B-NRS. > I totally agree with both of you. > > No matter what we choose between a large BF size and multiple smaller > size BFs, we believe that we can get helped to prove any our ideas by > H/W assisted implementation and so we are working on it now. > > I would like to share any progress that I make further than now and > get comments on it. > So, please keep paying attention to discussions by e-mail. > Any comments are more than welcome any time. > > Thanks, > Jungha Hong > > ________________________________ > 보낸 사람 : "Petri Jokela" <petri.jokela@ericsson.com<mailto:petri.jokela@ericsson.com>> 보낸 날짜 : 2014-09-29 > 14:42:20 ( +09:00 ) 받는 사람 : Konstantinos Katsaros <ntinos@aueb.gr<mailto:ntinos@aueb.gr>> 참조 > : icnrg@irtf.org<mailto:icnrg@irtf.org> <icnrg@irtf.org<mailto:icnrg@irtf.org>> 제목 : Re: [icnrg] New Version > Notification for > draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt > > Hi, > > Good comments, thanks. See few small comments inline: > > On 27 Sep 2014, at 16:12, Konstantinos Katsaros <ntinos@aueb.gr<mailto:ntinos@aueb.gr>> wrote: > > I think the requirement here is rather to have a globally fixed BF > size for merging to be possible. Then we could have additional BFs > created when the capacity is exceeded: each node "fills" BFs until the > FPR is reached; when merging, an object counter per BF can assist in > finding the appropriate BFs to merge i.e., the ones that will not exceed the FPR. > > > This is true, I was probably initially thinking a very simple solution > with only one BF. Multi-BF solution brings, of course, more > possibilities to design the NRS mechanism. > > This calls for a bin packing algorithm with its own processing > overheads. In this context, we could illustrate a tradeoff by > considering the two following extremes: > > (i) BFs of size enough to hold every object in the network. That would > surely work for the topmost nodes. However, lower level nodes would > propagate mostly very sparse BFs upwards, meaning that we > unnecessarily spend too much space/bandwidth. Though admittedly a > lookup operation on such large BFs could be an issue, note that in > principle one BF should be checked per interface/neighbour node. > > > In case of a bit string, we probably can compress sparse BFs > efficiently for transmission and the final size can be quite small. > > (ii) BFs of a very small size that would easily get "full" > necessitating the use of an additional BF. In this case we would have > "dense" BFs that would not waste too much space/bandwidth, but would > require multiple lookup operations per interface/neighbour. I do not > know however, whether multiple lookups of smaller BFs are > (computationally) preferable compared to a single lookup of a huge BF, or if it makes no substantial difference. > > > Neither do I know which one is more efficient. From a large BF, you > need to verify max k chunks each of being x-bits in size (what is the > most efficient x?). This reduces the amount of logical operations. > However, how much processing is needed for getting those chunks from a > large filter, I have no idea. I feel that I’m on a very thin ice when > discussing the implementation efficiency of big filters :-) > > Nevertheless, this is pretty interesting topic and I am interested to > see how the B-NRS solution develops. > > BR, Petri > > > > Regards, > Konstantinos (Dinos) V. Katsaros > > PS: Unfortunately I also do not participate the interim meeting. But, > waiting for the minutes. > > On 27 September 2014 08:17, Petri Jokela <petri.jokela@ericsson.com<mailto:petri.jokela@ericsson.com>> wrote: >> >> Hi, thanks for the clarifications. Unfortunately, I am not attending >> the Saturday meeting. I hope you have fruitful discussions there. See >> my reply >> in-line: >> >> On 27 Sep 2014, at 00:15, 홍정하 <jhong@etri.re.kr<mailto:jhong@etri.re.kr>> wrote: >> >> Hi, >> >> We can take advantage of that bloom filter size can be adjusted by >> the maximum number of names registered to a single NRS server to keep >> the FPP less than a desirable value. >> >> >> For example, the bloom filter with the size of 2MB for 10^6 entries >> can keep the FPP less than 0.00046. If we assume that the number of >> such a NRS server on the top level is 10^6 and they are fully peered, >> then the maximum memory required at each server is 2TB. To deal with >> such a size, we are considering of being supported by hardware using >> GPU or TCAM and we are working on it. >> >> >> If you want to merge BFs at higher level (by ORing them together), >> you must use same size filters on each level. Filters with different >> sizes cannot be merged. Just to clarify, are you assuming that you >> are using different sizes of filters on different places in the >> network, or are you using one-size filters which must be optimised >> for the worst case? If you have different sizes of filters, you have >> to collect the lower layer filters to the higher layer servers and >> when this higher level B-NRS receives a request, it must match the >> item to each of the 10^6 BFs separately. If you are >> >> On the other hand, different sizes of filters on different B-NRS >> nodes would need a different set of hash functions for them. This is >> not a major thing, but not efficient because you have to do more hash >> calculations over the same item name to get correct values for >> different filters where we want to test the existence of the data >> item on a single server with multiple BFs from other B-NRSs. >> >> If you are using same size filters on every layer to make it possible >> to OR them together, this requires huge filters because they must >> take into account also the worst case (i.e. the maximum number of >> information items that may be included in a single filter). >> >> >> >> As the draft [3] mentions, there are 10^9 nodes in the current Internet. >> The number of addressable ICN objects will be several orders of >> magnitude higher. This means that there will be, on average, tens of >> thousands of ICN objects per node. How many of the objects will be in the NRS, is not known. >> It is possible that some of the objects are only inside a single node >> and some globally available. Also, depending on the role of a node, >> the number of objects may be lower or higher. >> >> In B-NRS[3], it is not assumed that all names are globally visible. >> We are considering that the maximum number of names which are >> globally visible is >> 10^9 and the maximum number of B-NRS servers which are fully peered >> on the top level with 10^6 names for each is 10^3 ~ 10^6, which is the upper bound. >> >> >> Now I must as that are you really talking about information items, >> not the node names. Considering the network today and what is >> available there, AND taking into account the new developments, such >> as IoT with lots of information, I guess that the amount of >> information items will be larger. If we have now 10^9 nodes in the >> network, your assumption would mean one information item published >> per one node (on average) globally, which is pretty low. Of course, >> not everything is globally visible, but still the amount looks low. >> >> There is also a scalability issue. What happens if the number of >> items still grows in the future and the filter sizes must be adjusted accordingly? >> If increasing the size is enough, it is probably not a big problem. >> But we should prepare us also for something that we cannot envision now. >> >> >> >> On the third level, the BFs from the ten 2nd level NRS are merged. >> The merged BF contains information of 2 000 000 000 objects. In >> theory, the 3rd level NRS can use this merged BF to check if a >> certain ICN object can be found in any of the 1st level NRSes in this tree. >> >> It has to be corrected like that the 3rd level NRS checks for the 2nd >> level and the 2nd level does for the 1st level >> >> >> Yes, true. What is assumed to be the highest level of NRSs, is three >> levels enough? >> >> >> - What is the acceptable rate for false positives? >> We are considering that FPP is less than 0.001 (i.e., 0.1%, 1000 out >> of 1 M entries). >> >> >> Reasonable. However, this changes my original calculations, where I >> assumed slightly worse performance. >> >> >> - How big BFs are feasible to send and receive in the network? >> When bloom filters at each server are initially built, it will take a >> long time. However, once they are established, the insertion is done >> by each new name not the whole bloom filter. >> >> On bloom filter updates for deletions, we are considering of refresh >> by shadow memory and the frequency can be from several hours to >> several days >> >> >> Inserting items into a BF is not a problem, the problem comes when >> items should be removed and the whole BF must be recalculated as you >> say and the update frequency obviously depends on many things. >> >> >> - The verification process should be fast, how can we efficiently >> match publications to filters with gigabit size? >> With H/W assisted implementation using GPU, chunks including the >> corresponding bit set to 1 for hash value can be loaded to GPU memory >> and a child can be selected by bit-wise AND. >> >> >> Ok, thanks! Although this probably requires some processing to find >> these chunks before matching can be done. But, as said, I don’t know >> much about the optimisations that you can do on lower layers. >> >> BR, Petri >> >> >> >> [1] Bellovin S., “Using Bloom Filters for Authenticated Yes/No >> Answers in the DNS”, draft-bellovin-dnsext-bloomfilt-00.txt, December >> 2001, Expired [2] >> http://pages.cs.wisc.edu/~cao/papers/summary-cache/node8.html >> [3] Hong, J., Chun, W., Jung, H., “Bloom Filter-based Flat Name >> Resolution System for ICN”, >> draft-hong-icnrg-bloomfilterbased-name-resolution-01.txt >> >> >> -- >> Petri Jokela >> Senior researcher >> NomadicLab, Ericsson Research >> Oy L M Ericsson Ab >> >> E-mail: petri.jokela@ericsson.com<mailto:petri.jokela@ericsson.com> >> Mobile: +358 44 299 2413 >> >> >> _______________________________________________ >> icnrg mailing list >> icnrg@irtf.org<mailto:icnrg@irtf.org> >> https://www.irtf.org/mailman/listinfo/icnrg >> > > _______________________________________________ > icnrg mailing list > icnrg@irtf.org<mailto:icnrg@irtf.org> > https://www.irtf.org/mailman/listinfo/icnrg > > > -- > Petri Jokela > Senior researcher > NomadicLab, Ericsson Research > Oy L M Ericsson Ab > > E-mail: petri.jokela@ericsson.com<mailto:petri.jokela@ericsson.com> > Mobile: +358 44 299 2413 > > > _______________________________________________ > icnrg mailing list > icnrg@irtf.org<mailto:icnrg@irtf.org> > https://www.irtf.org/mailman/listinfo/icnrg >
- [icnrg] FW: New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… Petri Jokela
- Re: [icnrg] New Version Notification for draft-ho… 정희영
- Re: [icnrg] New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… Petri Jokela
- Re: [icnrg] New Version Notification for draft-ho… Konstantinos V. Katsaros
- Re: [icnrg] New Version Notification for draft-ho… Konstantinos Katsaros
- Re: [icnrg] New Version Notification for draft-ho… Petri Jokela
- Re: [icnrg] New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… Christian Esteve Rothenberg
- Re: [icnrg] New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… 홍정하
- Re: [icnrg] New Version Notification for draft-ho… Konstantinos Katsaros