No Slide Title

Download Report

Transcript No Slide Title

Networking Operating Systems (CO32010)
Objectives:
2. Processes
• To discuss the advantages ofand
a distributed file system.
• To outline the different methods
of mounting remote file
scheduling
systems onto a file system structure.
• To outline practical implementations of a distributed file
1. Operating systems, especially NFS.
Systems • To show how domains can be created and managed,
especially using standard protocols, such as3.
NIS.
Distributed
7. Encryption
4.1
4.2
4.3
4.4
processing
8. NT, UNIX
and NetWare
Distributed File Systems
Active Directories
Exercises
Sample exam question
6. Routers
5. Routing
protocols
http://www.soc.napier.ac.uk/~bill/nos.html
4. Distributed
file systems
bill@napier, 2002
4.1 Distributed file system
Administration
services
Network
Mounted as
a local drive
Localized
File storage
(rather than
accessing a
remote file)
Distributed
databases
Networked file
system (NFS)
http://www.soc.napier.ac.uk/~bill/nos.html
Centralized
Configuration
(passwords, user IDs,
and so on)
bill@napier, 2002
4.2 Advantages of distributed file systems
•
•
•
•
File system mirrors the corporate structure. File systems can be
distributed over a corporate network, which might span cities, countries
or even continents. The setup of a complete network file system over a
corporation can allow the network to mirror the logical setup of the
organization, rather than its physical and geographical organization. For
example the Sales Department might be distributed around the world,
but the network in which they connect to is identical to the way that the
Sales Department is organized.
Easier to protect the access rights on file systems. In a distributed
file system it is typical to have a strong security policy on the file system,
and each file will have an owner who can define the privileges on this
file. File systems on user computers tend to have limited user security.
Increased access to single sources of information. Many users can
have access to a single source of information. Having multiple versions
of a file can cause a great deal of problems, especially if it is not know as
to which one is the most up-to-date.
Automated updates. Several copies of the same information can be
stored, and when any one of them is updated they are synchronized to
keep each of them up-to-date. Users can thus have access to a local
copy of data, rather than accessing a remote copy of it. This is called
mirroring files.
http://www.soc.napier.ac.uk/~bill/nos.html
bill@napier, 2002
4.3 Advantages of distributed file systems
•
•
•
•
•
•
Improved backup facilities. A user’s computer can be switched-off, but
their files can still be backed-up from the distributed file system.
Increased reliability. The distributed file system can have a backbone
which is constructed from reliable and robust hardware, which are
virtually 100% reliable, even when there is a power failure, or when there
is a hardware fault.
Larger file systems. In some types of distributed file systems it is
possible to build-up large file systems from a network of connected disk
drives.
Easier to administer. Administrators can easily view the complete file
system.
Interlinking of databases. Small databases can be linked together to
create large databases, which can be configured for a given application.
The future may also bring the concept of data mining, where agent
programs will search for information with a given profile by interrogating
databases on the Internet.
Limiting file access. Organizations can setup an organization file
structure, in which users can have a limited view of complete file system.
http://www.soc.napier.ac.uk/~bill/nos.html
bill@napier, 2002
4.4 Traditional file structure v. corporate structure
UNIX
NDS/
Active
Directories
\\
users
users
config
config
sales
sales
progs
progs
fred
fred
orgname
orgname
production
production
research
research
Tree
structure
UK
UKOffice
Office
bert
bert
http://www.soc.napier.ac.uk/~bill/nos.html
US
USOffice
Office
bill@napier, 2002
4.5 Flat structures
\\
\\bert
\\fred
Windows NT uses a
flat structure,
where nodes join
into a domain
\\freddy
Network
Local disk
Local disk
Local disk
Domain
Flat
structure
http://www.soc.napier.ac.uk/~bill/nos.html
bill@napier, 2002
4.6 Forest of drives v. single tree
Single
tree
Global
File system
/etc
Drives mounted
over the network
to create a single tree
/progs
/user
/sys
Network
C:
Forest of
drives
E:
D:
F:
http://www.soc.napier.ac.uk/~bill/nos.html
Drives mounted
over the network
to a forest of drives
bill@napier, 2002
4.7 NFS services protocol stack
Application
NFS
NIS
Presentation
XDR
Session
RPC
Transport
TCP
Network
IP
Data link
Ethernet/
Token Ring
Physical
http://www.soc.napier.ac.uk/~bill/nos.html
XDR defines a
common data
format for the
conversion of data
values.
RPC defines a a
number of
procedures which
can be executed on
the server, such as
WRITE, CREATE,
and so on.
RPC is stateless,
where a NFS server
waits for a client to
contact it for a client
to contact it, it then
gets a request for a
service, and sends
back the results.
bill@napier, 2002
4.8 Some RPC procedures used by NFS
No.
Procedure
Name
0
void NULL(void)
No operation
1
attrstat GETATTR(fhandle)
Get file attributes
2
attrstat SETATTR(sattrargs)
Set file attributes
6
readres READ(readargs)
Read from file
8
attrstat WRITE(writeargs)
Write to file
9
diropres CREATE(createargs)
Create file
10
stat REMOVE(diropargs)
Remove file
11
stat RENAME(renameargs)
Rename file
13
stat LINK(linkargs)
Create link to file
14
diropres MKDIR(createargs)
Create symbol link
15
stat RMDIR(diropargs)
Create directory
http://www.soc.napier.ac.uk/~bill/nos.html
bill@napier, 2002
4.9 RPC procedures and responses
NFS server
Remotely accessed
file system
RPC procedures
getattr, setattr,
read, write,
create, remove,
rename, link,
symlink, mkdir,
rmdir, readdir
Network
File system either
mounted onto a single
tree or as a forest
of drives
http://www.soc.napier.ac.uk/~bill/nos.html
RPC response
Requested data,
parameters or
status flag (such as:
NFS_OK and
NFSERR_PERM)
NFS client
bill@napier, 2002
4.10 NIS domain
#/etc/protocols
ip
0
icmp
1
ggp
3
tcp
6
Master NIS server maintains:
/etc/passwd
Domain passwords
/etc/groups
Domain groups
/etc/hosts
IP addresses and host names
/etc/rpc
RPC processes
/etc/network
Used to map IP address to networks
/etc/protocols
Known network layer protocols
/etc/services
Known transport layer protocols
IP
ICMP
GGP
TCP
Server
#/etc/groups
root::0:root
other::1:root,hpdb
bin::2:root,bin
sys::3:root,uucp
freds_grp::4:fred,fred2,fred3
Clients
NIS
Domain
#/etc/rpc
portmapper
rstatd
rusersd
nfs
ypserv
100000
100001
100002
100003
100004
portmap sunrpc
rstat rstat_svc
rusers
nfsprog
ypprog
#/etc/hosts
138.38.32.45
198.4.6.3
193.63.76.2
148.88.8.84
146.176.2.3
bath
compuserve
niss
hensa
janet
#/etc/passwd
root:FDEc6.32:1:0:Super unser:/user:/bin/csh
fred:jt.06hLdiSDaA:2:4:Fred Blogs:/user/fred:/bin/csh
fred2:jtY067SdiSFaA:3:4:Fred Smith:/user/fred2:/bin/csh
#/etc/services
ftp
21/tcp
telnet
23/tcp
smtp
25/tcp
pop3
110/tcp
http://www.soc.napier.ac.uk/~bill/nos.html
#/etc/networks
loopback
127.0.0.0
localnet
146.176.151.0
Production 146.176.142.0
bill@napier, 2002
4.11 NIS master and slave(s)
Master NIS
Server maintains:
/etc/passwd
/etc/groups
/etc/hosts
/etc/rpc
/etc/network
/etc/protocols
/etc/services
and so on.
Master sends updates to
NIS slaves
NIS
Domain
Slave NIS
server
2. Client broadcasts
an NIS request to the
domain
1. Client is
started
3. The client then binds to
the first server which
responds
Slave NIS
server
http://www.soc.napier.ac.uk/~bill/nos.html
NIS
client
bill@napier, 2002
4.12 inetd.conf – defines the network services that are started
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
# Echo, discard and daytime are used primarily for testing.
echo
stream
tcp nowait
root
internal
echo
dgram
udp wait
root
internal
discard stream
tcp nowait
root
internal
discard dgram
udp wait
root
internal
daytime stream
tcp nowait
root
internal
daytime dgram
udp wait
root
internal
time
dgram
udp wait
root
internal
#
# These are standard services.
ftp
stream
tcp nowait
root
/usr/sbin/tcpd
/usr/sbin/wu.ftpd
telnet
stream
tcp nowait
root
/usr/sbin/tcpd
/usr/sbin/in.telnetd
#
# Shell, login, exec and talk are BSD protocols.
shell
stream
tcp nowait
root
/usr/sbin/tcpd
/usr/sbin/in.rshd
login
stream
tcp nowait
root
/usr/sbin/tcpd
/usr/sbin/in.rlogind
talk
dgram
udp wait
root
/usr/sbin/tcpd
/usr/sbin/in.ntalkd
ntalk
dgram
udp wait
root
/usr/sbin/tcpd
/usr/sbin/in.ntalkd
#
# Pop mail servers
pop3
stream
tcp nowait
root
/usr/sbin/tcpd
/usr/sbin/in.pop3d
#
bootps
dgram
udp wait
root
/usr/sbin/tcpd
/usr/sbin/in.bootpd
#
finger
stream
tcp nowait
daemon /usr/sbin/tcpd
/usr/sbin/in.fingerd
systat
stream
tcp nowait
guest
/usr/sbin/tcpd
/usr/bin/ps -auwwx
http://www.soc.napier.ac.uk/~bill/nos.html
bill@napier, 2002