260 likes | 275 Views
Learn about network concepts, bandwidth vs. latency, protocols, and encodings. Understand OSI model, protocols, and signaling components in CSE331.
E N D
CSE331:Introduction to Networksand Security Lecture 2 Fall 2002
Announcements • HW1 is due Friday • Homework and lectures are available only insideupenn.edu domain • CSE331 newsgroup: upenn.cis.cse331 CSE331 Fall 2002
Recap • General network concepts • Nodes and links • Design goals • Connectivity • Resource sharing • Functionality • Performance • Direct link networks • Bandwidth (bits/sec) • Latency = prop. delay + transmit + queue CSE331 Fall 2002
Bandwidth vs. Latency • Which is the better deal: • Improve your bandwidth from 1 Mbps to 100 Mbps, or • Improve your RTT from 100 ms to 1 ms? • The answer depends on what you need to send. CSE331 Fall 2002
Latency Bound Transmit Time 1 Mbps 8 s 100 Mbps .08 s Perceived Latency100 ms 1 ms 1 Mbps 100.008 ms 1.008 ms 100 Mbps 100.00008 ms 1.00008 ms 99% 99% .008%.8% • Send 1 byte CSE331 Fall 2002
Bandwidth Bound Perceived Latency 100 ms 1 ms 1 Mbps 210.1 sec 210.001 sec 100 Mbps 21.1 sec 21.001 sec .05% .5% 90% 90% Transmit Time 1 Mbps 3.5 min 100 Mbps 21 sec • Send 25 MB CSE331 Fall 2002
Tradeoffs • RTT from Penn to Stanford is approx. 100ms • 800 MHz workstation • 80 million cycles elapsed in that time • Data compression • Trades machine cycles for bandwidth • (Question: Why is RTT important?) CSE331 Fall 2002
Network Architecture • Need a way to deal with the complex requirements of a network • Use abstraction to separate concerns • Decompose problem • Modular changes • Protocol Layers CSE331 Fall 2002
Protocols • A protocol is a specification of an interface between modules (often on different machines) • Sometimes “protocol” is used to mean the implementation of the specification. • Examples? CSE331 Fall 2002
Interprocess communication Application Application Central Application Application Zeta Saul Application Application Eniac CSE331 Fall 2002
Example Protocol Stack Application Programs Process-to-Process Channels Host-to-Host Connectivity Hardware Request / Reply Channel Message Stream Channel CSE331 Fall 2002
Protocol Interfaces • Service Interfaces • Communicate up and down the stack • Peer Interfaces • Communicate to counterpart on another host High-level Object High-level Object Service interface Service Interface Protocol Protocol Peer-to-peer interface Host #2 Host #1 CSE331 Fall 2002
Example Protocol Graph Host 1 Host 2 File App Video App File App Video App RRP MSP RRP MSP HHP HHP CSE331 Fall 2002
Encapsulation RRP DATA RRP DATA HHP RRP DATA Host 1 Host 2 File App Video App File App Video App DATA DATA RRP MSP RRP MSP HHP HHP CSE331 Fall 2002
Open Systems Interconnection (OSI) End Host Reference model – not actual implementation. Application Transmits messages (e.g. FTP or HTTP) Presentation Data format issues (e.g. big- vs. little-endian) Session Manages multiple streams of data Transport Process to process protocols Network Routes packets among nodes in network Data Link Packages bit streams into frames Physical Transmits raw bits over link CSE331 Fall 2002
Open Systems Interconnection (OSI) End Host End Host Application Application Presentation Presentation Session Session Transport Transport Nodes in network Network Network Network Network Data Link Data Link Data Link Data Link Physical Physical Physical Physical CSE331 Fall 2002
Internet Protocol Graph FTP HTTP NV TFTP UDP TCP IP Ethernet ATM FDDI CSE331 Fall 2002
Problem: Physical connection • Transmitting signals • Encoding & decoding bits • Error detection and correction • Reliable transmission CSE331 Fall 2002
Signaling Components Signaling Components Host Host Network Adapter signal Network Adapter Network adapters encode streams of bits into signals. Simplification: Assume two discrete signals—high and low. Practice: Two different voltages on copper link. CSE331 Fall 2002
Bit Encodings 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 Bits: NRZ • Non-return to zero • 1 = high, 0 = low • Problem: Can lead to long sequences of high or low signals. CSE331 Fall 2002
NRZ Problem 1: baseline wander 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 • Receivers keeps average signal seen so far • Significantly higher than average = 1 • Significantly lower than average = 0 • Long periods of high/low changes average • Makes it harder to detect significant changes Bits: NRZ CSE331 Fall 2002
NRZ Problem 2: clock recovery 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 • Sender & Receiver are driven by clocks • Must keep clocks synchronized to recover bits • When signal changes, can resynchronize clocks • Long periods of high/low lead to clock drift Bits: NRZ CSE331 Fall 2002
NRZI: Non-return 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 • Transition from current signal to encode “1” • Stay at current signal to encode “0” • Does not help for consecutive 0’s Bits: NRZ NRZI CSE331 Fall 2002
Manchester Encoding 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 • Exclusive-OR of clock and NRZ encoding • Doubles rate at which signal transitions are made – less time for receiver to detect changes Bits: NRZ Clock Manchester CSE331 Fall 2002
Efficiency • Bit rate vs. Baud rate • NRZ and NRZI: bit rate = baud rate = 100% • Suffer from baseline wander and clock drift • Manchester: bit rate = ½ baud rate = 50% • Prevents baseline wander and clock drift • Can you do better? • (Question: can bit rate exceed baud rate?) CSE331 Fall 2002
4B/5B • Encode 4 bits of data using 5 bits • Choose codes to avoid long sequences of 0’s • Send 5 bit sequences using NRZI • 80% efficiency • Encoding • No more than one leading 0 • No more than two trailing 0’s CSE331 Fall 2002