On Fri, Jun 9, 2017 at 11:26 PM, José Miguel Guzmán <jmguz...@whitestack.com > wrote:
> Hi Lori, I agree with you. > IMHO, 1) is not so bad, It would help to reduce delay for the first packet > to a forgotten prefix that reactivates. I am assuming most deployments will > have a few EIDs (<10 in our case) > For 2), I found the function that handles the timer expiration mc_entry_ > expiration_timer_cb. I will need to review the code to see if it is safe > to call handle_map_cache_miss(xtr, dst_eid, src_eid) here. I am confused > with this > /* If the EID is not from a iid net, try to fordward to the PeTR */ > if (lisp_addr_is_iid(dst_eid) == FALSE){ > > I am wondering if instead of removing the entry, and then installing a > temporary NOT_ACTIVE entry, is it not better to keep the same entry in > NOT_ACTIVE status, and use it as it were active (as the last known mapping). > Well, if a site operator set a certain TTL, that's for a reason, and we need to respect that, so I think we should remove or overwrite an expired entry. I would suggest to do the proactive refresh BEFORE the entry expires. Say we have a TTL of 1000 seconds, we initiate the refresh after 990 seconds elapsed, so that the entry is refreshed already when it would have to be removed. -Lori > > JM > > > > > > El vie., 9 jun. 2017 a las 4:00, Lori Jakab (<lorand.ja...@gmail.com>) > escribió: > >> Jose, >> >> Regardless of the TTL value, one optimization in the code that could be >> made would be to be proactive in refreshing mappings in the map-cache, so >> that active flows don't get packet drops when the TTL expires. This would >> need two things to be implemented: >> >> 1. Keeping a "last hit" timestamp for each map-cache entry, to be >> able to determine which entries have active flows. For each packet that is >> cache hit, we would update the timer. >> 2. When a cache entry's TTL expires, if it is still active (for that >> we need to define what active means, which can be a configurable >> threshold) >> we send out a Map-Request without removing it, wait for a reply, and >> install that into the map-cache. >> >> In theory we could just do 2) without 1) but we don't want to keep unused >> entries around in the map-cache. >> >> I'm pretty sure the OOR team is very busy with other high priority items, >> but I'm also pretty sure they would be happy to take patches implementing >> the above. >> >> Regards, >> -Lori >> >> On Fri, Jun 9, 2017 at 10:34 AM, Albert López <alo...@ac.upc.edu> wrote: >> >>> Dear José, >>> >>> The expiration time is defined by TTL. This is a hard coded parameter >>> that is defined by DEFAULT_DATA_CACHE_TTL (defs.h) and is used in >>> mapping_record_init_hdr(lisp_message_fields.c) . We usually set this >>> value to 10 (10 minutes). I don't know why you have 1, may be I sent to you >>> a testing version. In a future we would like to add this parameter in the >>> configuration file but we don't have it yet. >>> >>> Best regards >>> >>> Albert >>> >>> >>> El 09/06/17 a les 00:08, José Miguel Guzmán ha escrit: >>> >>> Hi All >>> >>> We realized that every minute, we are dropping traffic packets due to >>> expiration of the destination prefix, and time required to update the entry >>> form server (couple of seconds) >>> >>> *[2017/6/8 18:53:48] DEBUG: Got expiration for EID 192.168.102.0/24 >>> <http://192.168.102.0/24>* >>> >>> *[2017/6/8 18:53:49] DEBUG: No map cache for EID 192.168.102.168. >>> Sending Map-Request! * >>> [2017/6/8 18:53:49] DEBUG-2: lisp_addr_get_ip_pref_addr: Not applicable >>> to ip addressess >>> [2017/6/8 18:53:49] DEBUG: Balancing locator vector for >>> 192.168.102.168/32: >>> [2017/6/8 18:53:49] DEBUG: IPv4 locators vector (0 locators): >>> [2017/6/8 18:53:49] DEBUG: IPv6 locators vector (0 locators): >>> [2017/6/8 18:53:49] DEBUG: IPv4 & IPv6 locators vector (0 locators): >>> [2017/6/8 18:53:49] DEBUG: locators for req: 172.16.60.8 >>> [2017/6/8 18:53:49] DEBUG: Map-Request-> flags:a=0,m=0,p=0,s=0,P=0,S=0, >>> irc: 0 (+1), record-count: 1, nonce: 78627d755, itr-rlocs:172.16.60.8, >>> src-eid: 192.168.101.1, req-eid: 192.168.102.168/32 >>> [2017/6/8 18:53:49] DEBUG-2: lisp_addr_get_ip_addr: Not applicable to >>> prefixes >>> [2017/6/8 18:53:49] DEBUG: ECM -> flags:s, inner IP: 192.168.101.1 -> >>> 192.168.102.168/32, inner UDP: 4342 -> 4342 >>> [2017/6/8 18:53:49] DEBUG: Sent control message IP: 172.16.60.8 -> >>> 172.16.60.194 UDP: 4342 -> 4342 >>> *[2017/6/8 18:53:49] DEBUG: Received Map-Reply-> flags:P=0,E=0,S=0, >>> record-count: 1, nonce: 78627d75597fe77d, IP: 192.168.123.75 -> >>> 172.16.60.8, UDP: 4342 -> 4342* >>> [2017/6/8 18:53:49] DEBUG: Mapping-record -> ttl: 1 loc-count: 1 >>> action: no-action auth: 0 map-version: 0 eid: 192.168.102.0/24 >>> [2017/6/8 18:53:49] DEBUG: Locator-record -> flags: L=1,p=0,R=1, >>> p/w: 1/100 255/0, addr: 172.16.60.9 >>> [2017/6/8 18:53:49] DEBUG-2: mapping_get_locators_with_afi: List for OOR >>> AFI 1 and afi 2 not yet created >>> [2017/6/8 18:53:49] DEBUG-2: mapping_add_locator: Added locator >>> 172.16.60.9 to the mapping with EID 192.168.102.0/24. >>> [2017/6/8 18:53:49] DEBUG-2: mapping_get_locators_with_afi: List for OOR >>> AFI 3 and afi 10 not yet created >>> [2017/6/8 18:53:49] DEBUG: Balancing locator vector for 192.168.102.0/24 >>> : >>> [2017/6/8 18:53:49] DEBUG: IPv4 locators vector (1 locators): >>> 172.16.60.9 >>> [2017/6/8 18:53:49] DEBUG: IPv6 locators vector (0 locators): >>> [2017/6/8 18:53:49] DEBUG: IPv4 & IPv6 locators vector (0 locators): >>> *[2017/6/8 18:53:49] DEBUG: The map cache entry of EID 192.168.102.0/24 >>> <http://192.168.102.0/24> will expire in 1 minutes.* >>> [2017/6/8 18:53:49] DEBUG-2: Programming probing of EID's >>> 192.168.102.0/24 locator 172.16.60.9 (30 seconds) >>> >>> I am not sure if I am doing something wrong.. (probably :)) >>> >>> Is there any way to handle this transparently? For instance, have xTR >>> refreshing prefixes 5secs before expiration, so, traffic is not interrupted? >>> Are these expiration timers, configurable? I only see that rloc-probing >>> timers are tunable. >>> >>> Thanks! >>> JM >>> >>> >>> >>> >>> -- >>> >>> >>> *José Miguel Guzmán *Senior Network Consultant >>> Latin America & Caribbean >>> >>> +1 (650) 248-2490 <+16502482490> >>> +56 (9) 9064-2780 <+56990642780> >>> >>> jmguz...@whitestack.com >>> >>> jmguzmanc >>> >>> >>> >>> _______________________________________________ >>> Users mailing list >>> Users@openoverlayrouter.org >>> http://mail.openoverlayrouter.org/cgi-bin/mailman/listinfo/users >>> >>> >> -- > > *José Miguel Guzmán*Senior Network Consultant > Latin America & Caribbean > +1 (650) 248-2490 <+16502482490> > +56 (9) 9064-2780 <+56990642780> > jmguz...@whitestack.com > jmguzmanc >
_______________________________________________ Users mailing list Users@openoverlayrouter.org http://mail.openoverlayrouter.org/cgi-bin/mailman/listinfo/users