Optimize bgp and xmpp update generation
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R3.0 |
Fix Committed
|
Wishlist
|
Nischal Sheth | |||
R3.1 |
Fix Committed
|
Wishlist
|
Nischal Sheth | |||
Trunk |
Fix Committed
|
Wishlist
|
Nischal Sheth |
Bug Description
Placeholder bug to track improvements to bgp and xmpp update generation.
1. UpdateQueue and RibOutUpdates classes are organized to pack BGP NLRI
that share the same attributes into a single message. An unnecessary side
effect is that the same also happens for XMPP. However, each XMPP item is
self-contained, so it should be fine to pack multiple items with different
attributes into the same XMPP message.
2. Sending a set of routes to multiple xmpp peers becomes quite expensive
if some of the peers get blocked. The same route has to be encoded in xml
string format multiple times - once per peer in theoretical worst case.
This can be alleviated by storing/caching the xml string representation
of the RibOutAttr.
3. We perform a bunch of string copies and concatenation when sending the
same message to multiple xmpp peers since the to attribute needs to be
updated. Should do this by selectively replacing the target peer name.
description: | updated |
description: | updated |
description: | updated |
description: | updated |
summary: |
- Optimize xmpp update generation + Optimize bgp and xmpp update generation |
description: | updated |
tags: | added: quench2 |
Review in progress for https:/ /review. opencontrail. org/21123
Submitter: Nischal Sheth (<email address hidden>)