diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2014-08-14 17:42:30 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2014-08-14 18:07:45 +0900 |
commit | a60c18207e123367dc1c7862cb3fa1c577c94572 (patch) | |
tree | b4f0a98133803588cc2f4d096f473f6b5554d59a | |
parent | ad2d2678795d9d37e46f248ca7a9567dda068a84 (diff) |
bgp: refine the API for connecting to bmp server
We might want a bgp speaker to talk with multiple bmp servers in the
future so I renamed these functions. Note that currently a speaker can
connect to only one bmp server.
I also update the example code on how to make the speaker to connect
to a bmp server.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | doc/source/library_bgp_speaker.rst | 3 | ||||
-rw-r--r-- | ryu/services/protocols/bgp/bgpspeaker.py | 24 |
2 files changed, 22 insertions, 5 deletions
diff --git a/doc/source/library_bgp_speaker.rst b/doc/source/library_bgp_speaker.rst index d6c59429..e17d8247 100644 --- a/doc/source/library_bgp_speaker.rst +++ b/doc/source/library_bgp_speaker.rst @@ -43,7 +43,8 @@ instance advertizes some prefixes. best_path_change_handler=dump_remote_best_path_change) speaker.neighbor_add('192.168.177.32', 64513) - + # uncomment the below line if the speaker needs to talk with a bmp server. + # speaker.bmp_server_add('192.168.177.2', 11019) count = 1 while True: eventlet.sleep(30) diff --git a/ryu/services/protocols/bgp/bgpspeaker.py b/ryu/services/protocols/bgp/bgpspeaker.py index a2993beb..73899aa2 100644 --- a/ryu/services/protocols/bgp/bgpspeaker.py +++ b/ryu/services/protocols/bgp/bgpspeaker.py @@ -506,16 +506,32 @@ class BGPSpeaker(object): in_filter = call(func_name, **param) return in_filter - def bmp_start(self, host, port): + def bmp_server_add(self, address, port): + """This method registers a new BMP (BGP monitoring Protocol) + server. The BGP speaker starts to send BMP messages to the + server. Currently, only one BMP server can be registered. + + ``address`` specifies the IP address of a BMP server. + + ``port`` specifies the listen port number of a BMP server. + """ + func_name = 'bmp.start' param = {} - param['host'] = host + param['host'] = address param['port'] = port call(func_name, **param) - def bmp_stop(self, host, port): + def bmp_server_del(self, address, port): + """ This method unregister the registered BMP server. + + ``address`` specifies the IP address of a BMP server. + + ``port`` specifies the listen port number of a BMP server. + """ + func_name = 'bmp.stop' param = {} - param['host'] = host + param['host'] = address param['port'] = port call(func_name, **param) |