Transcript ICOM 6115

ICOM 6115 – Computer Networks
and the WWW
Manuel Rodriguez-Martinez, Ph.D.
Lecture 3
ICOM 6115
©Manuel Rodriguez-Martinez
Lecture Objectives
• Close some gaps from Hardware Lecture
• Understand the Architecture of Networking
Software
• Client – Server model for communications
• Design Principles
– Layering
– Vertical and Horizontal Communication
– Finite State Machines
ICOM 6115
©Manuel Rodriguez-Martinez
Wireless Networks
• Fundamental idea: Network without wires
– Cheaper to deploy
– Less of a hassle to people
• Most successful ones: based on radio
– each host has
• Radio modem + antenna
– Access point are used to connect wired and
wireless parts
ICOM 6115
©Manuel Rodriguez-Martinez
Examples Configurations
Access Point
Fully Wireless
ICOM 6115
Wireless + Wires
©Manuel Rodriguez-Martinez
Existing technologies
• Bluetooth
– Localized connectivity (few meters)
– Bandwidth – 2Mbps
• IEEE 802.11
– LAN connectivity
– Bandwidth –
• 802.11b – 11Mbps
• 802.11a – 54Mbps
• 3G (Cellular)
– WAN
– Bandwidth – less than 1Mbps
• Centennial Flex – 144Kpbs
ICOM 6115
©Manuel Rodriguez-Martinez
Metropolitan Area Networks (MAN)
• Networks that are
– bigger than LANs
– Not as big as WANs
– Mostly dead until Cable TV became ISP
• Used to provide connectivity for cities
– Broadband Systems
• Cable and DSL are current players
• Next Big Player? : IEEE 802.16
– Wireless Local Loop (Wireless Broadband)
ICOM 6115
©Manuel Rodriguez-Martinez
Cable TV MAN (Cable Modem)
Typical Bandwidth: 128Kbps – 1Mbps
ICOM 6115
©Manuel Rodriguez-Martinez
Wireless Local Loop (IEEE 802.16)
Bandwidth: 150Mbps, 100Mbps, or 50Mbps
ICOM 6115
©Manuel Rodriguez-Martinez
Future Trends: Home Area Networks
Intelligent Home
High Speed Line
Home
Wireless
LAN
ICOM 6115
©Manuel Rodriguez-Martinez
Design Issues for Networking Software
• What are the programming models?
• What are communications protocols?
• What are the principles that guide
protocols design?
• What is the impact of hardware
characteristics on networking software
• What are the performance trade-offs?
• What is the operating systems support for
networking?
ICOM 6115
©Manuel Rodriguez-Martinez
Client-Server Model
• Dominant paradigm for programming networked
application
• Client application
– Used by the user to obtain a given service from the
network
• Web browser, E-mail, News, SSH client (Open SSH)
• Server Application
– Provides a well-defined service
• Data or computation service
• Web Server, Time server, Parallel Machine, SSH Server
ICOM 6115
©Manuel Rodriguez-Martinez
Client-Server Interaction
Req
Reply
Web
Server
Web Surfers
ICOM 6115
©Manuel Rodriguez-Martinez
Request-Reply Interaction
• Client requests a given data or service
• Server replies with either
– Requested data or service
– Error indication
ICOM 6115
©Manuel Rodriguez-Martinez
Peer-to-Peer Model
• Old and New model
– Existed since the early 70’s
• Distributed Databases
– Rediscovered in the 90’s
• Napster
• Applications can act as both client and
server
– Get data from some site
– Serve data to others
ICOM 6115
©Manuel Rodriguez-Martinez
Peer-to-Peer Interaction
Anyone can be a server and a client (dual role)
ICOM 6115
©Manuel Rodriguez-Martinez
Peer-to-Peer Exchange
ICOM 6115
©Manuel Rodriguez-Martinez
Peer-to-Peer tend branch out
ICOM 6115
©Manuel Rodriguez-Martinez
Client-Server vs. P2P
• Client-Server
– simpler
– highly scalable
– Fast
– But covers little of the network
• P2P
– Can access more sites
– More complex to program
– Can be very slow (too much branching out)
• Scalability problems
ICOM 6115
©Manuel Rodriguez-Martinez
Networking Protocols
• Networking protocol
– a set of rules, data formats and algorithms
that govern a given communications process
Ex.: Generic Request-Reply protocol scheme
ICOM 6115
©Manuel Rodriguez-Martinez
Protocol Design Principles
• Use Layering to simplify design and
implementation
• Understand the type of Service
– Connection vs. connectionless
– Best-effort vs. Guaranteed services
• QoS and Differentiated Services
• Understand the performance characteristics of
network
– Bandwidth, throughput, delay, delay x bandwidth
• Develop a sound Mathematical model
– Finite State Machines, Graph and Queuing Theory
ICOM 6115
©Manuel Rodriguez-Martinez
Protocol Layering
• Divide the problem into well-defined subproblems and solve each one
– Divide and Conquer
• Organize solutions into layers of services
– Protocol Stack
• Each layer must solve a well-defined issue
– Data Link – deals with moving packets
between network cards.
– Network Layer – deals with moving packets
between hosts (possibly on different LANs)
ICOM 6115
©Manuel Rodriguez-Martinez
Example: TCP/IP Protocol Stack
Application Layer
Transport Layer
FTP
SSH
TCP
UDP
Network Layer
IP
Data Link Layer
Ethernet
Physical Layer
ICOM 6115
Fiber
HTTP
PPP
Cooper
©Manuel Rodriguez-Martinez
Air
Service Primitives
• Primitives are the set of operations
provided by a given layer
– Similar to methods in a class
– Abstract the what from the how?
– Modular Design
• Can change implementation of primitives
• Primitives form the interface for interaction
between layers
• Principle of Vertical Communication
ICOM 6115
©Manuel Rodriguez-Martinez
Vertical Communication
ICOM 6115
©Manuel Rodriguez-Martinez
Data Encapsulation
• Packets have
– Header – control information
• Source, destination, flags
– Trailer (optional) – more control information
– Payload – space where the data transmitted
by the packet is held
Header
Payload
Packet Organization
ICOM 6115
©Manuel Rodriguez-Martinez
Trailer
Data Encapsulation
• The packet for one layer becomes the
payload in the packet of the lower layer.
– Sometimes more than packet might be
needed at lower layer
– Lower layers should not care about structure
of payload
– Not 100% true
• Some routers inspect payload
– Security
– Differentiated services
ICOM 6115
©Manuel Rodriguez-Martinez
Encapsulation and De-capsulation
Sender
SSH
TCP
IP
802.11
Bit Pipe
ICOM 6115
©Manuel Rodriguez-Martinez
Receiver
More on Encapsulation
• Sometimes a packet at layer N won’t fit on
one packet at the lower layer
– Must be broken and re-assembled at the
destination
• Horizontal Communication
– The packet sent by a given layer X should be
understood only by the layer X at the receiver
ICOM 6115
©Manuel Rodriguez-Martinez
More on Encapsulation
ICOM 6115
©Manuel Rodriguez-Martinez