Documentation
¶
Index ¶
- Variables
- type NodeLocator
- func (nl *NodeLocator) LocateOutsideNode(vrf string, ipType network.IPFamily) []model.Node
- func (nl *NodeLocator) LocateSourceNode(src network.NetworkList, options *graph.LocateOptions) (model.Node, model.Port, error)
- func (nl *NodeLocator) LocateStubNode(netList *network.NetworkList, vrf string, ipType network.IPFamily) (bool, model.Node, model.Port)
- type PathCalculator
- type RouteQuery
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type NodeLocator ¶
type NodeLocator struct {
// contains filtered or unexported fields
}
NodeLocator 节点定位器
func NewNodeLocator ¶
func NewNodeLocator(topology graph.Topology) *NodeLocator
NewNodeLocator 创建节点定位器
func (*NodeLocator) LocateOutsideNode ¶
LocateOutsideNode 定位Outside节点
func (*NodeLocator) LocateSourceNode ¶
func (nl *NodeLocator) LocateSourceNode( src network.NetworkList, options *graph.LocateOptions) (model.Node, model.Port, error)
LocateSourceNode 定位源节点
func (*NodeLocator) LocateStubNode ¶
func (nl *NodeLocator) LocateStubNode( netList *network.NetworkList, vrf string, ipType network.IPFamily) (bool, model.Node, model.Port)
LocateStubNode 定位Stub节点
type PathCalculator ¶
type PathCalculator struct {
// contains filtered or unexported fields
}
PathCalculator 路径计算器
func NewPathCalculator ¶
func NewPathCalculator(topology graph.Topology, options *query.PathQueryOptions) *PathCalculator
NewPathCalculator 创建路径计算器
func (*PathCalculator) CalculatePath ¶
func (pc *PathCalculator) CalculatePath(ctx context.Context) ([]*model.PathResult, error)
CalculatePath 计算路径
func (*PathCalculator) WithLogger ¶
func (pc *PathCalculator) WithLogger(logger *zap.Logger) *PathCalculator
WithLogger 设置日志器
type RouteQuery ¶
type RouteQuery struct {
// contains filtered or unexported fields
}
RouteQuery 路由查询器
func NewRouteQuery ¶
func NewRouteQuery(routeTable *model.RouteTable) *RouteQuery
NewRouteQuery 创建路由查询器
func (*RouteQuery) QueryAllRoutes ¶
func (rq *RouteQuery) QueryAllRoutes( dst network.NetworkList, inPort, vrf string, ipFamily network.IPFamily) ([]*model.RouteResult, error)
QueryAllRoutes 查询所有路由(多路径)
func (*RouteQuery) QueryRoute ¶
func (rq *RouteQuery) QueryRoute( dst network.NetworkList, inPort, vrf string, ipFamily network.IPFamily) (*model.RouteResult, error)
QueryRoute 查询路由(支持多路径)
Click to show internal directories.
Click to hide internal directories.