Good day.

Is there a daemon or project traffic routing program between computers and servers.

I will explain: There is an instant messenger written by the organization. There are several servers in the organization and each server has several dozen machines. Each machine or server has this messenger and a unique identifier. The server stores a table (manually clogged) which identifier on which ip sits (ip static). It turns out that if a user sends a message, it first goes to the server, and then either to the server or to the machine. Even if these machines are sitting on the same server. It turns out that if one server falls, all the machines of this server will not be able to send messages. In addition, the server is a traffic jam if there is a lot of traffic.

I tried to build everything on bird ospf. Those. router id as an identifier, bird installed on each machine and server, and that the messenger when sending a message watched the fastest and free channel and sent it (maybe to another machine, and that in turn to the recipient). But in the routing table, in addition to the router id, there is also a network. And it turns out confusion ID and network.

Is there a program or code block or library that can solve this issue?

    1 answer 1

    There is. Jabber is called. Throw out your bike and go to it, there everything is already implemented.

    • No, it will not work that way. Because besides the messenger, Internet resources and storages are sitting on this routing - kostap
    • So .. Let's breed problems by OSI model levels. Now you have a mixed application with a channel - at the output - confusion. Messenger, Internet, resources and storage - is it one application or different? - gbg
    • This is different, but one is tied to another. For example: the user sends a message on the messenger. Messenger locally refers to the transport problem. Ta, in turn, looks at the unique identifier table (if any) and takes the ip address of the next node. If not, it sends its server. The next node or server also looks at its table and sends it. This principle works and storage and Internet resources. - kostap
    • What kind of @kostap, and the developers and architects of this show are available? Let's set the task now - do you want to automatically receive the id-ip file of cellularity on the servers? - gbg
    • I agree, the horror is there. But the system is very old and therefore excusable. First of all, I would like to receive the optimal route for each node if the node is in the same autonomous system (that is, on one server) and on servers about all other servers + their entire autonomous system. I think this is a good solution. It will allow when connecting a new autonomous region not to register it on each server, but automatically. Also, when sending data, the optimal route was chosen. I think the next task is to make a transport task that would create a tunnel to the abonent. - kostap