2001-11-07 19:32:37

by Brian Beattie

[permalink] [raw]
Subject: Alternate routing algorithims for md/multipath

I have been working on adding some features to the md/multipath module.
At this point what I have is probably more a starting point for
discussion, than a true prototype.

Changes:

Add two new fields to the personality information in the superblock, to
specify the routing algorithm and a parameter (if needed).

Change Superblock version number to 91.

Add support for new superblock to raidtools

Add support for /proc/sys/dev and sysctl for simple monitoring and
control of md/multipath.

Add support for alternative routing algorithms.

Change name of function multipath_read_balance to multipath_path_select
because the function has nothing to do with "read balanceing".

Add simple round robin routing.
----

I am including four patches. The first is a small bug fix. The second
adds some simple support for /proc/sys and sysctl for monitoring and
control of md/multipath. The third adds support for /proc/sys. The
last adds support for alternative routing algorithms and round robin
routing.

As was pointed out, this round robin scheme will probably have pretty
poor performance and is really only done as an example. I have not yet
done any performance measurements, but plan to do so next week after I
get back from ALS. I will be looking at ways to do round robin routing
in a way that performs well.

I would like to hear any comments or suggestions people might have.


Attachments:
(No filename) (1.36 kB)
patch.bugfix1 (536.00 B)
patch.proc-sys (8.72 kB)
patch.raidtools (7.60 kB)
patch.routing (8.36 kB)
Download all attachments