preferred routing?

Technical discussions around xCORE processors (e.g. General Purpose (L/G), xCORE-USB, xCORE-Analog, xCORE-XA).
User avatar
CousinItt
XCore Addict
Posts: 178
Joined: Wed May 31, 2017 6:55 pm

preferred routing?

Postby CousinItt » Fri Nov 08, 2019 9:03 pm

mesh links.png

Hi,

the pic shows five XL devices A..E, connected by links, with an XTAG debugger X attached to node A.

I'd like each node to be able to communicate with any other, but I would like the B-C link only to carry traffic directly between those two nodes. In other words, traffic between A and C should follow the path A-D-C, not A-B-C, and traffic between D, or E, and B should follow the D-A-B route and not D-C-B. I'd like to do this because I don't want the B-C link to be blocked.

Is there a way to set up the routing that would support this?

Thanks!
You do not have the required permissions to view the files attached to this post.
User avatar
CousinItt
XCore Addict
Posts: 178
Joined: Wed May 31, 2017 6:55 pm

Postby CousinItt » Mon Nov 11, 2019 6:36 pm

Nobody?
User avatar
akp
Respected Member
Posts: 448
Joined: Thu Nov 26, 2015 11:47 pm

Postby akp » Wed Nov 20, 2019 1:36 pm

Have you made progress with this problem? I don't know the answer but looking at this document (https://www.xmos.com/file/xconnect-architecture/) I see two options that might be relevant to your situation:
1. Set the channel ends associated with the B-C link to a different virtual network than the other channel ends (Sec 1.4), so then the traffic on your main virtual network won't be routed through that link
2. Set the B-C link as non-routed per Sec. 2.3 -- to me this seems ideal since it reduces overhead to improve your bandwidth
User avatar
CousinItt
XCore Addict
Posts: 178
Joined: Wed May 31, 2017 6:55 pm

Postby CousinItt » Wed Nov 20, 2019 4:27 pm

Hi akp,

it's nice to get a reply, so thanks.

The routing I was trying to achieve was for test purposes, but not needed for the final product so I've just done without it. Effectively the link between B and C is missing, so all messages between them would be routed B-A-D-C (and vice versa). It's a good thing none are needed. It's not clear that a solution to the problem even exists.

I don't know enough about virtual networks. Can a node be a member of more than one virtual network simultaneously? If not, this would allow B and C to have a private chat, but nothing else could talk to them, which wouldn't work for me.

I've not tried non-routed links, but it's an interesting thought. Maybe I'll give it a try when the dust has settled.

Thanks again.
User avatar
akp
Respected Member
Posts: 448
Joined: Thu Nov 26, 2015 11:47 pm

Postby akp » Wed Nov 20, 2019 4:38 pm

What I understand is that you can set the virtual network on a link, not a node. So you could set B-C link to virtual network 1 (for instance) and all the other links to virtual network 0. There can be 4 virtual networks. So if you transmit a message from B to any other node on virtual network 0 it would follow the A-B link, and likewise for C it would follow the C-D link. But if you transmit a message from B-C on virtual network 0 it would follow the B-C link. But I have never tried it, I am just trying to understand the documents. But in your case setting up a static link (aka non-routed link) in software rather than using the routing table might be a better bet for that high priority link.

Having said that, this feature could be useful to me in the future so if you get it to work I would be interested to hear the result.
Quintondun
Newbie
Posts: 1
Joined: Thu Nov 21, 2019 12:01 pm

Postby Quintondun » Fri Nov 22, 2019 2:36 pm

What do you think a good use case for this feature would be, akp?

Who is online

Users browsing this forum: No registered users and 5 guests