Title: Network Architecture
1Lecture 3
2Inter-Process Communication
- Turn host-to-host connectivity into
process-to-process communication. - Fill gap between what applications expect and
what the underlying technology provides.
3Channel protocol, a simple example
- Sender
- Receives Data and destination from Application in
Applications format - Prepares and sends packets across the network
with delivery guaranteeno guarantee about
application data quality - Receives packets from network
- Reciever
- Sends and Receives Ack(nowledgements)
- Sends Data to Application
-
4Channel Function Sending Side
- Creates packets from message-segmentation
- Marks packets alternately with 0 or 1
- Attaches address of receiver
- Sends next packet on (Ack)nowledgement
- If 1 is sent and Ack is 0, resend
- If 1 is sent and Ack is 1, send next
- Etc.
5Channel Function Receiving Side
- Receive packets
- Send Ack with 0 or 1 attached
- Strip header
- Reassemble message and send to application
6Layering
- Use abstractions to hide complexity
- Abstraction naturally lead to layering
7Layering
- Alternative abstractions at each layer
Application programs
Request/reply
Message stream
channel
channel
Host-to-host connectivity
Hardware
8Protocols
- Building blocks of a network architecture
- Provides communications service that higher level
objects use to exchange messages - Each protocol object has two different interfaces
- service interface operations on this protocol
- peer-to-peer interface messages exchanged with
peer - Term protocol is overloaded
- Abstract object
- specification of peer-to-peer interface
- module that implements this interface-different
implementations should be interoperable
9Interfaces
Host 1
Host 2
Service
High-level
High-level
interface
object
object
Protocol
Protocol
Peer-to-peer
interface
10Protocol Machinery
- Protocol Graph
- most peer-to-peer communication is indirect
- peer-to-peer is direct only at hardware level
Host 1
Host 2
Applicationemploys services of protocol stack
RPP/HHP
Asks Invokes Transmits
Digital
Digital
Video
File
Video
File
library
library
application
application
application
application
application
application
RRP
MSP
RRP
MSP
HHP
HHP
11Standards
- Enternet Engineering Task Force (IETF)
- International Standards Organization (ISO)
International Telecommunications Union (ITU) - Network Architecture-set of rules governing form
and content of a protocol graph e.g. ISO or
Internet Architecture
12Machinery (cont)
- Multiplexing and Demultiplexing (demux key)
- Encapsulation (header/body)
Host 1
Host 2
Header is a message to a peer not a lower level
protocol
Application
Application
program
program
Data
Data
RRP
RRP
RRP
Data
RRP
Data
HHP
HHP
RRP
Data
HHP
13ISO or OSI ArchitectureOSI Open Systems
Interconnection
End host
End host
Application
Application
Presentation
Presentation
Session
Session
Transport
Transport
Network
Network
Network
Network
Data link
Data link
Data link
Data link
Physical
Physical
Physical
Physical
One or more nodes
within the network
14Typical OSI Services by Layer
- Physicaltransmission of raw bits
- Data Link-transmission of framesnetwork adaptors
and OS software implements this layer - Network- routing of packets
- Transport-End host function-
- Session-ties together transport
streams-videoaudio (obsolete) - Presentation-Data format etc. (obsolete)
- Application layer-FTP, Video Conference etc.
15Internet Architecture
- Defined by Internet Engineering Task Force (IETF)
- Hourglass Design
- Application vs Application Protocol (FTP, HTTP)
16Internet architecture-another view
17Internet architecture services by layer
- Network
- Ethernetcopper, network adapter, network device
driver - Fiber Distributed Data Interface (FDDI)
- IP-specifies interconnection of multiple
networking technologies-creates single, unified
network - Transport or end-to-end protocols
- TCP reliable byte-stream channel
- UDP Unreliable datagram delivery channel
- Applications FTP, TFTP, SMATP, HTTP
183-features of Internet Architecture
- Strict layering is abandoned
- IP is the big ideaa single protocol for
interconnecting networks and providing
host-to-host connectivity - To become a standard requires a working
implementation