O perating s ystems t hree e asy p ieces



Download 3,96 Mb.
Pdf ko'rish
bet378/384
Sana01.01.2022
Hajmi3,96 Mb.
#286329
1   ...   374   375   376   377   378   379   380   381   ...   384
Bog'liq
Operating system three easy pease

Workload

NFS

AFS

AFS/NFS

1. Small file, sequential read

N

s

· L



net

N

s



· L

net


1

2. Small file, sequential re-read

N

s

· L



mem

N

s



· L

mem


1

3. Medium file, sequential read

N

m

· L



net

N

m



· L

net


1

4. Medium file, sequential re-read

N

m

· L



mem

N

m



· L

mem


1

5. Large file, sequential read

N

L

· L



net

N

L



· L

net


1

6. Large file, sequential re-read

N

L

· L



net

N

L



· L

disk


L

disk


L

net


7. Large file, single read

L

net



N

L

· L



net

N

L



8. Small file, sequential write

N

s



· L

net


N

s

· L



net

1

9. Large file, sequential write



N

L

· L



net

N

L



· L

net


1

10. Large file, sequential overwrite

N

L

· L



net

2 · N


L

· L


net

2

11. Large file, single write



L

net


2 · N

L

· L



net

2 · N


L

Table 49.3: Comparison: AFS vs. NFS

and medium files fit into the memory of a client; large files fit on a local

disk but not in client memory.

We also assume, for the sake of analysis, that an access across the net-

work to the remote server for a file block takes L

net

time units. Access



to local memory takes L

mem


, and access to local disk takes L

disk


. The

general assumption is that L

net

> L


disk

> L


mem

.

Finally, we assume that the first access to a file does not hit in any



caches. Subsequent file accesses (i.e., “re-reads”) we assume will hit in

caches, if the relevant cache has enough capacity to hold the file.

The columns of the table show the time a particular operation (e.g., a

small file sequential read) roughly takes on either NFS or AFS. The right-

most column displays the ratio of AFS to NFS.

We make the following observations. First, in many cases, the per-

formance of each system is roughly equivalent. For example, when first

reading a file (e.g., Workloads 1, 3, 5), the time to fetch the file from the re-

mote server dominates, and is similar on both systems. You might think

AFS would be slower in this case, as it has to write the file to local disk;

however, those writes are buffered by the local (client-side) file system

cache and thus said costs are likely hidden. Similarly, you might think

that AFS reads from the local cached copy would be slower, again be-

cause AFS stores the cached copy on disk. However, AFS again benefits

here from local file system caching; reads on AFS would likely hit in the

client-side memory cache, and performance would be similar to NFS.

Second, an interesting difference arises during a large-file sequential

re-read (Workload 6). Because AFS has a large local disk cache, it will

access the file from there when the file is accessed again. NFS, in contrast,

only can cache blocks in client memory; as a result, if a large file (i.e., a file

bigger than local memory) is re-read, the NFS client will have to re-fetch

the entire file from the remote server. Thus, AFS is faster than NFS in this

case by a factor of

L

net



L

disk


, assuming that remote access is indeed slower

than local disk. We also note that NFS in this case increases server load,

which has an impact on scale as well.

c

 2014, A



RPACI

-D

USSEAU



T

HREE


E

ASY


P

IECES



584

T

HE



A

NDREW


F

ILE


S

YSTEM


(AFS)

Third, we note that sequential writes (of new files) should perform

similarly on both systems (Workloads 8, 9). AFS, in this case, will write

the file to the local cached copy; when the file is closed, the AFS client

will force the writes to the server, as per the protocol. NFS will buffer

writes in client memory, perhaps forcing some blocks to the server due

to client-side memory pressure, but definitely writing them to the server

when the file is closed, to preserve NFS flush-on-close consistency. You

might think AFS would be slower here, because it writes all data to local

disk. However, realize that it is writing to a local file system; those writes

are first committed to the page cache, and only later (in the background)

to disk, and thus AFS reaps the benefits of the client-side OS memory

caching infrastructure to improve performance.

Fourth, we note that AFS performs worse on a sequential file over-

write (Workload 10). Thus far, we have assumed that the workloads that

write are also creating a new file; in this case, the file exists, and is then

over-written. Overwrite can be a particularly bad case for AFS, because

the client first fetches the old file in its entirety, only to subsequently over-

write it. NFS, in contrast, will simply overwrite blocks and thus avoid the

initial (useless) read

1

.

Finally, workloads that access a small subset of data within large files



perform much better on NFS than AFS (Workloads 7, 11). In these cases,

the AFS protocol fetches the entire file when the file is opened; unfortu-

nately, only a small read or write is performed. Even worse, if the file is

modified, the entire file is written back to the server, doubling the per-

formance impact. NFS, as a block-based protocol, performs I/O that is

proportional to the size of the read or write.

Overall, we see that NFS and AFS make different assumptions and not

surprisingly realize different performance outcomes as a result. Whether

these differences matter is, as always, a question of workload.

49.8 AFS: Other Improvements

Like we saw with the introduction of Berkeley FFS (which added sym-

bolic links and a number of other features), the designers of AFS took the

opportunity when building their system to add a number of features that

made the system easier to use and manage. For example, AFS provides a

true global namespace to clients, thus ensuring that all files were named

the same way on all client machines. NFS, in contrast, allows each client

to mount NFS servers in any way that they please, and thus only by con-

vention (and great administrative effort) would files be named similarly

across clients.

1

We assume here that NFS reads are block-sized and block-aligned; if they were not, the



NFS client would also have to read the block first. We also assume the file was not opened

with the O TRUNC flag; if it had been, the initial open in AFS would not fetch the soon to be

truncated file’s contents.

O

PERATING



S

YSTEMS


[V

ERSION


0.80]

WWW


.

OSTEP


.

ORG



T

HE

A



NDREW

F

ILE



S

YSTEM


(AFS)

585


A

SIDE


T


Download 3,96 Mb.

Do'stlaringiz bilan baham:
1   ...   374   375   376   377   378   379   380   381   ...   384




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish