Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Prefix-level Hegemony to the searchbox and UI #252

Closed
mesflores opened this issue Feb 6, 2023 · 22 comments
Closed

Add Prefix-level Hegemony to the searchbox and UI #252

mesflores opened this issue Feb 6, 2023 · 22 comments
Assignees

Comments

@mesflores
Copy link

Currently, the UI allows you to search by ASN, Country, or IXP, and displays a number of "local" context charts (AS Dependency, origin validation, etc). It would be helpful to add Prefixes to the set of possible inputs -- and display the corresponding information for the prefix level dependency that's already available via API.

This would be especially helpful to multi-homed networks with multiple sites that feature different upstream providers.

Thanks!

@romain-fontugne romain-fontugne mentioned this issue Mar 3, 2023
2 tasks
@romain-fontugne
Copy link
Member

For this issue we need a new page (Prefix report) with:

  • Title: The IP prefix (e.g. 192.168.0.0/16)
  • Some information about the prefix: country code, RPKI, IRR, delegated status (as shown in 'Route Origin Validation')
  • AS Dependency graph: we can probably reuse/adapt the current component we have for showing the AS Dependency graph on the 'Network report', but this time the parameter is a prefix not an ASN and we don't want to show the second graph (Number of ASes dependent on ASXXX)

All the data is available from the API, /hegemony/prefixes/

Then we should add a way to search IP prefixes in the headers search bar

@romain-fontugne
Copy link
Member

Anyone up for this one?

@roopeshsn
Copy link
Member

I would like to work on this @romain-fontugne sir.

@Yh010
Copy link
Contributor

Yh010 commented Mar 3, 2023

As mentioned in #18, I would like to work on this issue

@romain-fontugne
Copy link
Member

@roopeshsn , @Yh010 we could actually split this in to two parts. One is to add IP prefixes to the search bar, the other one is to make the page for prefixes. Pick the one you prefer

@Yh010
Copy link
Contributor

Yh010 commented Mar 3, 2023

I would like to work on adding the prefixes

@roopeshsn
Copy link
Member

Alright, @Romain and @Yh010. I'll make the page for prefixes.

@romain-fontugne
Copy link
Member

ok, thanks to both of you!

@romain-fontugne
Copy link
Member

let me know if you have questions on how to modify the code.

@Yh010
Copy link
Contributor

Yh010 commented Mar 3, 2023

@romain-fontugne if you could provide us with some resources to get started , it would help us to get the issue solved faster and better!

@romain-fontugne
Copy link
Member

For the header search bar, the code is in src/components/search_bar/NetworkSearchBar.vue

And you'll have to call the hegemony_prefix API, see (src/plugins/query/IhrQuery.js).

In the near future, we'll have to change a bit the API. For now the API cannot do partial search for a prefix. That means we can search for a specific prefix, for example for "8.8.8.0/24" we have this results:
https://ihr.iijlab.net/ihr/api/hegemony/prefixes/?timebin__lte=2023-03-02T00%3A00&timebin__gte=2023-02-28T00%3A00&prefix=8.8.8.0%2F24

But we cannot search for a substring (e.g."8.8.8.0")

@romain-fontugne
Copy link
Member

For the prefix page, I would start by looking at he network report page: src/views/Networks.vue
And keep only the first part up to the as-interdependencies-chart.

Then we have to modify or duplicate that chart to make it work for prefixes (src/views/charts/AsInterdependenciesChart.vue)

maybe we should create a different issue for this, so we don't mix up the discussions here

@roopeshsn
Copy link
Member

For the prefix page, I would start by looking at he network report page: src/views/Networks.vue And keep only the first part up to the as-interdependencies-chart.

Then we have to modify or duplicate that chart to make it work for prefixes (src/views/charts/AsInterdependenciesChart.vue)

maybe we should create a different issue for this, so we don't mix up the discussions here

Yep, that makes sense @romain-fontugne sir!

@Yh010
Copy link
Contributor

Yh010 commented Mar 4, 2023

@roopeshsn I have made changes in the NetworkSearchBar.vue to take prefix as input in the search and then call the hegemony_prefix API . I have made a PR : #307 .Pls review the changes so that we can proceed further

@romain-fontugne
Copy link
Member

@Yh010 are you still working on this? This issue is quite important in my regards, I hope we could fix it soon.
So if you dont have time or at not really confident to implement this, let us know

@Yh010
Copy link
Contributor

Yh010 commented Apr 6, 2023

@romain-fontugne @roopeshsn pls have a look : PR

@mflores-edgio
Copy link

Any movement on this?

@roopeshsn
Copy link
Member

Any movement on this?

Awaiting for a little change (#429).

@romain-fontugne
Copy link
Member

@romain-fontugne @roopeshsn pls have a look : PR

Please have a look at Roopesh's comment in that PR

@romain-fontugne
Copy link
Member

Any movement on this?

Awaiting for a little change (#429).

@roopeshsn I still cannot make that code working. When I try http://localhost:8080/ihr/en-us/prefixes/8.8.8.0/24 it gives me error 404. I thought we agreed to use

path: `${routerBase}prefixes/:prefix/:prefix_length?

in the router file?

@roopeshsn
Copy link
Member

roopeshsn commented Aug 15, 2023

Any movement on this?

Awaiting for a little change (#429).

@roopeshsn I still cannot make that code working. When I try http://localhost:8080/ihr/en-us/prefixes/8.8.8.0/24 it gives me error 404. I thought we agreed to use

path: `${routerBase}prefixes/:prefix/:prefix_length?

in the router file?

Yep, that change is pending. I'll fix it by the end of the week.

@roopeshsn roopeshsn linked a pull request Sep 25, 2023 that will close this issue
6 tasks
@dpgiakatos
Copy link
Member

Closed by #719

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

6 participants