[AFS3-std] More than 13 sites for volume locations

Jeffrey Altman jaltman@secure-endpoints.com
Mon, 24 Apr 2006 15:11:52 -0400


This is a cryptographically signed message in MIME format.

--------------ms090809000608010005060106
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

The way AFS has implemented data structure extensions in the past is
by implementing a new RPC with a new data structure.  It would be
reasonable for the new RPC to be a multi-roundtrip implementation
which includes the total number of servers available and the client
would ask for up to NMAXNSERVERS starting at a particular index
value.

The old clients would use the existing RPC and the new clients would
attempt the new RPC and fallback to the old RPC if it were not available.

Jeffrey Altman


Matthew Andrews wrote:
> Do you really need to send a flag to the client? how about if the client
> gets a response with 13 entries, it just retries the call expecting
> additional servers. if the client gets back the same list as before,
> then it knows there are only 13 servers. repeat untill you get a list
> with less than 13 entries, or the same list twice. It wastes a little
> bandwidth, but only in the case where a "many replicas" aware client is
> getting info about a volume that actually has exactly 13 replicas(or a
> multiple therof).
> 
> -Matt
> 
> Harald Barth wrote:
> 
>> Looks to me that the number of volume copies is limited to 13 by
>>
>> struct nvldbentry   {
>> ...
>>        afs_int32       serverNumber[NMAXNSERVERS];     /* Server # for
>> each server that holds volume */
>>        afs_int32       serverPartition[NMAXNSERVERS];  /* Server
>> Partition number */
>>        afs_int32       serverFlags[NMAXNSERVERS];      /* Server flags */
>> ...
>> }
>>
>> and the same in struct uvldbentry. The question is what to do if I
>> want to extend this to more. A collegue of mine has a vague memory
>> that back in the times when IBM did AFS courses some IBM person said
>> that it was possible to have more than 13 copies anyway, but as I read
>> the source this must be either some misunderstanding or some other
>> source ;-) Or do you have more info than I do?
>>
>> Anyway, if a company is big enough, they want to have a RO copy in
>> every "site" on the continent or the world or whatever and if they
>> then have more than 13 "sites", this is the situation they are in.
>>
>> I have here some speculations how to extend this and I'd be happy if
>> you would help me with that.
>>
>> The first idea is to make a bigger array but that is not very
>> compatible as it is "in the middle" of the struct. It is very mych
>> wasting space if you have only say 2 servers, too. So I think it would
>> be better to be able to flag to the cache manager that there are more
>> servers available so that the client in the next call will ask for
>> server 14-26 and so on. This has to be flagged somehow, either by
>> a special last entry or a flag field.
>>
>> Backwards compat: As allways there is the question of "how backwards
>> compat is this"? People astonish me allways by using really old
>> clients. I astonished myself one month ago by booting a Sun4/280
>> (SunOS4) and the original AFS "just worked".
>> My idea here is to keep the first sent struct {n,u}vldbentry "as is"
>> so that old clients just work as usual with the first 13 volumes. They
>> don't need to know about copies 14, 15... This can even be enhanced by
>> presenting the "right" 13 hosts to a client first, for example by
>> choosing network wise near hosts depending on the cache manager
>> asking.
>>
>> Is this a feasible idea?
>>
>> Is this feature wanted for OpenAFS?
>>
>> Would such a patch/enhancement be incorporated into OpenAFS?
>>
>> I see the following steps:
>>
>> * Make vldb handle more than 13 hosts in the database.
>> * Make vldb present a choice of 13 hosts to the cm.
>> * Make cm to ask for more than 13 hosts from the vldb.
>>
>> How hard do you think this steps will be to implement?
>>
>> Ehm, if anyone says "it has allready been done" and tells me how, I
>> would not be unhappy at all.
>>
>> Harald.
>>
>> _______________________________________________
>> AFS3-standardization mailing list
>> AFS3-standardization@openafs.org
>> http://michigan-openafs-lists.central.org/mailman/listinfo/afs3-standardization
>>
>>
>>
>>  
>>
> 
> 
> _______________________________________________
> AFS3-standardization mailing list
> AFS3-standardization@openafs.org
> http://michigan-openafs-lists.central.org/mailman/listinfo/afs3-standardization
> 

--------------ms090809000608010005060106
Content-Type: application/x-pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIJXzCC
AwowggJzoAMCAQICAw7NrTANBgkqhkiG9w0BAQQFADBiMQswCQYDVQQGEwJaQTElMCMGA1UE
ChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNv
bmFsIEZyZWVtYWlsIElzc3VpbmcgQ0EwHhcNMDUwNTI3MTc0NzU3WhcNMDYwNTI3MTc0NzU3
WjBzMQ8wDQYDVQQEEwZBbHRtYW4xFTATBgNVBCoTDEplZmZyZXkgRXJpYzEcMBoGA1UEAxMT
SmVmZnJleSBFcmljIEFsdG1hbjErMCkGCSqGSIb3DQEJARYcamFsdG1hbkBzZWN1cmUtZW5k
cG9pbnRzLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKjPyrF+rdjOUSK/
bWwZHdx5p1+y6iiCd4vvYEVDxouYFp5C/fZEWm5n45ubBUbMSUI1MAZN6ooEoH09UTj6BXhM
S8B987ls81dKOIUphTF2jOzq8gsFmeA15yHMRAD20LqUWeLyvYk8FCNQw+dsKMMhX+WdsxOm
RY/1jPkJL6oN8kEwoUFkOX9/OfWWh6oFnV6faiEHUKDMFubsb9X0KVD8iIeR7Cxz7i4kXqRX
wMlp2fyoxcDIJrBaTY8nA++g3p34IkWt1a5po6g683nIgSnGpwYIwuJheBqSEZfLYWa+1KdD
6Sn27Ud94GqUvPVG5jC6zVC5EJ2aWuoAu+nNuV8CAwEAAaM5MDcwJwYDVR0RBCAwHoEcamFs
dG1hbkBzZWN1cmUtZW5kcG9pbnRzLmNvbTAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBBAUA
A4GBADtvO//tjiAV6VJGtoNtrl34mB5jGyGTiotzw8riB6zz0GvY11bcWDmp6JKif+pVG+8L
IySDosbuva13qu2HwYUxBmWc7CoNd2k9kRlcrfbDUTTrGOZK8qyqNqT3gQZTAa9ZnUI0su9G
y/n2o5bQcaYdqR3htNrpvdLSPOWhILOXMIIDCjCCAnOgAwIBAgIDDs2tMA0GCSqGSIb3DQEB
BAUAMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBM
dGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQTAeFw0w
NTA1MjcxNzQ3NTdaFw0wNjA1MjcxNzQ3NTdaMHMxDzANBgNVBAQTBkFsdG1hbjEVMBMGA1UE
KhMMSmVmZnJleSBFcmljMRwwGgYDVQQDExNKZWZmcmV5IEVyaWMgQWx0bWFuMSswKQYJKoZI
hvcNAQkBFhxqYWx0bWFuQHNlY3VyZS1lbmRwb2ludHMuY29tMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAqM/KsX6t2M5RIr9tbBkd3HmnX7LqKIJ3i+9gRUPGi5gWnkL99kRa
bmfjm5sFRsxJQjUwBk3qigSgfT1ROPoFeExLwH3zuWzzV0o4hSmFMXaM7OryCwWZ4DXnIcxE
APbQupRZ4vK9iTwUI1DD52wowyFf5Z2zE6ZFj/WM+Qkvqg3yQTChQWQ5f3859ZaHqgWdXp9q
IQdQoMwW5uxv1fQpUPyIh5HsLHPuLiRepFfAyWnZ/KjFwMgmsFpNjycD76DenfgiRa3Vrmmj
qDrzeciBKcanBgjC4mF4GpIRl8thZr7Up0PpKfbtR33gapS89UbmMLrNULkQnZpa6gC76c25
XwIDAQABozkwNzAnBgNVHREEIDAegRxqYWx0bWFuQHNlY3VyZS1lbmRwb2ludHMuY29tMAwG
A1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEEBQADgYEAO287/+2OIBXpUka2g22uXfiYHmMbIZOK
i3PDyuIHrPPQa9jXVtxYOanokqJ/6lUb7wsjJIOixu69rXeq7YfBhTEGZZzsKg13aT2RGVyt
9sNRNOsY5kryrKo2pPeBBlMBr1mdQjSy70bL+fajltBxph2pHeG02um90tI85aEgs5cwggM/
MIICqKADAgECAgENMA0GCSqGSIb3DQEBBQUAMIHRMQswCQYDVQQGEwJaQTEVMBMGA1UECBMM
V2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25z
dWx0aW5nMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSQwIgYD
VQQDExtUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgQ0ExKzApBgkqhkiG9w0BCQEWHHBlcnNv
bmFsLWZyZWVtYWlsQHRoYXd0ZS5jb20wHhcNMDMwNzE3MDAwMDAwWhcNMTMwNzE2MjM1OTU5
WjBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRk
LjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0EwgZ8wDQYJ
KoZIhvcNAQEBBQADgY0AMIGJAoGBAMSmPFVzVftOucqZWh5owHUEcJ3f6f+jHuy9zfVb8hp2
vX8MOmHyv1HOAdTlUAow1wJjWiyJFXCO3cnwK4Vaqj9xVsuvPAsH5/EfkTYkKhPPK9Xzgnc9
A74r/rsYPge/QIACZNenprufZdHFKlSFD0gEf6e20TxhBEAeZBlyYLf7AgMBAAGjgZQwgZEw
EgYDVR0TAQH/BAgwBgEB/wIBADBDBgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsLnRoYXd0
ZS5jb20vVGhhd3RlUGVyc29uYWxGcmVlbWFpbENBLmNybDALBgNVHQ8EBAMCAQYwKQYDVR0R
BCIwIKQeMBwxGjAYBgNVBAMTEVByaXZhdGVMYWJlbDItMTM4MA0GCSqGSIb3DQEBBQUAA4GB
AEiM0VCD6gsuzA2jZqxnD3+vrL7CF6FDlpSdf0whuPg2H6otnzYvwPQcUCCTcDz9reFhYsPZ
Ohl+hLGZGwDFGguCdJ4lUJRix9sncVcljd2pnDmOjCBPZV+V2vf3h9bGCE6u9uo05RAaWzVN
d+NWIXiC3CEZNd4ksdMdRv9dX2VPMYIDOzCCAzcCAQEwaTBiMQswCQYDVQQGEwJaQTElMCMG
A1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBl
cnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECAw7NrTAJBgUrDgMCGgUAoIIBpzAYBgkqhkiG
9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0wNjA0MjQxOTExNTJaMCMGCSqG
SIb3DQEJBDEWBBTqwqQ/bV+nCc3/5Hjnw1BBejUOkTBSBgkqhkiG9w0BCQ8xRTBDMAoGCCqG
SIb3DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG
9w0DAgIBKDB4BgkrBgEEAYI3EAQxazBpMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3
dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJl
ZW1haWwgSXNzdWluZyBDQQIDDs2tMHoGCyqGSIb3DQEJEAILMWugaTBiMQswCQYDVQQGEwJa
QTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhh
d3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECAw7NrTANBgkqhkiG9w0BAQEFAASC
AQBHkujpc4dpXBgeFmkjpIXz451hxyFMNHcTiuX2SyY+WzJPzeH8UUke4t32/PX7E3+SPhVZ
ld6CfwGWJ8ppPuUBQZKCIZjurCX1vj3i6LBtys0K9mkLCbDujmWu2Bz0lHr5TtRN9vLya3Ri
D4VpTk4zf7M9TS4q9R409hjmJUZutmZ4he8UiCIBzAUYvG9UmKr7o94aQsT/L1staIL7/HSQ
lZ3KwyRkNjDGinjHefLBmPgJ50ArvL9cwkraON/pc4f1DiF7FicMGauFejsysAETiTndY+Vj
oJnvEvkYmAZ8427U1qJ8GKVEo7xFiAAn37If5fKg5Jzu6erdGUcCDlX6AAAAAAAA
--------------ms090809000608010005060106--