490 Commits
Author SHA1 Message Date
ISHIDA WataruandFUJITA Tomonori e6682c52ba server: update path-attributes when peer is disconnected
close #807

also add a test to check this issue is fixed

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-31 16:36:27 +09:00
FUJITA Tomonori 311324fab8 move packet/*.go to packet/bgp/*.go for Go's convention
Later, we move non-bgp protocol stuff like mrt under their own
direcotries.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-31 13:19:17 +09:00
Eiichiro WatanabeandFUJITA Tomonori 63788325a0 server: fix typo 2016-03-31 11:27:43 +09:00
Eiichiro WatanabeandFUJITA Tomonori f4e834672f server: be exportable to use as RPKI library 2016-03-31 11:27:43 +09:00
FUJITA Tomonori 128580b529 server: fasten mrt write
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-21 13:04:33 +09:00
FUJITA Tomonori 731f4fa3ea server: support mrt dump rotation like Quagga
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-20 00:09:44 +09:00
ISHIDA Wataru 9ba923766b server: wait AcceptTCP() return when closing listeners
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-18 16:02:33 +09:00
ISHIDA Wataru a5cc2b1397 cli: enhance global command
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:47:11 +09:00
ISHIDA Wataru 5120cfc7ca config: move Mrt/Bmp configuration outside of Global configuration
Global config basically store configuration whose change will cause
all neighbor session restart.

Mrt and Bmp configuration is not such. Put them outside of Global
config.

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:47:03 +09:00
ISHIDA Wataru b06b3ad42f server: support ModGlobalConfig Operation_DEL_ALL
$ gobgp global del all

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:44:47 +09:00
ISHIDA Wataru b7aa25c0f0 server: use grpc req handling code for global init via config file
preparation for Operation_DEL support of REQ_MOD_GLOBAL_CONFIG

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:44:46 +09:00
ISHIDA Wataru ee68181ce1 server: minor refactoring of zebra related code
move things to more appropriate place

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:44:44 +09:00
ISHIDA Wataru 304523e48a server: add missing api.Global field
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-17 10:44:43 +09:00
ISHIDA Wataru 262a736e2f server: fix compile error on non-linux platform
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-16 14:30:49 +09:00
FUJITA Tomonori 2ef757bc5f table: remove Destination's oldKnownPathList
Withdrawn pathes are kept to be referenced thus the memory for them
are not freed. Kill oldKnownPathList and Destination's NewFeed().

Destination's Calculate() returns the best paths.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-14 00:44:15 +09:00
FUJITA Tomonori 7d68855c86 table: remove Destination's WithdrawnList and UpdatedPathList used for validation
Withdrawn pathes are kept to be referenced thus the memory for them
are not freed. Nobody uses this so let's remove it.

Paths in UpdatedPathList are also in KnownPathList so doesn't lead to
memory leak. But remove it for simplicity.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-14 00:44:15 +09:00
ISHIDA WataruandFUJITA Tomonori eb8ed382be server: fix bug of soft-reset-out
p, which is newly filtered by export filter stays in peer.localRib.
we mustn't change IsWithdraw flag of it.

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-15 00:50:06 -07:00
FUJITA Tomonori 4c4bc4670c Revert "fsm: remove redundant connection close"
when hold timer expires, established() goroutine exits so even if tx()
goroutine writes to errorCh, nobody closes the connection. The, rx()
goroutine doesn't finish, so gobgpd hits panic().

This reverts commit 38bd31856b.

Conflicts:
	server/fsm.go
2016-03-15 00:02:59 -07:00
ISHIDA Wataru 376d5b3bb8 fsm: support active connection with md5 and binding
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-12 10:05:57 +09:00
FUJITA Tomonori 0561c11889 server: make rx goroutine reading from socket never sleep
Currently, the rx goroutine reading from socket (recvMessageloop
funciton) sleeps if msgCh is full. The problem is that if the rx
goroutine stops reading from a socket, keepalives are ignored, the
holdtime on gobgp expires even if a peer properly sends keepalives.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-07 00:08:04 -08:00
FUJITA Tomonori 74c79d99a8 server: clean up recvMessageWithError
better way to avoid blocked on channel.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-07 23:05:46 +09:00
FUJITA Tomonori bbde43608f server: recvMessageWithError avoid blocked due to msgCh
Preparation for make recvMessageWithError() avoid being blocked.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-07 23:05:29 +09:00
FUJITA Tomonori 51a677cbe6 server: make sure recvMessageWithError() not blocked due to errorCh
probably doesn't happen but be cautious.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-07 22:59:41 +09:00
FUJITA Tomonori d5911e2a10 server: use raw data as downtime/uptime instead of duration
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-02 08:34:12 +09:00
ISHIDA WataruandFUJITA Tomonori 0079c40526 fsm: fix min keepalive interval to 1sec from 1ns
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-03-02 03:18:55 -08:00
FUJITA Tomonori ac040204f8 server: fix per-asn regression
AS in an OpenMsg is set to zero if a peer is configured via grpc.

commit 0b78f57ccd
Author: ISHIDA Wataru <[email protected]>
Date:   Fri Feb 19 15:40:30 2016 +0900

    config/server: support per-peer asn

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-03-01 08:14:50 +09:00
ISHIDA WataruandFUJITA Tomonori 0b78f57ccd config/server: support per-peer asn
you can override `global.config.as` by `neighbor.config.local-as`

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-29 15:59:42 -08:00
ISHIDA WataruandFUJITA Tomonori 53c5bc0258 server: support active connection with md5 protection
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-29 15:41:37 -08:00
ISHIDA WataruandFUJITA Tomonori 7dd4813776 server: remove reflect
see https://groups.google.com/forum/#!topic/golang-nuts/dm86z8rfIbA

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-29 15:41:37 -08:00
Denis Shevchenko 1b4dd198a7 server: set multihop parameters via grpc 2016-03-01 12:52:11 +03:00
FUJITA Tomonori 4b1bb1f6ea rpki: fix rpki Serial Notify handling
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-19 20:10:24 +09:00
FUJITA Tomonori 19faff590f rpki: handle serial number wraparound
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-19 20:10:24 +09:00
Naoto HanaueandFUJITA Tomonori a53d194505 ops: fix and integration the attribute name that indicates the route received from an external resource 2016-02-27 03:47:00 -08:00
FUJITA Tomonori 61bf5455d8 rpki: delete all the ROAs from the server when receiving EOD from it
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-21 06:46:05 -08:00
FUJITA Tomonori bbed1307da rpki: fix the numbers of records and prefixes about removal
Let's calculate the numbers of records and prefixes when they are
necessary. This fixes a bug that the numbers of records and prefixes
in deleteAllROA().

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-21 06:44:02 -08:00
FUJITA Tomonori 7899f30f3a rpki: simplify ROA data structure
This changes ROA data structure to enable one IP Prefix message to be
converted into one ROA data structure.

this is preparation for a patch that make roaClient not insert ROAs
into a global tree until it gets an End of Data message.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-21 06:04:41 -08:00
FUJITA Tomonori 08df3e5fb1 rpki: remove homegrown SplitHostPort function
Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-21 06:04:37 -08:00
FUJITA Tomonori 6301082648 fsm: remove MsgDst
No user any more.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-19 22:53:23 -08:00
FUJITA Tomonori 9b28f7d5ca Revert "test: add performance_test"
This reverts commit 34bd365bb4.

Conflicts:
	server/peer.go
	test/performance_test/README.md
	test/performance_test/main.go
	test/performance_test/test.py
2016-02-19 22:14:11 -08:00
Naoto HanaueandFUJITA Tomonori b67befc30a ops: maintenance of two-way route exchange 2016-02-19 21:14:59 -08:00
ISHIDA Wataru ecbfa29d08 server/api: add DEL_ALL operation support in ModPath() api
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-13 08:37:10 +09:00
FUJITA Tomonori ff4e566239 rpki: use io instead of bufio
Seems that sometimes it fails to get the proper data from a socket.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-11 06:55:21 -08:00
ISHIDA WataruandFUJITA Tomonori 023a498e4a server: support graceful-restart helper-speaker behavior
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 23:41:44 -08:00
ISHIDA WataruandFUJITA Tomonori b19bbd415e gobgpd: support graceful-restart restarting-speaker behavior
use `-r` option to start gobgpd in restarting-speaker mode

Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 23:35:41 -08:00
ISHIDA WataruandFUJITA Tomonori 16b40fd152 fsm: support negotiation of graceful restart capability
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 22:15:04 -08:00
ISHIDA WataruandFUJITA Tomonori 607d56ad26 server: reflect graceful restart configuration in a sending open message
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 22:15:04 -08:00
ISHIDA WataruandFUJITA Tomonori 36f8911cee table: support sending/receiving EOR msg
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 22:15:04 -08:00
ISHIDA WataruandFUJITA Tomonori dd880838f0 packet: improve graceful restart cap usability
Signed-off-by: ISHIDA Wataru <[email protected]>
2016-02-10 22:15:04 -08:00
FUJITA Tomonori 231cac6d85 table: fix adjrib regression
fix adjrib regression due to the d2801681 commit.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-10 06:39:32 -08:00
FUJITA Tomonori fa84d4783c server: fix socket md5
fix the regression due to c9436bc

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-02-08 05:14:12 -08:00