CS 2200 - PowerPoint PPT Presentation

1 / 89
About This Presentation
Title:

CS 2200

Description:

Ethernet (Vampire Taps) Coordination Mechanism. Carrier Sensing and ... No more vampire taps ... host name, identifier Must have a system to resolve names ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 90
Provided by: BillL161
Category:
Tags: names | vampire

less

Transcript and Presenter's Notes

Title: CS 2200


1
CS 2200
  • Networking

2
Our Road Map
Processor
Memory Hierarchy
I/O Subsystem
Parallel Systems
Networking
3
Types of Interconnections
  • Massively Parallel Processors (MPP)
  • Thousands of nodes
  • Short distances
  • Local Area Networks (LAN)
  • Hundreds of computers
  • 100s-1000s of feet
  • Traffic many to one (clients to servers)
  • Wide Area Network (WAN)
  • Thousands of computers
  • Thousands of miles
  • Scalable

4
Types of Interconnections
  • Massively Parallel Processors (MPP)
  • Tightly coupled
  • Share memory and sometimes clock
  • Local Area Networks (LAN)
  • Wide Area Network (WAN)
  • Loosely coupled
  • Do not share memory and clock
  • Each processor has its own local memory
  • Communication via networks

5
Basic Concepts
Machine A
Machine B
Each machine has the ability to send a message to
the other a.) Please send me the contents of
address x b.) Here is the contents of address
x Thus, messages must contain an extra bit.
6
Basic Concepts
Payload (32 bits)
Header (1 bit)
0
Address
0-Request 1-Reply
1
Data
  • Messages are divided into parts
  • Payload or actual data to be transferred
  • Header (or trailer) data used to control the
    message passing scheme
  • System must be designed to work well with
    operating system.
  • Multiple Processes
  • Error Handling

7
Software Steps to Send
  • Application copies data into O.S. buffer
  • Operating System
  • Calculates checksum
  • Includes checksum in header and/or trailer
  • Starts timer
  • Sends data to network interface hardware and
    tells it to send message
  • Wait...

8
Reception
  • Copy data from network hardware into operating
    system buffer
  • Calculate checksum from data
  • If calculated checksum matches included checksum
  • Send acknowledgement
  • Copy data into application space
  • Else
  • Discard message
  • Wait for resend

9
Sender...
  • If acknowledgement arrives
  • Discard copy of message in buffer
  • If timer times out first
  • Resend data
  • Restart timer

Header (2 bits) 00Request 01Reply 10Acknowledge
Request 11Acknowledge Reply
Payload Data (32 bits)
Checksum (4 bits)
10
Protocols
  • Sequence of steps performed by software to send
    and receive messages.
  • Issues
  • Endianess
  • Duplicate messages
  • Queue full
  • etc.
  • More next time...

11
There is an old network saying Bandwidth
problems can be cured with money. Latency
problems are harder because the speed of light is
fixed--you cant bribe God.
  • David Clark, MIT

12
Vocabulary Fun
  • Bandwidth
  • Time of Flight
  • Transmission Time
  • Transport Latency
  • Sender Overhead
  • Receiver Overhead

13
Diagramatically
Sender Overhead
Transmission Time
Sender
Time of Flight
Reception Time
Receiver Overhead
Receiver
Transport Latency
Total Latency
TIME
14
Questions?
15
Questions?
  • Where do you connect the network to the computer?
  • Which media are available to connect computers
    together?
  • What issues arise when connecting more than two
    computers
  • Additional practical issues?

16
Connecting the Computer
  • Connection Point
  • Memory Bus
  • I/O Bus
  • Control
  • Polling
  • Interrupts
  • Operating System Involvement

17
Connecting the Computer
  • Connection Point
  • Memory Bus MPP
  • I/O Bus LAN/WAN
  • Control
  • Polling Hybrid
  • Interrupts Approaches
  • Operating System Involvement
  • Avoid invoking O.S. in common case

18
Hierarchy of Media
  • Twisted Pair
  • Coaxial Cable
  • Fiber Optics

19
Questions?
  • So far how many computers have we connected?

20
Connecting gt 2
  • Shared Media
  • Bus
  • Ethernet (Vampire Taps)
  • Coordination Mechanism
  • Carrier Sensing and Collision Detection
  • Broadcast
  • Switched Media
  • Better utilization of bandwidth
  • Point to point

Node
Node
Node
Node
Node
Node
Switch
Node
Node
21
Its The Ring!
  • Token Ring
  • Nodes pass token from one to another
  • When you have token you can send

22
Comparison
  • Ethernet
  • CSMA/CD allows any node to talk at any time
    unless two talk at the same time
  • Efficient at low loads
  • As the number of hosts increases performance
    degrades
  • Token Ring
  • Token being passed around ring only allows node
    holding token to talk
  • Less efficient than Ethernet at low loads
  • As number of nodes increases performance slows
    but performance is predictable

23
Connection vs. Connectionless
  • Phone System
  • To make call a connection or circuit was
    connected (might be multiplexed).
  • Not a bad idea for voice
  • Connection exists whether or not anyone is
    talking.
  • Limit is number of conversations NOT amount of
    data
  • Postal System
  • Each piece of information is routed according to
    its address
  • Long messages can be broken up into pieces or
    packets (or frames).

24
Routing
  • Shared Media
  • Message goes to all nodes. Each looks at address
    to determine if they are recipient
  • Switched Media
  • Source-based routing
  • Message specifies path to destination
  • Virtual circuits
  • Temporary or permanent
  • Destination-based routing
  • Deterministic
  • Adaptive
  • Random

25
Routing Policies
  • Store and Forward
  • Wormhole
  • http//www.cc.gatech.edu/bleahy/janet/

26
Flow/Congestion Control
  • Flow Control Deals with ability of receiver to
    accept data as fast at it is being sent by
    sender. Does not involve network!
  • Congestion Control Deals with the ability of the
    network to handle/accept data all along route
    from sender to receiver

27
Congestion Control
  • Circuit switched
  • All circuits are busy
  • Packet switched
  • Deadlock
  • Reducing Congestion
  • Packet discarding!
  • Congestion Control Window used by TCP
  • Choke packets

28
Questions?
29
Ethernet Evolution
  • X_Base_Y
  • X stands for the available media bandwidth
  • Base stands for base band signaling on the medium
  • Y stands for the maximum segment length

30
Ethernet Evolution
  • 10_base_5 (1979-1985)
  • 10 Mbits/Sec with base band signaling with a
    maximum station distance of 500 meters
  • Thick shielded copper conductor used as the medium

MAU-Medium Access Unit
31
  • 10_base_2 (1985-1993)
  • Thin net, cheaper net
  • Distance to the station shrinks to 200 meters
  • No more vampire taps
  • BNC connector to connect the stations to the
    Attach Unit Interface (AUI) cables, the AUI
    cables to the medium
  • The medium is daisy-chained via the stations
    using the BNC connectors

Bayonet Neil-Concelman, or sometimes British
Naval Connector
32
  • 10_base_T (1993-1995)
  • Attach Unit Interface (AUI) is a twisted pair of
    copper wires
  • AUIs from the stations come to a hub which is a
    multiplexor/transceiver
  • Did away with the BNC connectors which were a
    source of connector problems
  • Use phone jack technology (RJ45 connectors) to
    connect AUI cables to the hub
  • Hubs are connected to other hubs using the same
    connectors (RJ45)

33
  • 10_base_T (1993-1995) continued
  • All the hubs together form the entire medium
  • All the stations in the same collision domain
  • Hub is also usually called a repeater

34
More Ethernet
  • 10BASE-F - 10BASE-F is a set of optical fiber
    medium specifications which define connectivity
    between devices.
  • 100BASE-T - 100BASE-T is a series of
    specifications that provides 100 megabit speeds
    over copper or fiber. These topologies are often
    referred to as Fast Ethernet.
  • Gigabit Ethernet - Gigabit Ethernet provides
    speeds of 1000 Mb/s over copper and fiber.

35
Broadband vs. Baseband
  • A baseband network has a single channel that is
    used for communication between stations. Ethernet
    specifications which use BASE in the name refer
    to baseband networks.
  • A broadband network is much like cable
    television, where different services communicate
    across different frequencies on the same cable.
  • Broadband communications would allow a Ethernet
    network to share the same physical cable as voice
    or video services. 10BROAD36 is an example of
    broadband networking.

36
Current Technology
  • Most modern Ethernet networks use twisted pair
    copper cabling or fiber to attach devices to the
    network. The 10BASE-T, 100BASE-T, and Gigabit
    Ethernet topologies are well suited for the
    modern cabling and fiber infrastructures.

37
Still Hungry?
  • http//www.faqs.org/faqs/LANs/ethernet-faq/

38
Ethernet
  • The various Ethernet specifications include a
    maximum distance
  • What do we do if we want to go further?
  • Repeater (also called Hub)
  • Hardware device used to extend a LAN
  • Amplifies all signals on one segment of a LAN and
    transmits them to another
  • Passes on whatever it receives
  • Knows nothing of packets, addresses
  • Any limit?

39
Repeaters
R1
R2
R3
40
Repeaters/Hubs
R1
R2
R3
41
Repeaters/Hubs
R1
R2
R3
42
Bridges
  • We want to improve performance over that provided
    by a simple repeater
  • Add functionality (i.e. more hardware)
  • Bridge can detect if a frame is valid and then
    (and only then) pass it to next segment
  • Bridge does not forward interference or other
    problems
  • Computers connected over a bridged LAN don't know
    that they are communicating over a bridge

43
Bridges
  • Typical bridge consists of conventional CPU,
    memory and two NIC's.
  • Does more than just pass information from one
    segment to another
  • A bridge can be constructed to
  • Only pass valid frame if necessary
  • Learn what is connected to network "on the fly"

44
Bridges
  • Event Segment 1 List Segment 2 List
  • Bridge boots - -
  • U send to V U -
  • V sends to U U, V -
  • Z broadcasts U, V Z
  • Y sends to V U, V Z, Y
  • Y sends to X U, V Z, Y
  • X sends to W U, V Z, Y, X
  • W sends to Z U, V, W Z, Y, X

45
Bridges
  • A bridge will connect to distinct segments
    (usually referring to a physical length of wire)
    and transmit traffic between them.
  • This allows you to extend the maximum size of the
    network while still not breaking the maximum wire
    length, attached device count, or number of
    repeaters for a network segment.

46
Switch
A
B
C
D
47
Network Interface Card
  • NIC
  • Sits on the host station
  • Allows a host to connect to a hub or a bridge
  • If connected to a hub, then NIC has to use
    half-duplex mode of communication (i.e. it can
    only send or receive at a time)
  • If connected to a bridge/switch, then NIC (if it
    is smart) can use either half/full duplex mode
  • Bridges/switches learn Media Access Control (MAC)
    address and the speed of the NIC it is talking to.

48
Routers
  • Work much like bridges/switches
  • Pay attention to the upper network layer
    protocols
  • (OSI layer 3) rather than physical layer (OSI
    layer 1) protocols.
  • Will decide whether to forward a packet by
    looking at the protocol level addresses (for
    instance, TCP/IP addresses) rather than the MAC
    address.

49
Routers
  • Because routers work at layer 3 of the OSI stack,
    it is possible for them to transfer packets
    between different media types (i.e., leased
    lines, Ethernet, token ring, X.25, Frame Relay
    and FDDI). Many routers can also function as
    bridges.

50
Routers
  • Repeaters and Bridges understand only Media
    Access Control (MAC) addresses
  • Traffic flow between nodes entirely based on MAC
    addresses
  • Packet from a host station ltmac-addr, payloadgt
  • Routers understand IP addresses
  • Special board that sits inside a bridge
  • IP layer on all nodes send packets destined
    outside the LAN to the router
  • Router sees a packet as ltip-hdr, payloadgt
  • uses the ip-hdr to route the packet on to internet

51
Questions?
52
CS 2200
  • Networking Protocols

53
Naming and Name Resolution
  • Within a system each process has an ID
  • Across a network process have no knowledge of one
    another
  • Generally processes are identified by
  • lthost name, identifiergt
  • Must have a system to resolve names
  • 1. Every system can have file with complete
    listing of all other hosts
  • 2. Distribute name information across network and
    have appropriate distribution and retrieval
    protocol

54
Naming and Name Resolution
  • Within a system each process has an ID
  • Across a network process have no knowledge of one
    another
  • Generally processes are identified by
  • lthost name, identifiergt
  • Must have a system to resolve names
  • 1. Every system can have file with complete
    listing of all other hosts Internet originally
    used this!
  • 2. Distribute name information across network and
    have appropriate distribution and retrieval
    protocol
  • This is Domain Name Server in
    use today

55
Domain Name Servers
  • Imagine that a system wants to locate
  • gaia.cc.gatech.edu
  • The kernel will issue a request to a name
    server for the edu domain. This name server will
    be at a known address.
  • The edu name server will issue the address where
    the gatech.edu name server is located.
  • This name server is queried and it returns the
    address of cc.gatech.edu which when queried will
    return the Internet Address of gaia.cc.gatech.edu

56
Questions?
57
Network Protocols
58
Why we need them?
  • Enable sharing the hardware network links
  • Overcome sources of unreliability in the network
  • Lost packets
  • Temporary failure of an intervening routing node
  • Mangled packets
  • Reflections on the media, soft errors in
    communication hardware buffers, etc.
  • Out of order delivery
  • Packets of the same message routed via different
    intervening nodes leading to different latencies

59
Recall
  • A protocol is the set of rules used to describe
    all of the hardware and (mostly) software
    operations used to send messages from Processor A
    to Processor B
  • A protocol describes the syntax, semantics and
    timing of communication between two devices
  • Common practice is to attach headers/trailers to
    the actual payload forming a packet or frame.

60
Layers
  • Protocol design is described by using layers.
  • Logically communication occurs at each level!
    Known as peer-to-peer communication
  • Its like this...

61
Be all you can be
  • General A sends message to General B
  • Colonel A repackages and sends to Colonel B
  • Major A repackages and sends to Major B
  • Captain A repackages and sends to Captain B
  • Lieutenant A repackages and sends to Lieutenant B
  • Sergeant A repackages and sends to Sergeant B
  • Private A takes message, steals motorcycle and
    delivers message to Private B
  • General B receives message from General A
  • Colonel unpackages message and passes to General
    B
  • Major unpackages messages and passes to Colonel B
  • Captain unpackages message and passes to Major B
  • Lieutenant unpackages message and passes to
    Captain B
  • Sergeant unpackages message and passes to
    Lieutenant B
  • Private receives message, unpackages it and
    passes it to Sergeant B

62
Protocol Stacks
  • General A sends message to General B
  • Colonel A repackages and sends to Colonel B
  • Major A repackages and sends to Major B
  • Captain A repackages and sends to Captain B
  • Lieutenant A repackages and sends to Lieutenant B
  • Sergeant A repackages and sends to Sergeant B
  • Private A takes message, steals motorcycle and
    delivers message to Private B
  • General B receives message from General A
  • Colonel unpackages message and passes to General
    B
  • Major unpackages messages and passes to Colonel B
  • Captain unpackages message and passes to Major B
  • Lieutenant unpackages message and passes to
    Captain B
  • Sergeant unpackages message and passes to
    Lieutenant B
  • Private receives message, unpackages it and
    passes it to Sergeant B

63
Protocol Stacks
  • General A sends message to General B
  • Colonel A repackages and sends to Colonel B
  • Major A repackages and sends to Major B
  • Captain A repackages and sends to Captain B
  • Lieutenant A repackages and sends to Lieutenant B
  • Sergeant A repackages and sends to Sergeant B
  • Private A takes message, steals motorcycle and
    delivers message to Private B
  • General B receives message from General A
  • Colonel unpackages message and passes to General
    B
  • Major unpackages messages and passes to Colonel B
  • Captain unpackages message and passes to Major B
  • Lieutenant unpackages message and passes to
    Captain B
  • Sergeant unpackages message and passes to
    Lieutenant B
  • Private receives message, unpackages it and
    passes it to Sergeant B

Note Message Indentical at this point
64
Why layers?
  • Good abstraction
  • Simpler to understand than OGP
  • Easier to design, analyze, implement and test
  • Design concept is suites or families

65
What is a Minimal Protocol
  • Bridge applications notion of message to the
    networks notion of a packet
  • Application layer
  • Hands over application programs message to the
    transport layer

Application
66
Remember
  • You make a call in your application.
  • You think youre sending a message to another
    computer
  • Whats really happening?

67
What is a Minimal Protocol
  • Transport layer
  • At sending end
  • Takes a message from the application layer and
    breaks it into packets commensurate with the
    network characteristics
  • Attaches headers to the packets that contain
    information for use at the destination
  • Handles retransmissions if necessary for
    overcoming network errors

Application
Transport
68
What is a Minimal Protocol
  • Transport layer (continued)
  • At receiving end
  • Use the header info to assemble a message
    destined for an application program at this node
  • Keeps track of packets of message(s) being
    assembled
  • Negotiate with the sender (using ACKS/NACKS) to
    complete the message assembly
  • Hand over assembled message to the application
    layer

Application
Application
Transport
Transport
69
What is a Minimal Protocol
  • Network layer
  • Implements the network driver to deal with the
    physical characteristics of the network
  • e.g.
  • CSMA/CD for Ethernet
  • token re-generation for token ring
  • Routing packets on the available network links
  • Filtering packets on the network and snarfing
    those intended for this node

Application
Application
Transport
Transport
Network
Network
70
Protocol Layering
  • Do we need these three layers?
  • Do we need any more layers?
  • What does the layering mean?
  • How rigid is the layering?
  • Does layering imply inefficiency?

71
Layering Advantages
  • Layering allows functionally partitioning the
    responsibilities (similar to having procedures
    for modularity in writing programs)
  • Alows easily integrating (plug and play) new
    modules at a particular layer without any changes
    to the other layers
  • Rigidity is only at the level of the interfaces
    between the layers, not in the implementation of
    these interfaces
  • By specifying the interfaces judiciously
    inefficiencies can be avoided

72
Why not combine transport and network?
73
  • Separation of transport and network is good
  • Allows the networking layer to decide the best
    path to take from source to destination
  • Addition/removal of physical media does not
    affect the transport layer code
  • Are these three layers sufficient?
  • Consider a node that wants to talk with other
    nodes that may be on local LAN as well as other
    nodes in the outside world
  • Now we can generalize the layered protocol
    model...

74
ISO 7-Layer OSI Model
7
  • Interact with user e.g. mail, telnet, ftp

Presentation
  • Char conv., echoing, format diffs endian-ness

6
Session
5
  • Process to process comm. e.g. Unix sockets

Transport
  • Packetizing, seq-num, retrans. e.g. TCP, UDP

4
Network
  • Routing, routing tables e.g. IP

3
  • Interface to physical media, error recovery e.g.
    retransmit on collision in Ethernet

Data Link
2
  • Electrical and mechanical characteristics of
    physical media e.g. Ethernet

Physical
1
ISO International Standards Organization OSI
Open System Interconnection
75
Packet or Frame
Layer 7 header
Layer 6 header
Layer 5 header
Layer 4 header
Layer 3 header
Layer 2 header
76
Practical Aspects of Layering
  • OSI model only a historic guide
  • Arpanet days
  • With the evolution of Internet
  • Some layers got collapsed
  • These days...
  • Layers 7-5 ftp, telnet, smtp, ..
  • Layer 4 TCP, UDP
  • Layer 3 (with aspects of 2) IP
  • Layer 2 Ethernet bridges/repeaters
  • Layer 1 Hardware specs, etc.

Application
Transport
Network
Datalink
Physical
77
Techniques Protocols Use
  • Sequencing for Out-of-Order Delivery
  • Sequencing to Eliminate Duplicate Packets
  • Retransmitting Lost Packets
  • Avoiding Replay Caused by Excessive Delay
  • Flow Control to Prevent Data Overrun
  • Mechanism to Avoid Network Congestion

78
Sequencing for Out-of-Order Delivery
  • Will packets arrive in the same order they were
    sent?
  • Why?/Why not?
  • Solution
  • Attach sequence number to packet
  • Maintain counter
  • If arriving packet is next sequence pass it on
  • If not save until correct point

79
Sequencing to Eliminate Duplicate Packets
  • Can packets be duplicated?
  • Transmitter sends packet
  • Thinks collision occurs, backs off
  • Resends packet
  • Solution
  • Use sequence numbers to detect and discard
    duplicates

80
Retransmitting Lost Packets
  • Can packets get lost?
  • Sender
  • Send packet
  • Start timer
  • Receiver
  • Receives and sends ACK
  • Sender
  • ACK...keep going
  • Timeout...resend

As before this process may generate duplicate
packets
(limit?)
81
Avoiding Replay Caused by Excessive Delay
  • Two computers start communicating at 100 p.m.
  • One computer sends 10 packets to another
  • Hardware problem causes packet 3 to be delayed
  • Routes change to avoid hardware problem
  • Protocol software retransmits packet 3
  • At 105 p.m. the two computers agree to
    communicate again
  • After second packet arrives delayed packet 3
    arrives
  • The correct packet 3 arrives

82
Solution
  • Protocols mark each session with unique Session
    ID
  • Incorrect session ID causes packet to be discarded

83
Flow Control to Prevent Data Overrun
  • Sender transmits packet
  • Waits for ACK
  • Receives ACK
  • Sends next packet
  • Problem?

84
Analysis
  • Assume
  • Packet size 1000 bytes (8,000 bits)
  • Capacity 2 Mbps
  • Delay 50 ms
  • Operation
  • Transmit packet 8,000/2,000,000 4ms
  • Wait 100 ms gt total time 104 ms
  • Result
  • 1/.104 9.6 packets/sec
  • 9.6 x 1000 x 8 76,800 bps
  • 76,800/2,000,000 3.8 of maximum

85
Solution Sliding Window
still unsent
already acknowledged
86
Computer 2
Computer 1
Computer 1
Computer 2
Window size may be changed dynamically depending
on performance
87
Computer 2
Computer 1
Computer 1
Computer 2
Actually only need to ACK last packet of window!
88
Now send 2 packets at a time
  • Assume
  • Packet size 1000 bytes (8,000 bits)
  • Capacity 2 Mbps
  • Delay 50 ms
  • Operation
  • Transmit 2 packets 16,000/2,000,000 8ms
  • Wait 100 ms gt total time 108 ms
  • Result
  • 1/.108 9.26 packets/sec
  • 9.26 x 2000 x 8 148,160 bps
  • 148,160/2,000,000 7.4 of maximum

89
Mechanism to Avoid Network Congestion
  • Switches detect congestion
  • Send message back to sender
  • Set bit to inform receiver
  • Use packet loss to estimate congestion
  • Reduce sliding window size
  • Reduce packet rate

90
Questions?
Write a Comment
User Comments (0)
About PowerShow.com