CS 438, CSE 425, ECE 438 Communication Networks - PowerPoint PPT Presentation

1 / 46
About This Presentation
Title:

CS 438, CSE 425, ECE 438 Communication Networks

Description:

( This includes weekends, breaks, or holidays. ... host packet delivery. Data Link: ... SMTP Simple Mail Transfer Protocol. NTP - Network Time Protocol ... – PowerPoint PPT presentation

Number of Views:158
Avg rating:3.0/5.0
Slides: 47
Provided by: rob90
Category:

less

Transcript and Presenter's Notes

Title: CS 438, CSE 425, ECE 438 Communication Networks


1
CS 438, CSE 425, ECE 438 Communication Networks
  • Jennifer C. Hou
  • Constantine Polychronopoulos
  • Department of Computer Science
  • Department of Electrical and Computer
    Engineering

2
Course Information
  • Instructor
  • Prof. Jennifer C. Hou (August 25 October 27)
  • 3112 SC, 265-6329, jhou_at_cs.uiuc.edu
  • Office hours 1100am-1230pm W and
    1100am-1200pm F
  • Prof. Constantaine Polychronopoulos (October 28
    December 18)
  • 463 CSL, 244-4144, cdp_at_csrd.uiuc.edu
  • Office hours 830-1000am M and 900-1000am W
  • Class TAs
  • Mitesh Patel (cs438ta1_at_cs.uiuc.edu, 0226 SC,
    1100am-1245pm Tu, 330-445pm Th)
  • Troy Becicka (cs438ta2_at_cs.uiuc.edu, 0226 SC,
    1220-150pm M and 100-230pm Tu)
  • Class Webpage
  • http//www-courses.cs.uiuc.edu/cs438/
  • Class News group
  • uiuc.class.cs438

3
Prerequisites
  • C Programming
  • Preferably Unix
  • Probability and Statistics (Math 461, 463, or ECE
    413)
  • Basic Computer Architecture (CS231 or ECE290)
  • Operating Systems (notion of processes/threads,
    interprocess communication, synchronization and
    mutual exclusion)

4
Course Contents
  • Overview (1)
  • UNIX network programming (2)
  • Performance evaluation probability and queueing
    models (5)
  • Application layer HTTP, FTP, SMTP, DNS (4) more
    socket programming (4)
  • Transport layer UDP/TCP, TCP congestion/error
    control, multiplexing, QoS (6)
  • Network layer circuit packet switching,
    internetworking, routing, multicast, queue
    management (12)
  • Direct link networks framing, error detection,
    reliable transmission (4)
  • Advanced topics security, overlay networks, p2p
    networks (4).

5
Textbook
  • Larry L. Peterson and Bruce S. Davie, Computer
    Networks A Systems Approach, 3rd Edition, Morgan
    Kaufmann Publisher
  • W. Richard Stevens et al., Unix Network
    Programming, Volume 1 The Sockets Networking
    API, 3rd Edition, Addison Wesley (2nd Edition,
    Prentice Hall).
  • Selected book chapters will be handed out as
    needed.

6
Grading Policy
  • Homework     20
  • 7 homework assignments (20 evenly distributed
    among 6 sets the lowest score is dropped)
  • Mid-term Exam 20
  • October 27 evening exam
  • Programming Projects 35
  • 3 programming projects (based on UNIX network
    programming, 5, 8, 14)
  • 1 modeling project (8)
  • Final Exam 25

7
Homework and Projects
  • Homeworks
  • Due by 1050am on the due date.
  • No late homework sets except under extremely rare
    non-academic circumstances.
  • Solution will be posted on the due date.
  • Projects
  • Due by 1159pm CST on the due date.
  • A grace period of 48 hours without any penalty.
    (This includes weekends, breaks, or holidays.)
  • 2 penalty for each hour after the grace period,
    up to a maximum of 24 hours.

8
Homework and Projects
  • Projects
  • 100 penalty beyond the maximum allowed latency.
  • No questions will be answered in/after the grace
    period.
  • An anti-cheating program (MOSS) will be used to
    check similarity of MPs in terms of syntax and
    semantics.
  • On first offense, 100 penalty on second
    offense, F with no permission to drop. Other
    penalties may also be imposed by the University.

9
Academic Honesty
  • Your work in this class must be your own.
  • If students are found to have collaborated
    excessively or to have blatantly cheated (e.g.,
    by copying or sharing answers during an
    examination or sharing code for the project), all
    involved will at a minimum receive grades of 0
    for the first infraction.
  • Further infractions will result in failure in the
    course and/or recommendation for dismissal from
    the university.

10
One Unit Students
  • Graduate students MAY take an extra quarter unit
    project in conjunction with this class
  • Graduate students
  • Have to carry out one more programming MP on
    implementing port knocking with IP tables
    (network filters) in Linux.
  • Undergraduates may not take this project course

11
Course Objectives
  • At the end of the semester, you should be able to
  • Identify the problems that arise in networked
    communication
  • Explain the advantages and disadvantages of
    existing solutions to these problems in the
    context of different networking regimes
  • Understand the implications of a given solution
    for performance in various networking regimes
  • Evaluate novel approaches to these problems

12
Programming Objectives
  • At the end of the semester, you should be able to
  • Identify and describe the purpose of each
    component of the TCP/IP protocol suite
  • Develop solid client-server applications using
    TCP/IP
  • Understand the impact of trends in network
    hardware on network software issues

13
Network Overview
  • What must a network provide?
  • Connectivity
  • Cost-effective resource sharing
  • Functionality
  • Performance (in terms of delay and bandwidth)
  • How are networks designed and built?
  • Layering
  • Protocols
  • Standards

14
Different Perspective
  • Network users
  • Services that their applications need
  • Guarantee that each message sent will be
    delivered without error within a certain amount
    of time
  • Network designers
  • Cost-effective design
  • Network resources are efficiently utilized and
    fairly allocated to different users
  • Network providers
  • System that is easy to administer and manage
  • Faults can be easily isolated and it is easy to
    account for usage

15
Connectivity
  • Building Block
  • Links coax cable, optical fiber,
  • Nodes workstations, routers,
  • Links
  • Point-to-point
  • Multiple access

16
Indirect Connectivity
  • Switched Networks
  • Internetworks
  • Recursive definition of a network
  • Two or more nodes connected by a physical link
  • Two or more networks connected by one or more
    nodes

17
Addressing
  • Addressing
  • Unique byte-string used to indicate which node is
    the target of communication
  • Routing
  • The process of determining how to forward
    messages toward the destination node based on its
    address
  • Types of Addresses
  • Unicast node-specific
  • Broadcast all nodes on the network
  • Multicast subset of nodes on the network

18
Effects of Indirect Connectivity
  • Nodes receive data on one link and forward it
    onto the next -gt switching network
  • Circuit Switching
  • Telephone
  • Stream-based (dedicated circuit)
  • Links reserved for use by communication channel
  • Send/receive bit stream at constant rate
  • Packet Switching
  • Internet
  • Message-based (store-and-forward)
  • Links used dynamically
  • Admission policies and other traffic determine
    bandwidth

19
Cost-Effective Sharing of Resources
  • Physical links and switches must be shared among
    many users
  • Common multiplexing strategies
  • (Synchronous) time-division multiplexing (TDM)
  • Frequency-division multiplexing (FDM)

20
Statistical Multiplexing
  • Statistical Multiplexing (SM)
  • On-demand time-division multiplexing
  • Scheduled on a per-packet basis
  • Packets from different sources are interleaved
  • Uses upper bounds to limit transmission
  • Queue size determines capacity per source

21
Statistical Multiplexing in a Switch
  • Packets buffered in switch until forwarded
  • Selection of next packet depends on policy
  • How do we make these decisions in a fair manner?
    Round Robin? FIFO?
  • How should the switch handle congestion?

22
Functionality
  • Support For Common Services
  • Goal
  • Meaningful communication between hosts on a
    network
  • Idea
  • Common services simplify the role of applications
  • Hide the complexity of the network without overly
    constraining the application designer
  • Semantics and interface depend on applications
  • Request/reply FTP, HTTP, Digital Library
  • Message stream video-on-demand, video
    conferencing

23
Abstraction through Layering
  • Abstract system into layers
  • Decompose the problem of building a network into
    manageable components
  • Each layer provides some functionality
  • Modular design provides flexibility
  • Modify layer independently
  • Allows alternative abstractions

24
Protocols
  • Definition
  • A protocol is an abstract object that makes up
    the layers of a network system
  • A protocol provides a communication service that
    higher-layer objects use to exchange messages
  • Service interface
  • To objects on the same computer that want to use
    its communication services
  • Peer interface
  • To its counterpart on a different machine. peers
    communicate using the services of lower-level
    protocols

25
Interfaces
Host 1
Host 2
26
Terminology
  • Term protocol is overloaded
  • specification of peer-to-peer interface
  • module that implements this interface
  • Protocol
  • Specifies the format of data in messages.
  • Specifies the sequence of messages to be
    exchanged and the action to be taken upon receipt
    of messages.

27
Layering Concepts
  • Encapsulation
  • Higher layer protocols create messages and send
    them via the lower layer protocols
  • These messages are treated as data by the
    lower-level protocol
  • Higher-layer protocol adds its own control
    information in the form of headers or trailers
  •  Multiplexing and Demultiplexing
  • Use protocol keys in the header to determine
    correct upper-layer protocol

28
Encapsulation
29
OSI Architecture
  • Open Systems Interconnect (OSI) Architecture
  • International Standards Organization (ISO)
  • International Telecommunications Union (ITU,
    formerly CCITT)
  • X dot series X.25, X.400, X.500
  • Primarily a reference model

30
OSI Protocol Stack
  • Application Application specific protocols
  • Presentation Format of exchanged data
  • Session Name space for connection mgmt
  • Transport Process-to-process channel
  • Network Host-to-host packet delivery
  • Data Link Framing of data bits
  • Physical Transmission of raw bits

Application
Presentation
Session
Transport
Network
Data Link
Physical
  • Converts the unreliable bit pipe provided
  • by the physical layer into a virtual
    communication
  • link for sending packets error free.

31
OSI Protocol Stack
Application
Application
Host User-Level
Presentation
Presentation
Session
Session
Router
Transport
Transport
Network
Network
Network
Host OS Kernel
Data Link
Data Link
Data Link
Physical
Physical
Physical
32
OSI Layered Protocol
Message Sent
Message Received
Application
Presentation
Session
OSI Layered Protocol Model
Transport
Network
Data link
Physical
Communication Channel
33
Internet Architecture
  • Internet Architecture (TCP/IP)
  • Developed with ARPANET and NSFNET
  • Internet Engineering Task Force (IETF)
  • Culture implement, then standardize
  • OSI culture standardize, then implement
  • Popular with release of Berkeley Software
    Distribution (BSD) Unix i.e., frees software
  • Standard suggestions debated publicly through
    requests for comments (RFCs)
  • We reject kings, presidents, and voting. We
    believe in rough consensus and running code.
    David Clark

34
Internet Architecture Hourglass Design
FTP
TFTP
NV
HTTP
TCP
UDP
IP
Modem
ATM
FDDI
Ethernet
35
Message Encapsulation TCP Over Ethernet
36
Internet Architecture
  • Features
  • No strict layering
  • Hourglass shape IP is the focal point

37
Protocol Acronyms
  • (T)FTP - (Trivial) File Transfer Protocol
  • HTTP - HyperText Transport Protocol
  • NV - Network Video
  • SMTP Simple Mail Transfer Protocol
  • NTP - Network Time Protocol
  • TCP - Transmission Control Protocol
  • UDP - User Datagram Protocol
  • IP - Internet Protocol
  • FDDI - Fiber Distributed Data Interface
  • ATM - Asynchronous Transfer Mode

38
Summary
  • Goal
  • Understanding of computer network functionality,
    with experience building and using computer
    networks
  • Steps
  • Identify what concepts we expect from a network
  • Define a layered architecture
  • Implement network protocols and application
    programs

39
Performance
  • ... and to do so while delivering good
    performance.
  • Bandwidth/throughput
  • Data transmitted per unit time
  • Example 10 Mbps
  • Link bandwidth vs. end-to-end bandwidth
  • Notation
  • KB 210 bytes
  • Mbps 106 bits per second

40
Performance
  • Latency (Lt)
  • Propagation delay the time it takes for the
    first bit of a message to reach the destination.
  • Processing delay the time it takes for the OS to
    process/send/ receive the message.
  • Queueing delay the time it takes a message to be
    queued either at end hosts or intermediate nodes
    waiting for transmission.
  • Data transfer rate (Tr)
  • packet delay Lt packet size / Tr

41
Performance Notes
  • Speed of Light
  • 3.0 x 108 meters/second in a vacuum
  • 2.3 x 108 meters/second in a cable
  • 2.0 x 108 meters/second in a fiber
  • Comments
  • No queueing delays in a direct link
  • Bandwidth is not relevant if size 1bit
  • Software overhead can dominate when distance is
    small
  • Key Point
  • Latency dominates small transmissions
  • Bandwidth dominates large

42
Delay x Bandwidth Product
  • channel pipe
  • delay length
  • bandwidth area of a cross section
  • bandwidth x delay product volume

43
Delay x Bandwidth Product
  • Example Transcontinental channel
  • BW 45 Mbps
  • delay 50ms
  • bandwidth x delay product
  • (50 x 103 sec) x (45 x 106 bits/sec)
  • 2.25 x 106 bits
  • Bandwidth x delay product
  • How many bits the sender must transmit before the
    first bit arrives at the receiver if the sender
    keeps the pipe full
  • Takes another one-way latency to receive a
    response from the receiver

44
Bandwidth vs. Latency
  • Relative importance
  • 1-byte Latency bound
  • 1ms vs 100ms latency dominates 1Mbps vs 100Mbps
    BW
  • 25MB Bandwidth bound
  • 1Mbps vs 100Mbps BW dominates 1ms vs 100ms latency

45
Bandwidth vs. Latency
  • Infinite bandwidth
  • RTT dominates
  • Throughput TransferSize / TransferTime
  • TransferTime RTT 1/Bandwidth x TransferSize
  • Its all relative
  • 1-MB file to 1-Gbps link looks like a 1-KB packet
    to 1-Mbps link

46
Assignments
  • Homework 1
  • Due September 8 at 1050am.
  • Project 1
  • Due Friday September 10 at 1159pm.
Write a Comment
User Comments (0)
About PowerShow.com