Hi Paul,
Please find the updated word document in text format.
Thanks & Regards
Udaya,
On Fri, Feb 12, 2016 at 7:21 PM, Paul Jakma <[email protected]> wrote:
> Hi,
>
> On Thu, 11 Feb 2016, Udaya Shankara KS wrote:
>
> Hi,
>>
>> I have created a patch for fpm module,which provides CLI in zebra
>> for configuring remote fpm server ip and port of remote fpm server.This
>> helps us to update the FIB updates to remote fpm module. please review and
>> let me know your comments.
>>
>
> That looks sensible.
>
> The Word document, could you convert it to something friendlier? Text,
> markdown, LaTeX, Texinfo? The latter 3 can take images.
>
> regards,
> --
> Paul Jakma [email protected] @pjakma Key ID: 64A2FF6A
> Fortune:
> A quarrel is quickly settled when deserted by one party; there is no battle
> unless there be two. -- Seneca
>
ZEBRA : CLI CONFIGURATION FOR FPM MODULE
========================================================
1. INTRODUCTION
================================
1.1 scope
This memo discusses the configuration option for zebra to update
FIB information to local and remote modules.
This will also helps to address the issue associated with CORD project.
https://jira.onosproject.org/browse/CORD-411
2. REFERENCE
================================
Quagga version 99.24+ ( main branch committed on 29-sep-2015)
3. PROBLEM DESCRIPTION
================================
Once FPM is enabled, Quagga periodically tries to initiate
fpm connection to localhost:2620. These values are non configurable in
existing implementation. There is no CLI available to configure "host:port".
hence limits us to use it for hardware based fast path modules only.
4. PROPOSED CHANGES
================================
Following changes are done to the quagga code
a) Added new CLI to configure "host address : port".
The CLI format
<conf t>
$ fpm connection ip <ipv4 address> port <tcp port num>
and no fpm command to revert back to default
<conf t>
$ no fpm connection ip <ipv4 address> port <tcp port num>
b) Allowed values are ipv4 address and tcp port range <1-65535>
c) FPM initialization code has been enhanced to pick the "host address :
port"
values from zebra.conf. if not found then default values as localhost:2620
will be used. and updated the information on to config file on write
config
command
5. FILES MODIFIED
================================
1) fpm/fpm.h :
a) Added MACRO to represent network order loopback ip
2) zebra/zebra_fpm.h :
a) introduced fpm_server variable in zfpm_glob_t handler to hold the
remote fpm server address
b) Hooked 'fpm_remote_ip_cmd' and 'no_fpm_remote_ip_cmd' at CONFIG node
to configure remote fpm detail and to revert back to default
respectively
3) zebra/zserv.c :
a) Hooked 'config_write_fpm' callback function, at ZEBRA_NODE to
display the fpm connection details on console on entering command
$ show running_config
and to write to configuration file on entering command
$ write config
6. TESTING DETAILS
================================
6.1. default behavior
In default configuration FPM will attempt to connect to localhost:2620
6.2. update fpm info
a) Using CLI command user can configure fpm host:port details
and can be able to write to config file(zebra.conf) using write
config command.
this parameters has no dependency/impact on other parameters of
config file
b) show running-config/write config will display the fpm information if
configured.
and will not display any information related to fpm for default
configuration
c) these configured information will be stored to config file. only on
write config command.
6.3 loading from config file
a) zebra attempts to connect to fpm server if fpm parameter found in
config file.else
connects to default parameters.
b) if fpm connection drops, fpm will periodically attempts to connect
to remote server.
c) if fpm connections already established. then newly configured fpm
parameters will not
disconnect the existing connection. new connection to the different
fpm server will happen
only after existing connection closes by either of the end.
_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev