Download presentation
Presentation is loading. Please wait.
1
Class 4 Internet Protocols
CSCI 6433 David C. Roberts
2
A word about the homework
3
Typical Ethernet Configuration
4
Hub—Switch Differences
What they do What a host sees Setup
5
Bus Network Topology
6
Star Network Topology
7
Star-Bus Network Topology
8
The Problem
9
Mixed Network
10
How the Switch Works
11
CAM Table Switch has a content-addressable memory (CAM) table with a list of MAC addresses and where to forward the Ethernet frame CAM table is built up by experience, allows selective forwarding instead of broadcast What happens if the CAM table capacity is exceeded?
12
Agenda Internet Protocol Routing Error and Control Messages
13
Internet protocol
14
Internet Services Much of the Internet’s success is due to the robustness and adaptability of this architecture.
15
Goals for IP Universally addressed—IP defines addressing mechanism for the network and uses these addresses for delivery Independent of underlying protocol—IP is designed to operate over any lower-level protocol that will work with TCP/IP Connectionless—operates without defined connections Unreliable—devices just send each datagram and then go on to the next one, don’t wait to check success No acknowledgement—datagrams are delivered without a “thank you” note
16
Basic Functions of IP Addressing: mechanism for unique addressing across the entire Internet Data Encapsulation and Packaging: accepts data from the transport layer protocols at a higher level, encapsulates them into an IP datagram, and passes them to the lower level for transmission Fragmentation and reassembly: If the message exceeds maximum frame size, IP fragments it into multiple datagrams, and reassembles them at the destination. If a router along the communication path fragments a datagram, the same reassembly takes place at the destination. Routing: sends a datagram to a distant network using routers
17
IP Operation
18
The Bigger Picture
19
Why Is IP Successful? It’s simple
Hardware, software to implement it are simple Simplicity leads to low cost and high performance
20
IPv4 Datagram
21
IPv6 Header Format
22
IPv6 Base Header
23
Datagram Encapsulation
Datagram can be any length. Desirable for datagram to be carried in a single physical frame. Physical network does not know about datagram header. Different physical networks have different frame sizes, so datagrams must sometimes be fragmented into frames. Routers must accept datagrams up to maximum MTU of the networks they connect to.
25
IPv4 Fragmentation Fragmentation can occur at any router along the path taken by a datagram. Fragment headers are like datagram header, except for flag that shows that it is a fragment.
26
IPv6 Fragmentation Source host required to find minimum MTU along path to the destination Message is to be sent in datagrams that will fit into minimum MTU on path to the destination Source host uses path MTU discovery (PMTUD) to find the MTU of the path to the destination Fragmented IPv6 datagrams use a Fragment Extension Header
27
Datagram Reassembly Where are fragments reassembled?
At the destination When entering network with high enough MTU Reassembled at destination Avoids refragmentation and reassembly Allows each to be separately routed
28
IP Forwarding
29
Hosts and Routers Forward
30
Direct, Indirect Delivery
Transmission of a datagram between two machines on a single physical network Also the final step in indirect delivery Indirect delivery Transmission of a datagram between two machines that are not connected to the same network Sender chooses router, sends datagram to it Router extracts datagram from message, encapsulates it and sends it to another router
31
Direct Delivery Sender encapsulates the datagram in a physical frame
Next-hop address is bound to destination machine’s physical hardware address Resulting frame is sent directly to the destination machine Question: How does the sending machine know whether to use direct delivery?
32
Indirect Delivery Sending host encapsulates datagram in a frame and sends to the nearest router Router software extracts the encapsulated datagram and IP software selects the next router to receive it (or uses direct delivery) Datagram is placed into a frame and sent over the second physical network to the next router This continues until a router is reached that can use direct delivery
33
IP Operation
34
Table-Driven Forwarding
Hosts and routers have IP forwarding tables Forwarding table gives “next hop”—where to send a datagram as its next step toward its destination Size of forwarding table is an issue Can’t have information about all possible hosts IP forwarding is done on a network basis Default next hop is used for networks not listed in routing table Host-specific routes are useful for some situations
35
Next-Hop Forwarding Next-hop forwarding helps to keep forwarding tables small Forwarding tables tend to have nearby networks Forwarding table is a set of pairs (N,R) N is network prefix for an Internet network R is the IP address of the “next hop” router to reach N Each R is a router that is reachable across a single network
37
Processing Incoming Datagrams
Hosts discard datagrams not intended for them; but routers must forward them First, if datagram is for an attached network, then it is sent on the attached network If not, then TTL field is decremented; if it reaches zero, then datagram is discarded Routing table is used to select outgoing network, net hop address Datagram is sent to the next hop IP address
38
Default Routes IP forwarding software first looks for the destination network in its forward table If not found, then the default next-hop address is used Useful if many networks are reached through a single router
39
Broadcast and Multicast
Forwarding becomes more complex when broadcast and multicast are included These will be covered later
40
Establishing Forwarding Tables
IP forwarding relies on correct information in forwarding tables These must be correct across the entire Internet Their maintenance is a significant job To be discussed later
41
Summary Routing is the method used to forward IP datagrams
Choice of where to send datagram is based on destination network address Routing algorithm chooses next hop for a datagram With few exceptions, routing is based on destination address only
42
Error and control messages (icmp)
43
Question Suppose a router can’t contact the next hop router to forward a datagram What should that router do? Should it contact the router that sent it the datagram?
44
Internet Control Message Protocol
Initial purpose of ICMP was to allow routers to report the cause of delivery errors to hosts Any machine can send an ICMP message to any other machine, although some ICMP messages are sent only by routers ICMP is used to report problems to the source of the datagram Router finding an error cannot report the error to other routers that have processed the datagram
45
Error Reporting, Error Correction
ICMP is an error reporting mechanism Error correction is the job of machine receiving the message Source may refer datagram back to the originating application or take other action
46
ICMP Message Encapsulation
ICMP messages are encapsulated inside a datagram, travel the same way as every other datagram. Can ICMP messages be lost? Yes, in the same way as any other datagrams. Question: Can an IP datagram carrying an ICMP message, if it causes an error, cause another IP datagram to be sent with an ICMP message about the first ICMP message?
47
ICMP Message Types 12 Datagram Parameter Problem 13 Timestamp Request
14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply 0 Echo Reply 3 Destination Unreachable 4 Source Quench 5 Redirect 8 Echo Request 9 Router Advertisement 10 Router Solicitation 11 Datagram Time Exceeded Obsolete—formerly used by host to find router address, now replaced by RARP and DHCP
48
ICMPv4 Message Types
49
ICMPv6 Message Types
50
Ping Echo Request and Echo Reply
Host sends ICMP echo request Recipient sends ICMP echo reply to original sender Verifies that major pieces of transport system are working Host must route the datagram Routers must operate, route the datagram Destination machine must respond, its ICMP, IP software must be working ICMP Echo Request command is often called Ping
51
Echo Request and Reply Message Format
Sender uses IDENTIFIER and SEQ NUMBER to match replies to requests Echo reply sends back the data included in the request ??: When is 8 used and when is 0 used?
52
Destination Unreachable (3)
When router can’t forward or deliver an IP datagram, it sends destination unreachable message back to original source and drops the datagram Destination unreachable message is sent to the source whenever an error prevents router from routing or delivering a datagram. Source will know which address is unreachable, because prefix of datagram is included. Can router detect all errors that can cause datagram failure? No! So some failures will not have destination unreachable messages sent to the originator. CODE field further describes the problem, such as network or host unreachable, destination host or network unknown, fragmentation needed and DF set
53
Congestion and Flow Control
Congestion—router is overrun with traffic. Router enqueues messages that can’t be processed in memory. If high traffic continues, memory can be exhausted. Sources of congestion: Many computers send datagrams through one router High-speed computer sends many datagrams through a router connected to its network Datagrams can be enqueued in memory temporarily If memory is exhausted, then datagrams are discarded and Source Quench messages are sent
54
Source Quench Source quench is a request for the source to slow rate of datagram transmission. Usually router sends one message for every datagram that is discarded Source can identify the datagram that was lost by using the datagram prefix
55
Circular Routes Time exceeded message says that hop count has reached zero, or message has timed out on arrival of fragments of a datagram. A routing loop can exist for some destinations. R1 sends to R2, R2 sends to R3, R3 sends to R1, etc. Datagram would travel forever if it was not killed. Hence, hop count is decremented every time a datagram passes a router; when it reaches zero, the packet is discarded. Code is 0 for time-to-live count exceeded, 1 for fragment reassembly time exceeded. Receiving host starts a timeout when the first fragment of a datagram is received, then sends an ICMP time exceeded message is timeout is passed before all fragments have been received.
56
Parameter Problem Incorrect datagram header prevents delivery, and datagram must be discarded What does POINTER field refer to? The octet in the message that caused the problem. Code 1 says that required option is missing.
57
Clock Synchronization
First machine asks for timestamp, second machine sends current time of day 13 is request, 14 is reply This is a crude approach, depends on estimation of round-trip delay, which can vary. Many measurements can be made, and average taken for the round-trip delay, and used to synchronize clocks. Times in milliseconds since midnight, UT. Originate timestamp at time request was sent; receive is time of receipt of request, transmit time of transmission of reply.
58
Subnet Mask Subnet address mask specifies which part of IP address contains the network ID and which contains the host ID Subnet is use of part of the hostid as the physical network identification. We will talk about this later! For now, though, mask request and reply (to and from router) ask for subnet mask. Reply—contains network’s subnet address mask. IDENTIFIER, SEQUENCE NUMBER allow a machine to associate replies with requests.
59
Router Advertisement ICMP provides a method for a host to discover a router address dynamically, when router advertises its addresses; typically sent every ten minutes Host gets its information directly from a router. NUM ADDRS is number of addresses that follow (often 1) ADDR SIZE is size in 32-bit units LIFETIME how long host may use the address (default is 30 minutes, default for periodic retransmission is 10 minutes) Pairs are ROUTER ADDRESS and PREFERENCE LEVEL for the route—host chooses router with highest preference level Other methods are available (BOOTP, DHCP) that depend on database set up by network administrator.
60
Router Solicitation New host can’t wait 10 minutes to find a router! Solicitation allows host to request immediate advertisement. Message is sent to all-routers multicast ( ), if supported. Otherwise, send to limited broadcast address (i.e., all 1’s for hostid). In response, router sends normal router advertisement.
61
Summary Datagram Delivery (Internet Protocol) Routing ICMP
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.