Content
- Protocol & Protocol Stack
- Basics of Network
- Internet Architecture
- Layering
- Protocol
- Interfaces
- Encapsulation
- Multiplexing
- Interaction of Applications
- Network Switching Schemes
- Circuit Switching
- Packet Switching
- Multiplexing
Protocol & Protocol Stack
Basics of Network
- Network
- Set of devices
- End systems/hosts
- Connect by communication links & connecting devices
- Connecting devices
- Attached to at least 2 links
- Run software that forwards data
- End systems/hosts
- Communication links
- Point-to-point: connects a pair of nodes
- Guided media: wire (copper, optic fiber, ...)
- Unguided media: wireless (Satellite, ...)
- Multiple access: > 2 nodes sharing a link
- Ethernet, token ring, FDDI, ...
- Wi-Fi, Bluetooth
- Point-to-point: connects a pair of nodes
- Set of devices
Internet Architecture
Layering
Each layer defines a collection of conceptually similar functions/services usually distinct from those of the other layers.
Each layer provides some services to the layer above and uses the services from the layer just below.
The abstraction hides complexity and simplifies design, testing, and implementation. Protocol is its realization.
Protocol
Each layer of the layered architecture contains one or more protocols that offer services characteristics for that layer.
Different protocols are used to accomplish different communication tasks.
// Internet Protocol Stack
|Application| - HTTP, SMTP, DNS, FTP, RTP, SNMP, Telnet, MSN
|Transport | - TCP, UDP, SCTP, DCCP
|Network | - IP
|Link | - WiFi, Ethernet, DSL, PPP, FDDI, Bluetooth
|Physical |
- Application
- Define dialogue discipline
- Recovery from transport failure
- Interpret meaning of data e.g. data format & coding (compression, encryption, ...)
- Provides specific functions related to an application service
- Transport
- Transfer of data between endpoints(processes)
- Network
- Routing & forwarding of data from source to destination
- Internetworking to consider packet transfer between dissimilar networks
- Link
- Groups bits into frames
- Transfer of data between adjacent nodes
- Error detection and control
- Define medium access control for multiple-access network
- Physical
- Definition & specification of physical aspects of the communication link
- Bits on the wire/physical media
Interfaces
|Layer n+1| |Layer n+1|--+-service interface
|Layer n |----peer-to-peer interface----|Layer n |__|
|Layer n-1| |Layer n-1|
- Service interface
- Operations/services offered to upper layer
- Peer-to-peer interface
- Message format of messages exchanged with pair of the same layer
- Order of messages sent/received
- Actions taken on transmision/upon receipt
Encapsulation
- See the data message from upper layer as payload
- Add headers and/or trailers carrying protocol specific information (addresses, protocol numbers, length, etc.)
- Header + Payload = Protocol Data Unit (PDU), passed to lower layer
PDU of application layer - Message
PDU of transport layer - Segment
PDU of network layer - Datagram
PDU of link layer - Frame
Multiplexing
Multiplexing allows several transmission sources to share a larger transmission capacity.
Interaction of Applications
- Client-server model: servers always on to receive requests
- Peer-to-peer model: participating hosts can serve as either client or server
Network Switching Schemes
Circuit Switching
Designed for voice e.g. telephone network.
After connection established, connection state is maintained during the entire session. Network resources along the path are reserved.
Packet Switching
Designed for data communication.
No connection setup. Network resources are not reserved. Different traffic flows share resources.
Message is broken into data pieces (packets) and transferred under store-and-forward transmission mode (receive the whole packet before putting onto the forwarding link for error checking).
- Random delay/congestion delay: queued up
- Packet loss: data corrupted; buffer full, discard packets
Multiplexing
Sharing of network resources by several traffic flows.
- Circuit switching
- Frequency-Division Multiplexing (FDM): allocate each circuit with a different frequency band
- A number of signals are carried simultaneously on the same medium by allocating to each signal a different frequency band
- Time-Division Multiplexing (TDM): each circuit gets a reserved time slot in a fixed duration (frame)
- Data from various sources are interleaved with one another; each source occupies a portion of time in the link
- Frequency-Division Multiplexing (FDM): allocate each circuit with a different frequency band
- Packet switching
- Statistical Multiplexing: on-demand time-division
multiplexing
- No preallocated time slots
- Link transmission capacity shared packet-by-packet
- Statistical Multiplexing: on-demand time-division
multiplexing
Performance
- Factors
- Transmission rate of communication link
- Distance
- Error rate
- Protocol
Latency
Latency = Transmission Delay (d_tx) +
Processing Delay (d_pr) +
Queueing Delay (d_qu) +
Propagation Delay (d_pg)
= Message Size / Transmission Rate (R) +
d_pr +
d_qu +
Distance / Speed of Signal
Transmission Rate (R): the speed for injecting/transmitting a bit into the link
Processing Delay: check bit errors; forwarding decision
Queueing Delay: time queueing at output link waiting for transmission
Propagation Delay: time for a bit to propagate from one end to another
Throughput
Throughput/Bandwidth is the rate at which bits transferred end-to-end.
Affected by protocol overhead & inefficiencies and competing traffic.
- Instantaneous throughput: rate the receiver is receiving data at a point of time
- Average throughput: rate over a long period of time
Bottleneck
Per-connection end-to-end throughput: min(Rc,Rs,R/N)
, bottleneck often Rc
or Rs
.
(if input too large & output too narrow, may cause overflow)