Introduction to Networking and Distributed Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction to Networking and Distributed Systems

Description:

Review of Basic principles: layers, protocols, etc... TCP/IP and the Internet ... rabbits. Ik hou. van. konijnen. L: Dutch. J'aime. les. lapins. Ik hou. van ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 39
Provided by: GregoryC9
Category:

less

Transcript and Presenter's Notes

Title: Introduction to Networking and Distributed Systems


1
Introduction to Networking and Distributed Systems
  • Operating Systems
  • Fall 2002

2
Overview
  • Intro to Networking
  • Review of Basic principles
  • layers, protocols, etc
  • TCP/IP and the Internet
  • Implementation issues
  • Intro to Distributed systems
  • client/server

3
Communication in everyday life
Jaime les lapins
I like rabbits
L Dutch
L Dutch
Ik hou van konijnen
Ik hou van konijnen
Fax
Fax
L Dutch
L Dutch
Ik hou van konijnen
Ik hou van konijnen
4
Computer based communication
mail
mail
message
mail
mail
encode
encode
message
rep
5
Computer based communication
mail
mail
encode
encode
message
rep
mail
mail
encode
encode
packets
packets
mess
rep
pkt
age
rep
pkt
6
Computer based communication
mail
mail
encode
encode
packets
packets
route
route
route
message
rep
pkt
addr
7
Computer based communication
mail
mail
encode
encode
packets
packets
route
route
route
error
error
error
message
rep
pkt
addr
ECC
8
Layered organization
  • Computer networks are structured as layer
    (protocol) stacks
  • Each layer provides services to the layer above
  • Layers communicate by protocols

service
service
protocol
API
API
9
Protocols
  • Protocol is a collection of message formats and
    their interpretation needed to implement the
    layer service
  • format headerdata
  • headers convey the protocol specific information

10
Standards and openness
  • Protocols must be standardized for
    interoperability
  • Layer APIs must be standardized for portability
  • Existing standards
  • ISO OSI Layered model (eight-layer model)
  • TCP/IP is a de-facto model of the Internet

11
ISO OSI Layered model
Application
Application
Presentation
Presentation
Session
Session
Transport
Transport
Network
Network
Data Link
Data Link
Physical
Physical
12
Lower OSI Layers
  • Physical layer
  • Voltages to represent 0/1, how many bits per
    second can be sent, simplex/duplex, hardware
  • Data Link layer
  • Grouping bits into frames,
  • point-to-point reliability, error
    detection/correction

13
Network and Transport
  • Network layer
  • Getting data from one host to another
  • Routing, addressing, fragmentation/reassembly
  • Transport layer
  • End-to-end application connectivity
  • Reliable transport connection
  • Messages are not lost and delivered in the order
    they were sent
  • Transmission Control Protocol (TCP)

14
Session and Presentation
  • Session layer
  • Enhanced transport layer session control
  • Presentation layer
  • Message structure e.g., records
  • Data representation
  • compression and encryption

15
Application Layer
  • General-purpose high level services and
    abstractions
  • File transfer (FTP)
  • Hyper-text transfer (HTTP)
  • Remote Procedure Call (RPC)
  • Network File System (NFS)
  • Object Request Brokers
  • CORBA, Java RMI
  • Etc...

16
TCP/IP Protocol Suite
TCP/IP protocol suite
OSI model
Application
Application
Presentation
Session
TCP/UDP
OS
Transport
Network
IP
Network access
Datalink
Hardware
Physical
Physical
17
Physical Networks
  • Each computer is directly attached to some
    physical network
  • Network Interface Cards (NIC)cables
  • Usually limited geographical scale (Local Area
    NetworkLAN)
  • MAN, WAN
  • supports routing, addressing, network access
    within its boundaries
  • LAN Ethernet (10Mbit/sec, 100Mbit/sec), Token
    ring, Fibre channel, etc...

18
Physical networks characteristics
  • Bandwidth Number of bits per second
  • Latency The time it takes to send a single bit
  • Ethernet
  • Shared bus bandwidth 10Mbit/sec
  • Switched Ethernet bw 100Mbit/sec

19
Ethernet LAN
  • Shared bus
  • Each NIC has a unique address
  • Messages are broadcast
  • If collision occurs, wait for a randomly chosen
    time period and retry

Maximum Transfer Unit (MTU) 1536 Bytes
20
Internet protocol (IP)
  • Creates an illusion of a single physical network
    over a collection of heterogeneous LANs
  • Global addressing, routing
  • Fragmentation, reassembly to overcome differences
    in the MTU sizes
  • Architecture LANs interconnected by routers
    (gateways)

21
Internet Protocol (IP)
  • Connectionless
  • Each packet is routed independently based on the
    IP address in the header
  • Connections are supported by the transport layer
    (TCP)

22
The Internet
23
The Internet
24
TCP/IP transport protocols
  • Connectivity between application end-points
  • Application end-point is uniquely identified by
    (IP address,port number)
  • Transmission Control Protocol (TCP)
  • Reliable end-to-end byte stream,
  • connection oriented
  • User Datagram Protocol (UDP)
  • Unreliable, connectionless

25
Implementation issues
  • Reliability
  • Flow control
  • Routing

26
Reliability
  • Physical networks are inherently unreliable
  • Messages can be both corrupted and lost
  • Dealing with corruption
  • Error detection, error correction
  • Dealing with message loss
  • retransmission

27
Error detection/correction
  • Parity bit is the simplest error detection
    technique
  • Parity bit is the binary sum of the message bits
  • Detects corruption of a single bit
  • More parity bits are needed for error correction

28
Error correction
  • Forward Error Correction (FEC)
  • A bit at position holds parity of bits
    whose positions includes in its binary
    representation
  • The positions of wrong parity bits yield the
    position of the erroneous bit
  • Corrects a single bit error
  • In practice more sophisticated techniques are
    used (e.g., CRC)

29
Dealing with message loss
  • Timeouts
  • Send a message, wait for an acknowledgment (ACK)
  • If an acknowledgment does not arrive during a
    predefined timeout period retransmit the message
  • If ack is lost a message can be sent more than
    once!
  • Negative acknowledgments

30
Flow control
  • Sender and received have limited buffer space to
    hold outgoing and incoming messages
  • Flow control is needed to avoid buffer overflow
  • The simplest technique
  • The receiver buffer size in known in advance
  • Sender never sends a new message until it knows
    that the receiver has enough space to accommodate
    it

31
Routing
  • Each router holds a table indicating the next
    router (hop) on the way to each destination
  • The next hop router must reside on the same
    physical network (LAN)
  • Routers exchange messages to update their routing
    tables
  • Protocols Distance Vector (Bellman-Ford), Open
    Shortest Path First (OSPF)

32
Distributed Systems
  • A distributed system (middleware) is an
    implementation of an application level service
  • Distributed systems support high level
    abstractions
  • Remote Procedure Call (RPC) everything looks
    like a local function call
  • Network File System (NFS) everything looks like
    a local file
  • Object Based systems Everything looks like a
    local object

33
Client/Server Paradigm
  • Distributed systems are usually structured
    according to the client/server model
  • A server implements a service
  • Clients request service from the server using a
    pre-defined protocol
  • WWW, FTP, Telnet, NFS are all client/server based

34
Internet Well-known services
  • Well-known services must be supported by all the
    computers connected to the Internet
  • Ftp, telnet, rlogin, nfs
  • Domain Name Service (DNS)
  • Symbolic name lt-gt IP address
  • Uniquely identified by the port number of the
    server
  • HTTP 80, FTP 20

35
RPC
  • A server registers a procedure implementation
  • A client calls a function which looks local to
    the client
  • E.g., add(a,b)
  • The RPC implementation packs (marshals) the
    function name and parameter values into a message
    and sends it to the server

36
RPC
  • Server accepts the message, unpacks (unmarshals)
    parameters and calls the local function
  • Return values is then marshaled into a message
    and sent back to the client
  • Marshaling/unmarshaling must take into account
    differences in data representation

37
RPC
  • Transport both TCP and UDP
  • Data types atomic types and non-recursive
    structures
  • Pointers are not supported
  • Complex memory objects (e.g., linked lists) are
    not supported
  • NFS is built on top of RPC

38
Next
  • Storage Area Networks and
  • Modern storage architectures
Write a Comment
User Comments (0)
About PowerShow.com